
:root{--bg:#fbfbf9;--fg:#1b2237;--muted:#5b6478;--primary:#1c5fd8;--primary-dark:#164db2;--soft:#dce7f8;--soft-tint:#f1f5fb;--surface:#e9f0fa;--card:#ffffff;--border:#dde4ef;--navy:#141b30;--navy-fg:#f2f5fb;--display:'Sora',ui-sans-serif,system-ui,sans-serif;--sans:'Inter',ui-sans-serif,system-ui,sans-serif;}
*{box-sizing:border-box;border-color:var(--border);}
html{font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--sans);overflow-x:hidden;}
h1,h2,h3,h4{font-family:var(--display);letter-spacing:-0.02em;margin:0;}
p{margin:0;}
a{color:var(--primary);text-decoration:none;}
a:hover{color:var(--primary-dark);}
img{max-width:100%;height:auto;}
.container{width:100%;max-width:1200px;margin-inline:auto;padding-inline:1.5rem;}
@media(min-width:768px){.container{padding-inline:2.5rem;}}
@media(min-width:1280px){.container{padding-inline:4rem;}}
.eyebrow{font-family:var(--display);font-weight:600;letter-spacing:.18em;text-transform:uppercase;font-size:.78rem;color:var(--primary);}
.btn-primary{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 1.5rem;border-radius:.55rem;background:var(--primary);color:#fff;font-family:var(--display);font-weight:600;font-size:.95rem;border:none;cursor:pointer;transition:transform .15s ease,background .15s ease;box-shadow:0 6px 20px -8px rgba(28,95,216,.6);}
.btn-primary:hover{background:var(--primary-dark);color:#fff;transform:translateY(-1px);}
.btn-ghost{display:inline-flex;align-items:center;gap:.5rem;color:var(--primary);font-family:var(--display);font-weight:600;transition:gap .15s ease;}
.btn-ghost:hover{gap:.75rem;}
/* header */
.site-header{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--border);background:rgba(251,251,249,.85);backdrop-filter:blur(8px);}
.site-header .bar{display:flex;height:5rem;align-items:center;justify-content:space-between;}
.brand{display:flex;align-items:center;gap:.75rem;}
.brand img{height:2.25rem;width:2.25rem;object-fit:contain;}
.brand span{font-family:var(--display);font-size:1.25rem;font-weight:700;letter-spacing:.18em;color:var(--fg);}
.nav-desktop{display:none;align-items:center;gap:2.5rem;}
.nav-desktop a.nav-link{font-family:var(--display);font-size:.95rem;font-weight:500;color:rgba(27,34,55,.85);transition:color .15s;}
.nav-desktop a.nav-link:hover,.nav-desktop a.nav-link.active{color:var(--primary);}
.menu-btn{display:inline-flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border:none;background:none;color:var(--fg);cursor:pointer;}
.nav-mobile{display:none;border-top:1px solid var(--border);background:var(--bg);}
.nav-mobile.open{display:block;}
.nav-mobile .inner{display:flex;flex-direction:column;gap:.25rem;padding-block:1rem;}
.nav-mobile a.nav-link{border-radius:.375rem;padding:.75rem;font-family:var(--display);font-weight:500;color:var(--fg);}
.nav-mobile a.nav-link:hover{background:var(--soft-tint);}
@media(min-width:768px){.nav-desktop{display:flex;}.menu-btn{display:none;}.nav-mobile{display:none!important;}}
/* hero */
.hero{position:relative;overflow:hidden;background:linear-gradient(to bottom,var(--soft-tint),var(--bg));}
.hero .grid{display:grid;align-items:center;gap:2.5rem;padding-block:4rem;}
@media(min-width:768px){.hero .grid{grid-template-columns:1fr 1fr;gap:3rem;padding-block:5rem;}}
@media(min-width:1024px){.hero .grid{padding-block:6rem;gap:4rem;}}
.hero h1{font-size:2.5rem;font-weight:800;line-height:1.05;}
@media(min-width:640px){.hero h1{font-size:3rem;}}
@media(min-width:1024px){.hero h1{font-size:3.25rem;}}
@media(min-width:1280px){.hero h1{font-size:3.5rem;}}
.hero .sub{margin-top:2rem;font-family:var(--display);font-size:1.25rem;font-weight:600;color:rgba(27,34,55,.9);}
@media(min-width:640px){.hero .sub{font-size:1.5rem;}}
.hero .body{margin-top:1.5rem;max-width:28rem;line-height:1.65;color:var(--muted);}
.hero .art{position:relative;display:flex;align-items:center;justify-content:center;}
@media(min-width:768px){.hero .art{justify-content:flex-end;}}
.hero .art .glow{position:absolute;inset:2rem;z-index:-1;border-radius:9999px;background:rgba(220,231,248,.4);filter:blur(48px);}
.hero .art img{width:100%;max-width:520px;user-select:none;mix-blend-mode:multiply;}
.text-primary{color:var(--primary);}
/* strip */
.strip{background:rgba(220,231,248,.6);}
.strip .inner{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding-block:4rem;}
@media(min-width:640px){.strip .inner{flex-direction:row;gap:2.5rem;}}
.icon-ring{display:flex;height:6rem;width:6rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:9999px;border:2px solid var(--primary);color:var(--primary);}
.strip p{font-family:var(--display);font-size:1.25rem;font-weight:600;line-height:1.4;}
@media(min-width:640px){.strip p{font-size:1.5rem;}}
/* section rule */
.rule-row{display:flex;max-width:42rem;margin-inline:auto;align-items:center;gap:1rem;}
.rule-row .line{height:1px;flex:1;background:rgba(28,95,216,.4);}
.rule-row .eyebrow{white-space:nowrap;}
/* cards */
.cards{display:grid;gap:1.5rem;max-width:56rem;margin:3.5rem auto 0;}
@media(min-width:768px){.cards{grid-template-columns:1fr 1fr;}}
.case-card{display:flex;flex-direction:column;align-items:center;border:1px solid var(--border);border-radius:1rem;background:var(--card);padding:2rem;text-align:center;transition:all .2s ease;}
.case-card:hover{transform:translateY(-4px);border-color:rgba(28,95,216,.4);box-shadow:0 10px 30px -10px rgba(15,23,42,.15);}
.icon-badge{display:flex;height:4rem;width:4rem;align-items:center;justify-content:center;border-radius:9999px;background:var(--soft);color:var(--primary);}
.case-card h3{margin-top:1.5rem;font-size:1.125rem;font-weight:700;line-height:1.4;}
.case-card p{margin-top:1rem;font-size:.875rem;line-height:1.65;color:var(--muted);}
/* CTA band */
.cta-band{position:relative;overflow:hidden;background:rgba(220,231,248,.5);}
.cta-band .net{pointer-events:none;position:absolute;right:-6rem;top:50%;transform:translateY(-50%);opacity:.35;display:none;}
@media(min-width:1024px){.cta-band .net{display:block;}}
.cta-band .grid{display:grid;gap:2.5rem;padding-block:5rem;position:relative;}
@media(min-width:768px){.cta-band .grid{grid-template-columns:1.2fr 1fr;align-items:center;}}
.cta-band h2{font-size:2.25rem;font-weight:700;}
@media(min-width:640px){.cta-band h2{font-size:3rem;}}
.cta-band .body{margin-top:1.25rem;max-width:32rem;color:var(--muted);}
.cta-ring{display:none;justify-content:center;}
@media(min-width:768px){.cta-ring{display:flex;}}
.cta-ring .circle{display:flex;height:10rem;width:10rem;align-items:center;justify-content:center;border-radius:9999px;border:2px solid var(--primary);background:rgba(251,251,249,.6);color:var(--primary);}
/* subpage */
.page{padding-block:5rem;}
@media(min-width:768px){.page{padding-block:7rem;}}
.page h1{margin-top:1rem;max-width:48rem;font-size:2.75rem;font-weight:800;line-height:1.08;}
@media(min-width:640px){.page h1{font-size:3.5rem;}}
.page .lede{margin-top:1.5rem;max-width:42rem;font-size:1.125rem;color:var(--muted);}
.step-grid{display:grid;gap:1.5rem;margin-top:4rem;padding:0;list-style:none;}
@media(min-width:768px){.step-grid{grid-template-columns:1fr 1fr;}}
.step{border:1px solid var(--border);border-radius:1rem;background:var(--card);padding:2rem;transition:border-color .2s;}
.step:hover{border-color:rgba(28,95,216,.4);}
.step .n{font-family:var(--display);font-size:.875rem;font-weight:600;letter-spacing:.18em;color:var(--primary);}
.step h2{margin-top:.75rem;font-size:1.5rem;font-weight:700;}
.step p{margin-top:.75rem;color:var(--muted);}
/* study cards */
.study-grid{display:grid;gap:1.5rem;margin-top:3.5rem;}
@media(min-width:768px){.study-grid{grid-template-columns:1fr 1fr;}}
.study{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:1rem;background:var(--card);padding:2rem;transition:all .2s ease;}
.study:hover{transform:translateY(-4px);border-color:rgba(28,95,216,.4);box-shadow:0 10px 30px -10px rgba(15,23,42,.15);}
.tag{width:fit-content;border-radius:9999px;background:var(--soft);padding:.25rem .75rem;font-family:var(--display);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--primary);}
.study h2{margin-top:1.25rem;font-size:1.5rem;font-weight:700;line-height:1.35;}
.study .detail{margin-top:1.25rem;display:flex;flex-direction:column;gap:1.25rem;font-size:.875rem;line-height:1.65;color:var(--muted);}
.study .label{font-family:var(--display);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--fg);}
.study ul{margin:.5rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.4rem;}
.study li{display:flex;gap:.5rem;}
.study li .arrow{color:var(--primary);}
.study .summary{margin-top:.75rem;flex:1;color:var(--muted);}
/* contact */
.contact-grid{display:grid;gap:3rem;padding-block:5rem;}
@media(min-width:768px){.contact-grid{grid-template-columns:1fr 1fr;padding-block:7rem;}}
.contact-dl{margin-top:2.5rem;display:flex;flex-direction:column;gap:1rem;font-size:.875rem;}
.contact-dl dt{font-family:var(--display);font-weight:600;}
.contact-dl dd{margin:0;color:var(--muted);}
.form-card{border:1px solid var(--border);border-radius:1rem;background:var(--card);padding:2rem;}
.form-card .fields{display:flex;flex-direction:column;gap:1.25rem;}
.form-card label{display:block;margin-bottom:.5rem;font-family:var(--display);font-size:.875rem;font-weight:600;}
.form-card input,.form-card textarea{width:100%;border-radius:.375rem;border:1px solid var(--border);background:var(--bg);padding:.75rem 1rem;font-size:.875rem;font-family:var(--sans);color:var(--fg);outline:none;transition:border-color .15s,box-shadow .15s;}
.form-card input:focus,.form-card textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(28,95,216,.15);}
.form-card .btn-primary{width:100%;justify-content:center;}
.form-success{display:none;min-height:300px;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.form-success .icon-badge{height:3.5rem;width:3.5rem;}
.form-success h2{margin-top:1rem;font-size:1.5rem;font-weight:700;}
.form-success p{margin-top:.5rem;font-size:.875rem;color:var(--muted);}
/* footer */
.site-footer{margin-top:6rem;background:var(--navy);color:var(--navy-fg);}
.site-footer .cols{display:grid;gap:2.5rem;padding-block:4rem;}
@media(min-width:768px){.site-footer .cols{grid-template-columns:repeat(4,1fr);}}
.site-footer .brand span{color:var(--navy-fg);font-size:1.125rem;}
.site-footer .brand img{height:2rem;width:2rem;}
.site-footer .blurb{margin-top:1rem;max-width:20rem;font-size:.875rem;color:rgba(242,245,251,.7);}
.site-footer .eyebrow{color:#8fb0ea;}
.site-footer ul{margin:1rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.75rem;font-size:.875rem;}
.site-footer ul a{color:rgba(242,245,251,.8);}
.site-footer ul a:hover{color:#fff;}
.site-footer .contact-list li{color:rgba(242,245,251,.8);}
.li-btn{margin-top:1rem;display:inline-flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:.375rem;background:#fff;color:var(--navy);transition:transform .15s;}
.li-btn:hover{transform:translateY(-2px);color:var(--navy);}
.site-footer .legal{border-top:1px solid rgba(255,255,255,.1);}
.site-footer .legal .inner{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:.75rem;padding-block:1.5rem;font-size:.75rem;color:rgba(242,245,251,.6);}
@media(min-width:640px){.site-footer .legal .inner{flex-direction:row;align-items:center;}}
.site-footer .legal a{color:rgba(242,245,251,.6);}
.site-footer .legal a:hover{color:rgba(255,255,255,.85);}
/* 404 */
.center-page{display:flex;min-height:60vh;flex-direction:column;align-items:center;justify-content:center;padding-block:6rem;text-align:center;}
/* privacy */
.prose{margin-top:2.5rem;max-width:44rem;display:flex;flex-direction:column;gap:1.5rem;color:var(--muted);line-height:1.7;}
.prose h2{font-size:1.35rem;color:var(--fg);}

/* press release */
.back-link{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--display);font-size:.875rem;font-weight:600;color:var(--muted);transition:color .15s,gap .15s;}
.back-link:hover{color:var(--primary);gap:.75rem;}
.press{max-width:46rem;margin-top:2.5rem;}
.release-flag{font-family:var(--display);font-weight:600;letter-spacing:.18em;text-transform:uppercase;font-size:.78rem;color:var(--primary);margin:0 0 1.25rem;}
.press h1{font-size:2rem;font-weight:800;line-height:1.15;letter-spacing:-0.02em;}
@media(min-width:640px){.press h1{font-size:2.6rem;}}
.press .deck{margin-top:1.25rem;font-family:var(--display);font-size:1.125rem;font-weight:600;line-height:1.5;color:rgba(27,34,55,.85);}
.press-body{margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:1.5rem;color:var(--muted);line-height:1.75;}
.dateline{font-family:var(--display);font-weight:600;color:var(--fg);}
.pull{margin:.75rem 0;border-left:3px solid var(--primary);background:var(--soft-tint);border-radius:0 .75rem .75rem 0;padding:1.5rem 1.75rem;}
.pull p{margin:0;font-family:var(--display);font-size:1.05rem;font-weight:500;line-height:1.6;color:var(--fg);}
.pull footer{margin-top:1rem;font-size:.85rem;font-weight:600;font-family:var(--display);color:var(--primary);}
.boilerplate{margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:2rem;}
.boilerplate h2{font-family:var(--display);font-size:.78rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--fg);}
.boilerplate p{margin:.75rem 0 0;font-size:.9rem;line-height:1.7;color:var(--muted);}
.end-mark{margin-top:2.5rem;text-align:center;letter-spacing:.4em;color:var(--muted);font-size:.85rem;}
.press-cta{max-width:46rem;margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:flex-start;gap:1.25rem;}
.press-cta p{margin:0;font-family:var(--display);font-size:1.25rem;font-weight:600;color:var(--fg);}
@media(min-width:640px){.press-cta{flex-direction:row;align-items:center;justify-content:space-between;}}
