/* Additive conversion styles; the existing public site remains the design system. */
:root { --gse-ink:#0f172a; }
html { scroll-behavior:smooth; scroll-padding-top:110px; }
body { padding-bottom:76px; }
.hero { padding-top:36px; padding-bottom:40px; }
.hero h1 { font-size:clamp(2rem,3.4vw,3rem); line-height:1.1; margin:12px 0 18px; }
.hero .lead { font-size:clamp(1.05rem,1.5vw,1.2rem); line-height:1.5; margin-bottom:14px; }
.hero .eyebrow { margin-top:16px; margin-bottom:8px; }
.hero .hero-actions { margin-top:20px; }
.hero .gse-value { margin:18px 0; }
.hero-actions { gap:12px; }
.hero-actions a { min-height:48px; }
.gse-value { display:flex; flex-wrap:wrap; gap:10px 22px; padding:0; margin:24px 0; list-style:none; font-weight:600; }
.gse-value li::before { content:'✓ '; }
.gse-summary { padding:24px; background:#fff; border:1px solid #d9e1e8; border-radius:16px; }
.gse-process { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; list-style:none; padding:0; counter-reset:step; }
.gse-process li { padding:22px; border:1px solid #d9e1e8; border-radius:14px; background:white; counter-increment:step; }
.gse-process li::before { content:'0' counter(step); font-weight:800; color:#475569; }
.gse-process h3 { margin-top:12px; }
.gse-photo { object-fit:cover; max-height:590px; width:100%; }
.gse-callout { border-left:4px solid #0f172a; padding:16px 20px; background:#f1f5f9; }
.gse-inline-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:22px; }
.gse-inline-actions a { min-height:48px; }
.gse-mobile { position:fixed; z-index:80; bottom:0; left:0; right:0; display:grid; grid-template-columns:repeat(3,1fr); padding-bottom:env(safe-area-inset-bottom,0); background:#0f172a; box-shadow:0 -2px 14px #0002; }
.gse-mobile a { display:flex; align-items:center; justify-content:center; min-height:56px; color:white; font-weight:700; text-decoration:none; border-right:1px solid #ffffff40; }
a:focus-visible,summary:focus-visible { outline:3px solid #2563eb; outline-offset:4px; }
@media(min-width:1000px) { .gse-mobile { max-width:480px; margin:0 auto; border-radius:12px 12px 0 0; } }
@media(max-width:760px) { .hero { padding-top:24px; padding-bottom:28px; } .hero h1 { font-size:2rem; } .gse-process { grid-template-columns:1fr 1fr; } .hero-actions a { flex:1 1 150px; } }
@media(max-width:420px) { .gse-process { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
