﻿:root{--bg:#f4f7ff;--surface:#fff;--line:#d7e2f3;--text:#16253d;--muted:#4c617f;--brand:#1b5dde;--brand2:#1398a7}
*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:"Plus Jakarta Sans","Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}
a{text-decoration:none;color:inherit}
body.tone-teal{--bg:#f1fbf9;--line:#cee9e4;--brand:#0f8f84;--brand2:#19b8a7}
body.tone-graphite{--bg:#f4f6fa;--line:#d6ddea;--brand:#3c5a84;--brand2:#6a86b2}

.shell{width:min(1120px,92vw);margin:0 auto}
.top{position:sticky;top:0;z-index:30;backdrop-filter:blur(10px);background:color-mix(in srgb,var(--bg) 86%, white 14%);border-bottom:1px solid var(--line)}
.nav{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand{font-weight:800;display:flex;align-items:center;gap:8px}.dot{width:24px;height:24px;border-radius:8px;background:linear-gradient(135deg,var(--brand),var(--brand2))}
.navlinks{display:flex;gap:8px;align-items:center}.navlinks a{padding:8px 11px;border-radius:999px;color:#2f4a70;font-weight:600;font-size:.9rem}.navlinks a:hover,.navlinks a.active{background:#dde8ff;color:#0d2f63}
.controls{display:flex;gap:6px}.controls button{border:1px solid var(--line);background:#fff;color:#29466f;padding:7px 10px;border-radius:999px;cursor:pointer;font-weight:700;font-size:.78rem}.controls button.active{background:var(--brand);border-color:var(--brand);color:#fff}

.hero{padding:62px 0 26px}
.badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:#e2ebff;color:#12356b;font-size:.76rem;font-weight:700}
.hero h1{margin:12px 0 10px;font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.06;letter-spacing:-.02em}.hero p{color:var(--muted);max-width:760px}
.cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.btn{display:inline-flex;padding:10px 14px;border-radius:999px;font-weight:700;border:1px solid transparent}.btn.primary{background:var(--brand);color:#fff}.btn.ghost{border-color:var(--line);background:#fff;color:#26466d}

.section{padding:24px 0}.section h2{margin:0 0 10px;font-size:clamp(1.35rem,2.8vw,2rem)}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 10px 22px rgba(18,35,65,.06)}
.card img{width:100%;height:182px;object-fit:cover}
.card .b{padding:14px}.card h3{margin:0 0 7px;font-size:1.03rem}.card p{margin:0;color:#3e5675;font-size:.93rem}
.stat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pill{background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px}

.quote{background:linear-gradient(130deg,var(--brand),var(--brand2));color:#fff;border-radius:18px;padding:22px}
.quote p{margin:0}.faq{display:grid;gap:8px}.q{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px}
.footer{padding:22px 0;color:#506887}

/* Variant accents */
.v-immersive{background:radial-gradient(1200px 620px at 15% -10%,#274983,transparent 55%),radial-gradient(1100px 560px at 100% -20%,#19697f,transparent 56%),#081322;color:#e7f4ff}
.v-immersive .top{background:rgba(8,19,34,.76);border-color:rgba(255,255,255,.18)}
.v-immersive .card,.v-immersive .pill,.v-immersive .q{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.22);color:#e7f4ff}
.v-immersive .card p,.v-immersive .hero p{color:#c5daee}
.v-immersive .navlinks a{color:#c8dcf2}.v-immersive .navlinks a:hover,.v-immersive .navlinks a.active{background:rgba(255,255,255,.16);color:#fff}
.v-immersive .controls button{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.26);color:#d8e8f8}
.v-immersive .controls button.active{background:var(--brand);border-color:var(--brand)}

.v-editorial{font-family:Inter,sans-serif;background:#f7f2ea;color:#1f130b}
.v-editorial h1,.v-editorial h2{font-family:"Playfair Display",serif}
.v-editorial .top{background:#f7f2ea;border-color:#dcccb5}
.v-editorial .card,.v-editorial .pill,.v-editorial .q{border-color:#ddceb8}
.v-editorial .navlinks a{color:#5c4430}

.v-neo{background:#f5f8ff;color:#111}
.v-neo .card{border:3px solid #121212;box-shadow:8px 8px 0 #111;border-radius:0}
.v-neo .btn.primary{border:3px solid #111;box-shadow:4px 4px 0 #111}
.v-neo .badge{background:#111;color:#fff}

.v-glass{background:linear-gradient(140deg,#162640,#1f3863,#1f6f85);color:#eaf4ff}
.v-glass .top{background:rgba(10,18,34,.48);border-color:rgba(255,255,255,.2)}
.v-glass .card,.v-glass .pill,.v-glass .q{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.26);backdrop-filter:blur(8px);color:#eaf4ff}
.v-glass .hero p,.v-glass .card p{color:#c7dff4}

.v-minimal{background:#fafafa;color:#151515}
.v-minimal .top{background:#fff;border-color:#ddd}
.v-minimal .card,.v-minimal .pill,.v-minimal .q{border-radius:10px;box-shadow:none;border-color:#ddd}
.v-minimal .badge{background:#151515;color:#fff}
.v-minimal .btn.primary{background:#151515}

@media(max-width:980px){.grid3,.stat{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.navlinks{display:none}.grid3,.stat{grid-template-columns:1fr}.hero{padding-top:48px}}
