@font-face{font-family:'Hanken Grotesk';font-style:normal;font-display:swap;font-weight:100 900;src:url(fonts/hanken-grotesk-latin-wght-normal.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:'Petrona';font-style:normal;font-display:swap;font-weight:100 900;src:url(fonts/petrona-latin-wght-normal.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}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--fs,1.0625rem)/1.65 var(--txt);font-kerning:normal;text-rendering:optimizeLegibility}
img,svg{max-width:100%;height:auto}
a{color:var(--link,var(--ink));text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--focus,var(--acc));outline-offset:2px;border-radius:2px}
.skip{position:absolute;left:-9999px;top:0;z-index:50;background:var(--ink);color:var(--paper);padding:.6rem 1rem}
.skip:focus{left:1rem;top:1rem}
.wrap{width:min(100% - 2rem,var(--max,1180px));margin-inline:auto}
h1,h2,h3{font-family:var(--dis);color:var(--head,var(--ink));line-height:1.15;margin:0}
p{margin:0 0 1rem}
.hd .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.brand{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;color:inherit;font-family:var(--dis);font-weight:700}
.brand svg{width:2rem;height:2rem;flex:none}
.hd nav{display:flex;gap:.25rem 1.4rem;flex-wrap:wrap;justify-content:flex-end;font-family:var(--dis)}
.hd nav a{text-decoration:none;padding:.35rem 0;border-bottom:2px solid transparent}
.hd nav a:hover{border-bottom-color:currentColor}
.hd nav a[aria-current="page"]{border-bottom-color:var(--acc)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.2rem .5rem;margin:0 0 1.2rem;padding:0;font:500 .9rem/1.4 var(--dis);color:var(--muted)}
.crumbs li+li::before{content:"/";margin-right:.5rem;opacity:.6}
.crumbs a{color:inherit}
.ah h1{font-size:clamp(2rem,4.6vw,3.4rem);max-width:20ch;letter-spacing:-.01em}
.ah .sf{font-size:clamp(1.1rem,1.6vw,1.28rem);line-height:1.55;max-width:62ch;margin:1.1rem 0 0;color:var(--soft,var(--ink))}
.by{display:flex;flex-wrap:wrap;gap:.3rem 1.6rem;margin-top:1.5rem;font:500 .92rem/1.4 var(--dis);color:var(--muted)}
.by a{color:var(--ink)}
.prose{max-width:var(--measure,68ch);min-width:0}
.prose h2{font-size:clamp(1.45rem,2.4vw,1.8rem);margin:2.6rem 0 .9rem;scroll-margin-top:1.5rem}
.prose h3{font-size:1.18rem;margin:1.8rem 0 .6rem}
.prose ul,.prose ol{padding-left:1.3rem;margin:0 0 1.2rem}
.prose li{margin:.35rem 0}
.prose li::marker{color:var(--acc-ink,var(--acc))}
.prose strong{font-weight:650}
.keypoints{background:var(--kp-bg);border:var(--kp-border,0);border-left:4px solid var(--acc);padding:1.2rem 1.4rem .4rem 1.4rem;margin:0 0 2rem;border-radius:var(--r-sm,0)}
.keypoints h2{font-size:1.15rem;margin:0 0 .5rem}
.redflag{border:2px solid var(--alert);border-radius:var(--r-sm,0);padding:1.1rem 1.4rem .4rem;margin:2.2rem 0;background:var(--alert-bg)}
.redflag h2{margin:0 0 .6rem;font-size:1.3rem;color:var(--alert-ink,var(--ink))}
.table-wrap{overflow-x:auto;margin:1.2rem 0 1.6rem;border:1px solid var(--line);border-radius:var(--r-sm,0);-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font:400 .95rem/1.45 var(--dis);min-width:520px}
th,td{text-align:left;vertical-align:top;padding:.7rem .85rem;border-bottom:1px solid var(--line)}
thead th{background:var(--th-bg);color:var(--th-ink);font-weight:650}
tbody tr:last-child td{border-bottom:0}
.fig{margin:1.8rem 0}
.fig img{display:block;width:100%;border-radius:var(--r-sm,0);border:1px solid var(--line);background:#fff}
.fig figcaption{font:400 .88rem/1.45 var(--dis);color:var(--muted);margin-top:.6rem}
.faq details{border-bottom:1px solid var(--line)}
.faq details:first-child{border-top:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:1rem 2.2rem 1rem 0;position:relative;font:600 1.03rem/1.4 var(--dis)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:.3rem;top:1.25rem;width:.6rem;height:.6rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(-135deg);top:1.5rem}
.faq details p{margin:0 0 1.1rem}
.refs{font-size:.9rem;line-height:1.55;color:var(--soft,var(--ink))}
.refs a{word-break:break-word}
.disc{margin-top:2.4rem;padding-top:1.2rem;border-top:1px solid var(--line);font:400 .9rem/1.5 var(--dis);color:var(--muted)}
.note{font:400 .95rem/1.5 var(--dis);background:var(--kp-bg);padding:.8rem 1rem;border-radius:var(--r-sm,0)}
.toc h2,.toc-d summary{font:650 .95rem/1.3 var(--dis)}
.toc ol,.toc-d ol{list-style:none;margin:0;padding:0;font:400 .93rem/1.35 var(--dis)}
.toc a,.toc-d a{text-decoration:none;color:var(--soft,var(--ink))}
.toc a:hover,.toc-d a:hover{color:var(--ink);text-decoration:underline}
.btn{display:inline-flex;align-items:center;gap:.5rem;font:650 1rem/1.2 var(--dis);text-decoration:none;padding:.85rem 1.25rem;border-radius:var(--r-btn,0);border:2px solid var(--ink);cursor:pointer}
.btn.pri{background:var(--btn-bg,var(--ink));color:var(--btn-ink,var(--paper));border-color:var(--btn-bg,var(--ink))}
.btn.sec{background:transparent;color:var(--ink)}
.btn:hover{filter:brightness(1.08)}
.alist{list-style:none;margin:0;padding:0}
.alist .st{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ft{margin-top:5rem}
.ft .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem 3rem;padding:3.2rem 0 2rem}
.ft h2{font:650 .95rem/1.3 var(--dis);margin:0 0 .8rem}
.ft ul{list-style:none;margin:0;padding:0;font:400 .95rem/1.4 var(--dis)}
.ft li{margin:.45rem 0}
.ft a{color:inherit}
.ft .f-about p{font:400 .95rem/1.55 var(--dis);max-width:38ch;margin-top:1rem}
.ft .legal{grid-column:1/-1;font:400 .88rem/1.5 var(--dis);border-top:1px solid var(--ft-line);padding-top:1.2rem;margin:0}
@media (max-width:820px){.ft .wrap{grid-template-columns:1fr 1fr}.ft .f-about{grid-column:1/-1}}
@media (max-width:760px){.hd .wrap{flex-direction:column;align-items:flex-start;gap:.6rem}.hd nav{justify-content:flex-start}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.cite h2{font:650 1.02rem/1.3 var(--dis);margin:0 0 .5rem}
.cite-txt{font:400 .92rem/1.5 var(--dis);color:var(--soft,var(--ink));margin:0 0 .8rem;word-break:break-word}
.cite-row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.cite .btn{padding:.55rem .95rem;font-size:.92rem}
.cite-ok{font:500 .88rem/1.3 var(--dis);color:var(--muted)}
.facts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.facts li{font:400 1rem/1.5 var(--txt)}
.facts strong{display:block;font:750 1.05rem/1.3 var(--dis);margin-bottom:.35rem}
.facts small{display:block;font:400 .84rem/1.4 var(--dis);color:var(--muted);margin-top:.4rem}
@media (max-width:860px){.facts{grid-template-columns:1fr}}
.hd nav a{color:var(--nav,var(--ink))}
.ft h2{color:inherit}
.band .plain>h2{font-size:clamp(1.5rem,2.6vw,2rem);margin:0 0 1.4rem}
:root{--paper:#E8EDF2;--sheet:#FFFFFF;--ink:#0F2A46;--soft:#2F4560;--muted:#5B6B7E;--line:#D4DDE6;--acc:#6A55B0;--acc-ink:#6A55B0;--link:#2F4FA0;
--cap-l:#7A64C2;--cap-g:#E3B23C;--cap-r:#C8433A;--cap-s:#8D98A6;--hi:#C2362B;--lo:#2563A8;--in:#2E7D5B;
--kp-bg:#F3F1FA;--alert:#C2362B;--alert-bg:#FFF6F5;--alert-ink:#7D1F18;--th-bg:#EEF2F6;--th-ink:#0F2A46;--ft-line:#C4CFDA;
--dis:"Hanken Grotesk",system-ui,sans-serif;--txt:"Petrona",Georgia,serif;--fs:1.1rem;--max:1180px;--measure:68ch;--r-sm:10px;--r-btn:10px;--btn-bg:#0F2A46;--btn-ink:#fff}
h1,h2,h3{font-weight:700;letter-spacing:-.02em}
.hd{padding:1rem 0}
.hd .wrap{background:var(--sheet);border-radius:14px;padding:.8rem 1.2rem;box-shadow:0 1px 2px rgba(15,42,70,.08)}
.brand{font-size:1.15rem;letter-spacing:-.02em}
.brand svg{width:2.2rem}
.hd nav{font-size:.97rem;font-weight:500}
.hero{padding:clamp(2rem,5vw,3.5rem) 0 1rem}
.hero .two{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.hero h1{font-size:clamp(2.3rem,5vw,3.9rem);line-height:1.04;max-width:14ch;margin-top:.5rem}
.hero .lede{font-size:clamp(1.1rem,1.5vw,1.25rem);line-height:1.55;color:var(--soft);margin:1.3rem 0 1.7rem;max-width:46ch}
.acts{display:flex;flex-wrap:wrap;gap:.7rem}
.stat{margin:1.6rem 0 0;font:400 .92rem/1.5 var(--dis);color:var(--muted);max-width:50ch}
.rr{background:var(--sheet);border-radius:16px;box-shadow:0 1px 2px rgba(15,42,70,.08),0 20px 40px -24px rgba(15,42,70,.35);overflow:hidden}
.rr h2{font-size:1.05rem;padding:1rem 1.3rem;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:.6rem}
.rr h2 i{width:.8rem;height:.8rem;border-radius:3px;background:var(--cap-l);flex:none}
.rr-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;border-bottom:1px solid var(--line)}
.rr-grid>div{padding:.7rem .8rem;border-right:1px solid var(--line);min-width:0;display:flex;flex-direction:column;justify-content:flex-end}
.rr-grid>div:last-child{border-right:0}
.rr-grid label{display:block;font:600 .78rem/1.2 var(--dis);color:var(--muted);margin-bottom:.35rem;white-space:nowrap}
.rr-grid select{font-size:.95rem!important;text-overflow:ellipsis}
.rr-grid input,.rr-grid select{width:100%;font:600 1.05rem/1.2 var(--dis);font-variant-numeric:tabular-nums;color:var(--ink);border:1.5px solid var(--line);border-radius:8px;padding:.5rem .55rem;background:#fff}
.rr-grid input:focus-visible,.rr-grid select:focus-visible{outline:3px solid var(--acc);outline-offset:1px}
.rr-out{padding:1.2rem 1.3rem 1.3rem}
.bar{position:relative;height:42px;margin:1.6rem 0 .5rem}
.bar .zone{position:absolute;top:14px;height:14px;border-radius:7px}
.bar .lo{left:0;width:20%;background:#DCE8F5}.bar .ok{left:20%;width:60%;background:#D6EEE2}.bar .hi{left:80%;width:20%;background:#F8DEDB}
.bar .pin{position:absolute;top:0;width:4px;height:42px;margin-left:-2px;background:var(--ink);border-radius:2px;transition:left .35s cubic-bezier(.2,.8,.2,1)}
.bar .pin b{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:.25rem;font:700 .82rem/1 var(--dis);white-space:nowrap;background:var(--ink);color:#fff;padding:.25rem .45rem;border-radius:5px}
.ticks{position:relative;height:1.1rem;font:600 .8rem/1 var(--dis);color:var(--muted)}
.ticks span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.flag{display:inline-flex;align-items:center;gap:.5rem;font:700 1.15rem/1.3 var(--dis);margin:.8rem 0 .3rem}
.flag em{font-style:normal;font-size:.8rem;padding:.2rem .5rem;border-radius:5px;color:#fff;background:var(--in)}
.flag[data-k="H"] em{background:var(--hi)}.flag[data-k="L"] em{background:var(--lo)}
.rr-out p{font:400 .95rem/1.5 var(--dis);color:var(--soft);margin:.2rem 0 0}
.rr .t-note{font:400 .84rem/1.45 var(--dis);color:var(--muted);padding:.9rem 1.3rem;background:#F6F8FA;border-top:1px solid var(--line);margin:0}
.band{padding:clamp(2rem,4vw,3rem) 0 0}
.sheetbox{background:var(--sheet);border-radius:16px;padding:clamp(1.3rem,3vw,2.4rem);box-shadow:0 1px 2px rgba(15,42,70,.08)}
.sheetbox>h2{font-size:clamp(1.4rem,2.4vw,1.8rem);margin:0 0 1.2rem}
.alist li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.25rem 1rem;padding:1.2rem 0;border-top:1px solid var(--line);align-items:baseline}
.alist li::before{content:"";grid-row:1/3;width:.75rem;height:1.6rem;border-radius:3px 3px 5px 5px;background:var(--cap-l);align-self:start;margin-top:.15rem}
.alist li:nth-child(4n+2)::before{background:var(--cap-g)}.alist li:nth-child(4n+3)::before{background:var(--cap-r)}.alist li:nth-child(4n+4)::before{background:var(--cap-s)}
.alist .it{grid-column:2;font:700 clamp(1.15rem,2vw,1.4rem)/1.25 var(--dis);text-decoration:none;color:var(--ink)}
.alist .it:hover{text-decoration:underline}
.alist .dsc{grid-column:2;color:var(--soft)}
.alist .mins{grid-column:3;grid-row:1;font:500 .88rem/1 var(--dis);color:var(--muted);white-space:nowrap}
.how{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;list-style:none;margin:0;padding:0}
.how h3{font-size:1.05rem;margin:0 0 .35rem}
.how p{color:var(--soft);margin:0;font-size:1rem}
.art .ah{background:var(--sheet);border-radius:16px;padding:clamp(1.4rem,4vw,2.8rem);margin-top:1rem;box-shadow:0 1px 2px rgba(15,42,70,.08)}
.ag{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:1.2rem;margin-top:1.2rem;align-items:start}
.ag.one{grid-template-columns:minmax(0,1fr)}
.ag .prose{background:var(--sheet);border-radius:16px;padding:clamp(1.3rem,4vw,2.8rem);max-width:none;box-shadow:0 1px 2px rgba(15,42,70,.08)}
.ag .prose>*{max-width:var(--measure)}
.ag .prose>.table-wrap,.ag .prose>.fig{max-width:none}
.toc{position:sticky;top:1rem;background:var(--sheet);border-radius:16px;padding:1.2rem 1.3rem;box-shadow:0 1px 2px rgba(15,42,70,.08)}
.toc h2{margin:0 0 .7rem}
.toc li{padding:.4rem 0;border-top:1px dashed var(--line)}
.prose h2{padding-top:1.4rem;border-top:1px solid var(--line)}
.prose .keypoints h2,.prose .redflag h2{border-top:0;padding-top:0}
.prose>h2:first-of-type{margin-top:2rem}
.cite{grid-column:1;background:var(--sheet);border-radius:16px;padding:1.2rem 1.4rem;box-shadow:0 1px 2px rgba(15,42,70,.08)}
.ft{background:var(--sheet);margin-top:4rem;border-top:1px solid var(--line)}
@media (max-width:980px){.hero .two{grid-template-columns:1fr}}
@media (max-width:900px){.ag{grid-template-columns:minmax(0,1fr)}.toc{position:static;grid-row:1}.how{grid-template-columns:1fr}}
@media (max-width:640px){.rr-grid{grid-template-columns:1fr 1fr}.rr-grid>div:nth-child(2){border-right:0}.rr-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.alist li{grid-template-columns:auto minmax(0,1fr)}.alist .mins{grid-column:2;grid-row:auto}}
.prose .rr{margin:2rem 0;border:1px solid var(--line);box-shadow:none}
.prose .rr h2{border-top:0;margin:0;padding:1rem 1.3rem;font-size:1.05rem}

/* network forms v1 */
.sform{font-family:var(--dis,inherit);border:1.5px solid color-mix(in srgb,currentColor 22%,transparent);background:color-mix(in srgb,currentColor 3%,transparent);border-radius:14px;padding:clamp(1.1rem,3vw,2rem);margin:1.5rem 0;display:grid;gap:1.1rem;font-size:1rem;line-height:1.5}
.sform .f-row{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
.sform .f-field{display:flex;flex-direction:column;min-width:0}
.sform label,.sform legend{display:block;font-size:.97rem;font-weight:600;opacity:1;margin:0 0 .4rem;color:inherit;font-family:inherit}
.sform label small,.sform legend small{display:block;font-weight:400;opacity:.78;font-size:.86rem;margin-top:.15rem}
.sform input[type=text],.sform input[type=email],.sform input[type=url],.sform input[type=tel],.sform input[type=number],.sform select,.sform textarea{position:static;inset:auto;opacity:1;height:auto;margin:0;width:100%;box-sizing:border-box;font:400 1rem/1.4 var(--dis,inherit);padding:.7rem .8rem;border:1.5px solid #9aa3b2;border-radius:8px;background:#fff;color:#111;cursor:text}
.sform select{cursor:pointer}
.sform textarea{resize:vertical;min-height:5rem}
.sform input:focus-visible,.sform select:focus-visible,.sform textarea:focus-visible{outline:3px solid var(--acc,#E2A11B);outline-offset:1px;border-color:transparent}
.sform fieldset{border:0;margin:0;padding:0;min-width:0}
.sform .f-group{display:grid;gap:1.1rem;padding-top:1.2rem;border-top:1.5px solid color-mix(in srgb,currentColor 18%,transparent)}
.sform .f-group:first-of-type{border-top:0;padding-top:0}
.sform .f-group>legend{font-size:1.15rem;font-weight:700;margin-bottom:.2rem;float:left;width:100%}
.sform .f-group>legend+*{clear:both}
.sform .f-sub{margin:0;opacity:.8;font-size:.92rem}
.sform .f-opts{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem}
.sform .f-opt{font-weight:400;display:flex;align-items:center;gap:.45rem;margin:0;cursor:pointer}
.sform input[type=radio],.sform input[type=checkbox]{position:static;inset:auto;opacity:1;width:1.15rem;height:1.15rem;margin:0;flex:none;accent-color:var(--ink,#1B2550);cursor:pointer}
.sform .f-check{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:start}
.sform .f-check input{margin-top:.2rem}
.sform .f-check label{font-weight:400;margin:0}
.sform .f-consent{display:grid;gap:.7rem}
.sform .f-notice{font-size:.92rem;border-left:4px solid var(--acc,#E2A11B);padding:.2rem 0 .2rem 1rem}
.sform .f-notice h3{font-size:1rem;margin:0 0 .3rem}
.sform .f-notice p{margin:.3rem 0}
.sform .f-ver{opacity:.75;font-size:.85rem}
.sform [hidden]{display:none!important}
.sform .f-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.sform button{justify-self:start;cursor:pointer;font-size:1rem}
@media (max-width:640px){.sform .f-row{grid-template-columns:1fr}}
@media (max-width:760px){.hd nav{flex-wrap:wrap;overflow:visible;gap:.3rem .85rem;padding-bottom:.3rem;font-size:.93rem}.hd nav a{padding-top:.22rem;padding-bottom:.22rem}}
