:root{color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:env(safe-area-inset-top,0px)}body{margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#fff;color:#000}img{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}
/* Layout: white and pale-grey bands alternate; story runs problem → one connected system → digital staff → one customer journey → areas → calculator. */
:root{
  --navy:#0B2545; --navy-2:#13315C; --ink:#0B1B2E; --muted:#3E4C5F;
  --bg:#F1F4FA; --bg-soft:#E4EAF4; --line:#CFD7E4; --silver:#C9D1DC;
  --teal:#3B74D1; --teal-ink:#1F4FA0; --blue:#1E88E5; --gold:#C8A24A;
  --on-navy:#F4F7FB; --on-navy-muted:#A9B8CC; --card:#FFFFFF;
  --ok:#1F9D6B; --gold-ink:#8C6D22; --heading:#0B2545;
  --display:"Plus Jakarta Sans", "Segoe UI", system-ui, sans-serif;
  --body:"Plus Jakarta Sans", "Segoe UI", system-ui, sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;
}
:root{color-scheme:light}

*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg)}
h1,h2,h3{font-family:var(--display);line-height:1.1;text-wrap:balance;margin:0}
p{margin:0}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.band{padding-block:88px}
.band.navy{background:var(--bg-soft);color:var(--ink)}
.band.soft{background:var(--bg-soft)}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-ink)}
.navy .eyebrow{color:var(--gold)}
.sec-head{display:grid;gap:14px;max-width:680px;margin-bottom:44px}
.sec-head h2{font-size:clamp(30px,4.4vw,46px);font-weight:800;letter-spacing:-.02em}
.sec-head p{color:var(--muted);font-size:18px}
.navy .sec-head p{color:var(--muted)}
.btn{display:inline-flex;align-items:center;gap:8px;font:600 15px/1 var(--body);padding:14px 22px;border-radius:999px;border:0;cursor:pointer;text-decoration:none;transition:transform .15s,background .15s}
.btn-primary{background:var(--gold);color:#0B2545}
.btn-primary:hover{transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--silver)}
.btn:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* header */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:#FFFFFF;color:var(--ink);border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:14px}
.logo{display:flex;align-items:center;gap:10px;color:var(--heading);font:400 34px/1 'Kaushan Script',cursive;letter-spacing:0;text-transform:none;text-decoration:none}
.logo svg{width:40px;height:34px}
.logo .wm{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px}
.logo .wm::after{content:"";width:30px;height:2px;border-radius:1px;background:var(--gold)}
.eyebrow::before{content:"";display:inline-block;width:22px;height:2px;background:var(--gold);vertical-align:middle;margin-right:10px;transform:translateY(-1px)}
footer{border-top:3px solid var(--gold) !important}
.sec-head h2::after{content:"";display:block;width:56px;height:3px;border-radius:2px;background:var(--gold);margin-top:18px}
nav ul{display:flex;gap:26px;list-style:none;margin:0;padding:0;font-size:15px}
nav a{text-decoration:none;color:var(--muted)}
nav a:hover{color:var(--ink)}
header .btn{padding:10px 18px;font-size:14px}
@media (max-width:820px){nav{display:none}}

/* hero */
.hero{background:var(--bg);color:var(--ink);padding-block:72px 96px;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(600px 300px at 85% 10%,rgba(59,116,209,.10),transparent 70%);pointer-events:none}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;position:relative;z-index:1}
.hero h1{color:var(--heading);font-size:clamp(40px,6.4vw,72px);font-weight:800;letter-spacing:-.03em;margin-top:18px}
.hero h1 em{font-style:normal;color:var(--teal-ink)}
.hero .lede{font-size:19px;color:var(--muted);max-width:540px;margin-top:22px}
.hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.hero .tools{margin-top:36px;font-family:var(--mono);font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px 18px}
.hero .tools span::before{content:"◆ ";color:var(--gold)}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr}}

.flow{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 24px 50px -28px rgba(11,37,69,.28);min-width:0}
.flow-top{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:12px;color:var(--muted);margin-bottom:14px}
.flow-top b{color:var(--ink);font-weight:500}
.live{display:inline-flex;align-items:center;gap:6px}
.live i{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 0 rgba(59,116,209,.6);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(59,116,209,0)}100%{box-shadow:0 0 0 0 rgba(59,116,209,0)}}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.steps li{display:grid;grid-template-columns:28px 1fr auto;gap:12px;align-items:center;padding:11px 12px;border-radius:10px;background:var(--bg-soft);font-size:14.5px;transition:background .3s}
.steps li .dot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:rgba(59,116,209,.18);color:var(--teal-ink)}
.steps li small{font-family:var(--mono);font-size:11.5px;color:var(--muted)}
.steps li.you{background:color-mix(in srgb,var(--gold) 16%,transparent)}
.steps li.you .dot{background:var(--gold);color:#0B2545}
.steps li.on{background:color-mix(in srgb,var(--teal) 14%,transparent)}
.flow-foot{margin-top:14px;font-size:13px;color:var(--muted);display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.flow-foot strong{color:var(--gold-ink);font-weight:600}

/* pain */
.pains{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.pain{background:var(--bg);padding:26px 24px;display:grid;gap:8px;align-content:start}
.pain h3{font-size:19px;font-weight:700}
.pain p{color:var(--muted);font-size:15px}
.pain .tag{font-family:var(--mono);font-size:11.5px;color:var(--muted)}

/* series */
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.tab{font:600 14.5px/1 var(--body);padding:12px 18px;border-radius:999px;border:1.5px solid var(--silver);background:var(--card);color:var(--ink);cursor:pointer;display:inline-flex;gap:10px;align-items:center}
.tab span{font-family:var(--mono);font-size:11.5px;color:var(--gold-ink)}
.tab[aria-selected="true"]{background:var(--gold);color:#0B2545;border-color:var(--gold)}
.tab[aria-selected="true"] span{color:#0B2545}
.panel{display:grid;grid-template-columns:1fr 1fr;gap:28px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:34px}
.panel>*{min-width:0}
.panel h3{font-size:clamp(26px,3vw,34px);font-weight:800;letter-spacing:-.02em}
.panel .sum{color:var(--muted);margin-top:12px;font-size:16.5px}
.ba{display:grid;gap:14px;margin-top:26px}
.ba div{display:grid;grid-template-columns:76px 1fr;gap:12px;font-size:15px}
.ba b{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;padding-top:3px;font-weight:500}
.ba .b4 b{color:var(--muted)}
.ba .af b{color:var(--teal-ink)}
.connects{margin-top:26px;display:flex;flex-wrap:wrap;gap:8px}
.connects span{font-family:var(--mono);font-size:12px;padding:6px 10px;border-radius:6px;background:var(--bg-soft);color:var(--ink)}
.mock{background:var(--bg-soft);border:1px solid var(--line);color:var(--ink);border-radius:14px;padding:18px;font-size:14px;align-self:start;overflow-x:auto}
.mock-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:10px}
.mock-h b{font-family:var(--display);font-size:16px}
.mock-h small{font-family:var(--mono);font-size:11px;color:var(--muted)}
table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
td,th{padding:8px 6px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
th{font-family:var(--mono);font-size:11px;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
td.n,th.n{text-align:right}
.pill{display:inline-block;font-family:var(--mono);font-size:11px;padding:3px 8px;border-radius:999px;white-space:nowrap}
.pill.ok{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}
.pill.wait{background:color-mix(in srgb,var(--gold) 20%,transparent);color:color-mix(in srgb,var(--gold) 70%,var(--ink))}
.pill.run{background:color-mix(in srgb,var(--teal) 16%,transparent);color:var(--teal-ink)}
.mock-note{margin-top:12px;font-size:12.5px;color:var(--muted)}
@media (max-width:860px){.panel{grid-template-columns:1fr;padding:24px}}

/* how */
.how{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:s}
.how li{list-style:none;display:grid;gap:10px;align-content:start;padding-top:20px;border-top:2px solid var(--navy)}
.how li::before{counter-increment:s;content:"Step " counter(s);font-family:var(--mono);font-size:12px;color:var(--teal-ink);letter-spacing:.08em;text-transform:uppercase}
.how h3{font-size:20px;font-weight:700}
.how p{color:var(--muted);font-size:15px}
.how{padding:0;margin:0}
@media (max-width:860px){.how{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.how{grid-template-columns:1fr}}
.own{margin-top:56px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.own div{padding:24px;border-radius:14px;background:var(--bg-soft);display:grid;gap:8px;align-content:start}
.own h3{font-size:18px;font-weight:700}
.own p{color:var(--muted);font-size:15px}
.own svg{width:26px;height:26px;color:var(--gold)}
@media (max-width:760px){.own{grid-template-columns:1fr}}

/* calculator */
.calc{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:start}
.calc>*{min-width:0}
.calc-list{display:grid;gap:10px}
.row{display:grid;grid-template-columns:auto 1fr 120px;gap:14px;align-items:center;padding:16px 18px;border-radius:12px;background:var(--card);border:1px solid var(--line)}
.row input[type=checkbox]{width:20px;height:20px;accent-color:var(--teal)}
.row label{font-weight:600;font-size:15.5px;cursor:pointer}
.row label small{display:block;font-weight:400;color:var(--muted);font-size:13px}
.hrs{display:flex;align-items:center;gap:6px;justify-content:flex-end}
.hrs input{width:64px;padding:8px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:500 15px var(--mono);text-align:right}
.hrs span{font-size:12.5px;color:var(--muted)}
.rate{display:flex;align-items:center;gap:10px;margin-top:8px;font-size:15px;flex-wrap:wrap}
.rate input{width:84px;padding:8px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:500 15px var(--mono);text-align:right}
.result{background:var(--card);color:var(--ink);border:1px solid var(--line);border-top:4px solid var(--teal);border-radius:18px;padding:28px;display:grid;gap:18px;position:sticky;top:calc(env(safe-area-inset-top,0px) + 84px)}
.big{font:800 clamp(44px,6vw,64px)/1 var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.big small{font-size:18px;font-weight:600;color:var(--muted);letter-spacing:0}
.result .sub{font-size:14px;color:var(--muted)}
.result .money{font:700 26px/1 var(--display);color:var(--gold-ink);font-variant-numeric:tabular-nums}
.result hr{border:0;border-top:1px solid var(--line);margin:0}
.result .fine{font-size:12.5px;color:var(--muted)}
@media (max-width:860px){.calc{grid-template-columns:1fr}.result{position:static}}
@media (max-width:480px){.row{grid-template-columns:auto 1fr}.hrs{grid-column:2;justify-content:flex-start}}

/* story */
.story{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.story>*{min-width:0}
.quote{font:700 clamp(26px,3.4vw,38px)/1.2 var(--display);letter-spacing:-.02em}
.quote em{font-style:normal;color:var(--teal-ink)}
.story p{color:var(--muted);font-size:17px;margin-top:16px}
.facts{display:grid;gap:12px}
.facts div{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);font-size:15.5px}
.facts b{font-family:var(--mono);font-size:12px;color:var(--gold-ink);font-weight:500;text-transform:uppercase;letter-spacing:.08em;padding-top:3px}
@media (max-width:860px){.story{grid-template-columns:1fr;gap:36px}}

/* contact */
.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px}
.contact>*{min-width:0}
.founder{display:grid;gap:14px;align-content:start}
.founder p{color:var(--muted)}
.sig{display:flex;align-items:center;gap:14px;margin-top:10px}
.sig .av{width:52px;height:52px;border-radius:50%;background:var(--navy);color:var(--gold);display:grid;place-items:center;font:800 18px var(--display)}
.sig b{display:block;font-family:var(--display);font-size:17px}
.sig span{font-size:14px;color:var(--muted)}
form{display:grid;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px}
.f2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
@media (max-width:560px){.f2{grid-template-columns:1fr}}
.fld{display:grid;gap:6px}
.fld label{font-size:13.5px;font-weight:600}
.fld input,.fld select,.fld textarea{width:100%;padding:12px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:15px var(--body)}
.fld textarea{min-height:96px;resize:vertical}
.out{display:grid;gap:10px;padding:16px;border-radius:12px;background:var(--bg-soft);border:1px dashed var(--silver)}
.out pre{margin:0;white-space:pre-wrap;font:13px/1.55 var(--mono);color:var(--ink)}
.out .btn{justify-self:start;background:var(--gold);color:#0B2545;padding:10px 16px;font-size:14px}
@media (max-width:860px){.contact{grid-template-columns:1fr}}

footer{background:var(--bg-soft);color:var(--muted);font-size:14px;border-top:1px solid var(--line)}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:32px}
footer .logo{color:var(--ink);font-size:18px}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* digital team additions */
.roster .steps li{grid-template-columns:40px 1fr auto}
.roster .steps li{position:relative;overflow:hidden}
.roster .prog{position:absolute;left:0;bottom:0;height:2px;width:0;background:linear-gradient(90deg,var(--teal),#3FE0F0)}
.roster .pill{transition:background .3s,color .3s}
.av-sm{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font:700 13px var(--display);color:#fff}
.r-fin{background:var(--teal-ink)} .r-ops{background:var(--navy)} .r-sal{background:var(--gold-ink)} .r-adm{background:#5B6B82}
.roster .who{display:grid;gap:2px;min-width:0}
.roster .who b{font-size:14.5px;font-weight:600}
.roster .who span{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.roster .steps li.on{background:color-mix(in srgb,var(--teal) 12%,var(--bg-soft))}
.ex{font-family:var(--mono);font-size:11px;color:var(--muted)}

.team{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.role{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px;display:grid;gap:16px;align-content:start;min-width:0}
.role-top{display:flex;align-items:center;gap:14px}
.role-top .av-sm{width:48px;height:48px;border-radius:14px;font-size:16px}
.role-top h3{font-size:22px;font-weight:800;letter-spacing:-.01em}
.role-top small{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.role .pitch{color:var(--muted);font-size:15.5px}
.duties{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px}
.duties li{display:grid;grid-template-columns:18px 1fr;gap:10px}
.duties li::before{content:"✓";color:var(--teal-ink);font-weight:700}
.role .connects{margin-top:0}
.role-foot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-family:var(--mono);font-size:11.5px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px}
.role-foot a{color:var(--teal-ink);text-decoration:none;font-weight:500}
.role.feat{border-color:var(--teal);box-shadow:0 18px 40px -28px rgba(140,109,34,.45)}
.more{margin-top:22px;color:var(--muted);font-size:15px}
.more b{color:var(--ink)}
@media (max-width:760px){.team{grid-template-columns:1fr}}

.journey{list-style:none;margin:0;padding:0;display:grid;gap:0;border-left:2px solid var(--line);margin-left:8px}
.journey li{display:grid;grid-template-columns:96px 1fr auto;gap:18px;align-items:center;padding:14px 0 14px 24px;position:relative}
.journey li::before{content:"";position:absolute;left:-7px;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;background:var(--card);border:2px solid var(--teal)}
.journey li.you::before{background:var(--gold);border-color:var(--gold)}
.journey time{font-family:var(--mono);font-size:12px;color:var(--muted)}
.journey span{font-size:15.5px}
.tagr{font-family:var(--mono);font-size:11px;padding:4px 10px;border-radius:999px;white-space:nowrap;color:#fff}
.tagr.you{background:transparent;color:var(--gold-ink);box-shadow:inset 0 0 0 1.5px var(--gold)}
.jsum{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px}
.jsum div{padding:20px;border-radius:14px;background:var(--card);border:1px solid var(--line)}
.jsum b{display:block;font:800 34px/1 var(--display);color:var(--heading);font-variant-numeric:tabular-nums}
.jsum span{font-size:14px;color:var(--muted)}
@media (max-width:640px){.journey li{grid-template-columns:1fr auto;gap:4px 12px}.journey time{grid-column:1/-1}.jsum{grid-template-columns:1fr}}
.fte{font-size:15px;color:var(--ink)}
.fte b{color:var(--teal-ink)}
.hub{display:grid;grid-template-columns:1fr 1.1fr 1fr;grid-template-areas:"m1 core m3" "m2 core m4";gap:16px;margin-bottom:40px}
.mod{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;display:grid;gap:6px;align-content:start;min-width:0}
.mod b{font:700 19px/1.2 var(--display);color:var(--heading)}
.mod span{font-size:14.5px;color:var(--ink)}
.mod em{font-style:normal;font-family:var(--mono);font-size:11.5px;color:var(--muted)}
.m1{grid-area:m1;border-left:4px solid var(--teal-ink)} .m2{grid-area:m2;border-left:4px solid #5B6B82} .m3{grid-area:m3;border-right:4px solid var(--navy)} .m4{grid-area:m4;border-right:4px solid var(--gold-ink)}
.core{grid-area:core;border-radius:20px;padding:28px;display:grid;gap:10px;place-content:center;text-align:center;background:var(--card);border:2px solid var(--teal);box-shadow:0 0 0 8px color-mix(in srgb,var(--teal) 10%,transparent)}
.core svg{width:40px;height:40px;margin:0 auto}
.core b{font:800 24px/1.1 var(--display);color:var(--heading)}
.core span{color:var(--muted);font-size:15px}
@media (max-width:820px){.hub{grid-template-columns:1fr 1fr;grid-template-areas:"core core" "m1 m2" "m3 m4"}.m3,.m4{border-right:1px solid var(--line);border-left:4px solid var(--navy)}.m4{border-left-color:var(--gold-ink)}}
@media (max-width:520px){.hub{grid-template-columns:1fr;grid-template-areas:"core" "m1" "m2" "m3" "m4"}}
.cmp-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.cmp{min-width:640px}
.cmp th,.cmp td{padding:14px 16px;white-space:normal;font-size:14.5px;vertical-align:top}
.cmp thead th{font-size:12px}
.cmp tbody td:first-child{font-weight:600;color:var(--heading)}
.cmp td:not(:first-child):not(.us){color:var(--muted)}
.cmp .us{background:color-mix(in srgb,var(--teal) 9%,transparent);color:var(--ink);font-weight:600}
.cmp thead .us{color:var(--teal-ink)}
.cmp tbody tr:last-child td{border-bottom:0}
.vs{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.vs-col{border-radius:18px;padding:26px;background:var(--card);border:1px solid var(--line);min-width:0}
.vs-col.new{border:2px solid var(--teal);box-shadow:0 18px 40px -28px rgba(140,109,34,.45)}
.vs-h{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.vs-col.new .vs-h{color:var(--teal-ink)}
.vs ul{list-style:none;margin:0;padding:0;display:grid;gap:12px;font-size:15.5px}
.vs li{display:grid;grid-template-columns:20px 1fr;gap:10px}
.vs .old li{color:var(--muted)}
.vs .old li::before{content:"–";color:var(--silver);font-weight:700}
.vs .new li::before{content:"✓";color:var(--teal-ink);font-weight:700}
.caps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:24px}
.caps div{padding:18px 20px;border-top:2px solid var(--teal);display:grid;gap:4px}
.caps b{font:800 20px/1.1 var(--display);color:var(--heading)}
.caps span{font-size:14px;color:var(--muted)}
@media (max-width:760px){.vs{grid-template-columns:1fr}.caps{grid-template-columns:1fr 1fr}}
.split{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}
.split-col{border-radius:18px;padding:26px;background:var(--card);border:1px solid var(--line);min-width:0}
.split-col.ai{border:2px solid var(--teal)}
.split-col.ai .vs-h{color:var(--teal-ink)}
.split-col.human{border:2px solid var(--gold)}
.split-col.human .vs-h{color:var(--gold-ink)}
.split ul{list-style:none;margin:0;padding:0;display:grid;gap:12px;font-size:15.5px}
.split li{display:grid;grid-template-columns:20px 1fr;gap:10px}
.split .ai li::before{content:"✓";color:var(--teal-ink);font-weight:700}
.split .human li::before{content:"●";color:var(--gold);font-size:11px;padding-top:5px}
.note{margin-top:18px;font-size:13.5px;color:var(--muted)}
.disc{flex-basis:100%;font-size:13px;color:var(--muted);margin:0 0 4px}
@media (max-width:760px){.split{grid-template-columns:1fr}}

/* professional pass: bolder type, stronger hierarchy */
body{font-size:17px;color:var(--ink)}
.eyebrow{font-family:var(--body);font-weight:700;font-size:13px;letter-spacing:.16em;color:var(--teal-ink)}
.sec-head{max-width:760px;gap:16px;margin-bottom:48px}
.sec-head h2,.h2{font-size:clamp(32px,4.6vw,50px);font-weight:800;letter-spacing:-.025em;color:var(--heading);line-height:1.08}
.sec-head p{font-size:18.5px;color:var(--muted);line-height:1.65}
strong{color:var(--heading);font-weight:700}
.hero h1{font-size:clamp(42px,6.6vw,76px);font-weight:800;letter-spacing:-.035em;line-height:1.02}
.hero .lede{font-size:19.5px;color:var(--muted);line-height:1.65}
.hero .lede strong{color:var(--heading)}
.btn{font-weight:700;letter-spacing:.005em;border-radius:10px}
.btn-primary{box-shadow:0 8px 20px -10px rgba(140,109,34,.6)}
header .btn{border-radius:8px}
nav a{font-weight:600}
.logo{font-weight:800}
.pain h3{font-size:20px;font-weight:800;color:var(--heading)}
.pain .tag{font-family:var(--body);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-ink);font-size:11.5px}
.role-top h3{font-weight:800;color:var(--heading)}
.role .pitch{font-weight:600;color:var(--ink);font-size:16px}
.duties{font-size:15.5px}
.vs-h,.split-col .vs-h{font-family:var(--body);font-weight:800;font-size:13px}
.how h3{font-size:19px;font-weight:800;color:var(--heading)}
.own h3{font-weight:800;color:var(--heading)}
.journey span{font-weight:500}
.jsum b{font-size:40px}
.jsum span{font-weight:600;color:var(--ink)}
.quote{font-weight:800;color:var(--heading)}
.facts b{font-family:var(--body);font-weight:800}
.tab{font-weight:700;border-radius:10px}
.panel h3{color:var(--heading)}
.cmp thead th{font-family:var(--body);font-weight:800;font-size:13px;color:var(--heading)}
.trust{border-bottom:1px solid var(--line);background:var(--bg)}
.trust .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding-block:0}
.trust div{padding:26px 22px;display:grid;gap:4px;border-left:1px solid var(--line)}
.trust div:first-child{border-left:0;padding-left:0}
.trust b{font-size:16.5px;font-weight:800;color:var(--heading)}
.trust span{font-size:14px;color:var(--muted)}
@media (max-width:860px){.trust .wrap{grid-template-columns:1fr 1fr}.trust div{border-left:0;padding-left:0;border-top:1px solid var(--line)}.trust div:nth-child(-n+2){border-top:0}}
@media (max-width:480px){.trust .wrap{grid-template-columns:1fr}.trust div:nth-child(2){border-top:1px solid var(--line)}}

/* icons */
.ic{width:22px;height:22px;flex:none}
.ib{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--teal) 12%,transparent);color:var(--teal-ink);margin-bottom:6px}
.ib .ic{width:24px;height:24px}
.trust div{grid-template-columns:auto 1fr;column-gap:14px;align-items:start}
.trust .ic-t{grid-row:span 2;width:28px;height:28px;color:var(--teal-ink);margin-top:2px}
.mod .ib{width:40px;height:40px}
.caps .ic-c{width:30px;height:30px;color:var(--teal-ink);margin-bottom:6px}

/* dashboard */
.dash{display:grid;grid-template-columns:200px 1fr;background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 40px 80px -50px rgba(11,37,69,.45)}
.d-side{background:#0B2545;color:#DCE4EE;padding:22px 16px;display:flex;flex-direction:column;gap:22px}
.d-logo{display:flex;align-items:center;gap:8px;font:400 22px/1 'Kaushan Script',cursive;letter-spacing:0;text-transform:none;color:#fff}
.d-nav{display:grid;gap:4px;font-size:14px}
.d-nav span{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:#A9B8CC}
.d-nav .ic{width:18px;height:18px}
.d-nav .on{background:rgba(255,255,255,.1);color:#fff;font-weight:700}
.d-agents{margin-top:auto;padding:12px;border-radius:10px;background:rgba(59,116,209,.18)}
.d-agents small{display:block;font-size:12px;color:#A9B8CC}
.d-agents b{font-size:20px;color:#fff}
.d-main{padding:22px;display:grid;gap:16px;min-width:0;background:var(--bg-soft)}
.d-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.d-top b{font-size:20px;font-weight:800;color:var(--heading);display:block}
.d-top small{font-size:13px;color:var(--muted)}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:grid;gap:4px;min-width:0}
.kpi small{font-size:12.5px;color:var(--muted);font-weight:600}
.kpi b{font-size:24px;font-weight:800;color:var(--heading);font-variant-numeric:tabular-nums}
.kpi em{font-style:normal;font-size:12.5px;color:var(--muted)}
.kpi em.up{color:var(--ok);font-weight:700}
.d-charts{display:grid;grid-template-columns:1.25fr 1fr;gap:12px}
.d-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}
.d-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px}
.d-h b{font-size:14.5px;font-weight:700;color:var(--heading)}
.d-h small{font-size:12px;color:var(--muted)}
.chart{position:relative}
.chart svg{display:block;width:100%;height:auto;overflow:visible}
.chart .tip{position:absolute;pointer-events:none;background:#0B2545;color:#fff;font-size:12.5px;padding:6px 10px;border-radius:8px;white-space:nowrap;transform:translate(-50%,-120%);opacity:0;transition:opacity .12s}
.chart .tip b{color:#fff}
.feed,.appr{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.feed li{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.feed li:last-child,.appr li:last-child{border-bottom:0}
.feed .av-sm{width:28px;height:28px;border-radius:8px;font-size:10.5px}
.feed time{font-family:var(--mono);font-size:11.5px;color:var(--muted)}
.appr li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}
.appr b{display:block;font-size:14px;color:var(--heading)}
.appr small{font-size:12.5px;color:var(--muted)}
.ap{font:700 13px var(--body);padding:8px 14px;border-radius:8px;border:0;background:var(--gold);color:#0B2545;cursor:pointer;white-space:nowrap}
.ap.done{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}
@media (max-width:980px){.dash{grid-template-columns:1fr}.d-side{display:none}.kpis{grid-template-columns:1fr 1fr}.d-charts{grid-template-columns:1fr}}

/* blog */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.post{min-width:0}
.post-open{all:unset;box-sizing:border-box;display:grid;height:100%;cursor:pointer;background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:transform .2s,box-shadow .2s}
.post-open:hover{transform:translateY(-3px);box-shadow:0 24px 50px -30px rgba(11,37,69,.4)}
.post-open:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.cover{display:block;width:100%;height:auto;aspect-ratio:400/220}
.post-open{grid-template-rows:auto 1fr}
.post-b{padding:22px;display:grid;gap:10px;align-content:start}
.post-m{display:flex;gap:12px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.post-m span:first-child{color:var(--teal-ink)}
.post h3{font-size:20px;font-weight:800;color:var(--heading);line-height:1.25}
.post p{color:var(--muted);font-size:15px}
.post-r{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--teal-ink);font-size:14.5px;margin-top:4px}
.post-r .ic{width:18px;height:18px}
@media (max-width:900px){.posts{grid-template-columns:1fr}}
.reader{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.reader[hidden],.out[hidden]{display:none}
.reader-bg{position:absolute;inset:0;background:rgba(11,27,46,.55)}
.reader-card{position:relative;background:var(--card);border-radius:20px;max-width:720px;width:100%;max-height:100%;overflow:auto;box-shadow:0 40px 80px -30px rgba(0,0,0,.5)}
.reader-x{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.9);font-size:24px;cursor:pointer;color:var(--heading);z-index:2}
#reader-body .cover{border-radius:0}
.art{padding:28px 36px 40px;display:grid;gap:16px}
.art h2{font-size:clamp(26px,3.6vw,34px);font-weight:800;color:var(--heading);letter-spacing:-.02em}
.art h3{font-size:19px;font-weight:800;color:var(--heading);margin-top:8px}
.art p,.art li{font-size:16.5px;line-height:1.75;color:var(--ink)}
.art ul{margin:0;padding-left:20px;display:grid;gap:6px}
.art .by{font-size:14px;color:var(--muted)}
.art .cta-box{margin-top:10px;padding:20px;border-radius:14px;background:var(--bg-soft);display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
@media (max-width:560px){.art{padding:22px 20px 32px}}
.post.feat{grid-column:1/-1}
.post.feat .post-open{grid-template-columns:1.05fr 1fr;grid-template-rows:auto}
.post.feat .cover{height:100%;aspect-ratio:auto;min-height:240px;background:#F3F6FA}
.post.feat .post-b{padding:32px;align-content:center}
.post.feat h3{font-size:clamp(22px,2.6vw,28px)}
.post.feat p{font-size:16px}
@media (max-width:900px){.post.feat .post-open{grid-template-columns:1fr}}
.posts{grid-template-columns:repeat(2,1fr)}
.art table{width:100%;border-collapse:collapse;font-size:15px;display:block;overflow-x:auto}
.art th,.art td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;white-space:normal}
.art thead th{font-weight:800;color:var(--heading);font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.art tbody td:first-child{font-weight:700;color:var(--heading)}
.art tbody td:last-child{background:color-mix(in srgb,var(--teal) 8%,transparent)}
@media (max-width:900px){.posts{grid-template-columns:1fr}}
.posts{grid-template-columns:repeat(3,1fr)}
@media (max-width:1000px){.posts{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.posts{grid-template-columns:1fr}}
.posts{grid-template-columns:repeat(4,1fr);gap:20px}
.posts .post-b{padding:20px}
.posts .post h3{font-size:18px}
.posts .post p{font-size:14.5px}
@media (max-width:1100px){.posts{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.posts{grid-template-columns:1fr}}
.posts .post.feat h3{font-size:clamp(22px,2.6vw,30px)}
.posts .post.feat p{font-size:16px}
.posts .post.feat .post-b{padding:32px}
.art .rel a{color:var(--teal-ink);font-weight:700;text-decoration:none}
.art .rel a:hover{text-decoration:underline}
.grant{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:start}
.grant>*{min-width:0}
.g-lede{font-size:18.5px;color:var(--muted);line-height:1.65;margin-top:16px}
.g-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.g-facts div{padding:18px;border-radius:14px;background:var(--card);border:1px solid var(--line);display:grid;gap:6px;align-content:start}
.g-facts b{font-size:24px;font-weight:800;color:var(--heading);letter-spacing:-.01em}
.g-facts span{font-size:14px;color:var(--muted)}
.g-card{background:var(--card);border:2px solid var(--teal);border-radius:18px;padding:28px;display:grid;gap:18px}
.g-card .vs-h{color:var(--teal-ink);margin:0}
.g-steps{list-style:none;margin:0;padding:0;display:grid;gap:16px;counter-reset:g}
.g-steps li{display:grid;grid-template-columns:34px 1fr;column-gap:12px}
.g-steps li::before{counter-increment:g;content:counter(g);grid-row:span 2;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:800;font-size:14px}
.g-steps b{font-size:16px;color:var(--heading)}
.g-steps span{font-size:14.5px;color:var(--muted)}
.g-card .btn{justify-self:start}
.note a{color:var(--teal-ink);font-weight:600}
@media (max-width:900px){.grant{grid-template-columns:1fr}.g-facts{grid-template-columns:1fr}}
.g-routes{margin-top:28px}
.g-routes-h{margin:0 0 14px;font-size:18px;font-weight:800;color:var(--heading)}
.g-route-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.g-route{padding:20px;border-radius:14px;background:var(--card);border:1px solid var(--line);color:var(--ink);display:flex;flex-direction:column;gap:10px}
.g-route h4{margin:0;font-size:18px;font-weight:800;color:var(--heading)}
.g-route-for{margin:0;font-size:14.5px;font-weight:700;color:var(--teal-ink)}
.g-route ul{margin:0;padding-left:18px;display:grid;gap:6px;font-size:14px;color:var(--muted)}
.g-route-note{margin:0;font-size:13px;color:var(--muted);font-style:italic}
.g-route a{margin-top:auto;padding-top:4px;font-size:14px;font-weight:700;color:var(--teal-ink)}
.g-route-help{margin:14px 0 0;font-size:15px;font-weight:600;color:var(--ink)}
@media (max-width:760px){.g-route-grid{grid-template-columns:1fr}}
.elig{grid-column:1/-1;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:30px;margin-top:8px}
.elig-h{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.elig-h h3{font-size:clamp(22px,2.6vw,28px);font-weight:800;color:var(--heading);margin-top:6px}
.elig-h p{color:var(--muted);margin-top:6px}
.elig-h .vs-h{color:var(--teal-ink);margin:0}
.ec-reset{font:700 14px var(--body);background:none;border:1.5px solid var(--silver);border-radius:8px;padding:8px 14px;color:var(--ink);cursor:pointer}
.elig-grid{display:grid;grid-template-columns:1.4fr .9fr;gap:24px;align-items:start}
.elig-grid>*{min-width:0}
.ec-list{display:grid;gap:10px}
.ec-q{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:14px 16px;border-radius:12px;border:1px solid var(--line);background:var(--bg-soft)}
.ec-q.y{border-color:color-mix(in srgb,var(--ok) 50%,var(--line));background:color-mix(in srgb,var(--ok) 7%,var(--card))}
.ec-q.n{border-color:color-mix(in srgb,#C0392B 45%,var(--line));background:color-mix(in srgb,#C0392B 6%,var(--card))}
.ec-t b{display:block;font-size:15.5px;color:var(--heading)}
.ec-t span{display:block;font-size:13.5px;color:var(--muted);margin-top:2px}
.ec-yn{display:flex;gap:6px}
.ec-yn button{font:700 14px var(--body);padding:8px 16px;border-radius:8px;border:1.5px solid var(--silver);background:var(--card);color:var(--ink);cursor:pointer}
.ec-yn button[aria-pressed="true"][data-v="y"]{background:var(--ok);border-color:var(--ok);color:#fff}
.ec-yn button[aria-pressed="true"][data-v="n"]{background:#C0392B;border-color:#C0392B;color:#fff}
.ec-res{position:sticky;top:calc(env(safe-area-inset-top,0px) + 84px);border-radius:16px;padding:24px;display:grid;gap:12px;border:2px solid var(--line);background:var(--bg-soft)}
.ec-res.ok{border-color:var(--ok)}
.ec-res.no{border-color:#C0392B}
.ec-badge{justify-self:start;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:var(--card);color:var(--muted);border:1px solid var(--line)}
.ec-res.ok .ec-badge{background:var(--ok);color:#fff;border-color:var(--ok)}
.ec-res.no .ec-badge{background:#C0392B;color:#fff;border-color:#C0392B}
.ec-res h4{margin:0;font-size:21px;font-weight:800;color:var(--heading);line-height:1.25}
.ec-res p{color:var(--ink);font-size:15px}
.ec-res ul{margin:0;padding-left:18px;font-size:14.5px;color:var(--ink);display:grid;gap:4px}
.ec-res small{font-size:12.5px;color:var(--muted)}
.ec-res .btn{justify-self:start}
@media (max-width:900px){.elig-grid{grid-template-columns:1fr}.ec-res{position:static}.elig{padding:22px}}
@media (max-width:480px){.ec-q{grid-template-columns:1fr}}
.faq-list{display:grid;gap:12px;max-width:900px}
.faq-i{background:var(--bg-soft);border:1px solid var(--line);border-radius:14px;padding:0 22px}
.faq-i summary{cursor:pointer;list-style:none;padding:20px 32px 20px 0;font-weight:800;font-size:17px;color:var(--heading);position:relative}
.faq-i summary::-webkit-details-marker{display:none}
.faq-i summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:24px;font-weight:600;color:var(--teal-ink)}
.faq-i[open] summary::after{content:"–"}
.faq-i p{padding:0 0 20px;color:var(--muted);font-size:16px;line-height:1.7}

/* hero tech network */
.hero h1{font-size:clamp(38px,5vw,62px)}
.hero{position:relative;overflow:hidden}
#heroNet{position:absolute;inset:0;width:100%;height:100%;opacity:.55;pointer-events:none;z-index:0}
.hero .wrap{position:relative;z-index:1}
/* custom section */
.cs-top{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;margin-bottom:36px}
.cs-top>*{min-width:0}.cs-top .sec-head{margin-bottom:0}
.tech-shot{position:relative;margin:0;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#F4F8FB,#E6F3F5);border:1px solid var(--line);aspect-ratio:5/4;box-shadow:0 30px 60px -40px rgba(11,37,69,.5)}
#blueprint{position:absolute;inset:0;width:100%;height:100%}
.bp-card{position:absolute;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:grid;gap:2px;box-shadow:0 12px 30px -18px rgba(11,37,69,.45);max-width:62%}
.bp-card small{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-ink)}
.bp-card b{font-size:14px;color:var(--heading);line-height:1.3}
.tech-shot .bp-card{width:44%;max-width:none;top:calc(4% + var(--r,0) * 14%)}
.bp-l{left:5%}.bp-r{right:5%}.bp-b{border-color:var(--teal)}
.tech-shot figcaption{position:absolute;left:0;right:0;bottom:0;padding:10px 16px;font-size:12.5px;color:var(--muted);background:linear-gradient(transparent,rgba(255,255,255,.9))}
.cs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cs-col{border-radius:18px;padding:24px;background:var(--card);border:1px solid var(--line);min-width:0}
.cs-col.new{border:2px solid var(--teal);box-shadow:0 18px 40px -28px rgba(140,109,34,.45)}
.cs-col.new .vs-h{color:var(--teal-ink)}
.cs-col ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:15.5px}
.cs-col li{display:grid;grid-template-columns:20px 1fr;gap:8px}
.cs-col.old li{color:var(--muted)}.cs-col.old li::before{content:"–";color:var(--silver);font-weight:700}
.cs-col.new li{color:var(--ink);font-weight:600}.cs-col.new li::before{content:"✓";color:var(--teal-ink);font-weight:800}
.pillars{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:28px}
.pillars div{padding:18px 16px;border-top:2px solid var(--teal);display:grid;gap:4px;align-content:start}
.pillars b{font-size:16px;font-weight:800;color:var(--heading)}
.pillars span{font-size:14px;color:var(--muted)}
@media (max-width:960px){.cs-top{grid-template-columns:1fr}.cs-grid{grid-template-columns:1fr}.pillars{grid-template-columns:1fr 1fr}}
/* phone demo */
.ai-demo{display:grid;grid-template-columns:auto 1fr;gap:48px;align-items:center;margin:36px 0 8px}
.ai-demo>*{min-width:0}
.phone{width:300px;max-width:100%;border-radius:38px;background:#0B1B2E;padding:12px;box-shadow:0 40px 70px -40px rgba(11,37,69,.7);position:relative}
.ph-notch{position:absolute;top:12px;left:50%;transform:translateX(-50%);width:110px;height:22px;background:#0B1B2E;border-radius:0 0 14px 14px;z-index:2}
.ph-top{display:flex;align-items:center;gap:10px;background:#075E54;color:#fff;padding:30px 14px 12px;border-radius:28px 28px 0 0}
.ph-top b{display:block;font-size:14.5px}.ph-top small{font-size:11.5px;opacity:.8}
.ph-av{width:34px;height:34px;border-radius:50%;background:#C8A24A;color:#0B2545;display:grid;place-items:center;font-weight:800}
.ph-chat{background:#ECE5DD;padding:14px 10px 18px;border-radius:0 0 28px 28px;display:grid;gap:8px;min-height:360px;align-content:start}
.msg{max-width:84%;padding:8px 11px;border-radius:10px;font-size:13.5px;line-height:1.45;color:#111;box-shadow:0 1px 1px rgba(0,0,0,.08)}
.msg.m-in{background:#fff;justify-self:start;border-top-left-radius:2px}
.msg.m-out{background:#DCF8C6;justify-self:end;border-top-right-radius:2px}
.sys{justify-self:center;font-size:11.5px;font-weight:700;color:#075E54;background:#D4F1EA;padding:5px 10px;border-radius:999px;margin-top:4px;text-align:center}
.ai-demo-t h3{font-size:clamp(24px,3vw,32px);font-weight:800;color:var(--heading);line-height:1.15;margin:8px 0 16px}
.ai-demo-t .vs-h{color:var(--teal-ink)}
.ai-demo-t ul{list-style:none;margin:0;padding:0;display:grid;gap:12px;font-size:16px}
.ai-demo-t li{position:relative;padding-left:28px}
.ai-demo-t li::before{content:"✓";position:absolute;left:0;color:var(--teal-ink);font-weight:800}
.ai-demo-t li b{color:var(--heading)}
@media (max-width:760px){.ai-demo{grid-template-columns:1fr;justify-items:center}.ai-demo-t{justify-self:stretch}}
/* true story callout */
.true-story{border-left:4px solid var(--gold);background:color-mix(in srgb,var(--gold) 10%,var(--card));padding:16px 20px;border-radius:0 12px 12px 0}
.true-story b{display:block;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:6px}
.true-story p{margin:0;font-style:italic}
.ai-demo.rev{grid-template-columns:1fr auto;margin-top:56px}
.tg-top{background:#2AABEE !important}
.tg-av{background:#fff !important;color:#2AABEE !important}
.tg-chat{background:#DCE8F1 !important}
.msg.tg-o{background:#EFFDDE}
.msg.tg-i{background:#fff}
.tg-btns{display:flex;gap:6px;margin-top:8px}
.tg-btns span{flex:1;text-align:center;font-size:12.5px;font-weight:700;color:#2AABEE;background:#F0F7FC;border:1px solid #CFE6F5;border-radius:8px;padding:6px 4px}
.tg-photo span{display:block;width:120px;height:70px;border-radius:8px;background:linear-gradient(135deg,#CFD8DC,#ECEFF1);display:grid;place-items:center;font-size:12px;color:#455A64}
@media (max-width:760px){.ai-demo.rev{grid-template-columns:1fr}.ai-demo.rev .phone{order:-1}}

/* ---------- mobile navigation & decluttering ---------- */
.burger,.chips,.mnav{display:none}
@media (max-width:820px){
  header .wrap{padding-block:10px}
  .hdr-cta{display:none}
  .burger{display:grid;gap:5px;width:44px;height:44px;place-content:center;border:1px solid var(--line);border-radius:10px;background:var(--card);cursor:pointer}
  .burger span{display:block;width:20px;height:2px;background:var(--heading);border-radius:2px;transition:transform .2s,opacity .2s}
  header.open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  header.open .burger span:nth-child(2){opacity:0}
  header.open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:8px max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px));border-top:1px solid var(--line);background:var(--bg);-webkit-overflow-scrolling:touch}
  .chips::-webkit-scrollbar{display:none}
  .chips a{flex:none;font-size:13.5px;font-weight:700;text-decoration:none;color:var(--muted);padding:7px 13px;border-radius:999px;border:1px solid var(--line);background:var(--card)}
  .chips a.on{background:var(--navy);border-color:var(--navy);color:#fff}
  .mnav:not([hidden]){display:grid;gap:2px;padding:8px max(16px,env(safe-area-inset-right,0px)) 18px max(16px,env(safe-area-inset-left,0px));border-top:1px solid var(--line);background:var(--bg);max-height:calc(100vh - 120px);overflow:auto}
  .mnav a{padding:13px 4px;font-size:17px;font-weight:700;color:var(--heading);text-decoration:none;border-bottom:1px solid var(--line)}
  .mnav .btn{margin-top:12px;justify-content:center;border-bottom:0;color:#0B2545}
  section[id]{scroll-margin-top:118px}
}
.m-toggle{display:none}
@media (max-width:760px){
  body{font-size:16px}
  .band{padding-block:52px}
  .sec-head{margin-bottom:26px;gap:10px}
  .sec-head h2,.h2{font-size:clamp(27px,7.4vw,34px)}
  .sec-head p,.g-lede{font-size:16px}
  .hero{padding-block:36px 48px}
  .hero .lede{font-size:16.5px}
  .hero .tools{display:none}
  #heroNet{opacity:.22}
  .hero .ctas .btn{flex:1 1 100%;justify-content:center}
  .roster .steps li:nth-child(n+4):not(.you){display:none}
  .trust div{padding:16px 0}
  .tech-shot{aspect-ratio:3/4}
  .tech-shot .bp-card{width:70%;padding:10px 12px}.tech-shot .bp-card b{font-size:13px}
  .pillars{grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}
  .pillars div{padding:12px 4px}
  .pillars span{display:none}
  .pains{grid-template-columns:1fr 1fr}
  .pain{padding:18px 16px}
  .pain p{display:none}
  .pain h3{font-size:16px}
  .hub{gap:10px;margin-bottom:20px}
  .mod em{display:none}
  .m-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;font:700 15px var(--body);color:var(--teal-ink);background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 16px;cursor:pointer;text-align:left}
  .m-toggle::after{content:"+";font-size:20px;line-height:1}
  .m-toggle[aria-expanded="true"]::after{content:"–"}
  .m-toggle.m-block{margin:6px 0 14px}
  .m-toggle.m-strong{background:var(--gold);border-color:var(--gold);color:#0B2545}
  .m-hide{display:none !important}
  .m-hide.m-open{display:grid !important}
  .cmp-wrap.m-hide.m-open,.elig.m-hide.m-open{display:block !important}
  .role .duties,.role .connects{display:none}
  .role.m-open .duties{display:grid}
  .role.m-open .connects{display:flex}
  .role{padding:20px;gap:12px}
  .role .m-toggle{padding:10px 14px;font-size:14px}
  .caps{grid-template-columns:1fr 1fr;gap:6px}
  .caps div{padding:12px 4px}
  .ai-demo{gap:22px;margin:20px 0}
  .ai-demo-t h3{font-size:22px}
  .ai-demo-t .note,.ai-demo-t ul,.caps{display:none}
  .phone{width:270px}
  .ph-chat{min-height:0}
  .split-col{padding:20px}
  .journey li{padding:10px 0 10px 20px}
  .kpis{grid-template-columns:1fr 1fr;gap:8px}
  .kpi b{font-size:19px}
  .d-main{padding:14px}
  .d-charts+.d-charts{display:none}
  .how{gap:16px}
  .own{margin-top:28px}
  .own div{padding:18px}
  .tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-bottom:14px}
  .tabs::-webkit-scrollbar{display:none}
  .tab{flex:none}
  .panel{padding:18px;gap:18px}
  .g-facts{grid-template-columns:1fr;gap:8px}
  .g-facts div{padding:14px}
  .grant{gap:24px}
  .posts{display:flex !important;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:10px;margin-right:calc(-1 * max(16px,env(safe-area-inset-right,0px)))}
  .posts .post{flex:0 0 84%;scroll-snap-align:start}
  .posts .post.feat{grid-column:auto}
  .posts .post.feat .post-open{grid-template-columns:1fr}
  .posts .post p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .swipe-hint{display:block !important}
  .faq-i summary{font-size:16px;padding:16px 28px 16px 0}
  .story{gap:24px}
  .facts div{grid-template-columns:90px 1fr;padding:12px 0}
  form{padding:20px}
}
.swipe-hint{display:none;font-size:13px;color:var(--muted);margin:-14px 0 14px}
.snap-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.snap-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:26px;display:grid;gap:18px;align-content:start;min-width:0}
.snap-h{display:flex;align-items:center;gap:14px}
.snap-h .ib{margin:0}
.snap-h b{display:block;font-size:21px;font-weight:800;color:var(--heading)}
.snap-h small{font-size:14px;color:var(--muted)}
.snap-steps{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:sn}
.snap-steps li{display:grid;grid-template-columns:34px 1fr;column-gap:12px;padding:10px 0;position:relative}
.snap-steps li::before{counter-increment:sn;content:counter(sn);grid-row:span 2;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:14px;background:color-mix(in srgb,var(--teal) 14%,transparent);color:var(--teal-ink)}
.snap-steps li.me::before{background:var(--gold);color:#0B2545}
.snap-steps li:not(:last-child)::after{content:"";position:absolute;left:14px;top:42px;bottom:-6px;width:2px;background:var(--line)}
.snap-steps b{font-size:16px;color:var(--heading)}
.snap-steps span{font-size:14.5px;color:var(--muted)}
.snap-foot{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px}
.claim{border:1px solid var(--line);border-radius:14px;background:var(--bg-soft);padding:16px}
.claim-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.claim-h b{font-size:15px;color:var(--heading)}.claim-h small{font-size:12.5px;color:var(--teal-ink);font-weight:700}
.claim td{padding:7px 4px;font-size:14.5px}
.claim .tot td{font-weight:800;color:var(--heading);border-bottom:0}
.claim-a{display:flex;justify-content:space-between;align-items:center;margin-top:10px}
.claim-a small{font-size:12px;color:var(--muted)}
.ap-btn{font-weight:700;font-size:14px;padding:8px 18px;border-radius:8px;background:var(--gold);color:#0B2545}
@media (max-width:860px){.snap-grid{grid-template-columns:1fr}}
@media (max-width:760px){.snap-card{padding:20px}.snap-steps span{font-size:14px}}
.paths{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:stretch}
.path-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px;display:grid;gap:16px;align-content:start;min-width:0}
.path-top{display:flex;align-items:center;gap:14px}.path-top .ib{margin:0}
.path-top small{display:block;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-ink)}
.path-top b{display:block;font-size:22px;font-weight:800;color:var(--heading);line-height:1.2}
.path-note{display:block;margin-top:8px;font-size:13.5px;color:var(--muted)}
.path-lede{font-size:16px;color:var(--ink);line-height:1.6}
.path-best .vs-h{color:var(--heading);margin-bottom:8px}
.path-best ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px}
.path-best li{position:relative;padding-left:26px;color:var(--muted)}
.path-best li::before{content:"✓";position:absolute;left:0;color:var(--teal-ink);font-weight:800}
.path-eg{font-size:14.5px;color:var(--muted);background:var(--bg-soft);border-radius:12px;padding:12px 14px}
.path-eg b{color:var(--heading)}
.path-or{align-self:center;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:800;font-size:15px}
.path-bar{margin-top:22px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:20px 24px;border-radius:16px;border:2px solid var(--teal);background:var(--card)}
.path-bar .ic{width:30px;height:30px;color:var(--teal-ink);flex:none}
.path-bar p{flex:1 1 320px;margin:0;font-size:16px;color:var(--ink)}
.path-bar b{color:var(--heading)}
@media (max-width:900px){.paths{grid-template-columns:1fr}.path-or{justify-self:center;width:44px;height:44px}}
@media (max-width:760px){.path-card{padding:20px}.path-eg{display:none}.path-bar .btn{width:100%;justify-content:center}}

/* ---------- bold navy sections ---------- */
.bold{--bg:#102C62;--bg-soft:#102C62;--heading:#FFFFFF;--ink:#FFFFFF;--muted:#FFFFFF;--line:rgba(255,255,255,.18);--silver:rgba(255,255,255,.6);--teal-ink:#FFFFFF;--gold-ink:#FFFFFF;--card:#1A3A78;background:linear-gradient(160deg,#12306A 0%,#0F2A5C 55%,#13346F 100%)!important;color:#FFFFFF}
.bold .wrap :is(.eyebrow,.tools,.lede,p,span,b,em,strong,li):not(.flow *):not(.tech-shot *):not(.phone *):not(.pain *):not(.btn *){color:#FFFFFF}
.bold .tech-shot,.bold .phone{color:var(--ink)}
.bold .tech-shot{--ink:#0B1B2E;--heading:#0B2545;--muted:#3E4C5F;--teal-ink:#1F4FA0;--gold-ink:#8C6D22;--card:#FFFFFF;--line:#D5DCE6}
.bold .pain{--card:#13315C;--ink:#FFFFFF;--heading:#FFFFFF;--muted:#DCE4F0}
.bold.hero{background:radial-gradient(900px 520px at 88% 0%,#22508F 0%,transparent 62%),radial-gradient(700px 420px at 0% 100%,rgba(200,162,74,.12),transparent 65%),#12306A!important}
.bold.hero::after{display:none}
.bold #heroNet{opacity:.7}
.bold .flow{--bg:#FFFFFF;--bg-soft:#F4F7FB;--silver:#C9D1DC;--card:#FFFFFF;--ink:#0B1B2E;--heading:#0B2545;--muted:#3E4C5F;--line:#D5DCE6;--teal-ink:#1F4FA0;--gold-ink:#8C6D22;color:var(--ink);box-shadow:0 34px 70px -24px rgba(0,0,0,.6)}
.bold .lede strong,.bold p strong{color:#FFFFFF}
.bold .quote{color:#FFFFFF}
footer{background:#0F2A5C!important;color:#FFFFFF!important}
footer .logo{color:#FFFFFF!important}
footer .disc,footer span{color:#FFFFFF}
/* ---------- motion ---------- */
.btn{transition:transform .2s ease,box-shadow .25s ease,background .2s ease}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 28px -10px rgba(200,162,74,.75)}
.pain,.mod,.post,.pillars>div,.facts div,.trust .wrap>div{transition:transform .3s ease,box-shadow .3s ease}
.pain:hover,.mod:hover,.post:hover{transform:translateY(-6px);box-shadow:0 22px 40px -22px rgba(11,37,69,.45)}
.rv{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.sec-head.rv h2::after{width:0;transition:width .9s .35s cubic-bezier(.2,.7,.2,1)}
.sec-head.rv.in h2::after{width:56px}
@keyframes heroUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
.hero .eyebrow,.hero h1,.hero .lede,.hero .ctas,.hero .tools,.hero .flow{animation:heroUp .9s cubic-bezier(.2,.7,.2,1) both}
.hero h1{animation-delay:.1s}.hero .lede{animation-delay:.22s}.hero .ctas{animation-delay:.34s}.hero .tools{animation-delay:.46s}.hero .flow{animation-delay:.3s}
@keyframes goldSheen{0%{background-position:-160% 0}60%,100%{background-position:260% 0}}
.hero .btn-primary{background-image:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.45) 50%,transparent 65%);background-size:200% 100%;background-repeat:no-repeat;animation:heroUp .9s .34s both,goldSheen 4.5s 1.6s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.sec-head.rv h2::after{width:56px}}

/* ---------- blue section motion ---------- */
.bold{position:relative;overflow:hidden}
.bold>.wrap{position:relative;z-index:2}
.bold-net{position:absolute;inset:0;width:100%;height:100%;opacity:.55;pointer-events:none;z-index:0}
.orbs{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.orbs i{position:absolute;border-radius:50%;filter:blur(70px);will-change:transform}
.orbs i:nth-child(1){width:420px;height:420px;left:-120px;top:-140px;background:rgba(200,162,74,.22);animation:drift1 16s ease-in-out infinite alternate}
.orbs i:nth-child(2){width:520px;height:520px;right:-160px;bottom:-200px;background:rgba(59,116,209,.32);animation:drift2 20s ease-in-out infinite alternate}
.orbs i:nth-child(3){width:260px;height:260px;left:45%;top:30%;background:rgba(76,201,200,.14);animation:drift3 13s ease-in-out infinite alternate}
@keyframes drift1{to{transform:translate(180px,120px) scale(1.15)}}
@keyframes drift2{to{transform:translate(-200px,-90px) scale(1.1)}}
@keyframes drift3{to{transform:translate(-140px,80px) scale(.85)}}
.orbs .sweep{position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,#C8A24A,transparent);background-size:40% 100%;background-repeat:no-repeat;animation:sweep 6s linear infinite;opacity:.9}
@keyframes sweep{from{background-position:-40% 0}to{background-position:140% 0}}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.bold .flow{animation:heroUp .9s .3s cubic-bezier(.2,.7,.2,1) both,floatY 7s 1.4s ease-in-out infinite}
.bold .quote em{background:linear-gradient(#C8A24A,#C8A24A) left bottom/0 3px no-repeat;padding-bottom:4px;transition:background-size 1.2s .5s cubic-bezier(.2,.7,.2,1)}
.bold .quote.in em{background-size:100% 3px}
.bold .facts div::before{content:"";position:absolute}
@media (prefers-reduced-motion:reduce){.orbs i,.orbs .sweep,.bold .flow{animation:none!important}.bold .quote em{background-size:100% 3px}}

/* ---------- animated card stacks ---------- */
.tech-shot canvas{position:absolute;inset:0;width:100%;height:100%}
.tech-shot.rv{opacity:1;transform:none}
.tech-shot.rv .bp-card{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.tech-shot.rv .bp-l{transform:translateX(-56px) scale(.94)}.tech-shot.rv .bp-r{transform:translateX(56px) scale(.94)}
.tech-shot.rv.in .bp-card{opacity:1;transform:none;transition-delay:calc(.15s + var(--r,0) * .3s)}

@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -7px}}
@keyframes agentGlow{0%,100%{box-shadow:0 12px 30px -18px rgba(11,37,69,.45),0 0 0 0 rgba(59,116,209,.35)}50%{box-shadow:0 12px 30px -18px rgba(11,37,69,.45),0 0 0 8px rgba(59,116,209,0)}}
.tech-shot.in .bp-card{animation:drift calc(9s + var(--r,0) * .8s) calc(2.2s + var(--r,0) * .2s) ease-in-out infinite}
.tech-shot.in .bp-card:nth-of-type(even){animation-name:drift2}
.tech-shot.in .bp-b{animation:drift 10.6s 2.6s ease-in-out infinite,agentGlow 2.6s 2.2s ease-out infinite}
@keyframes drift{0%,100%{translate:0 0}25%{translate:12px -8px}50%{translate:2px -14px}75%{translate:-10px -5px}}
@keyframes drift2{0%,100%{translate:0 0}25%{translate:-11px -9px}50%{translate:-3px -15px}75%{translate:10px -4px}}
/* scenario stream: tags fly left to right behind the milestone cards */
.bp-fly{position:absolute;inset:0 0 40px 0;overflow:hidden;pointer-events:none}
.bp-lane{position:absolute;left:0;width:100%;top:var(--y);opacity:0;transform:translateX(-30%)}
.bp-lane i{display:inline-flex;align-items:center;gap:7px;font:600 12px/1 var(--body);font-style:normal;color:var(--heading);background:rgba(255,255,255,.8);border:1px solid var(--line);border-radius:999px;padding:7px 12px;white-space:nowrap;box-shadow:0 8px 20px -14px rgba(11,37,69,.5)}
.bp-lane i::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--teal)}
.bp-lane:nth-child(even) i::before{background:var(--gold)}
.tech-shot.in .bp-lane{animation:flyAcross var(--d,28s) linear var(--o,0s) infinite}
@keyframes flyAcross{0%{opacity:0;transform:translateX(-30%)}6%{opacity:1}94%{opacity:1}100%{opacity:0;transform:translateX(100%)}}
@media (max-width:760px){.bp-lane:nth-child(n+7){display:none}}
@media (prefers-reduced-motion:reduce){.bp-fly{display:none}}
.bp-c small{color:var(--gold-ink)}
/* phased panel spans both columns, like the two boxes above it */
@media (min-width:761px){.cs-top>.tech-shot{grid-column:1/-1;aspect-ratio:auto;height:480px}}
/* wide screens: a rising staircase, Week 1 bottom-left to Ongoing top-right, flying up into place */
@media (min-width:1180px){
  .tech-shot .bp-card{width:23.5%;top:calc(74% - var(--r,0) * 14%)}
  .tech-shot .bp-l,.tech-shot .bp-r{left:calc(2% + var(--r,0) * 14.5%);right:auto}
  .tech-shot.rv .bp-l,.tech-shot.rv .bp-r{transform:translate(-36px,36px) scale(.94)}
}
@media (prefers-reduced-motion:reduce){.tech-shot .bp-card{opacity:1!important;transform:none!important;animation:none!important}}

/* ---------- live chat animation ---------- */
.phone.anim .ph-chat>.msg,.phone.anim .ph-chat>.sys{opacity:0;transform:translateY(12px) scale(.94);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.9,.3,1.3)}
.phone.anim .ph-chat>.m-in{transform-origin:left bottom}
.phone.anim .ph-chat>.m-out{transform-origin:right bottom}
.phone.anim .ph-chat>.show{opacity:1;transform:none}
.phone .ph-top small.typing{color:#25D366;font-style:italic}
.phone.tgp .ph-top small.typing{color:#2AABEE}

.fnb-flow{margin-top:44px}
.fnb-flow .ai-demo-t ul{display:grid}
#fnb .ai-demo.rev{margin-top:48px}

/* ---------- industries ---------- */
.inds{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.ind{position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:6px;transition:transform .3s ease,border-color .3s ease,background .3s ease}
.ind:hover{transform:translateY(-6px);border-color:#C8A24A;background:rgba(255,255,255,.1)}
.ind-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(200,162,74,.18);color:#E3C77E;margin-bottom:8px}
.ind-ic .ic{width:22px;height:22px}
.ind h3{font-size:20px;font-weight:800;color:#FFFFFF;margin:0}
#industries .ind small{font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:#E3C77E}
.ind p{margin:6px 0 4px;font-weight:600}
.ind ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px}
.ind li{position:relative;padding-left:24px;color:#FFFFFF}
.ind li::before{content:"✓";position:absolute;left:0;color:#C8A24A;font-weight:800}
#industries .ind-link{margin-top:10px;color:#E3C77E;font-weight:700;text-decoration:none}
#industries .ind-link:hover{color:#FFFFFF}
.ind-more{margin-top:28px;padding:20px 24px;border-radius:16px;border:1px dashed rgba(200,162,74,.6);font-size:17px;color:#FFFFFF}
#industries .ind-more a{color:#E3C77E;font-weight:700;text-decoration:none;white-space:nowrap}
#industries .ind-more a:hover{color:#FFFFFF}
@media (max-width:640px){.ind{padding:20px}.ind ul{font-size:14.5px}}

.ind-read{all:unset;cursor:pointer}
#industries .ind-link{display:inline-block;margin-top:12px;color:#E3C77E;font-weight:700;text-decoration:none}
#industries .ind-link + .ind-link{margin-top:4px;font-weight:600;font-size:14.5px}
#industries .ind-read:focus-visible{outline:2px solid #C8A24A;outline-offset:3px;border-radius:4px}
.art ul{padding-left:20px;display:grid;gap:8px}

.wm-1{background:linear-gradient(135deg,#2453A6,#4CC9C8);-webkit-background-clip:text;background-clip:text;color:transparent}
.wm-dot{color:var(--gold);font-size:.5em;margin-left:.12em;vertical-align:baseline}
.logo .wm{gap:4px}

/* ---------- richer light sections ---------- */
.band:not(.bold){background-image:radial-gradient(900px 420px at 100% 0%,rgba(36,83,166,.07),transparent 60%),radial-gradient(700px 360px at 0% 100%,rgba(200,162,74,.08),transparent 60%)}
.band.soft:not(.bold){background-image:linear-gradient(180deg,rgba(255,255,255,.35),transparent 40%),radial-gradient(900px 420px at 0% 0%,rgba(36,83,166,.08),transparent 60%),radial-gradient(700px 360px at 100% 100%,rgba(76,201,200,.10),transparent 60%)}
.band:not(.bold)+.band:not(.bold){border-top:1px solid rgba(11,37,69,.06)}

.logo .wm{white-space:nowrap}
.logo .wm-text{display:inline-flex;align-items:baseline;white-space:nowrap}
.logo .wm-1{margin-right:.02em}
.logo .wm::after{width:1.06em}

/* ---------- grouped navigation ---------- */
nav ul li.grp{position:relative}
header nav>ul{align-items:center}
header nav>ul>li>a,nav li.grp>button{display:inline-flex;align-items:center;line-height:1;padding:10px 0;font-size:inherit}
nav li.grp>button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-weight:600;padding:10px 0}
nav li.grp>button .ic{width:14px;height:14px;transition:transform .2s}
nav li.grp:hover>button,nav li.grp.open>button{color:var(--heading)}
nav li.grp:hover>button .ic,nav li.grp.open>button .ic{transform:rotate(180deg)}
nav .sub{display:none;position:absolute;top:100%;left:-12px;min-width:200px;background:#FFFFFF;border:1px solid var(--line);border-radius:14px;padding:8px;box-shadow:0 18px 40px -16px rgba(11,37,69,.35);flex-direction:column;gap:2px;z-index:30}
nav .sub::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
nav li.grp:hover .sub,nav li.grp.open .sub{display:flex}
nav .sub li{list-style:none}
nav .sub a{display:block;padding:9px 12px;border-radius:9px;color:var(--heading);font-weight:600;font-size:14.5px}
nav .sub a:hover{background:var(--bg-soft);color:var(--teal-ink)}
.chips-g{border-top:1px solid var(--line)}
.chips-g button{all:unset;flex:none;cursor:pointer;font-size:13.5px;font-weight:700;color:var(--muted);padding:7px 13px;border-radius:999px;border:1px solid var(--line);background:var(--card)}
.chips-g button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.chips-g a{background:var(--gold);border-color:var(--gold);color:#0B2545}
#chips{border-top:0;padding-top:4px;background:var(--bg-soft)}
#chips a[hidden]{display:none}
#chips a.on{background:var(--gold);border-color:var(--gold);color:#0B2545}

/* ---------- extra dark themes ---------- */
.bold.ink{--card:#161C2E;background:linear-gradient(160deg,#0B0F1A 0%,#0F1526 60%,#121A33 100%)!important}
.bold.ink .orbs i:nth-child(2){background:rgba(76,201,200,.22)}
.bold.sea{--card:#145A8A;background:linear-gradient(160deg,#0F4C81 0%,#0E6E8E 60%,#0E7C86 100%)!important}
.bold.sea .orbs i:nth-child(1){background:rgba(255,255,255,.14)}
.bold.sea .btn-primary{background:var(--gold);color:#0B2545}

.contact-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}

.whole-flow{margin-top:28px;padding:22px 24px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.whole-flow ul{margin:10px 0 0;padding-left:20px;display:grid;gap:8px}
.sec-head .own-line{font-size:20px;margin-top:6px}
.split-do{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0 36px}
.split-do>div{padding:22px 24px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16)}
.split-do ul{margin:10px 0 0;padding-left:20px;display:grid;gap:8px;color:#FFFFFF}
.split-do .vs-h{color:#E3C77E}
@media (max-width:760px){.split-do{grid-template-columns:1fr}}
.cs-top .split-do{grid-column:1/-1}

/* ---------- animated workflow map ---------- */
.flowmap{--cycle:10s;margin-top:44px;padding:26px 24px 20px;border-radius:18px;background:var(--card);border:1px solid var(--line);display:flex;align-items:stretch;flex-wrap:wrap;gap:0;position:relative}
.fm-node{position:relative;flex:1 1 120px;min-width:118px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 10px 12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;animation:fmNode var(--cycle) calc(var(--i)*1.2s) ease-in-out infinite}
.fm-node .fm-ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--bg-soft);color:var(--teal-ink);margin-bottom:4px;transition:background .3s,color .3s}
.fm-node .fm-ic .ic{width:20px;height:20px}
.fm-node b{font-size:13.5px;line-height:1.2}
.fm-node small{font-size:11.5px;color:var(--muted);line-height:1.3}
.fm-node.entry .fm-ic{background:var(--gold);color:#0B2545}
.fm-dot{position:absolute;top:-7px;right:-7px;width:14px;height:14px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 rgba(200,162,74,.6);animation:fmPing 2s ease-out infinite}
.fm-link{flex:0 0 26px;align-self:center;height:3px;position:relative;background:var(--line);border-radius:2px;overflow:visible}
.fm-link i{position:absolute;left:0;top:0;height:100%;width:0;border-radius:2px;background:linear-gradient(90deg,var(--gold),var(--teal));animation:fmLink var(--cycle) calc(var(--i)*1.2s + .6s) ease-in-out infinite}
.fm-link::after{content:"";position:absolute;right:-5px;top:-4px;border:5px solid transparent;border-left:6px solid var(--line)}
.fm-title{flex-basis:100%;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.fm-title span{font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-ink)}
.fm-title small{font-size:13.5px;color:var(--muted)}
.fm-cap{flex-basis:100%;margin-top:14px;font-size:13px;color:var(--muted);display:flex;align-items:center;gap:8px;justify-content:center}
.fm-gold,.fm-blue{width:10px;height:10px;border-radius:50%;display:inline-block}
.fm-gold{background:var(--gold)}.fm-blue{background:var(--teal)}
@keyframes fmNode{0%,6%{box-shadow:0 0 0 0 rgba(59,116,209,0);border-color:var(--line);transform:translateY(0)}9%{box-shadow:0 0 0 6px rgba(59,116,209,.18);border-color:var(--teal);transform:translateY(-4px)}22%{box-shadow:0 0 0 0 rgba(59,116,209,0);border-color:var(--teal);transform:translateY(0)}90%{border-color:var(--teal)}100%{border-color:var(--line)}}
@keyframes fmLink{0%,5%{width:0}12%{width:100%}92%{width:100%}100%{width:0}}
@keyframes fmPing{0%{box-shadow:0 0 0 0 rgba(200,162,74,.6)}100%{box-shadow:0 0 0 12px rgba(200,162,74,0)}}
@media (max-width:760px){.flowmap{flex-direction:column}.fm-node{flex-basis:auto;width:100%;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"ic b" "ic s";column-gap:12px;row-gap:2px;text-align:left;padding:12px 14px;align-items:center}.fm-node .fm-ic{grid-area:ic;margin:0}.fm-node b{grid-area:b}.fm-node small{grid-area:s}.fm-link{width:3px;height:22px;align-self:flex-start;margin-left:32px;flex-basis:22px}.fm-link i{width:100%;height:0;background:linear-gradient(180deg,var(--gold),var(--teal));animation-name:fmLinkV}.fm-link::after{right:auto;left:-4px;top:auto;bottom:-5px;border:5px solid transparent;border-top:6px solid var(--line)}}
@keyframes fmLinkV{0%,5%{height:0}12%{height:100%}92%{height:100%}100%{height:0}}
@media (prefers-reduced-motion:reduce){.fm-node,.fm-link i,.fm-dot{animation:none}.fm-link i{width:100%;height:100%}}

/* ---------- futuristic flow panel ---------- */
.fm-panel{position:relative;border-radius:22px;padding:26px 22px 22px;overflow:hidden;background:radial-gradient(700px 360px at 85% 0%,rgba(59,116,209,.35),transparent 60%),radial-gradient(500px 300px at 10% 100%,rgba(76,201,200,.22),transparent 60%),linear-gradient(160deg,#0A1430 0%,#0C1B3F 60%,#0F2457 100%);border:1px solid rgba(76,201,200,.25);box-shadow:0 40px 80px -40px rgba(0,0,0,.7),inset 0 0 60px rgba(59,116,209,.12)}
.fm-panel canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.3}
.fm-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(76,201,200,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(76,201,200,.07) 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(ellipse at center,#000 40%,transparent 90%)}
.fm-panel .flowmap{position:relative;z-index:1;margin-top:0}
.fm-panel .fm-title span{color:#0B2545;font-size:13px;background:#F0D58A;padding:6px 12px;border-radius:999px;font-weight:800;letter-spacing:.1em;animation:fmPop 1.2s cubic-bezier(.2,.9,.3,1.4) both}
.fm-panel .fm-title small{color:#0B2545;font-size:15px;font-weight:600;background:#FFFFFF;padding:6px 12px;border-radius:999px;animation:fmPop 1.2s .25s cubic-bezier(.2,.9,.3,1.4) both}
.fm-panel .fm-cap{color:#0B2545;font-size:14px;font-weight:700;background:#FFFFFF;padding:8px 14px;border-radius:999px;width:max-content;max-width:100%;margin:16px auto 0;animation:fmPop 1.2s .5s cubic-bezier(.2,.9,.3,1.4) both}
@keyframes fmPop{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.08)}100%{opacity:1;transform:scale(1)}}
.fm-panel .fm-node b{font-size:14.5px}
.fm-panel .fm-node small{font-size:12.5px}
.fm-panel,.fm-panel *{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.fm-panel .fm-node{background:#12275A;border:1px solid rgba(76,201,200,.4);color:#FFFFFF}
.fm-panel .fm-node b{color:#FFFFFF}
.fm-panel .fm-node small{color:#D5DFEE}
.fm-panel .fm-node .fm-ic{background:rgba(76,201,200,.18);color:#6FE0DF}
.fm-panel .fm-node.entry .fm-ic{background:#C8A24A;color:#0B2545;box-shadow:0 0 24px rgba(200,162,74,.6)}
.fm-panel .fm-link{background:rgba(255,255,255,.14)}
.fm-panel .fm-link i{background:linear-gradient(90deg,#C8A24A,#4CC9C8);box-shadow:0 0 10px rgba(76,201,200,.8)}
.fm-panel .fm-link::after{border-left-color:rgba(255,255,255,.3)}
.fm-panel .fm-cap{color:#B9C6D9}
.fm-panel .fm-node{animation-name:fmNodeDark}
@keyframes fmNodeDark{0%,6%{box-shadow:0 0 0 0 rgba(76,201,200,0);border-color:rgba(76,201,200,.4);transform:translateY(0)}9%{box-shadow:0 0 0 4px rgba(76,201,200,.25);border-color:#4CC9C8;transform:translateY(-4px)}22%{box-shadow:0 0 0 0 rgba(76,201,200,0);border-color:#4CC9C8;transform:translateY(0)}90%{border-color:#4CC9C8}100%{border-color:rgba(76,201,200,.4)}}
@media (max-width:760px){.fm-panel .fm-link::after{border-left-color:transparent;border-top-color:rgba(255,255,255,.3)}}

/* ---------- animated core hub ---------- */
.hub2{position:relative;margin-bottom:36px;border-radius:24px;overflow:hidden;min-height:520px;aspect-ratio:16/8.5;background:radial-gradient(700px 360px at 50% 50%,rgba(59,116,209,.35),transparent 60%),linear-gradient(160deg,#0A1430 0%,#0C1B3F 60%,#0F2457 100%);border:1px solid rgba(76,201,200,.25);box-shadow:0 40px 80px -40px rgba(0,0,0,.7)}
.hub2 canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.35}
.hub-lines{position:absolute;inset:0;width:100%;height:100%}
.hub-line{fill:none;stroke:#C8A24A;stroke-width:3;stroke-dasharray:7 5;stroke-linecap:round;filter:drop-shadow(0 0 3px rgba(200,162,74,.6));animation:hubDash 1.4s linear infinite}
@keyframes hubDash{to{stroke-dashoffset:-24}}
.hub-pulse.in{fill:#C8A24A;filter:drop-shadow(0 0 4px rgba(200,162,74,.9))}
.hub-pulse.out{fill:#4CC9C8;filter:drop-shadow(0 0 4px rgba(76,201,200,.9))}
.hmod{position:absolute;width:30%;background:#12275A;border:1px solid rgba(76,201,200,.4);border-radius:16px;padding:18px;display:grid;gap:6px;color:#FFFFFF;animation:hubMod 8s calc(var(--i)*1.6s) ease-in-out infinite;-webkit-font-smoothing:antialiased;transform:translateZ(0);will-change:box-shadow;font-size:13.5px;line-height:1.4}
.hmod *{font-synthesis:none}
@keyframes hubMod{0%,6%{box-shadow:0 0 0 0 rgba(200,162,74,0);border-color:rgba(76,201,200,.4)}9%{box-shadow:0 0 0 5px rgba(200,162,74,.28);border-color:#C8A24A}22%{box-shadow:0 0 0 0 rgba(200,162,74,0);border-color:#C8A24A}90%{border-color:#C8A24A}100%{border-color:rgba(76,201,200,.4)}}
.hmod .ib{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:rgba(76,201,200,.18);color:#6FE0DF}
.hmod b{font:700 18px/1.2 var(--display);color:#FFFFFF}
.hmod span{font:400 13.5px/1.4 var(--display);color:#D5DFEE}
.hmod em{font-style:normal;font:500 11px/1.4 var(--mono);color:#9FB0C6}
.hmod.h1{left:6%;top:9%}.hmod.h2{left:6%;bottom:9%}.hmod.h3{right:6%;top:9%}.hmod.h4{right:6%;bottom:9%}
.hcore{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:26%;min-width:220px;border-radius:50%;aspect-ratio:1;background:radial-gradient(circle at 50% 40%,#17347A,#0B1B45);border:2px solid #C8A24A;display:grid;place-content:center;text-align:center;gap:6px;padding:20px;color:#FFFFFF;box-shadow:0 0 40px rgba(200,162,74,.35)}
.hcore-ring{position:absolute;inset:-14px;border-radius:50%;border:2px solid rgba(200,162,74,.6);animation:hubRing 2.6s ease-out infinite}
.hcore-ring::after{content:"";position:absolute;inset:-14px;border-radius:50%;border:1px solid rgba(76,201,200,.5);animation:hubRing 2.6s 1.3s ease-out infinite}
@keyframes hubRing{0%{transform:scale(.92);opacity:.9}100%{transform:scale(1.25);opacity:0}}
.hcore span strong{color:#FFFFFF;font-weight:700}
.hub-note{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);font-size:12px;color:#B9C6D9;white-space:nowrap}
@media (max-width:860px){.hub-note{position:static;transform:none;white-space:normal;text-align:center}}
.hcore b{font:800 24px/1.1 var(--display);color:#F0D58A}
.hcore span{font-size:13px;color:#D5DFEE;line-height:1.4}
@media (max-width:860px){.hub2{aspect-ratio:auto;min-height:0;display:grid;gap:12px;padding:16px}.hub-lines,.hub2 canvas{display:none}.hmod{position:static;width:auto}.hcore{position:static;transform:none;width:100%;border-radius:20px;aspect-ratio:auto;min-width:0;order:-1}.hcore-ring{display:none}}

header{overflow:visible;z-index:50}
nav .sub{pointer-events:auto}
nav li.grp>button{cursor:pointer}
#chips a[hidden]{display:none!important}

/* ---------- dark mission/platform ---------- */
#mission.bold .whole-flow{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18)}
#mission.bold .whole-flow li,#mission.bold .whole-flow p{color:#FFFFFF}
#mission.bold .fm-panel{border-color:rgba(200,162,74,.45)}
#erp.bold .hub2{border-color:rgba(200,162,74,.45)}
#erp.bold .cmp-wrap,#erp.bold table{color:var(--ink)}
#erp.bold .cmp-wrap{--ink:#0B1B2E;--heading:#0B2545;--muted:#3E4C5F;--line:#D5DCE6;--card:#FFFFFF;--bg-soft:#F4F7FB;--teal-ink:#1F4FA0;--gold-ink:#8C6D22;background:#FFFFFF;border-radius:18px;overflow:hidden}
#erp.bold .cmp-wrap :is(p,span,b,em,strong,li,td,th){color:var(--ink)}
#erp.bold .cmp-wrap th{color:var(--heading)}

/* ---------- light variants ---------- */
#industries:not(.bold) .ind{background:#FFFFFF;border:1px solid var(--line);color:var(--ink)}
#industries:not(.bold) .ind h3{color:var(--heading)}
#industries:not(.bold) .ind small{color:var(--gold-ink)}
#industries:not(.bold) .ind p,#industries:not(.bold) .ind li{color:var(--ink)}
#industries:not(.bold) .ind-ic{background:rgba(200,162,74,.18);color:var(--gold-ink)}
#industries:not(.bold) .ind-link{color:var(--teal-ink)}
#industries:not(.bold) .ind-more{color:var(--ink);border-color:rgba(200,162,74,.7)}
#industries:not(.bold) .ind-more a{color:var(--teal-ink)}
#how:not(.bold) .split-do>div{background:#FFFFFF;border:1px solid var(--line)}
#how:not(.bold) .split-do ul{color:var(--ink)}
#how:not(.bold) .split-do .vs-h{color:var(--gold-ink)}
#grants.bold .ec-q{--card:#13315C}
#grants.bold .ec-reset{color:#FFFFFF;border-color:rgba(255,255,255,.5)}

#grants:not(.bold) .ec-q{--card:#FFFFFF}
#contact.bold form{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.2)}
#contact.bold input,#contact.bold select,#contact.bold textarea{background:#0F2A5C;color:#FFFFFF;border-color:rgba(255,255,255,.3)}
#contact.bold input::placeholder,#contact.bold textarea::placeholder{color:#B9C6D9}
#contact.bold .btn:not(.btn-primary){color:#FFFFFF;border-color:rgba(255,255,255,.5)}
#contact.bold #outText{color:#FFFFFF}
#calculator.bold .row{--card:#13315C}
#calculator.bold .hrs input,#calculator.bold .rate input{background:#0F2A5C;color:#FFFFFF;border-color:rgba(255,255,255,.3)}

/* ---------- floating WhatsApp ---------- */
.wa-float{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;align-items:center;gap:12px;padding:10px 16px 10px 10px;border-radius:999px;background:#25D366;color:#073B1C;text-decoration:none;box-shadow:0 14px 34px -10px rgba(37,211,102,.7),0 4px 12px rgba(0,0,0,.2);animation:waIn .8s 1.2s cubic-bezier(.2,.9,.3,1.3) both;transition:transform .2s}
.wa-float:hover{transform:translateY(-2px)}
.wa-ic{width:44px;height:44px;border-radius:50%;background:#FFFFFF;display:grid;place-items:center;color:#25D366;position:relative}
.wa-ic svg{width:26px;height:26px}
.wa-ic::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(255,255,255,.7);animation:waPing 2.2s ease-out infinite}
.wa-txt{display:grid;line-height:1.15}
.wa-txt b{font-size:14px}
.wa-txt small{font-size:11.5px;opacity:.85}
@keyframes waIn{from{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:none}}
@keyframes waPing{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.5);opacity:0}}
@media (max-width:640px){.wa-float{padding:8px;right:14px}.wa-txt{display:none}.wa-ic{width:52px;height:52px}}
/* ---------- About facts list: one-time entrance + hover ----------
   Hidden start states apply only once JS adds .fx (never with reduced motion or
   without JS), and everything animated is transform/opacity or absolutely
   positioned, so nothing reflows. */
.facts b{position:relative}
.facts b::before{content:"";position:absolute;left:-16px;top:calc(3px + .8em - 3px);width:6px;height:6px;border-radius:50%;background:#C9A24A}
.facts .num{display:inline-block;text-align:right;white-space:nowrap}
.facts div:nth-child(2){--i:1}.facts div:nth-child(3){--i:2}.facts div:nth-child(4){--i:3}
.facts.fx div{position:relative;border-bottom-color:transparent;opacity:0}
.facts.fx div::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--line);transform:scaleX(0);transform-origin:left}
.facts.fx b::before{transform:scale(0)}
.facts.fx.go div{animation:factIn .6s ease-out calc(var(--i,0) * .15s) both}
.facts.fx.go div::after{animation:factLine .8s ease-out calc(var(--i,0) * .15s + .35s) both}
.facts.fx.go b::before{animation:factDot .45s ease-out calc(var(--i,0) * .15s + .2s) both}
@keyframes factIn{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:none}}
@keyframes factLine{0%{transform:scaleX(0);background:rgba(201,162,74,.4)}60%{transform:scaleX(1);background:rgba(201,162,74,.4)}100%{transform:scaleX(1);background:var(--line)}}
@keyframes factDot{0%{transform:scale(0)}60%{transform:scale(1.2)}100%{transform:scale(1)}}
@media (hover:hover) and (pointer:fine){
  .facts div>*{transition:transform .2s ease,color .2s ease}
  .facts div:hover>*{transform:translateX(4px)}
  #story .facts div:hover b{color:#C9A24A}  /* id beats the .bold white-text rule */
}
@media (max-width:760px){.facts b::before{left:-11px;width:5px;height:5px;top:calc(3px + .8em - 2.5px)}}
@media (prefers-reduced-motion:reduce){.facts.fx div,.facts.fx div::after,.facts.fx b::before{animation:none;opacity:1;transform:none}}
/* ---------- Grants 'How we help' card ----------
   The left column is far taller than the card, so on wide AND tall enough screens the
   card stays in view below the sticky header while the left column scrolls past.
   Steps become a timeline; the entrance only runs once JS adds .fx (never with
   reduced motion), and only transform/opacity animate, so nothing reflows. */
@media (min-width:901px) and (min-height:840px){.g-side{align-self:stretch}.g-side>.g-card{position:sticky;top:calc(env(safe-area-inset-top,0px) + 96px)}}
.g-steps li{position:relative}
.g-steps li:not(:last-child)::after{content:"";position:absolute;left:14px;top:34px;bottom:-12px;width:2px;border-radius:1px;background:var(--line);transform-origin:top}
.g-card.fx{opacity:0;transform:translateY(24px)}
.g-card.fx .g-steps li{opacity:0;transform:translateX(28px)}
.g-card.fx .g-steps li::before{transform:scale(0)}
.g-card.fx .g-steps li::after{transform:scaleY(0)}
.g-card.fx .btn{opacity:0}
.g-steps li:nth-child(2){--i:1}.g-steps li:nth-child(3){--i:2}.g-steps li:nth-child(4){--i:3}.g-steps li:nth-child(5){--i:4}
.g-card.fx.go{animation:gcIn .6s ease-out both}
.g-card.fx.go .g-steps li{animation:gsIn .55s ease-out calc(.25s + var(--i,0) * .16s) both}
.g-card.fx.go .g-steps li::before{animation:gsDot .45s ease-out calc(.3s + var(--i,0) * .16s) both}
.g-card.fx.go .g-steps li::after{animation:gsLine .4s ease-out calc(.5s + var(--i,0) * .16s) both}
.g-card.fx.go .btn{animation:gcFade .5s ease-out 1.15s both}
@keyframes gcIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes gsIn{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
@keyframes gsDot{0%{transform:scale(0)}60%{transform:scale(1.15)}100%{transform:scale(1)}}
@keyframes gsLine{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes gcFade{from{opacity:0}to{opacity:1}}
@media (hover:hover) and (pointer:fine){.g-steps li::before{transition:background .2s ease}.g-steps li:hover::before{background:#C9A24A}}
@media (prefers-reduced-motion:reduce){.g-card.fx,.g-card.fx .g-steps li,.g-card.fx .g-steps li::before,.g-card.fx .g-steps li::after,.g-card.fx .btn{animation:none;opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.wa-float,.wa-ic::after{animation:none}}
/* page still scrolls by wheel, trackpad, touch and keys; the bar itself is hidden */
html{scrollbar-width:none}html::-webkit-scrollbar{display:none}
