/* v4: colors ONLY from BRAND-PALETTE.md. Deep navy = #283891 layered over #1a1a1a (both palette). */
:root{--navy:#283891;--blue:#258cd6;--sig:#289efc;--mid:#3e60b8;--link:#009cff;--ink:#1a1a1a;--txt:#333333;--mute:#707070;--rule:#dddddd;--soft:#f5f5f5;--line:#eeeeee}
*{box-sizing:border-box;margin:0;padding:0}
html,body{overflow-x:hidden}
body{background:#fff;color:var(--ink);font:400 17px/1.6 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
h1,h2,h3,.brand,.btn,.kick,.n,.plan h3,.grp{font-family:Montserrat,Inter,sans-serif}
h1,h2{font-weight:800;letter-spacing:-.025em;line-height:1.05}
h1{font-size:72px}h2{font-size:48px}h3{font-weight:700;letter-spacing:-.01em;line-height:1.25}
h1 em,h2 em{font-style:normal;color:var(--sig)}
.light h2 em{color:var(--navy)}
.ph{background:#fff3b0;color:#5a4a00;font:600 .78em Inter,sans-serif;padding:1px 6px;border-radius:3px}
.wrap{max-width:1200px;margin:0 auto;padding:0 48px}
.mock{position:fixed;right:12px;bottom:12px;z-index:99;font:700 10px Inter;background:#fff3b0;color:#5a4a00;padding:4px 8px;letter-spacing:.08em}
/* deep navy + glow (hero and closing band only) */
.deep{position:relative;color:#fff;overflow:hidden;
 background:radial-gradient(ellipse 60% 70% at 78% 40%,rgba(40,158,252,.28),transparent 60%),radial-gradient(ellipse 50% 60% at 10% 100%,rgba(37,140,214,.18),transparent 60%),linear-gradient(rgba(40,56,145,.55),rgba(40,56,145,.55)),#1a1a1a}
.deep>svg.lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.deep>*:not(svg){position:relative}
.kick{font-weight:700;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--navy)}
.deep .kick{color:var(--sig)}
.lede{font-size:20px;line-height:1.55;color:var(--txt);max-width:560px}
.deep .lede{color:#eeeeee}
.note{font-size:14px;color:var(--mute);margin-top:16px}.deep .note{color:#cccccc}
.pad{padding:96px 0}
.soft{background:var(--soft)}
/* nav */
.top .wrap{display:flex;align-items:center;gap:36px;height:80px}
.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:400;letter-spacing:-.01em;color:#fff}
.brand b{font-weight:800}
.brand img{width:34px;height:34px}
.top nav{display:flex;gap:28px;font-size:15px;margin-left:auto;color:#eeeeee}
.top nav a.on{color:#fff;border-bottom:2px solid var(--sig);padding-bottom:3px}
.login{font-size:15px;font-weight:600;color:#fff}
.menu{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:15px;padding:14px 24px;border-radius:999px;border:1.5px solid var(--navy);color:var(--navy)}
.btn.solid{background:var(--sig);border-color:var(--sig);color:#fff;box-shadow:0 0 24px rgba(40,158,252,.35)}
.btn.solid:after{content:"→"}
.deep .btn:not(.solid){border-color:rgba(255,255,255,.55);color:#fff}
.top .btn{padding:10px 18px}
/* hero */
.hero .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding:72px 0 96px}
.hero h1{margin:22px 0 26px}
.ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.slot{border-radius:20px;padding:28px;background:rgba(26,26,26,.25)}
.slot h4{font:700 13px Montserrat;letter-spacing:.14em;text-transform:uppercase;color:var(--sig);margin-bottom:14px}
.slot .tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.slot .tiles div{border:1px solid rgba(40,158,252,.45);border-radius:12px;padding:16px;font-size:13px;color:#cccccc;min-height:84px}
.slot p{font-size:14px;color:#eeeeee}
/* stats (once, live) */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:36px}
.stat{background:#fff;border:1px solid var(--rule);border-radius:16px;padding:32px 28px;border-top:4px solid var(--sig)}
.stat .n{font-size:48px;font-weight:800;color:var(--navy);line-height:1;letter-spacing:-.02em}
.stat .k{font-weight:600;font-size:14px;color:var(--mute);margin-top:12px;text-transform:uppercase;letter-spacing:.08em}
/* features */
.idx{display:grid;grid-template-columns:360px 1fr;gap:72px}
.item{display:grid;grid-template-columns:56px 1fr 1.2fr;gap:24px;padding:30px 0;border-top:1px solid var(--rule)}
.item .no{font:800 28px Montserrat;color:var(--sig)}
.item h3{font-size:22px}.item p{color:var(--txt)}
/* who */
.who{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
.card{background:#fff;border:1px solid var(--rule);border-radius:16px;padding:28px}
.card h4{font:700 14px Montserrat;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);margin-bottom:10px}
.card p{color:var(--txt)}
/* plan strip */
.pstrip{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.pstrip .card h3{font-size:26px;color:var(--navy)}
.pstrip .card .t{font-size:13px;font-weight:700;color:var(--sig);letter-spacing:.1em;text-transform:uppercase;margin:6px 0 10px}
.pstrip .card.hl{border:2px solid var(--sig)}
.more{margin-top:28px}
/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}
.steps .card span{font:800 14px Montserrat;color:var(--sig);letter-spacing:.1em}
.steps h3{font-size:24px;margin:10px 0 6px}
/* final */
.final .grid{display:grid;grid-template-columns:1.3fr 1fr;gap:56px;align-items:end;padding:96px 0}
.final h2{font-size:56px}
footer{background:var(--navy);color:#cccccc;font-size:14px}
footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding-top:56px;padding-bottom:56px}
footer h4{font:700 12px Montserrat;letter-spacing:.14em;color:#fff;margin-bottom:12px}
footer a{display:block;margin-bottom:6px}
footer .brand{margin-bottom:12px}
/* page heads (about/plans/faq) */
.phead .grid{padding:64px 0 88px}
.phead h1{font-size:60px;margin-top:20px;max-width:860px}
.ahead{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:center}
.photo{aspect-ratio:4/5;border:2px dashed rgba(40,158,252,.7);border-radius:20px;display:flex;align-items:flex-end;padding:18px;font-size:13px;color:#cccccc;max-height:460px}
.prose p{font-size:19px;line-height:1.7;margin-bottom:22px;color:var(--txt)}
.tl{display:grid;grid-template-columns:140px 1fr;gap:32px;padding:26px 0;border-top:1px solid var(--rule)}
.tl .y{font:800 28px Montserrat;color:var(--navy)}
.tl h3{font-size:21px}
/* plans */
.ptable{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px}
.plan{background:#fff;border:1px solid var(--rule);border-radius:18px;padding:34px 30px;display:flex;flex-direction:column;position:relative}
.plan.hl{border:2px solid var(--sig);box-shadow:0 10px 40px rgba(40,56,145,.12)}
.flag{position:absolute;top:-13px;left:30px;background:var(--sig);color:#fff;font:700 11px Montserrat;letter-spacing:.1em;padding:5px 10px;border-radius:999px}
.plan h3{font-size:34px;font-weight:800;color:var(--navy)}
.plan .for{font-size:15px;color:var(--mute);margin:8px 0 20px;min-height:48px}
.price{font-weight:700;padding:14px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:18px}
.plan ul{list-style:none;flex:1;margin-bottom:26px}
.plan li{padding:8px 0 8px 26px;position:relative;font-size:15.5px}
.plan li:before{content:"✓";position:absolute;left:0;font-weight:700;color:var(--sig)}
.plan li.new{font-weight:600}
.cmp{width:100%;border-collapse:collapse;margin-top:48px;font-size:15.5px;background:#fff;border-radius:14px;overflow:hidden}
.cmp th,.cmp td{text-align:left;padding:15px 14px;border-bottom:1px solid var(--rule)}
.cmp th{font:700 13px Montserrat;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);background:var(--line)}
/* faq */
.fq{display:grid;grid-template-columns:280px 1fr;gap:72px}
.side{position:sticky;top:24px;align-self:start}
.side a{display:block;padding:10px 0;border-top:1px solid var(--rule);font-size:15px}
.side a.on{font-weight:700;color:var(--navy)}
.side .card{margin-top:24px}
.q{border-top:1px solid var(--rule);padding:24px 0}
.q h3{font-size:22px;display:flex;justify-content:space-between;gap:24px}
.q h3:after{content:"+";color:var(--sig);font-size:24px}
.q.open h3:after{content:"–"}
.q p{margin-top:12px;max-width:680px;color:var(--txt)}
.grp{font-weight:700;font-size:13px;letter-spacing:.16em;color:var(--sig);margin:48px 0 6px;text-transform:uppercase}
.grp:first-child{margin-top:0}
@media(max-width:760px){
 body{font-size:16px}.wrap{padding:0 20px}
 .top nav:not(.menu),.login{display:none}
 .top .wrap{height:64px;gap:12px}.top .btn{margin-left:auto;padding:9px 14px;font-size:14px}
 .brand{font-size:17px}.brand img{width:28px;height:28px}
 .menu{display:flex;gap:20px;padding:10px 20px;border-top:1px solid rgba(255,255,255,.15);font-size:14px;color:#eeeeee}.menu a.on{color:#fff;font-weight:700}
 h1{font-size:42px}h2{font-size:32px}.phead h1{font-size:38px}.final h2{font-size:34px}
 .lede{font-size:17px}
 .hero .grid,.idx,.final .grid,.fq,.ahead{grid-template-columns:1fr;gap:32px}
 .hero .grid{padding:40px 0 56px}.final .grid{padding:56px 0}.phead .grid{padding:36px 0 52px}
 .stats{grid-template-columns:1fr 1fr;gap:12px}.stat{padding:20px 16px}.stat .n{font-size:30px}.stat .k{font-size:12px}
 .pad{padding:60px 0}
 .item{grid-template-columns:40px 1fr;gap:6px 14px}.item p{grid-column:2}
 .who,.steps,.ptable,.pstrip{grid-template-columns:1fr}
 .slot .tiles{grid-template-columns:1fr 1fr}
 footer .wrap{grid-template-columns:1fr 1fr}footer .wrap>div:first-child{grid-column:1/-1}
 .tl{grid-template-columns:1fr;gap:6px}.side{display:none}.q h3{font-size:19px}
 .cmp{font-size:13px}.cmp th,.cmp td{padding:11px 6px}.cmp th{font-size:11px}
 .photo{max-height:340px}
}
.top nav.menu{display:none}
.hero .grid{grid-template-columns:1.15fr .85fr}
@media(max-width:760px){.top nav.menu{display:flex;margin:0}.hero .grid{grid-template-columns:1fr}}
.phead .grid:not(.ahead){display:block;padding:56px 0 80px}
.phead .grid:not(.ahead) h1{margin-top:18px}
.phead .ahead{padding:56px 0 72px}

.upnote{font-size:16px;color:var(--navy);font-weight:600;margin-top:14px;max-width:760px}.deep .upnote{color:#ffffff}
.pstrip .card{display:flex;flex-direction:column}.pstrip .card .btn{margin-top:auto;align-self:flex-start}.pstrip .card p{margin-bottom:18px}

html{scroll-behavior:smooth}
@media(max-width:760px){.top .login{display:inline;margin-left:auto;font-size:14px}.top .btn{margin-left:0}#behind .photo{max-height:300px}}

/* v5.1 band order blue, grey, white (Angel Nov 1) */
.blue{background:#283891;color:#fff}
.blue h2,.blue .kick,.blue>.wrap>p{color:#fff}

.blue .kick{opacity:.85}
.blue .card,.blue .card h3,.blue .card p{color:var(--ink)}

.slot h4{color:#fff;font:700 13px Montserrat;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}
.mcard{display:flex;gap:14px;background:#fff;border-radius:14px;padding:16px;margin-top:12px;color:#1a1a1a}
.mcard .av{flex:0 0 44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#289efc,#283891)}
.mcard b{display:block;font-size:15px}.mcard span{display:block;font-size:12px;color:#289efc;font-weight:700;letter-spacing:.04em}
.mcard p{margin:4px 0 0;font-size:14px;color:#707070}.mfoot{color:#cfe3ff;font-size:12px;margin-top:12px}

.mcard .av{overflow:hidden}.mcard .av img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.mcard{min-width:0}.mcard em{display:block;font-style:normal;font-size:13px;color:#283891;font-weight:600;margin:2px 0}
.mgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
@media(max-width:700px){.mgrid{grid-template-columns:1fr}}

@media(max-width:760px){.hero .grid{display:flex;flex-direction:column}.hero .hcol{display:contents}.hero .hcol h1{order:1}.hero .hcol .lede{order:2}.hero .slot{order:3;margin:8px 0 20px}.hero .hcol .ctas{order:4}.hero .hcol .note{order:5}.hero .ctas .hcmp{display:none}}


/* v5.1 compact card: name+location beside photo (Angel Nov 1) */
.mcard{display:block;padding:14px 16px}
.mhead{display:flex;align-items:center;gap:12px}
.mcard .av{flex:0 0 52px;width:52px;height:52px}
.mcard b{font-size:15px;line-height:1.25}
.mcard span{margin-top:2px}
.mcard p{margin:8px 0 0;font-size:13.5px;line-height:1.45}
.mgrid{grid-template-columns:1fr}.mcard p{margin-top:6px}

.mhead>div{flex:1;min-width:0}
.mt{display:inline-block;font-style:normal;font:800 10.5px Montserrat,sans-serif;letter-spacing:.12em;padding:3px 9px;border-radius:999px;margin-top:4px;color:#fff}
.mt.innovator{background:linear-gradient(90deg,#289efc,#283891)}
.mt.enabler{background:#00a37a}
.mt{letter-spacing:.03em;font-size:11.5px}
.mt.innovator,.mt.enabler{background:#3e60b8}
@media(max-width:760px){.hero .slot{margin:8px 0 0;padding:20px 16px 16px}.hero .hcol .ctas{margin-top:18px}}
@media(max-width:760px){.hero .hcol .ctas{margin-top:-16px}}
.kick.kbig{font-size:16px;margin-bottom:6px}
.kick{font-size:16px}
.slot h4{font-size:16px}
.cmpx{margin-top:28px;border-top:1px solid var(--rule)}
.cmpx>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;margin-top:28px;padding:12px 22px;border:1.5px solid #3e60b8;border-radius:999px;color:#3e60b8;font-weight:600}
.cmpx>summary::-webkit-details-marker{display:none}
.cmpx>summary::after{content:"+";font-size:20px;line-height:1}
.cmpx[open]>summary::after{content:"−"}
.cmpx .cmpbody{padding-top:40px}
.evphoto{margin:0}.evphoto img{display:block;width:100%;height:auto;border-radius:20px}
.story p{margin-top:14px;font-size:17px;line-height:1.55;color:var(--txt)}
@media(max-width:760px){br.dbr{display:none}}
@media(max-width:760px){#inside h2 br.dbr{display:inline}#inside h2{font-size:30px}}
@media(max-width:360px){.hero h1{font-size:34px}body section:not(.hero) h2{font-size:26px!important}}
