/* Palette sampled from the StogieHound logo with Pillow */
:root{--navy:#061c33;--navy-2:#0a2744;--navy-3:#123659;--cream:#fce8ca;--orange:#d87c25;--gold:#b9905c;--tan:#d1a978;
--slab:"Rockwell Extra Bold",Rockwell,"Roboto Slab","Zilla Slab",Bitter,"Clarendon BT",Clarendon,"Serifa","DejaVu Serif",Georgia,serif}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--navy);color:var(--cream)}
a{color:var(--orange)}a:hover{color:var(--tan)}.wrap{max-width:1000px;margin:0 auto;padding:0 20px}
h1,h2,h3,.brand b{font-family:var(--slab);font-weight:900;letter-spacing:.2px}
header{padding:16px 0;border-bottom:2px solid var(--gold)}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--cream)}
.brand img{width:44px;height:44px}.brand b{font-size:1.4rem;text-transform:uppercase}.brand span{color:var(--orange)}
.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:32px;align-items:center;padding:36px 0 44px}
.logo{width:100%;max-width:360px;height:auto;display:block;margin:0 auto}
.tagline{font-family:var(--slab);font-weight:900;text-transform:uppercase;letter-spacing:1.5px;color:var(--tan);margin:0 0 10px;font-size:.95rem}
h1{font-size:clamp(2rem,5.2vw,3.2rem);line-height:1.12;margin:0 0 16px}h1 em{color:var(--orange);font-style:normal}
.lead{color:var(--cream);opacity:.92;font-size:1.1rem}
.btn{display:inline-block;background:var(--orange);color:var(--navy);border:2px solid var(--orange);border-radius:10px;padding:12px 22px;font-weight:800;font-size:1rem;cursor:pointer;text-decoration:none;font-family:var(--slab);text-transform:uppercase;letter-spacing:.5px}
.btn:hover{background:var(--tan);border-color:var(--tan);color:var(--navy)}.btn:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--tan);outline-offset:2px}
.btn.alt{background:transparent;color:var(--cream);border-color:var(--gold)}
section{padding:40px 0;border-top:1px solid var(--gold)}h2{font-size:1.75rem;margin:0 0 18px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:var(--navy-2);border:1px solid var(--gold);border-radius:14px;padding:18px}
.card h3{margin:0 0 6px;color:var(--orange);font-size:1.15rem}
pre.alert{white-space:pre-wrap;background:#04152a;border:1px solid var(--gold);border-left:5px solid var(--orange);border-radius:10px;padding:16px;font:14px/1.5 ui-monospace,Menlo,Consolas,monospace;color:var(--cream);overflow:auto}
form{display:grid;gap:12px;max-width:560px}input[type=email],textarea{width:100%;padding:12px;border-radius:10px;border:1px solid var(--gold);background:#04152a;color:var(--cream);font:inherit}
::placeholder{color:var(--tan);opacity:.8}input[type=checkbox]{accent-color:var(--orange);width:18px;height:18px;margin-top:3px}
label.chk{display:flex;gap:10px;align-items:flex-start}.note{color:var(--tan);font-size:.92rem}
footer{padding:30px 0;color:var(--tan);font-size:.9rem;border-top:2px solid var(--gold)}footer br~a{margin-right:14px}
#gate{position:fixed;inset:0;background:rgba(3,13,26,.96);display:none;align-items:center;justify-content:center;z-index:9;padding:20px}
#gate .card{max-width:420px;text-align:center;border-width:2px}#gate img{width:150px;height:auto}.gate-on #gate{display:flex}.gate-on{overflow:hidden}
.legal h1{font-size:2rem}.legal{padding:20px 0 40px}
@media(max-width:720px){.hero{grid-template-columns:1fr;text-align:center}.logo{max-width:240px}.hero>picture{order:-1}.steps{grid-template-columns:1fr}}
.under21{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 20px}.under21 img{width:220px;height:auto}.under21 h1{font-size:clamp(1.6rem,4.5vw,2.4rem);max-width:640px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}#form-msg.ok{color:var(--cream);background:var(--navy-2);border:1px solid var(--gold);border-left:5px solid var(--orange);border-radius:10px;padding:12px 14px;font-size:1rem}
