:root { color-scheme: light; font-family: Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; background:#f5f8f7; color:#152629; --ink:#152629; --muted:#53686c; --ocean:#063b47; --teal:#0f8d8d; --bright:#7ce2dc; --line:#d7e4e2; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#f5f8f7; }
a { color:#056c77; }
.site-header,main,footer { width:min(72rem,calc(100% - 2rem)); margin-inline:auto; }
.site-header { min-height:5.5rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.brand { display:flex; align-items:center; gap:.8rem; text-decoration:none; color:var(--ink); }
.brand img { border-radius:50%; }
.brand span { display:grid; }
.brand strong { font-size:1.05rem; }
.brand small { color:var(--muted); margin-top:.1rem; }
.quiet-link { font-weight:700; text-underline-offset:.2rem; }
.hero { margin-top:1rem; border-radius:1.5rem; padding:clamp(1.5rem,5vw,4.5rem); background:radial-gradient(circle at 85% 10%,#126d75 0,#063b47 42rem); color:#fff; display:grid; grid-template-columns:1.25fr .75fr; gap:clamp(2rem,5vw,5rem); align-items:center; }
.eyebrow { color:#0b797e; font-weight:800; letter-spacing:.1em; text-transform:uppercase; font-size:.78rem; }
.hero .eyebrow { color:var(--bright); }
h1 { max-width:13ch; font-size:clamp(2.5rem,6vw,5.25rem); line-height:.98; letter-spacing:-.045em; margin:.5rem 0 1.4rem; }
h2 { max-width:22ch; font-size:clamp(2rem,4vw,3.3rem); letter-spacing:-.035em; line-height:1.05; margin:.5rem 0 1.2rem; }
h3 { font-size:1.45rem; margin:.25rem 0; }
.lead { max-width:48rem; color:#d7eaeb; font-size:1.15rem; line-height:1.65; }
.button { display:inline-flex; justify-content:center; border:0; border-radius:.7rem; padding:.9rem 1.2rem; background:var(--bright); color:#052d33; font:inherit; font-weight:850; text-decoration:none; cursor:pointer; }
.button:hover { background:#a2eee8; }
.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:.2rem solid #ffca65; outline-offset:.15rem; }
.button:disabled { cursor:not-allowed; opacity:.55; }
.micro { font-size:.83rem; line-height:1.55; color:var(--muted); }
.hero .micro { color:#bad6d9; }
.audience-card { border:1px solid #4a858d; border-radius:1rem; background:#052c36b8; padding:1.35rem; }
.card-label { color:#26757a; text-transform:uppercase; letter-spacing:.08em; font-size:.72rem; font-weight:850; }
.hero .card-label { color:var(--bright); }
.headline-stats { display:grid; grid-template-columns:1fr 1fr; gap:.9rem; margin:1.2rem 0 1.5rem; }
.headline-stats div { display:grid; }
.headline-stats strong { font-size:clamp(2rem,4vw,3rem); line-height:1; }
.headline-stats span { color:#c9e0e2; font-size:.83rem; margin-top:.35rem; }
.bar-row { display:flex; justify-content:space-between; font-size:.88rem; margin:.9rem 0 .3rem; }
.bar { height:.55rem; background:#315d65; border-radius:1rem; overflow:hidden; }
.bar i { display:block; height:100%; background:var(--bright); border-radius:inherit; }
.bar-60 { width:60%; }
.bar-72 { width:72%; }
.section { padding:clamp(3.5rem,8vw,7rem) clamp(0rem,2vw,1.5rem); }
.proof { display:grid; grid-template-columns:.65fr 1.35fr; column-gap:3rem; align-items:start; }
.proof .eyebrow { grid-row:1; grid-column:1; }
.proof h2 { grid-row:2 / span 2; grid-column:1; }
.proof>p:not(.eyebrow) { grid-column:2; max-width:52rem; font-size:1.18rem; line-height:1.65; margin-top:.4rem; }
.proof>p.micro { font-size:.86rem; }
.package-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:2rem; }
.package-grid article { background:#fff; border:1px solid var(--line); border-radius:1rem; padding:1.4rem; box-shadow:0 .8rem 2rem #193c4010; }
.price { color:#087d82; font-size:1.9rem; font-weight:850; margin:1rem 0; }
ul { padding-left:1.2rem; line-height:1.65; color:#344e52; }
li+li { margin-top:.25rem; }
.safeguards { background:#e8f0ee; border-radius:1.25rem; padding-inline:clamp(1.4rem,5vw,4rem); display:grid; grid-template-columns:.8fr 1.2fr; gap:3rem; }
.guard-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.guard-grid div { background:#fff; padding:1rem; border:1px solid var(--line); border-radius:.8rem; }
.guard-grid p { color:var(--muted); line-height:1.55; margin-bottom:0; }
.form-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,6vw,6rem); }
.form-intro p { color:var(--muted); line-height:1.65; }
form { background:#fff; padding:clamp(1.2rem,4vw,2rem); border:1px solid var(--line); border-radius:1rem; box-shadow:0 1rem 3rem #193c4012; }
label { display:grid; gap:.4rem; margin-bottom:1rem; font-weight:750; font-size:.9rem; }
input,select,textarea { width:100%; border:1px solid #aebfbd; border-radius:.5rem; padding:.75rem .8rem; background:#fff; color:var(--ink); font:inherit; }
textarea { resize:vertical; line-height:1.5; }
.field-pair { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.check { grid-template-columns:auto 1fr; align-items:start; font-weight:500; line-height:1.5; }
.check input { width:1.1rem; height:1.1rem; margin-top:.2rem; }
.honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
#turnstile-slot { min-height:4.3rem; margin:.5rem 0; }
.submit { width:100%; }
.form-status { min-height:1.5rem; color:#8b2d28; font-weight:650; }
.form-status.success { color:#167046; }
footer { border-top:1px solid var(--line); padding:2rem 0 4rem; display:flex; justify-content:space-between; gap:2rem; color:var(--muted); font-size:.85rem; line-height:1.55; }
footer p { max-width:52rem; margin:0; }
footer nav { display:flex; gap:1rem; white-space:nowrap; }
@media (max-width:800px) { .hero,.proof,.safeguards,.form-section { grid-template-columns:1fr; } .proof .eyebrow,.proof h2,.proof>p:not(.eyebrow) { grid-column:1; grid-row:auto; } .package-grid { grid-template-columns:1fr; } .quiet-link { display:none; } footer { display:grid; } }
@media (max-width:520px) { .site-header,main,footer { width:min(100% - 1rem,72rem); } .hero { padding:1.35rem; border-radius:1rem; } .headline-stats,.field-pair,.guard-grid { grid-template-columns:1fr; } h1 { font-size:2.65rem; } }
