:root{--navy:#0e3b5c;--blue:#1f6f9f;--sky:#e8f2f8;--sand:#fbf7f0;--ink:#1d2730;--muted:#4c5a66}
*{box-sizing:border-box}body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--sand)}
a{color:var(--blue)}a:hover{color:var(--navy)}h1,h2{line-height:1.2;color:var(--navy)}
.top{background:var(--navy);padding:.6rem 1rem}.brand{color:#fff;text-decoration:none;font-weight:700;display:flex;align-items:center;gap:.5rem}.brand img{border-radius:50%;background:#fff}
.hero{background:linear-gradient(rgba(14,59,92,.55),rgba(14,59,92,.75)),url(/assets/hero.jpg?v=2) center/cover;color:#fff;padding:3.5rem 1.2rem}
.hero-in{max-width:960px;margin:auto}.hero h1{color:#fff;font-size:2.4rem;margin:0}.tag{font-size:1.3rem;font-weight:600;margin:.5rem 0}
.wrap{max-width:960px;margin:auto;padding:1.5rem 1.2rem}.narrow{max-width:700px}.grid{display:grid;gap:1.5rem}
@media(min-width:800px){.grid{grid-template-columns:1fr 1.1fr}.hero{padding:5rem 1.2rem}.hero h1{font-size:3.2rem}}
.inside ul{padding-left:1.1rem}.inside li{margin:.5rem 0}
.card{background:#fff;border-radius:14px;padding:1.3rem;box-shadow:0 4px 18px rgba(14,59,92,.12);border-top:5px solid var(--blue)}.card h2{margin-top:0}
.signup label{display:block;font-weight:600;margin-top:.8rem}.opt{font-weight:400;color:var(--muted)}
.signup input[type=email],.signup input[type=tel],.signup input:not([type]){width:100%;padding:.7rem;font-size:1rem;border:1px solid #8a9aa6;border-radius:8px;margin-top:.25rem}
input:focus,button:focus{outline:3px solid #f2b134;outline-offset:2px}
.check{display:flex;gap:.6rem;align-items:flex-start;margin-top:1rem;background:var(--sky);padding:.7rem;border-radius:8px}.check input{width:1.2rem;height:1.2rem;margin-top:.2rem;flex:none}.check label{font-weight:400;font-size:.82rem;margin:0;color:var(--ink)}
button{margin-top:1rem;width:100%;padding:.85rem;font-size:1.1rem;font-weight:700;color:#fff;background:var(--blue);border:0;border-radius:8px;cursor:pointer}button:hover{background:var(--navy)}
.consent,.note{font-size:.85rem;color:var(--muted)}.small{font-size:.85rem;color:var(--muted)}
footer{background:var(--navy);color:#dbe8f1;text-align:center;padding:1.5rem 1rem;font-size:.9rem;margin-top:2rem}footer a{color:#fff}footer .small{color:#b9cddc}
.prose li{margin:.4rem 0}
