html{overflow-x:clip}
.landing-page{position:relative}
.landing-page::before{
  content:""; position:absolute; inset:0 calc(50% - 50vw) auto; height:760px; z-index:0;
  pointer-events:none;
  background-image:radial-gradient(var(--grid) 1.2px, transparent 1.2px);
  background-size:26px 26px;
  mask-image:linear-gradient(180deg,#000 40%,transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,#000 40%,transparent 100%);
}
.landing-blocks{position:relative; z-index:1}
.landing-page .block-section-head{margin-inline:0; text-align:left; max-width:none; margin-bottom:20px;
  padding-bottom:0 !important}
.landing-page .block-section-head__eyebrow{font-family:var(--mono); font-size:1.08rem; letter-spacing:.16em;
  text-transform:uppercase; color:var(--muted); margin:0; font-weight:600; line-height:1.6; max-width:52ch}
.landing-page .block-section-head__title{font-size:clamp(1.7rem,3vw,2.5rem); line-height:1.1; font-weight:780;
  letter-spacing:-.02em; margin:0 0 14px; text-wrap:balance; max-width:52ch; color:var(--ink)}
.landing-page .block-section-head__lead{color:var(--muted); font-size:1.08rem; margin:0; max-width:52ch}

.landing-page .block-audience__list{justify-content:flex-start; gap:9px}
.landing-page .block-audience__link{font-family:var(--mono); font-size:.8rem; font-weight:600;
  color:var(--muted); border:1px solid var(--hair); border-radius:var(--cms-radius-md, 8px); padding:8px 14px;
  background:var(--panel)}
.landing-page .landing-block:has(> .block-section-head):has(+ .landing-block > .block-audience) > .block-section-head{
  margin-bottom:0}
.landing-page .landing-block:has(> .block-section-head) + .landing-block > .block-audience{
  padding-top:2px !important; padding-bottom:20px !important}
@media (max-width:700px){
  .landing-page .block-section-head{margin-bottom:6px}
  .landing-page .landing-block:has(> .block-section-head) + .landing-block > .block-audience{
    padding-bottom:6px !important}
}

@media (min-width:941px){
  .landing-page .landing-block--half:has(> .block-hero){flex-basis:calc((100% - 56px) * 1.02 / 2.02);
    margin-right:calc(56px - var(--landing-block-gap))}
  .landing-page .landing-block--half:has(> .block-hero) + .landing-block--half{
    flex-basis:calc((100% - 56px) / 2.02)}
}
@media (min-width:768px) and (max-width:940px){
  .landing-page .landing-block--half:has(> .block-hero),
  .landing-page .landing-block--half:has(> .block-hero) + .landing-block--half{flex-basis:100%}
}

.landing-page .landing-block:has(> .block-cta--band):has(+ .landing-block > .block-chips) > .band .band-inner{
  padding-bottom:0; display:flow-root}
.landing-page .landing-block:has(> .block-cta--band) + .landing-block > .block-chips{
  background:var(--band-bg); margin-inline:calc(50% - 50vw); margin-top:calc(-1 * var(--landing-block-gap));
  padding:0 0 78px !important; margin-bottom:40px}
.landing-page .landing-block:has(> .block-cta--band) + .landing-block > .block-chips .block-chips__list{
  max-width:var(--wrap); margin:0 auto; padding:0 28px; justify-content:flex-start; gap:10px}
.landing-page .landing-block:has(> .block-cta--band) + .landing-block > .block-chips .block-chips__item{
  font-family:var(--mono); font-size:.76rem; color:var(--band-ink); border:1px solid var(--band-hair);
  border-radius:7px; padding:7px 12px; background:color-mix(in srgb, var(--band-ink) 5%, transparent)}
.landing-page .landing-block:has(> .block-cta--band) + .landing-block > .block-chips .block-chips__item::before{
  content:""; display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--brand);
  margin-right:8px; vertical-align:middle}
@media (max-width:700px){
  .landing-page .landing-block:has(> .block-cta--band) + .landing-block > .block-chips{
    padding-bottom:52px !important; margin-bottom:8px}
}
@media (max-width:560px){
  .landing-page .landing-block:has(> .block-cta--band) + .landing-block > .block-chips .block-chips__list{
    padding:0 20px}
}
.page-article{padding:88px 0 96px}
.page-article h1{font-size:clamp(2rem,4vw,2.75rem); line-height:1.1; font-weight:780; letter-spacing:-.02em;
  margin:0 0 22px}
.page-article p, .page-article li{color:var(--muted); font-size:1.08rem; max-width:44em}
.page-article .page-revised{font-size:.95rem; color:var(--faint); margin-top:2.5rem}
@media (max-width:700px){ .page-article{padding:56px 0 64px} }
.docs-home{padding-block:2.5rem 4rem}

.block-cta--plain{padding:76px 0; border-top:1px solid var(--hair)}
.block-cta--plain h2{font-size:clamp(1.8rem,3.2vw,2.6rem); font-weight:800; letter-spacing:-.02em; margin:0 0 10px; text-wrap:balance}
.block-cta--plain p{color:var(--muted); font-size:1.06rem; max-width:64ch; margin:0 0 26px}

.block-cta--closing{margin-inline:calc(50% - 50vw)}

.block-features{padding-block:0}
.landing-block:has(> .block-features) + .landing-block:has(> .block-features){margin-top:14px}

.block-features--cards h1{margin:0 0 .35rem}
.block-features--cards .lede{margin:0 0 2.25rem}
.block-features--cards .entry{display:grid; gap:1rem; grid-template-columns:repeat(auto-fit, minmax(16rem, 1fr))}
.block-features--cards .entry .card{display:block; padding:1.15rem 1.25rem 1.3rem}
.block-features--cards .entry .card .want{display:block; font-size:.78rem; letter-spacing:.04em;
  text-transform:uppercase; opacity:.62; margin-bottom:.35rem}
.block-features--cards .entry .card b{display:block; font-size:1.06rem; margin-bottom:.4rem}
.block-features--cards .entry .card .note{display:block; font-size:.9rem; line-height:1.45; opacity:.78}
.block-features--cards .entry .card .count{display:block; margin-top:.7rem; font-size:.8rem; opacity:.55}
.landing-block .hero::before{content:none}

.landing-block .hero{padding-block:76px 84px}

.landing-block .hero{border-bottom:0}
@media (max-width:768px){ .landing-block .hero{padding-block:56px 64px} }
.landing-block:has(> .block-lane){--lane-tab:64px}
.block-lane{
  display:grid; grid-template-columns:var(--lane-tab) 1fr; align-items:stretch;
  border:1px solid var(--hair); border-radius:0; background:var(--panel);
}

.landing-block:has(> .block-lane) + .landing-block:has(> .block-lane) > .block-lane{
  border-top:0;
}

.landing-block:not(:has(> .block-lane)) + .landing-block:has(> .block-lane) > .block-lane{
  border-top-left-radius:var(--radius); border-top-right-radius:var(--radius);
}
.landing-block:has(> .block-lane):not(:has(+ .landing-block > .block-lane)) > .block-lane{
  border-bottom-left-radius:var(--radius); border-bottom-right-radius:var(--radius);
}
.landing-block > .block-lane{overflow:hidden}

.lane-tab{
  display:flex; align-items:center; justify-content:center;
  border-right:1px solid var(--hair); background:var(--panel-2);
}

.lane-tab span{
  writing-mode:vertical-rl; transform:rotate(180deg);
  font-family:var(--mono); font-size:.74rem; letter-spacing:.16em;
  text-transform:uppercase; color:var(--muted); white-space:nowrap;
}
.lane-body{padding:30px 32px; display:grid; grid-template-columns:1fr 1.35fr; gap:28px; align-items:start}
.lane-lead h3{font-size:1.34rem; font-weight:750; letter-spacing:-.015em; margin:0 0 8px; text-wrap:balance}
.lane-lead .who{font-family:var(--mono); font-size:.72rem; color:var(--accent); letter-spacing:.08em; margin:0 0 10px}
.lane-lead a{font-family:var(--mono); font-size:.82rem; color:var(--accent); font-weight:600; display:inline-flex; gap:6px; transition:gap .18s}
.lane-lead a:hover{gap:10px}
.lane-list{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px}
.lane-list li{position:relative; padding-left:22px; color:var(--muted); font-size:.98rem}
.lane-list li::before{
  content:""; position:absolute; left:2px; top:.62em; width:8px; height:8px;
  border-radius:2px; background:var(--accent-soft); border:1px solid var(--accent);
}
.lane-list li b{color:var(--ink); font-weight:650}
.lane-proof{grid-column:1 / -1}
.proof{border:1px solid var(--hair); border-radius:11px; overflow:hidden; background:var(--bg)}
.proof-bar{
  display:flex; align-items:center; gap:10px; padding:9px 14px;
  border-bottom:1px solid var(--hair); background:var(--panel-2);
  font-family:var(--mono); font-size:.74rem; color:var(--muted);
}
.proof-bar .tag{margin-left:auto; color:var(--faint)}
.proof-body{padding:14px 16px; overflow-x:auto}
.proof-body pre{
  margin:0; font-family:var(--mono); font-size:.78rem; line-height:1.65;
  color:var(--muted); white-space:pre;
}
.proof-foot{
  padding:8px 14px; border-top:1px solid var(--hair);
  font-family:var(--mono); font-size:.68rem; color:var(--faint);
}
@media (max-width:900px){
  .lane-body{grid-template-columns:1fr; gap:20px; padding:24px}
  .landing-block:has(> .block-lane){--lane-tab:44px}
}

@media (max-width:700px){
  .landing-block:has(> .block-lane) > .block-lane{grid-template-columns:1fr}
  .block-lane .lane-tab{border-right:none; border-bottom:1px solid var(--hair); justify-content:flex-start; padding:9px 20px}
  .block-lane .lane-tab span{writing-mode:horizontal-tb; transform:none; letter-spacing:.16em}
  .block-lane .lane-body{padding:22px 24px; gap:20px}
}
.block-process-diagram .win-canvas{
  background-color:#FBFCFD;
  background-image:radial-gradient(rgba(22,32,46,.10) 1px, transparent 1px);
}
.block-process-diagram > h2{font-size:1.02rem; font-weight:600; letter-spacing:-.01em; margin:0 0 4px}
.block-process-diagram > .lead{font-size:.9rem; color:var(--muted); margin:0 0 14px; max-width:52ch}

.block-process-diagram .window > .win-foot{display:flex}
.block-process-diagram .win-canvas > svg{width:100%; height:100%; object-fit:contain}
.ptabs{position:relative}
.ptabs .flow-radio{position:absolute; opacity:0; pointer-events:none; width:0; height:0}
.ptabs .win-tabs{display:flex; gap:4px; margin-left:6px}
.ptabs .win-tab{
  font-family:var(--mono); font-size:.72rem; color:var(--faint);
  padding:4px 9px; border-radius:7px; cursor:pointer; white-space:nowrap;
  border:1px solid transparent;
}
.ptabs .win-tab:hover{color:var(--muted)}
.ptabs .ptabs-panel{display:none}
.ptabs .win-canvas{height:330px; padding:18px 14px; align-items:stretch}
.ptabs .ptabs-panel > svg{display:block; width:100%; height:100%}

.ptabs .ptabs-foot{display:none}

.ptabs .flow-radio:nth-of-type(1):checked ~ .win-bar .win-tabs .win-tab:nth-of-type(1),
.ptabs .flow-radio:nth-of-type(2):checked ~ .win-bar .win-tabs .win-tab:nth-of-type(2),
.ptabs .flow-radio:nth-of-type(3):checked ~ .win-bar .win-tabs .win-tab:nth-of-type(3),
.ptabs .flow-radio:nth-of-type(4):checked ~ .win-bar .win-tabs .win-tab:nth-of-type(4),
.ptabs .flow-radio:nth-of-type(5):checked ~ .win-bar .win-tabs .win-tab:nth-of-type(5),
.ptabs .flow-radio:nth-of-type(6):checked ~ .win-bar .win-tabs .win-tab:nth-of-type(6){
  color:var(--ink); background:var(--panel-2); border-color:var(--hair);
}
.ptabs .flow-radio:nth-of-type(1):checked ~ .win-canvas .ptabs-panel:nth-of-type(1),
.ptabs .flow-radio:nth-of-type(2):checked ~ .win-canvas .ptabs-panel:nth-of-type(2),
.ptabs .flow-radio:nth-of-type(3):checked ~ .win-canvas .ptabs-panel:nth-of-type(3),
.ptabs .flow-radio:nth-of-type(4):checked ~ .win-canvas .ptabs-panel:nth-of-type(4),
.ptabs .flow-radio:nth-of-type(5):checked ~ .win-canvas .ptabs-panel:nth-of-type(5),
.ptabs .flow-radio:nth-of-type(6):checked ~ .win-canvas .ptabs-panel:nth-of-type(6){
  display:flex; flex:1 1 auto; min-width:0; height:100%;
}
.ptabs .flow-radio:nth-of-type(1):checked ~ .ptabs-foots .ptabs-foot:nth-of-type(1),
.ptabs .flow-radio:nth-of-type(2):checked ~ .ptabs-foots .ptabs-foot:nth-of-type(2),
.ptabs .flow-radio:nth-of-type(3):checked ~ .ptabs-foots .ptabs-foot:nth-of-type(3),
.ptabs .flow-radio:nth-of-type(4):checked ~ .ptabs-foots .ptabs-foot:nth-of-type(4),
.ptabs .flow-radio:nth-of-type(5):checked ~ .ptabs-foots .ptabs-foot:nth-of-type(5),
.ptabs .flow-radio:nth-of-type(6):checked ~ .ptabs-foots .ptabs-foot:nth-of-type(6){display:flex}

.ptabs .flow-radio:focus-visible ~ .win-bar .win-tabs .win-tab{outline:2px solid var(--brand); outline-offset:2px}

.block-process-tabs > h2{font-size:1.02rem; font-weight:600; letter-spacing:-.01em; margin:0 0 4px}
.block-process-tabs > .lead{font-size:.9rem; color:var(--muted); margin:0 0 14px; max-width:52ch}

.docs-tabs{display:flex; gap:4px; padding:14px 0}
.docs-tabs a{
  font-family:var(--mono); font-size:.82rem; color:var(--muted);
  padding:6px 12px; border-radius:8px; border:1px solid transparent;
}
.docs-tabs a:hover{color:var(--ink)}
.docs-tabs a.on{color:var(--ink); background:var(--panel-2); border-color:var(--hair)}

.site-header .nav{flex-wrap:nowrap; min-height:66px; gap:14px}
.site-header .btn{font-size:.82rem}
.site-header .wordmark{font-size:1.28rem}

.nav-links a,
.nav-links .nav-parent{
  font-family:var(--mono); font-size:.82rem; color:var(--muted);
  padding:6px 0; border-bottom:1px solid transparent;
  transition:color .18s, border-color .18s;
}
.nav-links a:hover,
.nav-links .nav-parent:hover{color:var(--ink); border-color:var(--accent)}

.nav-links [aria-current]{color:var(--ink)}
.nav-links [aria-current="page"]{color:var(--ink); border-color:var(--accent)}

.nav-links .nav-parent{
  background:none; border-left:0; border-right:0; border-top:0;
  cursor:pointer; display:inline-flex; align-items:center; gap:5px;
}
.nav-links .nav-parent::after{content:"\25BE"; font-size:.7em; opacity:.7}

.nav-desktop{display:flex; gap:22px; margin-left:auto; align-items:center}

.nav-desktop .has-children{position:relative; display:inline-flex; align-items:center}
.nav-desktop .submenu{
  position:absolute; top:100%; left:-14px; min-width:190px; z-index:60;
  display:none; flex-direction:column; gap:2px; padding:8px;
  background:var(--panel); border:1px solid var(--hair); border-radius:10px;
  box-shadow:0 18px 40px -24px rgba(10,15,25,.55);
}

.nav-desktop .has-children:hover > .submenu,
.nav-desktop .has-children:focus-within > .submenu{display:flex}
.nav-desktop .submenu a{padding:5px 8px; border-bottom:0; border-radius:6px; white-space:nowrap}
.nav-desktop .submenu a:hover{background:var(--panel-2); color:var(--ink)}

.nav-mobile{display:none}
.nav-mobile > .nav-links{display:block}
.nav-mobile .nav-links summary{list-style:none; cursor:pointer}
.nav-mobile .nav-links summary::-webkit-details-marker{display:none}
.nav-mobile .nav-links ul{list-style:none; margin:0; padding:0; display:flex; flex-direction:column}
.nav-mobile .nav-links > ul > li{border-bottom:1px solid var(--hair)}

.nav-mobile .nav-links a,
.nav-mobile .nav-links summary{display:block; padding:13px 0; font-family:var(--mono); font-size:.9rem; color:var(--muted)}
.nav-mobile .submenu{list-style:none; margin:0 0 8px; padding:0 0 0 16px}
.nav-mobile .submenu a{padding:9px 0; font-size:.85rem}
.nav-mobile .nav-actions{display:flex; gap:10px; padding:14px 0 4px}
.nav-mobile .nav-actions .btn{flex:1; justify-content:center}

.nav-burger{
  list-style:none; cursor:pointer; margin-left:auto;
  width:40px; height:40px; display:none;
  align-items:center; justify-content:center; flex-direction:column; gap:4px;
  border:1px solid var(--hair); border-radius:9px;
}
.nav-burger::-webkit-details-marker{display:none}
.nav-burger i{display:block; width:16px; height:1.5px; background:var(--ink); border-radius:2px}

@media (max-width:940px){
  
  .nav-right .btn{display:none}
  .nav-desktop{display:none}
  .nav-burger{display:flex}
  
  .site-header .nav{flex-wrap:nowrap}
  .nav-right{order:2; margin-left:auto}
  .nav-mobile{display:block; order:3; width:auto; margin-left:6px}
  .nav-mobile > .nav-links{
    position:absolute; left:0; right:0; top:100%;
    padding:4px 28px 16px;
    background:var(--bg); border-top:1px solid var(--hair);
    box-shadow:0 20px 40px -28px rgba(10,15,25,.5);
    
    max-height:calc(100dvh - 66px); overflow-y:auto;
  }
}

.mode-toggle{
  display:inline-grid; place-items:center; width:32px; height:32px;
  border:1px solid var(--hair); border-radius:8px; background:var(--panel);
  color:var(--muted); cursor:pointer; font-family:var(--mono); font-size:.78rem;
  line-height:1; padding:0;
}
.mode-toggle:hover{ color:var(--ink); border-color:var(--wire); }

.mode-toggle .i-dark{ display:none; }
:root[data-theme="dark"] .mode-toggle .i-dark{ display:inline; }
:root[data-theme="dark"] .mode-toggle .i-light{ display:none; }
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .mode-toggle .i-dark{ display:inline; }
  :root:not([data-theme="light"]) .mode-toggle .i-light{ display:none; }
}
:root{
  --bg:#FBFCFD; --panel:#FFFFFF; --panel-2:#F0F3F7;
  
  
  --ink:#16202E; --muted:#505D73; --faint:#5A697E;
  --hair:#DBE1EA; --grid:rgba(22,32,46,.055);
  --navy:#1A2332;
  --brand:#F5A623; --brand-deep:#E08F13;
  
  --accent:#985909; --accent-strong:#8F5208; --accent-soft:rgba(245,166,35,.20);
  --wire:#9FAABC; --good:#1E8A54;

  
  --bs-secondary-color: var(--muted);
  --sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:ui-monospace,"SF Mono","JetBrains Mono","Cascadia Code",Menlo,Consolas,monospace;
  
  --wrap:1320px; --radius:14px;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#0D1219; --panel:#141C27; --panel-2:#1A2332;
    --ink:#E8ECF2; --muted:#93A0B4; --faint:#8792A2;
    --hair:#232D3C; --grid:rgba(255,255,255,.05);
    --brand:#F5A623; --brand-deep:#FFB840;
    --accent:#F5A623; --accent-strong:#FFC04D; --accent-soft:rgba(245,166,35,.16);
    --wire:#3A4657;
  }
}
:root[data-theme="dark"]{
  --bg:#0D1219; --panel:#141C27; --panel-2:#1A2332;
  --ink:#E8ECF2; --muted:#93A0B4; --faint:#8792A2;
  --hair:#232D3C; --grid:rgba(255,255,255,.05);
  --brand:#F5A623; --brand-deep:#FFB840;
  --accent:#F5A623; --accent-strong:#FFC04D; --accent-soft:rgba(245,166,35,.16);
  --wire:#3A4657;
}

code, pre, kbd, samp { font-variant-ligatures: none; font-feature-settings: "liga" 0, "calt" 0; }
.block-audience__list{display:flex; flex-wrap:wrap; gap:.6rem; list-style:none; margin:0; padding:0; justify-content:center}
.block-audience__link{
  display:inline-block; padding:.55rem 1rem; border-radius:10px;
  border:1px solid var(--hair, rgba(128,128,128,.35));
  color:var(--muted, inherit); text-decoration:none;
  transition:color .18s, border-color .18s;
}
.block-audience__link:hover,
.block-audience__link:focus-visible{color:var(--ink, inherit); border-color:var(--accent, #b58900)}
.block-chips__list{display:flex; flex-wrap:wrap; gap:.5rem; list-style:none; margin:0; padding:0; justify-content:center}
.block-chips__item{
  font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size:.78rem; line-height:1.2; padding:.4rem .7rem;
  border:1px solid var(--hair, rgba(128,128,128,.35)); border-radius:999px;
  color:var(--muted, inherit); white-space:nowrap;
}
.block-listing__frame{
  font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size:.82rem; line-height:1.7;
  border:1px solid var(--hair, rgba(128,128,128,.35)); border-radius:10px;
  padding:.9rem 1rem; overflow-x:auto;
}

.block-listing__caption{color:var(--muted, var(--bs-secondary-color, inherit))}

.block-listing__head{color:var(--muted, inherit); margin:0 0 .35rem; white-space:pre}
.block-listing__row{display:grid; grid-template-columns:auto 1fr auto; gap:0 1.25rem; align-items:baseline}
.block-listing__meta{color:var(--accent, #b58900)}
.block-listing__name{color:var(--ink, inherit)}
.block-listing__note{color:var(--muted, inherit); justify-self:end; white-space:nowrap}
.block-section-head{max-width:46rem; margin-inline:auto; text-align:center}

.block-section-head__eyebrow{
  font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size:.75rem; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted, inherit); margin:0 0 .4rem;
}
.block-section-head__title{margin:0 0 .6rem}
.block-section-head__lead{color:var(--muted, inherit); margin:0; line-height:1.6}
.landing-blocks{
  display:flex; flex-wrap:wrap; align-items:flex-start;
  --landing-block-gap:1.5rem;
  gap:var(--landing-block-gap);
}

.landing-block{flex:0 0 100%; min-width:0}

.landing-block--align-top{align-self:flex-start}
.landing-block--align-middle{align-self:center}
.landing-block--align-bottom{align-self:flex-end}
.landing-block--align-stretch{align-self:stretch}

@media (max-width:767.98px){
  .landing-block[class*="--align-"]{align-self:flex-start}
}
@media (min-width:768px){
  .landing-block--full{flex-basis:100%}
  .landing-block--two-thirds{flex-basis:calc(66.6667% - var(--landing-block-gap) * 1 / 3)}
  .landing-block--half{flex-basis:calc(50% - var(--landing-block-gap) / 2)}
  .landing-block--third{flex-basis:calc(33.3333% - var(--landing-block-gap) * 2 / 3)}
  .landing-block--quarter{flex-basis:calc(25% - var(--landing-block-gap) * 3 / 4)}
}

.block-eyebrow{color:var(--muted, var(--bs-secondary-color, inherit))}
