:root{--navy:#0a1d37;--navy2:#06142a;--blue:#2f78d0;--blue-d:#1f5fb0;--sky:#8fc0f0;--silver:#c9d3df;--bg:#f4f6f9;--ink:#18243a;--muted:#59667a;--line:#dce3ec;--wrap:1160px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:17px/1.7 "Segoe UI",system-ui,-apple-system,Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:#fff;-webkit-text-size-adjust:100%}
a{color:var(--blue-d);text-underline-offset:3px}
a:hover{color:var(--navy)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:10px 14px;z-index:99}
.skip:focus{left:10px;top:10px}
h1,h2,h3,h4{color:var(--navy);line-height:1.18;margin:0 0 .5em;font-weight:600;letter-spacing:-.01em}
h1{font-size:clamp(2.2rem,5vw,3.7rem);font-weight:600}
h2{font-size:clamp(1.6rem,3vw,2.3rem)}
h3{font-size:1.2rem}
p{margin:0 0 1.05em}
.eyebrow{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--blue);font-weight:700;margin-bottom:1em}
.fine{font-size:.92rem;color:var(--muted)}
/* header */
.hdr{background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:20px}
.logo{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--navy)}
.logo svg{width:44px;height:44px;flex:none}
.logo .wm{display:flex;flex-direction:column;line-height:1}
.logo .wm b{font-size:1.08rem;letter-spacing:.22em;font-weight:700;color:var(--navy)}
.logo .wm i{font-style:normal;font-size:.66rem;letter-spacing:.36em;color:var(--blue);margin-top:6px;font-weight:600}
.logo.light .wm b{color:#fff}
.nav{display:flex;align-items:center;gap:4px}
.nav a{color:var(--ink);text-decoration:none;padding:10px 14px;font-size:.96rem;font-weight:500;border-radius:4px}
.nav a:hover{color:var(--blue-d)}
.nav a.on{color:var(--blue-d);box-shadow:inset 0 -2px 0 var(--blue)}
.nav a.cta-nav{background:var(--navy);color:#fff;margin-left:10px;padding:11px 20px;box-shadow:none}
.nav a.cta-nav:hover{background:var(--blue-d);color:#fff}
.burger{display:none;background:none;border:0;padding:10px;cursor:pointer}
.burger span{display:block;width:24px;height:2px;background:var(--navy);margin:5px 0}
/* hero */
.hero{background:var(--navy);color:#fff;padding:110px 0 120px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 600' preserveAspectRatio='none'%3E%3Cg fill='none' stroke='%238fc0f0' stroke-width='1.2' opacity='.22'%3E%3Cpath d='M0 420C220 330 380 520 640 430S1040 280 1440 360'/%3E%3Cpath d='M0 460C240 370 400 560 660 470S1060 320 1440 400'/%3E%3Cpath d='M0 500C260 410 420 600 680 510S1080 360 1440 440'/%3E%3Cpath d='M0 380C200 290 360 480 620 390S1020 240 1440 320'/%3E%3C/g%3E%3C/svg%3E") center bottom/cover no-repeat}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 18%,rgba(10,29,55,0) 80%)}
.hero-in{position:relative;z-index:1}
.hero-in>*{max-width:800px}
.hero h1{color:#fff}
.hero .eyebrow{color:var(--sky)}
.lead{font-size:1.2rem;color:#c8d6e8;line-height:1.65}
.cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.btn{display:inline-block;background:var(--blue);color:#fff;text-decoration:none;font-weight:600;padding:15px 30px;border-radius:4px;border:2px solid var(--blue);font-size:1rem;cursor:pointer;font-family:inherit;letter-spacing:.01em}
.btn:hover{background:var(--blue-d);border-color:var(--blue-d);color:#fff}
.btn.ghost{background:transparent;border-color:rgba(255,255,255,.5);color:#fff}
.btn.ghost:hover{background:rgba(255,255,255,.12);color:#fff;border-color:#fff}
.btn.dark{background:var(--navy);border-color:var(--navy)}
.btn.dark:hover{background:var(--blue-d);border-color:var(--blue-d)}
/* strip */
.strip{background:var(--navy2);color:#c8d6e8;border-top:1px solid rgba(255,255,255,.08)}
.strip ul{list-style:none;margin:0 auto;padding:0;display:flex;justify-content:space-between;gap:10px;max-width:var(--wrap)}
.strip li{flex:1;padding:22px 24px;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;border-left:1px solid rgba(255,255,255,.1)}
.strip li:first-child{border-left:0}
.strip li span{display:block;color:var(--sky);font-size:.7rem;letter-spacing:.18em;margin-bottom:3px}
/* sections */
.sec{padding:88px 0}
.sec.alt{background:var(--bg)}
.sec.dark{background:var(--navy);color:#c8d6e8}
.sec.dark h2,.sec.dark h3{color:#fff}
.head{max-width:720px;margin-bottom:46px}
.page-hd{background:var(--navy);color:#fff;padding:74px 0 66px;position:relative;overflow:hidden}
.page-hd::before{content:"";position:absolute;right:0;top:0;bottom:0;width:55%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 300' preserveAspectRatio='none'%3E%3Cg fill='none' stroke='%238fc0f0' stroke-width='1.2' opacity='.22'%3E%3Cpath d='M0 200C160 130 260 250 420 190S680 110 800 150'/%3E%3Cpath d='M0 235C170 165 270 285 430 225S690 145 800 185'/%3E%3Cpath d='M0 165C150 95 250 215 410 155S670 75 800 115'/%3E%3C/g%3E%3C/svg%3E") center/cover no-repeat}
.page-hd .wrap{position:relative}
.page-hd h1{color:#fff;margin:0;max-width:820px;font-size:clamp(2rem,4.4vw,3.1rem)}
.page-hd .eyebrow{color:var(--sky)}
.page-hd p{color:#c8d6e8;max-width:680px;margin:18px 0 0;font-size:1.1rem}
.split{display:grid;grid-template-columns:1fr 1.15fr;gap:64px;align-items:start}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:34px 30px;position:relative}
.card::before{content:"";position:absolute;left:0;top:0;width:44px;height:3px;background:var(--blue)}
.card p{margin:0;color:var(--muted);font-size:.98rem}
.card .tag{display:block;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);font-weight:700;margin-bottom:14px}
.card .sub{display:block;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);font-size:.9rem;color:var(--ink)}
.sec.dark .card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}
.sec.dark .card p{color:#b4c4d9}
.sec.dark .card h3{color:#fff}
.num{font-size:.8rem;letter-spacing:.18em;color:var(--sky);font-weight:700;margin-bottom:12px;display:block}
.sites{display:grid;gap:14px}
.sites a{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:22px 26px;text-decoration:none;color:var(--ink);transition:.15s}
.sites a:hover{border-color:var(--blue);box-shadow:0 8px 24px rgba(10,29,55,.09);transform:translateY(-1px)}
.sites strong{display:block;color:var(--navy);font-size:1.12rem}
.sites small{display:block;color:var(--blue-d);font-weight:600;font-size:.86rem;letter-spacing:.02em;margin:2px 0 4px}
.sites span{color:var(--muted);font-size:.95rem}
.sites .arr{color:var(--blue);font-size:1.4rem;flex:none}
/* insights */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:6px;padding:26px 26px 22px;text-decoration:none;color:var(--ink);transition:.15s}
.post:hover{border-color:var(--blue);box-shadow:0 8px 24px rgba(10,29,55,.09);transform:translateY(-1px)}
.post .src{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--blue);margin-bottom:12px}
.post h3{font-size:1.06rem;line-height:1.35;margin-bottom:10px;color:var(--navy)}
.post p{font-size:.93rem;color:var(--muted);margin:0 0 16px;flex:1}
.post .more{font-size:.88rem;font-weight:600;color:var(--blue-d)}
.group-h{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:54px 0 20px;padding-bottom:12px;border-bottom:2px solid var(--navy)}
.group-h:first-of-type{margin-top:0}
.group-h h2{font-size:1.4rem;margin:0}
.group-h a{font-size:.92rem;font-weight:600}
.band{display:flex;align-items:center;justify-content:space-between;gap:34px}
.band h2{margin-bottom:.3em;color:#fff}
.band p{margin:0;color:#c8d6e8;max-width:640px}
.prose{max-width:780px}
.prose h2{margin-top:1.7em;font-size:1.65rem}
.prose h2:first-child{margin-top:0}
.ticks{list-style:none;padding:0;margin:0 0 1em}
.ticks li{position:relative;padding:0 0 0 30px;margin-bottom:1em}
.ticks li::before{content:"";position:absolute;left:2px;top:.55em;width:13px;height:7px;border-left:2.5px solid var(--blue);border-bottom:2.5px solid var(--blue);transform:rotate(-45deg)}
.quote{font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:1.4;color:var(--navy);font-weight:500;max-width:860px;letter-spacing:-.01em;margin:0}
.partner-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.partner-list .card{padding:30px}
/* form */
.form{background:#fff;border:1px solid var(--line);border-radius:6px;padding:36px;box-shadow:0 10px 34px rgba(10,29,55,.08)}
.row{margin-bottom:18px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;font-weight:600;font-size:.9rem;margin-bottom:6px;color:var(--navy)}
input,select,textarea{width:100%;font:inherit;padding:12px 14px;border:1px solid #b8c4d4;border-radius:4px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(47,120,208,.3);border-color:var(--blue)}
textarea{resize:vertical}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.err{background:#fdeceb;color:#8a1f17;border:1px solid #f1b9b4;padding:10px 14px;border-radius:4px;font-size:.95rem}
.err[hidden]{display:none}
/* footer */
.ftr{background:var(--navy2);color:#aebfd4;padding:70px 0 0}
.ftr-in{display:grid;grid-template-columns:1.5fr 1.5fr 1fr 1.1fr;gap:44px}
.ftr h4{color:#fff;margin:0 0 16px;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700}
.ftr a{color:#aebfd4;text-decoration:none}
.ftr a:hover{color:#fff}
.ftr .lk{display:block;padding:5px 0;font-size:.96rem}
.ftr .site{display:block;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.ftr .site:last-child{border-bottom:0}
.ftr .site strong{display:block;color:#fff;font-weight:600;font-size:.98rem}
.ftr .site span{font-size:.86rem;color:var(--sky)}
.ftr .about{font-size:.93rem;margin-top:20px;max-width:330px;line-height:1.65}
.legal{border-top:1px solid rgba(255,255,255,.1);margin-top:54px;padding-top:22px;padding-bottom:28px;font-size:.85rem;color:#7f93ad;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
/* tablet */
@media (max-width:1000px){
 .grid3,.posts,.partner-list{grid-template-columns:1fr 1fr}
 .grid4{grid-template-columns:1fr 1fr}
 .split{grid-template-columns:1fr;gap:30px}
 .ftr-in{grid-template-columns:1fr 1fr}
 .sec{padding:68px 0}
 .hero::after{background:linear-gradient(90deg,var(--navy) 30%,rgba(10,29,55,.2) 100%)}
}
/* collapsed nav */
@media (max-width:1100px){
 .burger{display:block}
 .nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;align-items:stretch;padding:8px 24px 18px;border-bottom:1px solid var(--line);box-shadow:0 14px 24px rgba(10,29,55,.1)}
 .nav.open{display:flex}
 .nav a{padding:14px 8px;font-size:1.05rem}
 .nav a.on{box-shadow:none;font-weight:700}
 .nav a.cta-nav{margin:10px 0 0;text-align:center}
}
/* mobile */
@media (max-width:720px){
 body{font-size:16.5px}
 .hdr-in{min-height:68px}
 .logo svg{width:38px;height:38px}
 .logo .wm b{font-size:.92rem;letter-spacing:.18em}
 .logo .wm i{font-size:.58rem;letter-spacing:.3em}
 .hero{padding:72px 0 82px}
 .strip ul{flex-direction:column}
 .strip li{border-left:0;border-top:1px solid rgba(255,255,255,.1);padding:16px 24px}
 .strip li:first-child{border-top:0}
 .sec{padding:56px 0}
 .grid3,.grid2,.grid4,.posts,.partner-list,.two{grid-template-columns:1fr}
 .band{flex-direction:column;align-items:flex-start}
 .ftr-in{grid-template-columns:1fr;gap:34px}
 .form{padding:24px}
 .page-hd{padding:52px 0 46px}
 .page-hd::before{width:100%;opacity:.6}
 .sites a{padding:18px}
}

.hdr-in{position:relative}
/* faq */
.faq-group{margin-bottom:46px}
.faq-group>h2{font-size:1.45rem;margin-bottom:18px;padding-bottom:12px;border-bottom:2px solid var(--navy)}
details{background:#fff;border:1px solid var(--line);border-radius:6px;margin-bottom:12px}
details[open]{border-color:var(--blue);box-shadow:0 6px 20px rgba(10,29,55,.07)}
summary{cursor:pointer;list-style:none;padding:20px 54px 20px 24px;font-weight:600;color:var(--navy);font-size:1.04rem;position:relative;line-height:1.4}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:1.6rem;color:var(--blue);font-weight:400;line-height:1}
details[open] summary::after{content:"\2212"}
summary:focus-visible{outline:3px solid rgba(47,120,208,.4);border-radius:6px}
.ans{padding:0 24px 8px;color:var(--ink)}
.ans p{color:var(--muted)}
.steps{counter-reset:s;list-style:none;padding:0;margin:0}
.steps li{counter-increment:s;position:relative;padding:0 0 22px 60px}
.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.steps strong{display:block;color:var(--navy);margin-bottom:2px}
.notfound{text-align:center;padding:120px 0}
.notfound h1{font-size:clamp(2.4rem,6vw,4rem)}
.ok{background:#e8f4ec;border:1px solid #b6dcc2;color:#1d5a32;padding:12px 16px;border-radius:4px}
@media (max-width:1000px){.steps li{padding-left:56px}}
/* v3 additions */
.hdr-in{position:relative}
details.q{background:#fff;border:1px solid var(--line);border-radius:6px;margin:0 0 12px}
details.q summary{cursor:pointer;list-style:none;padding:20px 56px 20px 24px;font-weight:600;color:var(--navy);font-size:1.04rem;position:relative;line-height:1.4}
details.q summary::-webkit-details-marker{display:none}
details.q summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--blue);font-weight:400}
details.q[open] summary::after{content:"\2212"}
details.q[open]{border-color:var(--blue)}
details.q .a{padding:0 24px 22px;color:var(--muted)}
details.q .a p:last-child{margin-bottom:0}
.faq-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 40px;padding:0;list-style:none}
.faq-nav a{display:inline-block;padding:9px 16px;border:1px solid var(--line);border-radius:30px;text-decoration:none;font-size:.9rem;font-weight:600;color:var(--navy);background:#fff}
.faq-nav a:hover{border-color:var(--blue);color:var(--blue-d)}
.faq-h{font-size:1.35rem;margin:46px 0 18px;padding-bottom:10px;border-bottom:2px solid var(--navy)}
.faq-h:first-of-type{margin-top:0}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:26px 0 8px}
.steps div{border-top:3px solid var(--blue);padding-top:14px}
.steps b{display:block;color:var(--navy);margin-bottom:4px}
.steps span{font-size:.94rem;color:var(--muted)}
.notice{background:#eaf3fd;border:1px solid #bcd7f5;color:#143a69;padding:12px 16px;border-radius:6px;font-size:.95rem;margin-bottom:18px}
.notice[hidden]{display:none}
.legal a{color:#9fb3cc}
.pvbar{background:#fff3cd;color:#5c4400;text-align:center;font:600 13px system-ui;padding:7px 10px}
@media (max-width:1040px){
 .burger{display:block}
 .nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;align-items:stretch;padding:8px 18px 18px;border-bottom:1px solid var(--line);box-shadow:0 14px 24px rgba(10,29,55,.1);gap:0}
 .nav.open{display:flex}
 .nav a{padding:14px 8px;font-size:1.05rem}
 .nav a.cta-nav{margin:10px 0 0;text-align:center}
}
@media (max-width:720px){.steps{grid-template-columns:1fr}}
