@font-face{font-family:"Saira Condensed";font-weight:700;font-display:swap;src:url(/fonts/saira-condensed-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Saira Condensed";font-weight:800;font-display:swap;src:url(/fonts/saira-condensed-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Red Hat Text";font-weight:300 700;font-display:swap;src:url(/fonts/red-hat-text-latin-wght-normal.woff2) format("woff2")}
@font-face{font-family:"JetBrains Mono";font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-latin-500-normal.woff2) format("woff2")}
:root{--blue:#1B3F9E;--blue-deep:#0E2468;--paper:#F4F6F9;--grid:#D3DCEB;--ink:#141A24;--muted:#465163;--orange:#F26B21;--orange-ink:#A8410C;--glass:#D6E9F7;--white:#fff;--r:4px;--hf:"Saira Condensed","Arial Narrow",sans-serif;--bf:"Red Hat Text",system-ui,sans-serif;--mf:"JetBrains Mono",ui-monospace,monospace;--cut:26px}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.65 var(--bf);overflow-x:hidden}
img,svg{max-width:100%}a{color:var(--blue)}
h1,h2,h3{font-family:var(--hf);font-weight:800;line-height:1.02;margin:0;letter-spacing:.005em;text-transform:uppercase}
h1{font-size:clamp(2.5rem,9.6vw,4.9rem)}h2{font-size:clamp(2rem,6.4vw,3.2rem)}h3{font-size:1.55rem;font-weight:700}
p{margin:0 0 1em}.wrap{width:min(1160px,100% - 32px);margin-inline:auto}
.sheet{font:500 .78rem/1.3 var(--mf);letter-spacing:.08em;text-transform:uppercase;color:var(--orange-ink);margin:0 0 .9rem}
.dark .sheet,.hero .sheet{color:#FFB48A}
.skip{position:absolute;left:12px;top:-60px;background:var(--orange);color:var(--ink);padding:.6rem 1rem;z-index:200;font-weight:700;border-radius:var(--r)}.skip:focus{top:8px}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.dark :focus-visible,.hero :focus-visible,.drawer :focus-visible{outline-color:#FFB48A}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.65rem 1.25rem;border-radius:var(--r);font:700 1rem/1.1 var(--bf);text-decoration:none;white-space:nowrap;border:2px solid transparent;cursor:pointer;transition:transform .15s ease,background .15s ease}
.btn:active{transform:scale(.97)}
.btn-or{background:var(--orange);color:var(--ink)}.btn-or:hover{background:#FF8444}
.btn-ln{border-color:currentColor;color:var(--white);background:transparent}.btn-ln:hover{background:rgba(255,255,255,.12)}
.btn-bl{background:var(--blue);color:#fff}.btn-bl:hover{background:var(--blue-deep)}
.btn-ghost{border-color:var(--blue);color:var(--blue);background:transparent}.btn-ghost:hover{background:var(--glass)}
.btns{display:flex;flex-wrap:wrap;gap:.75rem}.nb{white-space:nowrap}
/* header */
.hdr{position:sticky;top:0;z-index:60;background:var(--paper);border-bottom:2px solid var(--blue)}
.hdr .in{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:64px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);min-width:0}
.mark{width:36px;height:36px;flex:none;display:grid;place-items:center;background:var(--blue);color:#fff;font:800 1.05rem/1 var(--hf);letter-spacing:.02em;clip-path:polygon(0 0,100% 0,100% 70%,70% 100%,0 100%)}
.logo b{font:800 1.3rem/1 var(--hf);text-transform:uppercase;letter-spacing:.01em;white-space:nowrap}
.hr{display:flex;align-items:center;gap:8px}
.hdr .call{display:none}
.burger{width:48px;height:48px;border:2px solid var(--blue);background:transparent;border-radius:var(--r);display:grid;place-content:center;gap:5px;cursor:pointer}
.burger i{display:block;width:22px;height:2px;background:var(--blue);transition:transform .2s}
@media(min-width:520px){.hdr .call{display:inline-flex;min-height:44px;padding:.5rem .95rem}}
/* drawer */
.scrim{position:fixed;inset:0;background:rgba(14,36,104,.6);opacity:0;visibility:hidden;transition:opacity .25s;z-index:90}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(360px,88vw);background:var(--blue-deep);color:#fff;z-index:100;transform:translateX(100%);visibility:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),visibility 0s .3s;display:flex;flex-direction:column;padding:16px 22px 24px;overflow:auto;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:28px 28px}
.open .drawer{transform:none;visibility:visible;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.open .scrim{opacity:1;visibility:visible}
.drawer .x{align-self:flex-end;width:48px;height:48px;border:2px solid #fff;background:transparent;color:#fff;border-radius:var(--r);font-size:1.5rem;cursor:pointer}
.drawer nav{display:grid;margin:18px 0}.drawer nav a{color:#fff;text-decoration:none;font:800 1.9rem/1 var(--hf);text-transform:uppercase;padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.22);display:flex;justify-content:space-between}
.drawer nav a span{font:500 .75rem var(--mf);color:#FFB48A;align-self:center}
.drawer nav a[aria-current=page]{color:#FFB48A}
.drawer .d-in{font-size:.95rem;color:#DCE5FA}.drawer .d-in a{color:#fff}
body.lock{overflow:hidden}
/* hero */
.hero{background:var(--blue);color:#fff;position:relative;padding:34px 0 0;background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);background-size:32px 32px;clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%);padding-bottom:calc(var(--cut) + 6px)}
.hero .cols{display:grid;gap:22px}
.hero h1{max-width:13ch}.hero .lede{font-size:1.15rem;max-width:34rem;color:#E4ECFF;margin:1rem 0 1.4rem}
.draw{width:100%;height:auto;display:block}
.draw .ln{fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.draw .dm{fill:none;stroke:#FFB48A;stroke-width:1.6}
.draw .ac{fill:rgba(255,255,255,.12)}
.tblock{display:grid;grid-template-columns:1fr;border:2px solid rgba(255,255,255,.85);margin-top:26px;background:rgba(14,36,104,.55)}
.tblock div{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.4)}.tblock div:last-child{border-bottom:0}
.tblock small{display:block;font:500 .7rem/1.3 var(--mf);letter-spacing:.08em;text-transform:uppercase;color:#FFB48A}
.tblock span{font-weight:600;font-size:1rem}.tblock a{color:#fff}
@media(min-width:700px){.tblock{grid-template-columns:1.2fr 1.6fr 1.5fr 1fr}.tblock div{border-bottom:0;border-right:1px solid rgba(255,255,255,.4)}.tblock div:last-child{border-right:0}}
@media(min-width:900px){.hero{padding-top:56px}.hero .cols{grid-template-columns:1fr 1.15fr;align-items:center;gap:30px}}
.js .draw .ln,.js .draw .dm{stroke-dasharray:1;stroke-dashoffset:1}
.js.go .hero .draw .ln,.js.go .hero .draw .dm{animation:draw 1.5s cubic-bezier(.4,0,.2,1) forwards;animation-delay:calc(var(--i,0)*70ms)}
.js.go .hero .draw .ac{animation:fadein .8s 1.2s both}
@keyframes draw{to{stroke-dashoffset:0}}@keyframes fadein{from{opacity:0}to{opacity:1}}
/* intro overlay */
.ov{display:none}
.intro .ov{display:grid;position:fixed;inset:0;z-index:300;background-color:var(--blue);background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);background-size:32px 32px;place-content:center;justify-items:center;gap:18px;padding:20px;color:#fff;transition:clip-path .7s cubic-bezier(.7,0,.2,1);clip-path:inset(0 0 0 0)}
.ov.out{clip-path:inset(0 0 100% 0)}
.ov .draw{width:min(640px,88vw)}
.intro .ov .ln,.intro .ov .dm{animation:draw 1.7s cubic-bezier(.4,0,.2,1) forwards;animation-delay:calc(var(--i,0)*80ms + .2s)}
.ov .tt{font:800 clamp(1.7rem,7vw,3rem)/1 var(--hf);text-transform:uppercase;text-align:center;opacity:0;animation:fadein .6s 1.9s forwards}
.ov .ts{font:500 .78rem var(--mf);letter-spacing:.08em;text-transform:uppercase;color:#FFB48A;opacity:0;animation:fadein .6s 2.2s forwards;text-align:center}
.ov .sk{position:absolute;right:16px;top:16px}
/* sections */
section{padding:clamp(54px,9vw,96px) 0;position:relative}
.sum{background:var(--paper)}
.sum .cols{display:grid;gap:30px}@media(min-width:900px){.sum .cols{grid-template-columns:1.25fr 1fr;gap:56px}}
.sum p.big{font-size:1.25rem;line-height:1.55}
.spec{width:100%;border-collapse:collapse;border:2px solid var(--blue);background:#fff;font-size:.98rem}
.spec th,.spec td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--grid);vertical-align:top}
.spec th{font:500 .72rem/1.4 var(--mf);letter-spacing:.08em;text-transform:uppercase;color:var(--blue);width:34%;background:var(--glass)}
.spec tr:last-child th,.spec tr:last-child td{border-bottom:0}
.walk{background:#fff;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:32px 32px;border-block:2px solid var(--blue)}
.walk .intro-p{max-width:40rem;color:var(--muted)}
.wk{display:grid;gap:22px;margin-top:26px}@media(min-width:900px){.wk{grid-template-columns:1.5fr 1fr;align-items:start}}
.stage{position:relative;background:#fff;border:2px solid var(--blue);padding:14px 14px 8px}
.stage svg{display:block}
.stage .ln{fill:none;stroke:var(--blue);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.stage .dm{fill:none;stroke:var(--orange-ink);stroke-width:1.6}.stage .ac{fill:var(--glass)}
.pin{position:absolute;width:32px;height:32px;margin:-16px 0 0 -16px;border-radius:50%;border:2px solid var(--blue);background:var(--orange);color:var(--ink);font:800 .95rem/1 var(--hf);cursor:pointer;display:grid;place-items:center;padding:0}
.pin[aria-pressed=true]{background:var(--blue);color:#fff;box-shadow:0 0 0 4px rgba(27,63,158,.25)}
.pin.done::after{content:"";position:absolute;right:-5px;top:-5px;width:14px;height:14px;border-radius:50%;background:#1E7A46;border:2px solid #fff}
.pin:not([aria-pressed=true]){animation:pulse 2.4s ease-out 3}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(242,107,33,.55)}80%,100%{box-shadow:0 0 0 12px rgba(242,107,33,0)}}
.panel{background:var(--blue-deep);color:#fff;padding:22px;border-radius:0;clip-path:polygon(0 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%)}
.panel .pn{font:500 .75rem var(--mf);letter-spacing:.08em;text-transform:uppercase;color:#FFB48A;margin:0 0 .5rem}
.panel h3{font-size:1.9rem;margin-bottom:.6rem}.panel p{margin:0 0 .8rem}
.panel .lbl{display:block;font:500 .72rem var(--mf);letter-spacing:.08em;text-transform:uppercase;color:#9FB8F0}
.tick{display:flex;gap:10px;align-items:center;padding:12px 0 4px;font-weight:600;cursor:pointer}
.tick input{width:22px;height:22px;accent-color:var(--orange)}
.meter{height:8px;background:rgba(255,255,255,.2);margin:12px 0 6px}.meter i{display:block;height:100%;width:0;background:var(--orange);transition:width .35s ease}
.panel .cnt{font:500 .8rem var(--mf);margin:0;color:#DCE5FA}
.static-pts{margin:26px 0 0;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));padding:0;list-style:none;display:grid;gap:12px}.static-pts li{background:#fff;border:2px solid var(--blue);padding:14px 16px}
/* parts list */
.parts{background:var(--paper)}
.plist{list-style:none;margin:30px 0 0;padding:0;border-top:2px solid var(--blue)}
.plist li{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;padding:20px 0;border-bottom:1px solid var(--grid)}
.plist .no{font:500 .95rem var(--mf);color:var(--orange-ink);padding-top:.35rem}
.plist h3{color:var(--blue)}.plist p{margin:.25rem 0 0;color:var(--muted);max-width:42rem}
.plist .more{grid-column:2}
@media(min-width:760px){.plist li{grid-template-columns:70px 1fr 1.3fr;align-items:baseline}.plist p{margin:0}.plist .more{grid-column:auto}}
.dark{background:var(--blue-deep);color:#fff;clip-path:polygon(0 var(--cut),var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%)}
.dark a{color:#fff}.dark p{color:#E4ECFF}
.dark .cols{display:grid;gap:26px}@media(min-width:900px){.dark .cols{grid-template-columns:1fr 1fr;gap:56px;align-items:center}}
.chip{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.chip li{border:2px solid #FFB48A;color:#fff;padding:.4rem .8rem;font:500 .8rem var(--mf);letter-spacing:.05em;text-transform:uppercase}
.rate{display:grid;gap:20px}@media(min-width:760px){.rate{grid-template-columns:auto 1fr;gap:44px;align-items:center}}
.rate .num{font:800 clamp(5rem,20vw,9rem)/.85 var(--hf);color:var(--blue)}
.rate .num small{font-size:.35em;color:var(--muted);margin-left:.1em}
.rate .note{font:500 .8rem var(--mf);color:var(--muted)}
/* faq */
.faq details{border-bottom:1px solid var(--grid);background:#fff;border:2px solid var(--blue);margin-bottom:10px}
.faq summary{cursor:pointer;padding:16px 18px;font:700 1.12rem/1.3 var(--bf);list-style:none;display:flex;justify-content:space-between;gap:12px;min-height:48px;align-items:center}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";font:800 1.6rem/1 var(--hf);color:var(--orange-ink);flex:none}
.faq details[open] summary::after{content:"\2212"}.faq details p{padding:0 18px 16px;margin:0;color:var(--muted)}
.cta{background:var(--orange);color:var(--ink);clip-path:polygon(0 var(--cut),var(--cut) 0,100% 0,100% 100%,0 100%)}
.cta .cols{display:grid;gap:22px}@media(min-width:900px){.cta .cols{grid-template-columns:1.2fr 1fr;align-items:center;gap:50px}}
.cta .sheet{color:var(--ink)}.cta p{max-width:32rem}.cta .btn-ln{color:var(--ink)}.cta .btn-ln:hover{background:rgba(20,26,36,.1)}
.cta .btn-bl:hover{background:var(--ink)}
.cta a:not(.btn){color:var(--ink)}
/* inner */
.phead{background:var(--blue);color:#fff;padding:44px 0 calc(var(--cut) + 34px);background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);background-size:32px 32px;clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%)}
.phead .crumb{font:500 .78rem var(--mf);letter-spacing:.06em;text-transform:uppercase;margin:0 0 1rem}.phead .crumb a{color:#fff}
.phead h1{font-size:clamp(2.2rem,8vw,4rem);max-width:18ch}.phead p.lede{max-width:40rem;color:#E4ECFF;font-size:1.12rem;margin:1rem 0 0}
.grid2{display:grid;gap:28px}@media(min-width:900px){.grid2{grid-template-columns:1fr 1fr;gap:50px}}
.card{background:#fff;border:2px solid var(--blue);padding:22px}
.card h3{color:var(--blue);margin-bottom:.5rem}
.hrs{width:100%;border-collapse:collapse}.hrs td{padding:8px 0;border-bottom:1px solid var(--grid)}.hrs td:last-child{text-align:right;font-weight:600;white-space:nowrap}
.ul{padding-left:1.1rem}.ul li{margin-bottom:.5rem}
.note-box{border-left:6px solid var(--orange);background:#fff;padding:14px 18px;margin:20px 0;color:var(--muted)}
/* footer */
.ftr{background:var(--ink);color:#DDE3EE;padding:50px 0 30px}
.ftr .cols{display:grid;gap:30px}@media(min-width:800px){.ftr .cols{grid-template-columns:1.3fr 1fr 1fr}}
.ftr h2{font-size:1.2rem;color:#FFB48A;margin-bottom:.7rem}.ftr a{color:#fff}.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.ftr .logo{color:#fff}.ftr .legal{margin-top:34px;padding-top:18px;border-top:1px solid rgba(255,255,255,.2);font-size:.9rem;display:flex;flex-wrap:wrap;gap:6px 24px;justify-content:space-between}
/* reveal */
.js .rv{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0ms)}
.js .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}
.js .rv{opacity:1;transform:none}.js .draw .ln,.js .draw .dm{stroke-dasharray:none;stroke-dashoffset:0}.intro .ov{display:none}.pin:not([aria-pressed=true]){animation:none}}
.js .stage .draw .ln,.js .stage .draw .dm{stroke-dasharray:none;stroke-dashoffset:0}
.plist h3,.plist p{grid-column:2}
@media(min-width:760px){.plist h3,.plist p{grid-column:auto}}
.hero h1{max-width:none}@media(min-width:900px){.hero h1{max-width:12ch}}
@media(min-width:760px){.plist li{grid-template-columns:70px 1fr 1.3fr}.plist .no{grid-row:1/span 2}.plist h3{grid-column:2;grid-row:1}.plist .more{grid-column:2;grid-row:2}.plist p{grid-column:3;grid-row:1/span 2}}
@media(min-width:900px){.hero h1{max-width:none;font-size:clamp(3rem,5.4vw,4.6rem)}}
