/* RxAmplify by Akaike — site styles */
html{-webkit-text-size-adjust:100%}
body{margin:0}
img{max-width:100%}
[hidden]{display:none!important}

/* Layout: multi-page site, hash-routed. Full-bleed bands, 1240px content column, navy "evidence panels" carry the proof. */
:root{
  --bg:#FFFFFF; --surface:#F3F6FA; --ink:#0B1F3F; --body:#3A4658; --muted:#556275; --line:#E0E7F0;
  --accent:#0F6FD0; --accent-hover:#0B57A6; --on-accent:#FFFFFF;
  --panel:#0B1F3F; --panel-2:#071631; --on-panel:#FFFFFF; --on-panel-body:#C9D6E8; --on-panel-muted:#A3B4CB; --on-panel-accent:#8CC2FF; --panel-line:rgba(255,255,255,.15); --panel-tile:rgba(255,255,255,.06);
  --live-bg:#DFF3EC; --live-fg:#0A5E49; --del-bg:#E4ECF7; --del-fg:#23406A; --dev-bg:#FCEFD9; --dev-fg:#7A4300; --demo-bg:#EEE8FA; --demo-fg:#4E2F94;
  --dash:#B3C1D3; --shadow:0 18px 40px -24px rgba(11,31,63,.35);
  --logo-light:inline-block; --logo-dark:none;
  --f-display:"Hanken Grotesk", "Helvetica Neue", Arial, sans-serif;
  --f-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
  --gutter:clamp(16px, 4vw, 32px);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#08111F; --surface:#0E1A2D; --ink:#E9EFF8; --body:#B3C0D3; --muted:#8F9DB2; --line:#1F2E47;
    --accent:#5AA4F0; --accent-hover:#86BDF5; --on-accent:#05101E;
    --panel:#12264A; --panel-2:#050C17; --panel-line:rgba(255,255,255,.14); --panel-tile:rgba(255,255,255,.05);
    --live-bg:#0F3A2F; --live-fg:#7FD9B8; --del-bg:#1C2E4A; --del-fg:#A9C2E6; --dev-bg:#3D2A0C; --dev-fg:#F2B66A; --demo-bg:#2A1F48; --demo-fg:#C3B0F2;
    --dash:#33476A; --shadow:0 18px 40px -24px rgba(0,0,0,.7);
    --logo-light:none; --logo-dark:inline-block; color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#08111F; --surface:#0E1A2D; --ink:#E9EFF8; --body:#B3C0D3; --muted:#8F9DB2; --line:#1F2E47;
  --accent:#5AA4F0; --accent-hover:#86BDF5; --on-accent:#05101E;
  --panel:#12264A; --panel-2:#050C17; --panel-line:rgba(255,255,255,.14); --panel-tile:rgba(255,255,255,.05);
  --live-bg:#0F3A2F; --live-fg:#7FD9B8; --del-bg:#1C2E4A; --del-fg:#A9C2E6; --dev-bg:#3D2A0C; --dev-fg:#F2B66A; --demo-bg:#2A1F48; --demo-fg:#C3B0F2;
  --dash:#33476A; --shadow:0 18px 40px -24px rgba(0,0,0,.7);
  --logo-light:none; --logo-dark:inline-block; color-scheme:dark;
}
*{box-sizing:border-box}
body{background:var(--bg); color:var(--ink); font-family:var(--f-display); font-size:16px; line-height:1.5; -webkit-font-smoothing:antialiased}
a{color:var(--accent)} a:hover{color:var(--accent-hover)}
:focus-visible{outline:2.5px solid var(--accent); outline-offset:3px; border-radius:4px}
h1,h2,h3{margin:0; text-wrap:balance; color:var(--ink)}
p{margin:0}
.wrap{max-width:1240px; margin-inline:auto; padding-inline:var(--gutter)}
.sec{padding-block:88px}
.sec-tight{padding-block:56px}
.band{background:var(--surface); border-block:1px solid var(--line)}
.dark{background:var(--panel); color:var(--on-panel)}
.dark h1,.dark h2,.dark h3{color:var(--on-panel)}
.eyebrow{font-family:var(--f-mono); font-size:12px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--accent)}
.dark .eyebrow{color:var(--on-panel-accent)}
.h1{font-size:clamp(36px, 5vw, 62px); line-height:1.04; letter-spacing:-.025em; font-weight:800}
.h2{font-size:clamp(28px, 3.4vw, 44px); line-height:1.08; letter-spacing:-.02em; font-weight:800}
.h3{font-size:20px; line-height:1.25; font-weight:800; letter-spacing:-.005em}
.lede{font-size:clamp(17px, 1.6vw, 19px); line-height:1.6; color:var(--body); max-width:62ch}
.dark .lede{color:var(--on-panel-body)}
.small{font-size:14.5px; line-height:1.55; color:var(--body)}
.dark .small{color:var(--on-panel-body)}
.tiny{font-size:12.5px; line-height:1.45; color:var(--muted)}
.dark .tiny{color:var(--on-panel-muted)}
.stack{display:flex; flex-direction:column; gap:14px}
.stack-s{display:flex; flex-direction:column; gap:8px}
.row{display:flex; flex-wrap:wrap; gap:12px; align-items:center}
.head{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 440px), 1fr)); gap:20px 56px; align-items:end; padding-bottom:44px}
.grid{display:grid; gap:20px}
.g2{grid-template-columns:repeat(auto-fit, minmax(min(100%, 420px), 1fr))}
.g3{grid-template-columns:repeat(auto-fit, minmax(min(100%, 320px), 1fr))}
.g4{grid-template-columns:repeat(auto-fit, minmax(min(100%, 250px), 1fr))}
.grid > *{min-width:0}
.card{background:var(--bg); border:1px solid var(--line); border-radius:16px; padding:26px; display:flex; flex-direction:column; gap:10px}
.band .card{background:var(--bg)}
.tile{background:var(--panel-tile); border:1px solid var(--panel-line); border-radius:16px; padding:26px; display:flex; flex-direction:column; gap:10px}
a.card{text-decoration:none; color:inherit; transition:border-color .15s, transform .15s, box-shadow .15s}
a.card:hover{border-color:var(--accent); transform:translateY(-2px); box-shadow:var(--shadow); color:inherit}
.card-top{display:flex; justify-content:space-between; align-items:center; gap:10px}
.ctx{font-size:13px; font-weight:700; color:var(--muted)}
.big{font-size:clamp(36px, 4vw, 46px); font-weight:800; letter-spacing:-.025em; line-height:1; color:var(--accent); font-variant-numeric:tabular-nums}
.dark .big{color:var(--on-panel)}
.big-l{font-size:15.5px; font-weight:600; line-height:1.4}
.mets{display:grid; grid-template-columns:repeat(auto-fit, minmax(110px, 1fr)); gap:12px; padding-top:14px; margin-top:4px; border-top:1px solid var(--line)}
.dark .mets{border-top-color:var(--panel-line)}
.mets b{display:block; font-size:20px; font-weight:800; font-variant-numeric:tabular-nums}
.mets span{font-size:12.5px; line-height:1.35; color:var(--muted)}
.dark .mets span{color:var(--on-panel-muted)}
.chip{font-family:var(--f-mono); font-size:10.5px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; padding:4px 9px; border-radius:999px; white-space:nowrap; flex:none}
.live{background:var(--live-bg); color:var(--live-fg)} .del{background:var(--del-bg); color:var(--del-fg)} .dev{background:var(--dev-bg); color:var(--dev-fg)} .demo{background:var(--demo-bg); color:var(--demo-fg)}
.btn{display:inline-flex; align-items:center; gap:8px; min-height:48px; padding:12px 22px; border-radius:8px; font-weight:700; font-size:16px; text-decoration:none; border:0; cursor:pointer; font-family:inherit}
.btn-primary{background:var(--accent); color:var(--on-accent)} .btn-primary:hover{background:var(--accent-hover); color:var(--on-accent)}
.btn-ghost{background:transparent; color:var(--ink); box-shadow:inset 0 0 0 1.5px var(--ink)} .btn-ghost:hover{color:var(--accent); box-shadow:inset 0 0 0 1.5px var(--accent)}
.dark .btn-ghost{color:var(--on-panel); box-shadow:inset 0 0 0 1.5px var(--on-panel)}
.btn-light{background:#FFFFFF; color:#0B1F3F} .btn-light:hover{background:#DCEBFB; color:#0B1F3F}
.more{font-size:14.5px; font-weight:700; color:var(--accent); text-decoration:none}
.more:hover{text-decoration:underline; text-underline-offset:3px}
.pill-tag{font-size:12.5px; font-weight:600; padding:6px 10px; border-radius:6px; background:var(--surface); color:var(--ink)}
.dark .pill-tag{background:rgba(255,255,255,.1); color:var(--on-panel)}

/* Header */
.strip{background:var(--panel-2); color:var(--on-panel); font-size:14px}
.strip .wrap{display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:6px 14px; padding-block:9px; text-align:center}
.strip b{font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--on-panel-accent); font-weight:600}
.strip a{color:var(--on-panel); font-weight:700; text-underline-offset:3px}
header.site{position:sticky; top:env(safe-area-inset-top, 0px); z-index:20; background:var(--bg); border-bottom:1px solid var(--line)}
.nav{display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:68px}
.brand{display:flex; align-items:center; gap:14px; text-decoration:none}
.brand img{height:26px; width:auto}
.logo-l{display:var(--logo-light)} .logo-d{display:var(--logo-dark)}
.brand .sep{width:1px; height:22px; background:var(--line)}
.brand span{font-weight:800; font-size:18px; letter-spacing:-.01em; color:var(--ink)}
.links{display:flex; align-items:center; gap:4px}
.links > a, .links > button.navbtn{font:inherit; font-size:15px; font-weight:600; color:var(--ink); text-decoration:none; background:none; border:0; padding:10px 12px; border-radius:8px; cursor:pointer; display:inline-flex; align-items:center; gap:6px}
.links > a:hover, .links > button.navbtn:hover{background:var(--surface); color:var(--ink)}
.links > a[aria-current="page"], .navbtn.on{color:var(--accent)}
.nav-split{display:inline-flex; align-items:center; border-radius:8px}
.nav-split > a{font:inherit; font-size:15px; font-weight:600; color:var(--ink); text-decoration:none; padding:10px 3px 10px 12px}
.nav-split > button.navbtn{display:inline-flex; align-items:center; justify-content:center; color:var(--ink); background:none; border:0; padding:10px 10px 10px 5px; cursor:pointer}
.nav-split:hover{background:var(--surface)}
.nav-split.on > a{color:var(--accent)}
.links > a.btn{margin-left:10px; min-height:44px; padding:10px 18px; font-size:15px; color:var(--on-accent); background:var(--accent)}
.links > a.btn:hover{background:var(--accent-hover); color:var(--on-accent)}
.navbtn svg{transition:transform .15s}
.navbtn[aria-expanded="true"] svg{transform:rotate(180deg)}
.menu-toggle{display:none; background:none; border:1.5px solid var(--line); color:var(--ink); border-radius:8px; width:44px; height:44px; align-items:center; justify-content:center; cursor:pointer}
.mega{position:absolute; left:0; right:0; top:100%; background:var(--bg); border-bottom:1px solid var(--line); box-shadow:var(--shadow)}
.mega .wrap{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap:8px; padding-block:20px}
.mega a{display:flex; flex-direction:column; gap:4px; padding:16px; border-radius:12px; text-decoration:none; color:var(--ink)}
.mega a:hover{background:var(--surface); color:var(--ink)}
.mega a b{font-size:16px} .mega a span{font-size:13.5px; color:var(--muted); line-height:1.45}
.mega a i{font-style:normal; font-family:var(--f-mono); font-size:11px; color:var(--accent); letter-spacing:.06em}
@media (max-width: 900px){
  .menu-toggle{display:inline-flex}
  .links{display:none; position:absolute; left:0; right:0; top:100%; background:var(--bg); border-bottom:1px solid var(--line); flex-direction:column; align-items:stretch; padding:10px var(--gutter) 18px; gap:2px; box-shadow:var(--shadow)}
  .links.open{display:flex}
  .links > a, .links > button.navbtn{padding:14px 8px; justify-content:space-between}
  .nav-split{width:100%; justify-content:space-between}
  .nav-split > a{flex:1; padding:14px 8px}
  .nav-split > button.navbtn{padding:14px 8px}
  .links > a.btn{margin:10px 0 0; justify-content:center}
  .mega{position:static; box-shadow:none; border:0}
  .mega .wrap{padding:0 0 8px}
}

/* Hero */
.hero{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 480px), 1fr)); gap:48px 56px; align-items:center; padding-block:80px 64px}
.proofpanel{background:var(--panel); color:var(--on-panel); border-radius:18px; padding:30px; display:flex; flex-direction:column}
.proofpanel .eyebrow{color:var(--on-panel-accent); padding-bottom:8px}
.prow{display:grid; grid-template-columns:minmax(140px, auto) 1fr; gap:6px 22px; align-items:baseline; padding-block:18px; border-top:1px solid var(--panel-line)}
.prow b{font-size:clamp(32px, 3.4vw, 42px); font-weight:800; letter-spacing:-.02em; line-height:1; font-variant-numeric:tabular-nums}
.prow span{font-size:15px; line-height:1.45; color:var(--on-panel-body)}
@media (max-width: 480px){ .prow{grid-template-columns:1fr} }
.statbar{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 210px), 1fr)); border-top:1px solid var(--line)}
.statbar div{padding:20px 20px 0 0; display:flex; flex-direction:column; gap:2px}
.statbar b{font-size:28px; font-weight:800; letter-spacing:-.02em}
.statbar span{font-size:14px; color:var(--muted)}
.logos{display:flex; flex-wrap:wrap; align-items:center; gap:12px 16px; padding-top:36px}
.logo-ph{height:40px; width:140px; border-radius:8px; border:1.5px dashed var(--dash); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--muted)}

/* Offerings map */
.pillar{background:var(--surface); border-radius:16px; padding:24px; display:flex; flex-direction:column; gap:4px}
.pillar.is-dark{background:var(--panel); color:var(--on-panel)}
.pillar .num{font-family:var(--f-mono); font-size:13px; font-weight:600; color:var(--accent)}
.pillar.is-dark .num{color:var(--on-panel-accent)}
.pillar h3{font-size:21px; font-weight:800; letter-spacing:-.01em; padding-top:2px}
.pillar.is-dark h3{color:var(--on-panel)}
.pillar p{font-size:14.5px; line-height:1.45; color:var(--body); padding-bottom:10px}
.pillar.is-dark p{color:var(--on-panel-body)}
.stage{font-family:var(--f-mono); font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); padding-top:10px}
.offer{display:flex; justify-content:space-between; align-items:center; gap:10px; padding-block:10px; border-top:1px solid var(--line); font-size:15px; font-weight:600; color:var(--ink); text-decoration:none}
.pillar.is-dark .offer{border-top-color:var(--panel-line); color:var(--on-panel)}
a.offer:hover{color:var(--accent)}
a.offer span:first-child{text-decoration:underline; text-decoration-color:var(--dash); text-underline-offset:4px}
.pillar .more{padding-top:14px}
.pillar.is-dark .more{color:var(--on-panel-accent)}

/* Steps */
.steps{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 240px), 1fr)); background:var(--bg); border:1px solid var(--line); border-radius:16px; overflow:hidden}
.steps > div{padding:24px; display:flex; flex-direction:column; gap:8px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); margin:0 -1px -1px 0}
.steps .eyebrow{font-size:11px}
.agents{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap:10px}
.agent{background:var(--panel-tile); border:1px solid var(--panel-line); border-radius:12px; padding:16px; display:flex; flex-direction:column; gap:6px}
.agent i{font-style:normal; font-family:var(--f-mono); font-size:11px; color:var(--on-panel-accent)}
.agent b{font-size:16px; color:var(--on-panel)}
.agent span{font-size:13px; line-height:1.45; color:var(--on-panel-body)}
.agent.hl{background:#0F6FD0; border-color:#0F6FD0}
.agent.hl i{color:#DCEBFB} .agent.hl span{color:#EAF3FD}

/* Numbered list */
.nlist{display:flex; flex-direction:column}
.nlist > div{display:grid; grid-template-columns:44px 1fr; gap:14px; padding-block:16px; border-top:1px solid var(--line)}
.nlist .n{width:36px; height:36px; border-radius:50%; background:var(--del-bg); color:var(--del-fg); font-weight:800; display:flex; align-items:center; justify-content:center}
.nlist .n.acc{background:var(--accent); color:var(--on-accent)}
.nlist b{font-size:16px; display:block; padding-bottom:2px}

/* Mock table */
.mock{background:var(--bg); border:1px solid var(--line); border-radius:18px; overflow:hidden}
.mock-h{display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px; padding:16px 22px; border-bottom:1px solid var(--line); background:var(--surface)}
.mock-scroll{overflow-x:auto}
.mock table{width:100%; min-width:640px; border-collapse:collapse; font-size:14.5px}
.mock th{font-family:var(--f-mono); font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); text-align:left; font-weight:600; padding:12px 22px; border-bottom:1px solid var(--line)}
.mock td{padding:14px 22px; border-bottom:1px solid var(--line)}
.mock tr:last-child td{border-bottom:0}
.ok{color:var(--live-fg); font-weight:700} .warn{color:var(--dev-fg); font-weight:700}

/* Chat */
.chat{background:var(--bg); border-radius:12px; padding:14px; display:flex; flex-direction:column; gap:10px; margin-top:6px}
.chat .q{align-self:flex-end; background:var(--del-bg); color:var(--ink); font-size:13px; padding:8px 12px; border-radius:10px 10px 2px 10px; max-width:85%}
.chat .a{align-self:flex-start; background:var(--surface); color:var(--body); font-size:13px; line-height:1.45; padding:8px 12px; border-radius:10px 10px 10px 2px; max-width:90%}

/* Page header for inner pages */
.crumbs{display:flex; flex-wrap:wrap; gap:8px; font-size:14px; color:var(--muted); padding-bottom:6px}
.crumbs a{color:var(--muted); text-decoration:none} .crumbs a:hover{color:var(--accent)}
.pagehead{padding-block:56px 64px}
.nextnav{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap:16px}
.nextnav a{border:1px solid var(--line); border-radius:14px; padding:20px 22px; text-decoration:none; color:var(--ink); display:flex; flex-direction:column; gap:4px}
.nextnav a:hover{border-color:var(--accent); color:var(--ink)}
.nextnav a span{font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted)}
.nextnav a b{font-size:18px}
.nextnav a.r{text-align:right}
.function-nav-heading{margin:0 0 18px}
.function-nav a{flex-direction:row; align-items:center; justify-content:space-between; gap:16px}
.function-nav a::after{content:"→"; color:var(--accent); font-size:22px; line-height:1}

/* CTA band */
.cta{background:var(--panel); color:var(--on-panel); border-radius:20px; padding:44px clamp(24px, 4vw, 44px); display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:24px}
.cta h2{font-size:clamp(24px, 2.6vw, 34px); letter-spacing:-.02em; line-height:1.15; max-width:24ch; color:var(--on-panel)}

/* Form */
form{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap:16px}
.field{display:flex; flex-direction:column; gap:6px}
.field.full{grid-column:1 / -1}
.form-honeypot{position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden}
.form-privacy{grid-column:1 / -1}
.btn:disabled{cursor:wait; opacity:.7}
label{font-size:14px; font-weight:700}
input, select, textarea{font:inherit; font-size:15px; color:var(--ink); background:var(--bg); border:1.5px solid var(--line); border-radius:8px; padding:12px 14px; min-height:48px; width:100%}
textarea{min-height:110px; resize:vertical}
input:focus, select:focus, textarea:focus{outline:none; border-color:var(--accent)}
.notice{grid-column:1 / -1; background:var(--live-bg); color:var(--live-fg); border-radius:10px; padding:14px 16px; font-size:14.5px; font-weight:600}
.emailbox{display:flex; flex-wrap:wrap; align-items:center; gap:10px; background:var(--surface); border:1px solid var(--line); border-radius:12px; padding:12px 14px}
.emailbox code{font-family:var(--f-mono); font-size:15px; user-select:all; color:var(--ink)}
.copy{font:inherit; font-size:13px; font-weight:700; background:var(--bg); color:var(--ink); border:1.5px solid var(--line); border-radius:8px; padding:8px 12px; cursor:pointer; min-height:40px}

/* Areas */
.area{font-size:15px; font-weight:600; padding:12px 16px; border-radius:10px; border:1px solid var(--line); color:var(--ink)}
.area span{color:var(--muted); font-weight:500}

footer.site{background:var(--panel-2); color:var(--on-panel-body); font-size:14px}
footer.site .cols{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap:32px; padding-block:56px 32px}
footer.site b{color:var(--on-panel); display:block; padding-bottom:4px}
footer.site a{color:var(--on-panel-body); text-decoration:none; display:block; padding-block:4px}
footer.site a:hover{color:var(--on-panel)}
footer.site .base{border-top:1px solid var(--panel-line); padding-block:20px 28px; font-size:13px; color:var(--on-panel-muted); display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px}

main{animation:enter .28s ease-out}
@keyframes enter{from{opacity:.4; transform:translateY(6px)} to{opacity:1; transform:none}}
@media (prefers-reduced-motion: reduce){ main{animation:none} a.card{transition:none} a.card:hover{transform:none} }

/* ===== v2 components ===== */
.h3s{font-size:18px; font-weight:800; line-height:1.3; letter-spacing:-.005em; color:var(--ink)}
.big.ink{color:var(--ink); font-size:clamp(30px,3vw,36px)}
.card .more, .solcard .more{margin-top:auto; padding-top:8px; display:inline-flex; align-items:center; gap:6px}
.solcard{min-height:100%}
.kpi1{font-size:13.5px; color:var(--muted); line-height:1.4}
.kpi1 b{color:var(--accent); font-size:15px}

/* Mega menu with columns */
.mega .wrap{grid-template-columns:repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap:8px 24px; padding-block:24px 28px; align-items:start}
.mcol{display:flex; flex-direction:column; gap:2px; min-width:0}
.mega a.mhead{display:flex; flex-direction:column; gap:4px; padding:12px; border-radius:12px; margin-bottom:4px}
.mlinks{display:flex; flex-direction:column; border-left:1px solid var(--line); margin-left:12px}
.mega .mlinks a{display:block; padding:7px 12px; font-size:14.5px; font-weight:500; color:var(--body); border-radius:0 8px 8px 0}
.mega .mlinks a:hover{color:var(--accent); background:var(--surface)}
@media (min-width: 901px){ .mega{max-height:calc(100vh - 120px); overflow:auto} }

/* Page head KPIs */
.kpis{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap:0; border-top:1px solid var(--line); margin-top:12px}
.kpis div{padding:18px 20px 0 0; display:flex; flex-direction:column; gap:4px}
.kpis b{font-size:clamp(26px,2.6vw,32px); font-weight:800; letter-spacing:-.02em; color:var(--accent); font-variant-numeric:tabular-nums}
.kpis span{font-size:14px; color:var(--muted); line-height:1.4}

/* Problem / how / caps */
.prob{border-top:3px solid var(--dev-fg)}
.split{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 460px), 1fr)); gap:32px 56px; align-items:start}
.split > *{min-width:0}
.flow{list-style:none; margin:40px 0 0; padding:0; display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap:12px; counter-reset:none}
.flow li{background:var(--bg); border:1px solid var(--line); border-radius:14px; padding:18px; display:flex; flex-direction:column; gap:10px}
.flow .sn{width:30px; height:30px; border-radius:50%; background:var(--accent); color:var(--on-accent); font-weight:800; font-size:14px; display:flex; align-items:center; justify-content:center; font-variant-numeric:tabular-nums}
.flow b{display:block; font-size:16px; padding-bottom:3px}
.flow li span:not(.sn){font-size:14px; line-height:1.5; color:var(--body)}
.caps{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap:0 40px}
.cap{display:flex; flex-direction:column; gap:6px; padding-block:20px; border-top:1px solid var(--line)}
.cap b{font-size:17px}
.cap span{font-size:15px; line-height:1.55; color:var(--body)}

/* Value panel */
.valuepanel{background:var(--panel); color:var(--on-panel); border-radius:20px; padding:clamp(26px,4vw,44px); display:flex; flex-direction:column; gap:18px}
.valuepanel .eyebrow{color:var(--on-panel-accent)}
.vgrid{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap:24px}
.vgrid div{display:flex; flex-direction:column; gap:6px; padding-top:16px; border-top:1px solid var(--panel-line)}
.vgrid b{font-size:clamp(30px,3.6vw,46px); font-weight:800; letter-spacing:-.025em; line-height:1.05; font-variant-numeric:tabular-nums}
.vgrid span{font-size:15px; line-height:1.45; color:var(--on-panel-body)}
.vnote{color:var(--on-panel-muted) !important}

/* Visuals */
.vis{background:var(--bg); border:1px solid var(--line); border-radius:16px; padding:22px; display:flex; flex-direction:column; gap:16px; min-width:0}
.vis-h{display:flex; justify-content:space-between; align-items:baseline; gap:10px; flex-wrap:wrap}
.vis-h b{font-size:15px}
.illus{font-family:var(--f-mono); font-size:10.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted)}
.legend{display:flex; flex-wrap:wrap; gap:8px 18px; font-size:13px; color:var(--muted)}
.legend span{display:inline-flex; align-items:center; gap:7px}
.legend i{display:inline-block; width:12px; height:12px; border-radius:50%}
.lg-a{background:var(--dash)} .lg-b{background:var(--accent)} .legend .lg-bench{width:3px; height:14px; border-radius:1px; background:var(--dev-fg)}
.db{display:flex; flex-direction:column; gap:10px}
.db-row{display:grid; grid-template-columns:minmax(90px, 130px) 1fr auto; align-items:center; gap:12px}
.db-l{font-size:14px; font-weight:700}
.db-v{font-size:14px; font-weight:800; color:var(--accent); font-variant-numeric:tabular-nums; white-space:nowrap}
.db-track{position:relative; height:28px}
.db-track i{position:absolute; display:block}
.db-line{left:0; right:0; top:13px; height:2px; background:var(--line)}
.db-range{top:11px; height:6px; background:var(--accent); opacity:.3; border-radius:3px}
.db-bench{top:2px; width:3px; height:24px; background:var(--dev-fg); border-radius:1px; transform:translateX(-1px)}
.db-a, .db-b{top:6px; width:16px; height:16px; border-radius:50%; transform:translateX(-8px)}
.db-a{background:var(--dash)} .db-b{background:var(--accent)}
.db-axis{display:flex; justify-content:space-between; font-size:11.5px; color:var(--muted); padding-left:calc(min(130px, 30%) + 12px); padding-right:70px}
.pl{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 120px), 1fr)); gap:10px}
.pl-i{position:relative; background:var(--surface); border-radius:12px; padding:14px; display:flex; flex-direction:column; gap:4px}
.pl-i:last-child{background:var(--panel); color:var(--on-panel)}
.pl-i b{font-size:15px} .pl-i span{font-size:13px; line-height:1.4; color:var(--muted)}
.pl-i:last-child span{color:var(--on-panel-body)}
.rk{display:flex; flex-direction:column}
.rk-r{display:grid; grid-template-columns:auto 1fr auto; gap:12px; align-items:center; padding-block:12px; border-top:1px solid var(--line)}
.rk-r:first-child{border-top:0}
.rk-t{font-family:var(--f-mono); font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; padding:4px 8px; border-radius:6px; background:var(--del-bg); color:var(--del-fg); white-space:nowrap}
.rk-m{display:flex; flex-direction:column; gap:2px; min-width:0}
.rk-m b{font-size:14.5px} .rk-m span{font-size:13px; color:var(--muted)}
.rk-a{font-size:12.5px; font-weight:700; color:var(--accent); text-align:right; max-width:16ch}
@media (max-width: 520px){ .rk-r{grid-template-columns:auto 1fr} .rk-a{grid-column:2; text-align:left; max-width:none} }
.mo{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:14px; height:220px; align-items:end}
.mo-c{display:flex; flex-direction:column; align-items:center; gap:6px; height:100%; justify-content:flex-end}
.mo-bar{width:100%; max-width:64px; background:var(--accent); border-radius:6px 6px 0 0}
.mo-v{font-size:14px; font-weight:800; font-variant-numeric:tabular-nums}
.mo-l{font-size:13px; font-weight:700} .mo-s{font-size:11.5px; color:var(--muted); text-align:center}
.wf{display:flex; flex-direction:column; gap:8px}
.wf-r{display:grid; grid-template-columns:minmax(80px, 110px) 1fr 44px; gap:12px; align-items:center; font-size:14px}
.wf-t{position:relative; height:18px}
.wf-t i{position:absolute; top:0; height:18px; border-radius:3px; display:block; left:0}
.wf-tot{background:var(--dash)} .wf-tot.acc{background:var(--accent)}
.wf-up{background:var(--live-fg); opacity:.75} .wf-dn{background:var(--dev-fg); opacity:.75}
.wf-v{text-align:right; font-weight:700; font-variant-numeric:tabular-nums}
.wf-upt{color:var(--live-fg)} .wf-dnt{color:var(--dev-fg)}
.cp{display:flex; flex-direction:column; gap:14px}
.cp-r{display:grid; grid-template-columns:1fr; gap:6px}
.cp-l{font-size:14px; font-weight:700}
.cp-t{height:26px; background:var(--surface); border-radius:6px; overflow:hidden}
.cp-t i{display:block; height:100%; background:var(--dash); border-radius:6px}
.cp-t i.acc{background:var(--accent)}
.cp-v{font-size:14px; font-weight:800; font-variant-numeric:tabular-nums}

/* Groups and therapy-area rows */
.grp{padding-top:36px}
.grp-h{display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 14px; padding-bottom:16px}
.gq{font-size:15px; color:var(--muted)}
.ta{display:flex; flex-direction:column; background:var(--bg); border:1px solid var(--line); border-radius:16px; overflow:hidden}
.ta-r{display:grid; grid-template-columns:minmax(0, 1.3fr) minmax(0, .8fr) minmax(0, 1.6fr) 24px; gap:16px; align-items:center; padding:18px 22px; border-top:1px solid var(--line); text-decoration:none; color:var(--ink)}
.ta-r:first-child{border-top:0}
.ta-r:hover{background:var(--surface); color:var(--ink)}
.ta-a{display:flex; flex-direction:column; gap:2px} .ta-a b{font-size:16px} .ta-a span{font-size:13.5px; color:var(--muted)}
.ta-m{font-size:clamp(22px,2.4vw,30px); font-weight:800; color:var(--accent); letter-spacing:-.02em; font-variant-numeric:tabular-nums}
.ta-d{font-size:14.5px; color:var(--body); line-height:1.45}
.ta-go{color:var(--muted)}
@media (max-width: 760px){ .ta-r{grid-template-columns:1fr auto; } .ta-a{grid-column:1 / -1} .ta-d{grid-column:1 / -1} .ta-go{display:none} .ta-m{grid-column:1} }
.ta-grid{grid-template-columns:repeat(auto-fit, minmax(min(100%, 340px), 1fr))}
.ta-card{gap:4px}
.ta-card .stack-s{padding-bottom:8px}
.ta-i{display:grid; grid-template-columns:minmax(96px, auto) 1fr; gap:4px 14px; align-items:baseline; padding-block:12px; border-top:1px solid var(--line); text-decoration:none; color:var(--ink)}
.ta-i b{font-size:22px; font-weight:800; color:var(--accent); letter-spacing:-.01em; font-variant-numeric:tabular-nums}
.ta-i span{font-size:14px; color:var(--body); line-height:1.45}
.ta-i:hover span{color:var(--ink); text-decoration:underline; text-underline-offset:3px}

/* Home practice cards */
.pillar{gap:8px}
.pbig{display:flex; flex-direction:column; gap:2px; padding-block:12px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-block:6px}
.pillar.is-dark .pbig{border-color:var(--panel-line)}
.pbig b{font-size:30px; font-weight:800; letter-spacing:-.02em; color:var(--accent)}
.pillar.is-dark .pbig b{color:var(--on-panel)}
.pbig span{font-size:13.5px; color:var(--muted); line-height:1.4}
.pillar.is-dark .pbig span{color:var(--on-panel-body)}
.plinks{display:flex; flex-direction:column; gap:2px; padding-bottom:6px}
.plinks a{font-size:14.5px; font-weight:600; color:var(--ink); text-decoration:none; padding-block:4px}
.plinks a:hover{color:var(--accent)}
.plinks a.plus{color:var(--muted); font-weight:500}
.pillar.is-dark .plinks a{color:var(--on-panel)}
.pillar.is-dark .plinks a.plus{color:var(--on-panel-body)}
.pillar .more{margin-top:auto; display:inline-flex; align-items:center; gap:6px}

/* Footer v2 */
footer.site .fcols{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap:28px 32px; padding-block:56px 32px}
footer.site .fbrand{display:flex; flex-direction:column; gap:12px}
footer.site .fbrand img{height:24px; width:auto; align-self:flex-start}
footer.site .fmeta{display:flex; flex-direction:column}
footer.site .fdesc{display:block; max-width:230px; color:var(--muted); font-size:13.5px; line-height:1.5}

/* Trust Center */
.trust-card{gap:12px}
.trust-card .chip{align-self:flex-start}
.trust-card h3{font-size:26px; font-weight:800}
.trust-card p{font-size:16px; line-height:1.55; color:var(--body)}
.trust-tiles{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px}
.trust-tiles .tile{min-height:220px; justify-content:flex-start}
@media(max-width:900px){.trust-tiles{grid-template-columns:1fr}}
footer.site a.fhead{color:var(--on-panel); font-weight:700; padding-bottom:6px}
footer.site a{font-size:13.5px}
.g2f{grid-template-columns:repeat(auto-fill, minmax(min(100%, 440px), 1fr))}
.g3f{grid-template-columns:repeat(auto-fill, minmax(min(100%, 320px), 1fr))}
.caps.c2{grid-template-columns:repeat(auto-fit, minmax(min(100%, 420px), 1fr))}

/* ===== v3 storyline ===== */
.rail-w{display:flex; flex-direction:column; gap:10px; padding-top:36px}
.rail{display:flex; flex-wrap:wrap; gap:8px; counter-reset:none}
.rail a{display:inline-flex; align-items:center; gap:10px; padding:10px 14px 10px 10px; border-radius:999px; background:var(--bg); border:1px solid var(--line); color:var(--ink); text-decoration:none; font-weight:600; font-size:14.5px}
.rail a:hover{border-color:var(--accent); color:var(--accent)}
.rail i, .psteps i, .mlinks i{font-style:normal; width:24px; height:24px; border-radius:50%; background:var(--accent); color:var(--on-accent); font-size:12px; font-weight:800; display:inline-flex; align-items:center; justify-content:center; flex:none; font-variant-numeric:tabular-nums}
.comp-k{font-family:var(--f-mono); font-size:11px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--muted)}
.chap{scroll-margin-top:90px}
.chap-h{display:flex; flex-direction:column; gap:10px; max-width:860px}
.stepno{font-family:var(--f-mono); font-size:12px; font-weight:600; color:var(--muted); letter-spacing:.06em}
.chap-h .q{font-size:clamp(18px,1.8vw,21px); color:var(--body); font-style:italic}
.today{background:var(--bg); border:1px solid var(--line); border-left:0; border-radius:14px; padding:18px 20px; display:flex; flex-direction:column; gap:10px}
.band .today{background:var(--bg)}
.today ul{margin:0; padding-left:18px; display:flex; flex-direction:column; gap:6px; font-size:15px; color:var(--body)}
.today li::marker{color:var(--dev-fg)}
.comps{display:grid; gap:16px; padding-top:32px}
.comps.one{grid-template-columns:1fr}
.comps.two{grid-template-columns:repeat(auto-fill, minmax(min(100%, 440px), 1fr))}
.comps.three{grid-template-columns:repeat(auto-fill, minmax(min(100%, 330px), 1fr))}
.comp{background:var(--bg); border:1px solid var(--line); border-radius:16px; padding:22px; display:flex; flex-direction:column; gap:16px; min-width:0; scroll-margin-top:90px}
.comps.one .comp{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap:16px 32px}
.comp-h{display:flex; flex-direction:column; gap:6px}
.comp h4{margin:0; font-size:20px; font-weight:800; letter-spacing:-.01em; color:var(--ink)}
.comp-h p{margin:0; font-size:15px; line-height:1.5; color:var(--body)}
.comp-m{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px}
.comp-m div{display:flex; flex-direction:column; gap:2px}
.comp-m b{font-size:22px; font-weight:800; color:var(--accent); letter-spacing:-.01em; font-variant-numeric:tabular-nums}
.comp-m span{font-size:12.5px; line-height:1.4; color:var(--muted)}
.comp-f{display:flex; flex-direction:column; gap:8px}
.fl{display:flex; flex-wrap:wrap; align-items:center; gap:6px}
.fl span{font-size:13px; font-weight:600; padding:5px 9px; border-radius:6px; background:var(--surface); color:var(--ink)}
.band .fl span{background:var(--surface)}
.fl span.fl-arrow{background:none; padding:0; color:var(--muted)}
.comp-c{margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:8px; font-size:14px; line-height:1.5; color:var(--body)}
.comp-c b{color:var(--ink)}
.cases{padding-top:28px; display:flex; flex-direction:column; gap:12px}
.cases-g{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 250px), 1fr)); gap:12px}
.case{background:var(--bg); border:1px solid var(--line); border-radius:14px; padding:18px; display:flex; flex-direction:column; gap:6px}
.case b{font-size:28px; font-weight:800; color:var(--accent); letter-spacing:-.02em}
.case p{margin:0; font-size:13.5px; line-height:1.5; color:var(--body)}
.outcome{margin-top:28px; display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 20px; padding:22px 26px; border-radius:14px; background:var(--panel); color:var(--on-panel)}
.outcome b{font-size:clamp(30px,3.4vw,42px); font-weight:800; letter-spacing:-.02em; font-variant-numeric:tabular-nums}
.outcome span{font-size:16px; color:var(--on-panel-body); flex:1 1 280px}
.handoff{margin-top:18px; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:8px 20px; padding:16px 4px 0; border-top:1px dashed var(--dash); text-decoration:none; color:var(--body); font-size:16px; font-style:italic}
.handoff b{font-style:normal; color:var(--accent); font-size:15px}
.handoff:hover span{color:var(--ink)}
.flag{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap:32px 48px}
.flag-l{display:flex; flex-direction:column; gap:16px}
.flag-l .lede{color:var(--on-panel-body)}
.flag-big{display:flex; flex-direction:column; gap:4px}
.flag-big b{font-size:clamp(48px,6vw,76px); font-weight:800; letter-spacing:-.03em; line-height:1}
.flag-big span{font-size:16px; color:var(--on-panel-body)}
.flag-r{background:var(--panel-tile); border:1px solid var(--panel-line); border-radius:16px; padding:24px; display:flex; flex-direction:column; gap:14px}
.flag-r ol{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:14px}
.flag-r li{display:grid; grid-template-columns:32px 1fr; gap:12px; font-size:15px; line-height:1.5; color:var(--on-panel-body)}
.flag-r .n{width:28px; height:28px; border-radius:50%; background:var(--on-panel-accent); color:#0B1F3F; font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center}
.pillar .promise{font-size:16px; font-weight:600; color:var(--ink); line-height:1.4; padding-bottom:4px}
.pillar.is-dark .promise{color:var(--on-panel)}
.psteps{display:flex; flex-direction:column; gap:6px; padding-bottom:8px}
.psteps a{display:flex; align-items:center; gap:10px; font-size:14.5px; font-weight:600; color:var(--ink); text-decoration:none}
.psteps a:hover{color:var(--accent)}
.pillar.is-dark .psteps a{color:var(--on-panel)}
.pillar.is-dark .psteps i{background:var(--on-panel-accent); color:#0B1F3F}
.mega .mlinks a{display:flex; align-items:center; gap:10px}
.mlinks i{width:20px; height:20px; font-size:11px}
.comps.one .comp{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); grid-template-areas:"h m" "c f"; align-items:start}
.comps.one .comp-h{grid-area:h} .comps.one .comp-m{grid-area:m} .comps.one .comp-f{grid-area:f} .comps.one .comp-c{grid-area:c}
@media (max-width: 760px){ .comps.one .comp{grid-template-columns:1fr; grid-template-areas:"h" "m" "f" "c"} }

/* ===== v4 suite matrix ===== */
.psteps i{width:8px; height:8px; background:var(--accent)}
.pillar.is-dark .psteps i{background:var(--on-panel-accent)}
.mlinks i{display:none}
.mx-wrap{position:relative; overflow-x:auto; background:var(--bg); border:1px solid var(--line); border-radius:16px}
.mx{width:100%; min-width:860px; border-collapse:collapse; font-size:14px}
.mx th, .mx td{padding:14px 12px; border-top:1px solid var(--line); text-align:center; vertical-align:middle}
.mx thead th{border-top:0; font-size:12.5px; font-weight:700; color:var(--muted); line-height:1.3}
.mx thead th a{color:var(--ink); text-decoration:none} .mx thead th a:hover{color:var(--accent)}
.mx th[scope="row"]{text-align:left; padding-left:20px}
.mx thead th:first-child{text-align:left; padding-left:20px}
.mx th[scope="row"] b{display:block; font-size:15px; color:var(--ink)}
.mx th[scope="row"] span{display:block; font-size:13px; font-weight:400; color:var(--muted)}
.mx .dot{display:inline-block; width:14px; height:14px; border-radius:50%; background:var(--accent)}
.mx td.off{color:var(--line)}
.mx td.off::before{content:""; display:inline-block; width:14px; height:2px; background:var(--line); vertical-align:middle}
.mx .sr{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0)}
.mx td.res{text-align:left; padding-right:20px; min-width:190px}
.mx td.res b{display:block; font-size:22px; font-weight:800; color:var(--accent); letter-spacing:-.01em}
.mx td.res span{font-size:13px; color:var(--muted)}

/* ===== v5 functions ===== */
.mega .wrap{display:block}
.mk{display:block; padding-bottom:12px}
.mgrid{display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap:6px}
.mega a.mtile{display:flex; flex-direction:column; gap:4px; padding:12px 14px; border-radius:12px}
.mega a.mtile b{font-size:15.5px}
.mega a.mtile span{font-size:13px; color:var(--muted); line-height:1.4}
.mega a.mplat{background:var(--surface)}
.ucs{display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap:14px}
.uc{background:var(--bg); border:1px solid var(--line); border-radius:14px; padding:20px; display:flex; flex-direction:column; gap:10px; min-width:0; scroll-margin-top:90px}
.uc h4{margin:0; font-size:17px; font-weight:800; color:var(--ink); line-height:1.3}
.uc p{margin:0; font-size:14px; line-height:1.5; color:var(--body)}
.ucl{display:block; font-family:var(--f-mono); font-size:10.5px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); padding-bottom:2px}
.uc .ucv{margin-top:auto; padding-top:10px; border-top:1px solid var(--line); font-weight:700; color:var(--accent)}
.grp{scroll-margin-top:90px}
.pp-list{list-style:none; margin:0; padding:0; display:flex; flex-direction:column}
.pp-list li{display:flex; justify-content:space-between; gap:12px; padding-block:12px; border-top:1px solid var(--panel-line); font-size:16px}
.pp-list a{color:var(--on-panel); text-decoration:none; font-weight:600}
.pp-list a:hover{color:var(--on-panel-accent)}
.pp-list span{font-family:var(--f-mono); color:var(--on-panel-accent)}
.fn-grid{grid-template-columns:repeat(auto-fill, minmax(min(100%, 340px), 1fr))}
.fncard{gap:8px}
.fn-p{min-height:3em}
.fn-hl{display:flex; flex-direction:column; gap:2px; padding-block:10px; border-block:1px solid var(--line)}
.fn-hl b{font-size:26px; font-weight:800; color:var(--accent); letter-spacing:-.02em}
.fn-hl span{font-size:12.5px; color:var(--muted); line-height:1.4}
.fn-l{margin:0; padding-left:16px; display:flex; flex-direction:column; gap:4px; font-size:14px; color:var(--ink)}
.fn-l li::marker{color:var(--accent)}
a.tile.ptile{text-decoration:none; color:var(--on-panel)}
a.tile.ptile:hover{border-color:var(--on-panel-accent)}
.ptile b{font-size:18px} .ptile span{font-size:14px; line-height:1.5; color:var(--on-panel-body)}
.dark .head .lede{color:var(--on-panel-body)}
footer.site .fhead{color:var(--on-panel); font-weight:700; padding-bottom:6px; display:block; font-size:13.5px}

/* ===== v6 website overview ===== */
.ic{display:block}
.mega .wrap.mcols{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap:8px 24px}
.sols{display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap:18px}
.sol{background:var(--bg); border:1px solid var(--line); border-radius:18px; padding:24px; display:flex; flex-direction:column; gap:16px; scroll-margin-top:90px; transition:border-color .15s, box-shadow .15s}
.sol:hover{border-color:var(--accent); box-shadow:var(--shadow)}
.band .sol{background:var(--bg)}
.sol-h{display:flex; align-items:center; gap:12px}
.sol-h h3{font-size:20px; font-weight:800; letter-spacing:-.01em}
.sol-ic{width:42px; height:42px; border-radius:12px; background:var(--del-bg); color:var(--accent); display:inline-flex; align-items:center; justify-content:center; flex:none}
.sol-ic.dk{background:rgba(255,255,255,.1); color:var(--on-panel-accent)}
.sol-v{display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; padding:12px 14px; border-radius:12px; background:var(--surface)}
.sol-v b{font-size:24px; font-weight:800; color:var(--accent); letter-spacing:-.02em; font-variant-numeric:tabular-nums}
.sol-v span{font-size:13.5px; color:var(--muted)}
.sol-l{list-style:none; margin:0; padding:0; display:flex; flex-direction:column}
.sol-l li{display:flex; flex-direction:column; gap:2px; padding-block:10px; border-top:1px solid var(--line)}
.sol-l li:first-child{border-top:0; padding-top:0}
.sol-l b{font-size:15px; color:var(--ink)}
.sol-l span{font-size:13.5px; color:var(--muted); line-height:1.45}
.prod-line{margin:0; font-size:15px; line-height:1.5; color:var(--body)}
.prod-pts{margin:0; padding-left:18px; display:flex; flex-direction:column; gap:6px; font-size:14px; color:var(--body)}
.prod-pts li::marker{color:var(--accent)}
.casebox{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 440px), 1fr)); gap:0; border-radius:22px; overflow:hidden; border:1px solid var(--line)}
.case-l{padding:clamp(24px,4vw,44px); display:flex; flex-direction:column; gap:18px; background:var(--bg)}
.ca{display:flex; flex-direction:column; gap:4px}
.ca p{margin:0; font-size:16px; line-height:1.6; color:var(--body)}
.case-r{padding:clamp(24px,4vw,44px); background:var(--panel); color:var(--on-panel); display:flex; flex-direction:column; gap:18px; justify-content:center}
.case-r .ucl{color:var(--on-panel-accent)}
.cres{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:26px 24px}
.cres div{display:flex; flex-direction:column; gap:4px; border-top:1px solid var(--panel-line); padding-top:14px}
.cres b{font-size:clamp(32px,3.6vw,46px); font-weight:800; letter-spacing:-.025em; line-height:1; font-variant-numeric:tabular-nums}
.cres span{font-size:14px; line-height:1.4; color:var(--on-panel-body)}
.cnote{color:var(--on-panel-muted) !important}
.minis{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap:16px; padding-top:18px}
.mini{gap:6px}
.mini .big{font-size:34px}
.builtrow{display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; padding:18px 22px; border:1px solid var(--line); border-radius:16px}
.tech-bridge{justify-content:space-between}
.tech-bridge h2{margin:0; color:var(--ink); font-size:clamp(18px,2vw,24px); line-height:1.25}
.bchips{display:flex; flex-wrap:wrap; gap:10px; flex:1}
.bchip{display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; column-gap:10px; align-items:center; padding:10px 14px; border-radius:12px; background:var(--surface); text-decoration:none; color:var(--ink); flex:1 1 260px}
.bchip .ic{grid-row:1 / span 2; color:var(--accent)}
.bchip b{font-size:14.5px} .bchip span{font-size:12.5px; color:var(--muted); line-height:1.4}
.bchip:hover b{color:var(--accent)}
.pcards{display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 330px), 1fr)); gap:20px}
.pcard{display:flex; flex-direction:column; gap:14px; padding:28px; border-radius:20px; border:1px solid var(--line); background:var(--bg); text-decoration:none; color:var(--ink); transition:border-color .15s, transform .15s, box-shadow .15s}
.pcard:hover{border-color:var(--accent); transform:translateY(-2px); box-shadow:var(--shadow); color:var(--ink)}
.pcard h3{font-size:24px; font-weight:800; letter-spacing:-.015em}
.pcard p{margin:0; font-size:16px; line-height:1.5; color:var(--body)}
.pc-stat{display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; padding-block:12px; border-block:1px solid var(--line)}
.pc-stat b{font-size:30px; font-weight:800; color:var(--accent); letter-spacing:-.02em}
.pc-stat span{font-size:13.5px; color:var(--muted)}
.pc-chips{display:flex; flex-wrap:wrap; gap:6px}
.pc-chips span{font-size:12.5px; font-weight:600; padding:5px 10px; border-radius:999px; background:var(--surface); color:var(--ink)}
.pcard .more{margin-top:auto; display:inline-flex; align-items:center; gap:6px}
a.tile.ptile{gap:10px}

/* ===== v7 products ===== */
.sol-l a.sol-pl{display:flex; flex-direction:column; gap:2px; text-decoration:none; color:inherit; border-radius:10px; margin:-6px -8px; padding:6px 8px}
.sol-l a.sol-pl:hover{background:var(--surface)}
.sol-l a.sol-pl i{font-style:normal; font-size:12.5px; font-weight:700; color:var(--accent); display:inline-flex; align-items:center; gap:4px; padding-top:2px}
.engine{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px 24px; padding:18px 22px; border-radius:16px; background:var(--panel); color:var(--on-panel); margin-bottom:20px}
.engine b{display:block; font-size:17px; padding-top:4px}
.engine .comp-k{color:var(--on-panel-accent)}
.eng-ag{display:flex; flex-wrap:wrap; gap:6px}
.eng-ag span{font-size:13px; font-weight:600; padding:6px 10px; border-radius:8px; background:rgba(255,255,255,.1)}
.gov-l{margin:0; padding-left:18px; display:flex; flex-direction:column; gap:10px; font-size:16px; color:var(--on-panel-body)}
.ptiles{grid-template-columns:repeat(auto-fill, minmax(min(100%, 250px), 1fr))}
.pv{gap:12px}
.pflow{list-style:none; margin:32px 0 0; padding:0; display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 170px), 1fr)); gap:12px}
.pflow li{position:relative; background:var(--bg); border:1px solid var(--line); border-radius:14px; padding:18px; display:flex; flex-direction:column; gap:8px}
.pflow .sn{width:30px; height:30px; border-radius:50%; background:var(--accent); color:var(--on-accent); font-weight:800; font-size:14px; display:flex; align-items:center; justify-content:center}
.pflow b{font-size:16px}
.pflow li > span:last-child{font-size:13.5px; line-height:1.45; color:var(--muted)}
.capg{display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap:14px}
.capt{display:flex; flex-direction:column; gap:6px; padding:20px; border-radius:14px; background:var(--surface)}
.capt b{font-size:16.5px} .capt span{font-size:14.5px; line-height:1.5; color:var(--body)}
#how .head > div:last-child{min-width:0}

/* v8: four pillars */
.pcards{grid-template-columns:repeat(auto-fit, minmax(min(100%, 420px), 1fr))}
.mega .wrap.mcols{grid-template-columns:repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap:8px 20px}
footer.site .fcols{grid-template-columns:repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap:28px 24px}

/* Technology overview */
.tech-flow{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px}
.tech-layer{position:relative; display:flex; flex-direction:column; gap:8px; min-height:190px; padding:24px; border:1px solid var(--line); border-radius:16px; background:var(--bg)}
.tech-layer:not(:last-child)::after{content:"→"; position:absolute; right:-16px; top:50%; z-index:1; width:20px; height:20px; border-radius:50%; background:var(--accent); color:var(--on-accent); display:flex; align-items:center; justify-content:center; font-weight:800}
.tech-layer > span{font-family:var(--f-mono); font-size:11px; font-weight:700; letter-spacing:.08em; color:var(--accent)}
.tech-layer > b{font-size:20px}
.tech-layer > p{font-size:14.5px; line-height:1.5; color:var(--body)}
.tech-engines{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px}
.tech-engines .tile{min-height:250px; justify-content:flex-start}
.tech-engines .tile .more{margin-top:auto; color:var(--on-panel-accent)}
@media (max-width:900px){
  .tech-flow{grid-template-columns:1fr 1fr}
  .tech-layer:not(:last-child)::after{display:none}
  .tech-engines{grid-template-columns:1fr}
}
@media (max-width:560px){.tech-flow{grid-template-columns:1fr}.tech-layer{min-height:0}}

/* ===== v9: RxAmplify live-site visual language ===== */
:root,
:root:not([data-theme="light"]),
:root[data-theme="dark"]{
  --bg:#FFFFFF;
  --surface:#F5F9FF;
  --ink:#0F172A;
  --body:#475569;
  --muted:#64748B;
  --line:#E5EBF3;
  --accent:#1487F0;
  --accent-hover:#0B72D4;
  --on-accent:#FFFFFF;
  --panel:#F4F8FD;
  --panel-2:#EEF6FF;
  --on-panel:#0F172A;
  --on-panel-body:#475569;
  --on-panel-muted:#64748B;
  --on-panel-accent:#1487F0;
  --panel-line:#DCE7F3;
  --panel-tile:#FFFFFF;
  --del-bg:#EEF6FF;
  --del-fg:#1769B4;
  --dash:#C9D8E8;
  --shadow:0 18px 46px -26px rgba(15,23,42,.28);
  --logo-light:inline-block;
  --logo-dark:none;
  --f-display:Inter, "Helvetica Neue", Arial, sans-serif;
  --f-mono:Inter, "Helvetica Neue", Arial, sans-serif;
  color-scheme:light;
}
body{font-family:var(--f-display); color:#111827}
h1,h2,h3{font-family:"Inter Tight",Inter,sans-serif; font-weight:600}
.h1{font-size:clamp(40px,5vw,58px); line-height:1.04; letter-spacing:-.035em; font-weight:600}
.h2{font-size:clamp(30px,3.4vw,42px); line-height:1.1; letter-spacing:-.025em; font-weight:600}
.h3,.h3s{font-weight:600}
.sec{padding-block:104px}
.band{background:linear-gradient(115deg,#FFFFFF 0%,#F5FAFF 55%,#EEF6FF 100%); border-color:var(--line)}
.eyebrow{position:relative; display:inline-flex; align-items:center; gap:10px; width:max-content; max-width:100%; font-family:Inter,sans-serif; font-size:11.5px; font-weight:700; letter-spacing:.16em; color:#3175B5}
.eyebrow::before{content:""; width:32px; height:1px; background:#8BC5F3; flex:none}
.lede{line-height:1.55}
.card,.pcard,.comp,.uc,.case,.sol,.tech-layer,.flow li,.pflow li,.vis,.mock,.nextnav a{border-color:var(--line); border-radius:12px; box-shadow:0 1px 2px rgba(15,23,42,.025)}
.card:hover,.pcard:hover,.sol:hover{box-shadow:0 18px 42px -28px rgba(20,135,240,.55)}
.btn{border-radius:8px; font-weight:600; min-height:48px; padding:12px 24px}
.btn-primary{box-shadow:0 6px 18px -8px rgba(20,135,240,.65)}
.btn-ghost{box-shadow:none; color:var(--ink); padding-inline:12px}
.btn-ghost::after{content:"→"}
.dark{background:#F7FAFE; color:var(--ink); border-block:1px solid var(--line)}
.dark h1,.dark h2,.dark h3{color:var(--ink)}
.dark .lede,.dark .small,.dark .head .lede{color:var(--body)}
.dark .eyebrow{color:#3175B5}
.dark .tile,.tile{background:#FFFFFF; border-color:var(--line); color:var(--ink); box-shadow:0 10px 34px -28px rgba(15,23,42,.35)}
.dark .tile b,.dark a.tile.ptile,a.tile.ptile{color:var(--ink)}
.dark .tile span,.ptile span{color:var(--body)}
.dark .btn-ghost{color:var(--ink); box-shadow:none}
.dark .btn-light{background:var(--accent); color:#FFFFFF}

/* Live-site inspired global header */
.strip{background:#EEF6FF; color:#1E5E99; border-bottom:1px solid #DCEBFA}
.strip b{color:#1769B4}
.strip a{color:#1769B4}
header.site{background:rgba(255,255,255,.96); border-bottom:0; box-shadow:0 8px 22px -20px rgba(15,23,42,.65); backdrop-filter:blur(14px)}
.nav{min-height:78px}
.brand{gap:10px}
.brand img,.brand .sep{display:none!important}
.brand::before{content:"Rx"; width:36px; height:36px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:linear-gradient(145deg,#3272E8,#54B6EA); color:#FFFFFF; font-family:"Inter Tight",Inter,sans-serif; font-size:17px; font-weight:500; box-shadow:0 7px 18px -10px rgba(20,135,240,.9)}
.brand span{display:flex; flex-direction:column; font-family:"Inter Tight",Inter,sans-serif; font-size:18px; font-weight:650; line-height:1.05}
.brand span::after{content:"by Akaike"; padding-top:4px; font-family:Inter,sans-serif; font-size:9px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--muted)}
.links{gap:10px}
.links > a,.links > button.navbtn,.nav-split > a{font-size:14.5px; font-weight:600}
.links > a:hover,.links > button.navbtn:hover,.nav-split:hover{background:#F3F8FE}
.mega{border:1px solid var(--line); border-inline:0; box-shadow:0 22px 36px -28px rgba(15,23,42,.4)}
.mega a,.mega a.mhead{border-radius:8px}

/* Product-led homepage hero */
.hero{padding-block:92px 72px; gap:56px 72px}
.hero .stack{max-width:640px}
.hero-accent{color:var(--accent)}
.proofpanel{position:relative; overflow:visible; background:#FFFFFF; color:var(--ink); border:1px solid var(--line); border-radius:16px; padding:26px 28px 20px; box-shadow:0 28px 65px -38px rgba(15,23,42,.45)}
.proofpanel::before{content:"Client environment"; position:absolute; right:-18px; bottom:-17px; padding:10px 14px; border:1px solid var(--line); border-radius:10px; background:#FFFFFF; color:var(--ink); font-size:12px; font-weight:600; box-shadow:0 12px 30px -18px rgba(15,23,42,.45)}
.preview-head{display:flex; justify-content:space-between; align-items:center; gap:12px; padding-bottom:20px}
.preview-head > span{display:inline-flex; align-items:center; gap:9px; font-size:14px; font-weight:600}
.preview-head i{width:29px; height:29px; border-radius:8px; background:#EEF6FF; color:var(--accent); display:inline-flex; align-items:center; justify-content:center; font-style:normal; font-size:12px}
.preview-head > b{font-size:11px; font-weight:600; color:#1769B4; background:#EEF6FF; padding:6px 10px; border-radius:999px}
.proofpanel .eyebrow{color:#3175B5; padding-bottom:10px}
.prow{grid-template-columns:minmax(125px,auto) 1fr; border-top:1px solid var(--line); padding-block:17px}
.prow b{font-size:clamp(30px,3.2vw,40px); color:var(--accent); font-weight:600}
.prow span{color:var(--body)}
.statbar{border-top:0; gap:0}
.statbar div{position:relative; padding:20px 28px 0 0}
.statbar div:not(:last-child)::after{content:""; position:absolute; top:22px; right:14px; bottom:0; width:1px; background:var(--line)}
.statbar b{font-family:"Inter Tight",Inter,sans-serif; font-weight:600}

/* Homepage sections */
.pcards{gap:24px}
.pcard{padding:30px; border-radius:12px}
.pcard h3{font-size:23px; font-weight:600}
.pc-stat b{font-weight:600}
.pc-chips span{background:#F3F8FE; color:#245274; font-weight:500}
.sol-ic{border-radius:10px; background:#EEF6FF}
.sol-ic.dk{background:#EEF6FF; color:var(--accent)}
.casebox{border-radius:16px; box-shadow:0 20px 48px -38px rgba(15,23,42,.4)}
.case-r{background:#F2F8FF; color:var(--ink)}
.case-r .ucl{color:#3175B5}
.cres div{border-color:var(--line)}
.cres b{color:var(--accent); font-weight:600}
.cres span{color:var(--body)}
.mini .big{font-weight:600}
.cta{background:linear-gradient(125deg,#287CE5,#54A9EF); border-radius:14px; box-shadow:0 22px 45px -30px rgba(20,135,240,.75)}
.cta h2{color:#FFFFFF; font-weight:600}
.cta .btn-light{color:#1769B4}

/* Light footer, consistent with the live brand */
footer.site{background:#FFFFFF; color:var(--body); border-top:1px solid var(--line)}
footer.site b,footer.site a.fhead{color:var(--ink)}
footer.site a{color:var(--muted)}
footer.site a:hover{color:var(--accent)}
footer.site .base{border-top-color:var(--line); color:var(--muted)}

@media(max-width:900px){
  .sec{padding-block:76px}
  .nav{min-height:68px}
  .links{background:#FFFFFF}
  .proofpanel::before{right:12px}
}
@media(max-width:520px){
  .hero{padding-block:64px 54px}
  .proofpanel{padding:22px 20px 18px}
  .proofpanel::before{display:none}
  .statbar div:not(:last-child)::after{display:none}
}

.sols.two{grid-template-columns:repeat(auto-fit, minmax(min(100%, 420px), 1fr))}

/* v9: navigation hierarchy — four solution pillars over one enabling platform layer */
.mega .wrap.mcols.mcols-solutions{grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px 24px}
.mega .wrap.mcols.mcols-platforms{grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; max-width:1240px}
.mgroup-label{font-family:var(--f-mono); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--accent); padding:14px 12px 10px}
.mega .mlinks a.mall{color:var(--accent); font-weight:700; margin-top:5px}
@media (min-width:901px) and (max-width:1100px){
  .mega .wrap.mcols.mcols-solutions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mega .wrap.mcols.mcols-platforms{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .mega .wrap.mcols.mcols-solutions,
  .mega .wrap.mcols.mcols-platforms{grid-template-columns:1fr; gap:8px; max-height:58vh; overflow:auto; padding:4px 8px 12px}
  .mgroup-label{padding-top:12px}
}

/* Homepage technology: applications, engines, then governance */
.home-tech-stack{display:grid; gap:22px; position:relative}
.home-tech-layer{position:relative; z-index:1; display:grid; grid-template-columns:minmax(235px, .85fr) minmax(0, 1.6fr); align-items:center; gap:24px 42px; padding:30px 34px; background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:0 12px 36px -32px rgba(15,23,42,.55)}
.home-tech-layer:not(:last-child)::after{content:"↓"; position:absolute; top:100%; left:50%; transform:translate(-50%,3px); display:grid; place-items:center; width:24px; height:17px; color:var(--accent); font-size:21px; font-weight:700}
.home-tech-heading{display:flex; align-items:flex-start; gap:16px}
.home-tech-number{display:grid; place-items:center; flex:none; width:36px; height:36px; border-radius:9px; background:#eaf5ff; color:#1769b4; font-size:12px; font-weight:700}
.home-tech-heading h3{margin:1px 0 6px; font-size:20px; line-height:1.2; color:var(--ink)}
.home-tech-heading p{margin:0; color:var(--body); font-size:14px; line-height:1.45}
.home-tech-items{display:flex; flex-wrap:wrap; gap:10px}
.home-tech-items a,.home-tech-items span{display:inline-flex; align-items:center; min-height:38px; padding:8px 13px; border:1px solid #dceaf8; border-radius:8px; background:#f6faff; color:#20557e; font-size:13px; font-weight:600; line-height:1.3; text-decoration:none}
.home-tech-items a:hover,.home-tech-items a:focus-visible{border-color:var(--accent); background:#eaf5ff; color:#1769b4}
@media(max-width:760px){
  .home-tech-layer{grid-template-columns:1fr; gap:20px; padding:24px}
  .home-tech-layer:not(:last-child)::after{left:50%}
}

/* Review-stage spaces for approved trials, product imagery, and team profiles. */
#try-it,#trials,#team,#how{scroll-margin-top:100px}
.asset-placeholder{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; min-height:170px; padding:28px; border:1.5px dashed #9DC7E9; border-radius:12px; background:repeating-linear-gradient(135deg,#F7FBFF 0,#F7FBFF 14px,#F0F7FE 14px,#F0F7FE 28px); color:#42627D; text-align:center}
.asset-placeholder strong{color:var(--ink); font-size:18px; font-weight:600}
.asset-placeholder > span:last-child{font-size:13px; line-height:1.45}
.placeholder-label{color:#1769B4; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase}
.hero-visual{min-height:170px; margin:0 0 20px}
.product-visual{margin:0 0 30px}
.home-carousel{margin:0 0 20px}
.home-carousel-frame,.screen-stage{position:relative; overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#f4f8fd}
.home-carousel-frame img,.screen-stage img{display:block; width:100%; aspect-ratio:16/9; object-fit:contain}
.image-arrow{position:absolute; top:50%; transform:translateY(-50%); width:36px; height:44px; border:1px solid #d3e4f3; border-radius:9px; background:rgba(255,255,255,.95); color:#1769b4; font-size:28px; line-height:1; cursor:pointer; box-shadow:0 4px 14px rgba(15,74,124,.12)}
.image-arrow:hover,.image-arrow:focus-visible,.strip-arrow:hover,.strip-arrow:focus-visible{background:#eaf5ff; outline:2px solid #1769b4; outline-offset:2px}
.image-arrow-prev{left:10px}.image-arrow-next{right:10px}
.image-caption{display:flex; justify-content:space-between; gap:14px; padding:10px 2px 0; color:var(--ink); font-size:13px; font-weight:600}
.image-caption span:last-child{white-space:nowrap; color:var(--muted)}
.product-screens{background:#fff; scroll-margin-top:100px}
.product-screens figure{margin:0; min-width:0}
.product-screens figure a{display:block; overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#f4f8fd; box-shadow:0 8px 26px rgba(15,74,124,.07)}
.product-screens figure a:hover,.product-screens figure a:focus-visible{border-color:#1769B4; box-shadow:0 12px 30px rgba(15,74,124,.14)}
.product-screens figure img{display:block; width:100%; aspect-ratio:16/9; object-fit:contain}
.product-screens figcaption{padding:10px 2px 0; color:var(--ink); font-size:14px; font-weight:600}
.screen-lead{margin-bottom:28px!important}
.screen-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px}
.screen-more{margin-top:28px; padding-top:18px; border-top:1px solid var(--line)}
.screen-more summary{cursor:pointer; color:#1769B4; font-size:14px; font-weight:700}
.screen-more[open] summary{margin-bottom:22px}
@media(max-width:760px){.screen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.screen-grid{grid-template-columns:1fr}}
.screen-viewer{max-width:100%}
.screen-stage img{max-height:650px}
.screen-strip-wrap{display:grid; grid-template-columns:36px minmax(0,1fr) 36px; align-items:center; gap:10px; margin-top:22px}
.screen-strip{position:relative; display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:thin; padding:4px 2px 12px}
.screen-thumb{flex:0 0 clamp(145px,22vw,220px); min-width:0; padding:0 0 10px; border:2px solid var(--line); border-radius:10px; overflow:hidden; background:#fff; color:var(--ink); text-align:left; cursor:pointer; scroll-snap-align:start}
.screen-thumb[aria-pressed="true"]{border-color:#1769b4; box-shadow:0 0 0 2px #dbeeff}
.screen-thumb:hover,.screen-thumb:focus-visible{border-color:#1769b4; outline:2px solid #1769b4; outline-offset:2px}
.screen-thumb img{display:block; width:100%; aspect-ratio:16/9; object-fit:contain; background:#f4f8fd}
.screen-thumb span{display:block; padding:8px 10px 0; font-size:12px; font-weight:600; line-height:1.3}
.strip-arrow{width:36px; height:42px; border:1px solid var(--line); border-radius:9px; background:#fff; color:#1769b4; font-size:26px; cursor:pointer}
.solution-screens-link{margin-top:24px}
.solution-screens .screen-strip-wrap{grid-template-columns:minmax(0,1fr)}
.solution-screens .strip-arrow{display:none}
@media(max-width:540px){.screen-strip-wrap{grid-template-columns:30px minmax(0,1fr) 30px; gap:6px}.strip-arrow{width:30px}.screen-thumb{flex-basis:150px}}
.adviser-placeholder{min-height:220px}
.trial-feature{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); align-items:center; gap:34px; padding:34px 38px; border:1px solid var(--line); border-radius:16px; background:#F5FAFF}
.trial-feature .h2{max-width:680px}
.trial-feature .lede{max-width:680px; margin:0}
.sandbox-cards{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px}
.sandbox-card{display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:10px; min-height:190px; padding:24px; border:1px solid #8CBCE4; border-radius:12px; background:#FFF; color:var(--muted); text-decoration:none; box-shadow:0 8px 24px rgba(15,74,124,.07)}
.sandbox-card strong{font-size:22px; line-height:1.15; color:var(--ink)}
.sandbox-card>span:not(.placeholder-label){font-size:13px; line-height:1.4}
.sandbox-card b{margin-top:7px; color:#1769B4; font-size:13px}
.trial-card{display:flex; flex-direction:column; gap:12px; min-height:235px; padding:28px}
.trial-card h3,.team-placeholder h3{margin:0; font-size:20px}
.trial-card p,.team-placeholder p{margin:0}
.trial-card .more{margin-top:auto}
.trial-disabled{margin-top:auto; display:inline-flex; align-self:flex-start; padding:9px 13px; border-radius:8px; background:#EAF3FB; color:#4C6983; font-size:13px; font-weight:600}
.team-placeholder{padding:22px; display:flex; flex-direction:column; gap:12px}
.portrait-placeholder{display:grid; place-items:center; width:100%; aspect-ratio:4/3; margin-bottom:6px; border:1.5px dashed #9DC7E9; border-radius:10px; background:#F0F7FE; color:#56718B; font-size:13px; font-weight:600}
.team-placeholders .team-placeholder{padding:12px}
.team-placeholders .portrait-placeholder{aspect-ratio:1/1}
.team-featured{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; max-width:690px; margin:0 auto 18px}
.team-specialists{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; max-width:1040px; margin:0 auto}
@media(max-width:760px){.team-specialists{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.team-featured,.team-specialists{grid-template-columns:1fr; max-width:400px}}
.team-more{padding-top:24px}
.pmsa-team-grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px}
.pmsa-team-card{min-width:0; padding:12px; overflow:hidden}
.pmsa-photo{aspect-ratio:1/1; overflow:hidden; border-radius:10px; background:#EEF6FF}
.pmsa-team-card img{display:block; width:100%; height:100%; object-fit:contain}
.pmsa-team-card--portrait img{object-fit:cover; object-position:center top}
.pmsa-team-info{display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:18px 8px 8px}
.pmsa-team-info h3{margin:0; font-size:19px; line-height:1.2}
.pmsa-team-role{margin:0; color:var(--muted); font-size:14px; line-height:1.45}
@media(max-width:900px){.pmsa-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.pmsa-team-grid{grid-template-columns:1fr}}
@media(max-width:980px){
  .trial-feature{grid-template-columns:1fr; padding:26px}
  .sandbox-card{width:100%; min-height:140px}
}
@media(max-width:540px){.sandbox-cards{grid-template-columns:1fr}}
