
@font-face {
  font-family:'Instrument Sans';
  font-style:normal;
  font-weight:400 600;
  font-display:swap;
  src:url(fonts/instrument-sans-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family:'Instrument Sans';
  font-style:normal;
  font-weight:400 600;
  font-display:swap;
  src:url(fonts/instrument-sans-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family:'JetBrains Mono';
  font-style:normal;
  font-weight:400 600;
  font-display:swap;
  src:url(fonts/jetbrains-mono-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family:'JetBrains Mono';
  font-style:normal;
  font-weight:400 600;
  font-display:swap;
  src:url(fonts/jetbrains-mono-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{
    --bg:#0D1014;
  --panel:#151A20;
  --panel2:#1B2129;
  --line:#222A33;
  --line2:#2C3540;
  --text:#E6EAEF;
  --dim:#8F9AA8;        --dimmer:#7E8996;   
    --accent:#3FA88C;
  --accent-dim:#2A7360;
  --accent-ink:#08120F;     --accent-hi:#4FBE9F;

    --red:#E0574F;
  --amber:#D08A2E;
  --green:#43A97A;

    --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:64px; --s9:96px;

    --t-xs:12px; --t-sm:14px; --t-md:15px; --t-lg:17px; --t-xl:20px;
  --lh-tight:1.12; --lh-snug:1.4; --lh-body:1.6; --lh-read:1.7;

    --r1:4px; --r2:8px; --r3:12px; --r-pill:999px;

  --sans:'Instrument Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:var(--sans);font-size:var(--t-md);line-height:var(--lh-body);
  -webkit-font-smoothing:antialiased;
}
a{color:inherit}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
img{max-width:100%;height:auto}

.wrap{max-width:1140px;margin:0 auto;padding:0 var(--s5)}
.doc .wrap{max-width:760px}

header{border-bottom:1px solid var(--line);background:var(--bg)}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);height:56px}
.brand{display:flex;align-items:center;gap:var(--s2);font-weight:600;font-size:var(--t-lg);
  letter-spacing:-.01em;text-decoration:none;color:var(--text)}
.brand svg,.brand img{width:22px;height:22px;display:block;color:var(--accent)}
.nav{display:flex;align-items:center;gap:var(--s5);font-size:var(--t-sm)}
.nav a{color:var(--dim);text-decoration:none;transition:color .14s ease}
.nav a:hover{color:var(--text)}

.btn{display:inline-block;background:var(--accent);color:var(--accent-ink);text-decoration:none;
  padding:10px var(--s5);border-radius:var(--r1);font-weight:600;font-size:var(--t-sm);
  border:0;cursor:pointer;transition:background .14s ease}
.btn:hover{background:var(--accent-hi)}
.btn.ghost{background:transparent;color:var(--dim);border:1px solid var(--line2)}
.btn.ghost:hover{background:var(--panel);color:var(--text)}

footer{border-top:1px solid var(--line);padding:var(--s6) 0;color:var(--dimmer);font-size:var(--t-xs)}
footer .wrap{display:flex;justify-content:space-between;gap:var(--s5);flex-wrap:wrap}
footer nav{display:flex;gap:var(--s4);flex-wrap:wrap}
footer a{color:var(--dim);text-decoration:none;transition:color .14s ease}
footer a:hover{color:var(--text)}

a:focus-visible,.btn:focus-visible,.brand:focus-visible,button:focus-visible{
  outline:2px solid var(--accent-hi);outline-offset:3px;border-radius:var(--r1);
}
.skip{position:absolute;left:-9999px;top:0;z-index:20;background:var(--text);color:var(--bg);
  padding:10px var(--s4);border-radius:0 0 var(--r2) 0;font-size:var(--t-sm);font-weight:600;
  text-decoration:none}
.skip:focus{left:0}

@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

.home .hero{padding-block:var(--s8) var(--s7);display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--s7);align-items:center}
.home h1{font-size:clamp(31px,3.9vw,44px);line-height:var(--lh-tight);letter-spacing:-.03em;
  margin:0 0 var(--s4);font-weight:600;text-wrap:balance}
.home .sub{font-size:var(--t-lg);color:var(--dim);margin:0 0 var(--s6);max-width:52ch}

.home .hero .shot{margin-right:calc(((100vw - min(100vw,1140px)) / -2) - var(--s5))}
body.home{overflow-x:clip}
@media(max-width:1180px){.home .hero .shot{margin-right:0}}

.home .eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 var(--s4);font-size:var(--t-sm)}
.home .eyebrow::before{content:"";width:10px;height:10px;background:var(--accent);flex:none}
.cycle{position:relative;display:inline-block;height:1.5em;vertical-align:bottom;
  font-family:var(--mono);color:var(--dim);white-space:nowrap}
.cycle span{position:absolute;left:0;top:0;overflow:hidden;width:0;
  animation:cyc var(--dur) steps(18,end) 1;
  animation-delay:calc(var(--i) * var(--dur) / var(--count))}
.cycle span:first-child{
  animation:cyc var(--dur) steps(18,end) 1,rest calc(var(--dur) / 20) steps(18,end) var(--dur) forwards}
.cycle span::after{content:"";display:inline-block;width:.6em;height:1em;margin-left:2px;
  vertical-align:-2px;opacity:.9;
  background:repeating-conic-gradient(var(--accent) 0 25%,transparent 0 50%) 0 0/3px 3px}
@keyframes rest{from{width:0}to{width:calc(var(--n) * 1ch)}}
@keyframes cyc{
  0%{width:0}
  4.8%{width:calc(var(--n) * 1ch + .6em + 2px)}
  17.6%{width:calc(var(--n) * 1ch + .6em + 2px)}
  18.8%{width:calc(var(--n) * 1ch)}
  20%{width:0}
  100%{width:0}}
@media(prefers-reduced-motion:reduce){
  .cycle span{width:auto!important}
  .cycle span:not(:first-child),.cycle span::after{display:none}}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.home .statement{padding:var(--s8) 0;border-top:1px solid var(--line)}
.home .statement p{margin:0;max-width:26ch;font-size:clamp(28px,4.2vw,48px);line-height:1.15;
  letter-spacing:-.025em;font-weight:600;color:var(--text);text-wrap:balance;
  view-timeline-name:--stmt}
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion: no-preference){
    .home .statement .w{color:var(--line2);
      animation:wlit linear both;animation-timeline:--stmt;
      animation-range:cover calc(18% + var(--p) * 32%) cover calc(22% + var(--p) * 32%)}
  }
}
@keyframes wlit{to{color:var(--text)}}

.home picture{display:block}
.home .shot img,.home .split img{width:100%;height:auto;display:block;border-radius:var(--r2);
  border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,.55)}
.home .caption{margin-top:var(--s3);font-size:var(--t-xs);color:var(--dimmer)}

.home section{padding:var(--s8) 0;border-top:1px solid var(--line);scroll-margin-top:var(--s7)}
.home h2{font-size:clamp(22px,2.6vw,28px);letter-spacing:-.025em;margin:0 0 var(--s3);
  font-weight:600;max-width:24ch;text-wrap:balance}
.home .lede{color:var(--dim);font-size:var(--t-lg);max-width:58ch;margin:0 0 var(--s7)}

.home .facts{display:grid;grid-template-columns:1fr;gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:var(--r2);overflow:hidden}
@media(min-width:760px){.home .facts{grid-template-columns:1fr 1fr}.home .facts > div:first-child{grid-column:1/-1}}
.home .facts > div{background:var(--panel);padding:var(--s5)}
.home .facts{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 45%,var(--line))}
.home .facts > div:first-child{background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 22%,var(--panel)),var(--panel) 75%)}
.home .facts > div:not(:first-child){background:color-mix(in srgb,var(--accent) 7%,var(--panel))}
.home .facts h3{margin:0 0 var(--s2);font-size:var(--t-lg);font-weight:600;letter-spacing:-.01em}
.home .facts p{margin:0;color:var(--dim);font-size:var(--t-sm)}

.home .split{display:grid;grid-template-columns:1fr 1fr;gap:var(--s8);align-items:center}
.home .split.phone img{max-width:270px;margin:0 auto;box-shadow:0 16px 44px rgba(0,0,0,.5)}

.home table{width:100%;border-collapse:collapse;margin:var(--s5) 0 0;font-size:var(--t-sm)}
.home th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--dimmer);font-weight:600;padding:0 var(--s4) var(--s3) 0;
  border-bottom:1px solid var(--line)}
.home td{padding:var(--s3) var(--s4) var(--s3) 0;border-bottom:1px solid var(--line);
  color:var(--dim);vertical-align:baseline}
.home td:first-child{width:1%;white-space:nowrap}
.state{display:inline-flex;align-items:center;gap:var(--s2);font-weight:600;font-size:var(--t-xs);
  letter-spacing:.05em;text-transform:uppercase}
.pip{width:7px;height:7px;border-radius:50%;flex:none}
.state.r{color:var(--red)}.state.r .pip{background:var(--red)}
.state.a{color:var(--amber)}.state.a .pip{background:var(--amber)}
.state.g{color:var(--green)}.state.g .pip{background:var(--green)}
.home .points{list-style:none;margin:0 0 var(--s5);padding:0;max-width:62ch;display:grid;gap:var(--s4)}.home .points li{position:relative;padding-left:22px;color:var(--dim);font-size:var(--t-md)}.home .points li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;background:var(--accent)}
.home .foot-note{color:var(--dimmer);font-size:var(--t-sm);margin-top:var(--s5);max-width:58ch}

.home .final{background:var(--panel)}
.home .final .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s7);
  align-items:center}
.home .final h2{margin:0}
.home .final p{color:var(--dim);max-width:56ch;margin:var(--s3) 0 0;font-size:var(--t-md)}

@media(max-width:900px){
  .home .hero{grid-template-columns:1fr;gap:var(--s6);padding-block:var(--s7) var(--s6)}
  .home .split{grid-template-columns:1fr;gap:var(--s6)}
  .home .final .wrap{grid-template-columns:1fr;gap:var(--s5)}
}
@media(max-width:760px){
  .home section{padding:var(--s7) 0}
    .home .shot img{
    -webkit-mask-image:linear-gradient(to right,#000 80%,transparent);
    mask-image:linear-gradient(to right,#000 80%,transparent);
  }
}

.doc{font-size:16px;line-height:var(--lh-read)}
.doc main{padding-block:var(--s7) var(--s9)}
.doc h1{font-size:clamp(28px,4.5vw,38px);line-height:1.15;letter-spacing:-.025em;
  margin:0 0 var(--s3);font-weight:600}
.doc .updated{color:var(--dimmer);font-size:var(--t-sm);margin:0 0 var(--s6)}
.doc h2{font-size:var(--t-xl);letter-spacing:-.015em;margin:var(--s7) 0 var(--s3);
  padding-top:var(--s5);border-top:1px solid var(--line);font-weight:600}
.doc h2:first-of-type{border-top:0;padding-top:0}
.doc h3{font-size:var(--t-lg);margin:var(--s5) 0 var(--s2);color:var(--text);font-weight:600}
.doc p,.doc li{color:var(--dim);font-size:15.5px}
.doc p{margin:0 0 var(--s3)}
.doc ul{margin:0 0 var(--s4);padding-left:var(--s5)}
.doc li{margin-bottom:6px}
.doc dl.items{margin:0 0 var(--s5)}
.doc dl.items dt{color:var(--text);font-weight:600;font-size:15.5px;margin:var(--s4) 0 2px}
.doc dl.items dt:first-child{margin-top:0}
.doc dl.items dd{margin:0;color:var(--dim);font-size:15.5px}
.doc a{color:var(--accent-hi)}
.doc a:hover{color:var(--text)}
.doc .brand{color:var(--text)}
.doc strong{color:var(--text);font-weight:600}
.doc .lang{display:flex;gap:var(--s2);flex-wrap:wrap;margin:0 0 var(--s6)}
.doc .lang a{display:inline-block;border:1px solid var(--line);border-radius:var(--r-pill);
  padding:6px 15px;font-size:var(--t-sm);color:var(--dim);text-decoration:none;
  transition:border-color .14s ease,color .14s ease,background .14s ease}
.doc .lang a:hover{border-color:var(--line2);color:var(--text);background:var(--panel)}
.doc .callout{background:var(--panel);border:1px solid var(--line);border-radius:var(--r3);
  padding:var(--s5);margin:0 0 var(--s5)}
.doc .callout p:last-child{margin-bottom:0}
.doc table{width:100%;border-collapse:collapse;margin:0 0 var(--s5);font-size:var(--t-sm);
  display:block;overflow-x:auto}
.doc th,.doc td{text-align:left;padding:10px var(--s3) 10px 0;border-bottom:1px solid var(--line);
  vertical-align:top;color:var(--dim)}
.doc th{color:var(--text);font-weight:600;white-space:nowrap}
.doc .divider{margin:var(--s9) 0 0;border:0;border-top:1px solid var(--line)}
.doc section{scroll-margin-top:var(--s7)}
.doc header a.back{color:var(--dim);text-decoration:none;font-size:var(--t-sm)}
.doc header a.back:hover{color:var(--text)}
.doc .yes,.doc .no{color:var(--text);font-weight:600;white-space:nowrap}
.doc code{font-family:var(--mono);font-size:.92em;background:var(--panel);
  border:1px solid var(--line);border-radius:var(--r1);padding:1px 5px}
.doc .qa th{width:38%}
.doc .subs th{white-space:nowrap}

@media(max-width:640px){
  .doc .qa tr{display:block;border-bottom:1px solid var(--line);padding:11px 0}
  .doc .qa th,.doc .qa td{display:block;width:auto;border:0;padding:0}
  .doc .qa th{margin-bottom:3px}
  .doc .subs tr.hdr{display:none}
  .doc .subs tr{display:block;border-bottom:1px solid var(--line);padding:13px 0}
  .doc .subs td{display:block;width:auto;border:0;padding:1px 0}
  .doc .subs td:first-child{margin-bottom:3px}
  .doc .subs td[data-l]::before{content:attr(data-l) ": ";color:var(--dimmer)}
}

@media print{
  @page{margin:18mm 16mm}
  .doc{
    --bg:#fff;--panel:#f4f5f7;--panel2:#f4f5f7;
    --line:#d0d5db;--line2:#b8bfc7;
    --text:#111;--dim:#222;--dimmer:#555;
    --accent-hi:#1f6f5a;
    --green:#1d6b47;--red:#a8322b;
  }
  .doc,body.doc{background:#fff}
  .doc main{padding:0}
  .doc .wrap{max-width:none;padding:0}
  .doc header{border-bottom:1px solid var(--line);margin-bottom:8mm}
  .doc header a.back,.doc .lang{display:none}
  .doc footer{display:none}     .doc .callout{border:1px solid var(--line);background:var(--panel)}
  .doc h2,.doc h3{break-after:avoid}
  .doc tr,.doc .callout,.doc li{break-inside:avoid}
  .doc a{text-decoration:underline}
  .doc a.brand{text-decoration:none}
}
