/* Launch-only styles: do not override the existing homepage/navigation. */
[hidden] { display: none !important; }
.launch-banner { display:block; padding:14px 24px; text-align:center; background:#dce9dd; color:#172c22; font-weight:600; font-size:14px; }
.launch-banner:hover { background:#cbdccc; }
.launch-page { background:#fcfdfa; }
.launch-nav { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:18px; padding-bottom:18px; }
.launch-nav>div { display:flex; flex-wrap:wrap; gap:24px; font-size:14px; font-weight:600; }
.launch-skip { position:absolute; left:10px; top:-80px; background:#fff; padding:10px; z-index:100; }
.launch-skip:focus { top:10px; }
.launch-hero { display:grid; grid-template-columns:1.1fr 1fr; gap:44px; align-items:center; padding-top:76px; padding-bottom:64px; }
.launch-kicker { display:block; text-transform:uppercase; letter-spacing:.16em; font-size:11px; font-weight:700; color:#3f654c; margin-bottom:20px; }
.launch-intro h1 { font-size:clamp(40px,5vw,68px); letter-spacing:-.045em; max-width:600px; }
.launch-intro .lead { font-size:20px; }
.launch-countdown-box { margin:30px 0; border:1px solid #d5dfd2; padding:26px; border-radius:22px; background:#edf3e9; }
.launch-timer { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:24px; }
.launch-timer>div { text-align:center; background:#fff; padding:18px 5px; border-radius:12px; }
.launch-timer strong { display:block; font-size:clamp(30px,4vw,49px); line-height:1.1; font-variant-numeric:tabular-nums; color:#16271c; }
.launch-timer span { display:block; font-size:10px; text-transform:uppercase; letter-spacing:.13em; margin-top:10px; }
#launch-date { color:#304a37; font-size:13px; margin-bottom:8px; }
.launch-sync { font-size:11px; margin:0; }
#launch-live { font-size:24px; color:#274832; font-weight:600; }
.launch-actions { display:flex; flex-wrap:wrap; gap:12px; }
.launch-actions .btn { font-size:13px; padding:12px 18px; }
.launch-art img { width:100%; height:auto; }
.launch-art-caption { display:block; text-align:center; color:#566c58; font-size:12px; margin-top:10px; }
.launch-services { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding-bottom:70px; }
.launch-service { border:1px solid #e0e6dc; background:white; padding:26px; border-radius:24px; display:flex; flex-direction:column; align-items:flex-start; }
.launch-service img { width:100%; height:185px; object-fit:contain; margin-bottom:24px; }
.launch-service .launch-kicker { margin-bottom:10px; }
.launch-service h2 { font-size:25px; }
.launch-service p { font-size:14px; flex:1; }
.launch-service .btn { font-size:13px; padding:10px 17px; }
.launch-community { display:grid; grid-template-columns:1fr 1fr; gap:60px; padding-top:55px; padding-bottom:55px; border-top:1px solid #dce5d8; }
.launch-community h2,.launch-share h2 { font-size:32px; }
.launch-note { font-size:12px; max-width:420px; }
.launch-notify { background:#eef3ea; border-radius:20px; padding:28px; }
.launch-notify h3 { font-size:22px; }
.launch-notify label { display:block; font-size:13px; margin-bottom:9px; }
.launch-notify input[type=email] { display:block; width:100%; padding:13px; border:1px solid #9cae9f; border-radius:8px; font:inherit; margin-bottom:15px; }
.launch-consent { line-height:1.6; }
.launch-consent a { text-decoration:underline; }
.launch-consent input { vertical-align:middle; }
.launch-honeypot { position:absolute; left:-9999px; }
.launch-notify button { margin-top:10px; }
.launch-notify button:disabled { opacity:.6; }
#launch-subscribe-result { margin:14px 0 0; font-size:13px; }
.launch-share { text-align:center; padding-top:35px; padding-bottom:75px; }
.launch-share>div { display:flex; gap:20px; align-items:center; justify-content:center; flex-wrap:wrap; font-size:14px; }
.launch-share h2 { margin-bottom:26px; }
.launch-page :focus-visible { outline:3px solid #0b8457; outline-offset:4px; }
@media(max-width:800px) { .launch-hero { grid-template-columns:1fr; padding-top:45px; gap:25px; } .launch-art { max-width:480px; margin:auto; } .launch-services { grid-template-columns:1fr; } .launch-service img { height:180px; } .launch-community { grid-template-columns:1fr; gap:20px; } .launch-nav { flex-wrap:wrap; } .launch-nav>div { gap:20px; } }
@media(max-width:400px) { .launch-countdown-box { padding:17px; } .launch-timer { gap:7px; } .launch-timer strong { font-size:30px; } .launch-timer span { font-size:9px; } .launch-actions .btn { width:100%; } }