*{box-sizing:border-box}
:root{--green:#234f42;--green-dark:#173a30;--green-light:#e8f0eb;--ink:#202723;--muted:#5e6963;--line:#dce4df;--paper:#fff;--background:#f7f9f7;--red:#b72e38}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--background);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}
a{color:var(--green)}.header{position:sticky;top:0;z-index:1000;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:.85rem max(1.2rem,calc((100vw - 1180px)/2));background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.brand{display:flex;align-items:center;gap:.7rem;color:var(--green-dark);font-weight:800;text-decoration:none;white-space:nowrap}.brand-card{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:31px;height:42px;border:1px solid #d6d6d2;border-radius:5px;background:#fff;color:#202723;font-family:Georgia,serif;font-size:17px;line-height:1.05;box-shadow:0 2px 4px #00000012}.brand-card span{color:var(--red)}
nav{display:flex;align-items:center;gap:1.25rem}nav a{text-decoration:none;color:#35423b;font-size:.94rem;font-weight:650}nav a:hover,.footer-links a:hover{text-decoration:underline}.nav-cta,.button{display:inline-flex;justify-content:center;align-items:center;border-radius:999px;padding:.72rem 1.15rem;font-weight:750;text-decoration:none}.nav-cta,.button.primary{background:var(--green);color:#fff}.nav-cta:hover,.button.primary:hover{background:var(--green-dark)}
main{width:min(100% - 2rem,1120px);margin-inline:auto}.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,5vw,4rem);align-items:center;padding:clamp(2.5rem,7vw,5.5rem) 0 3.5rem}.hero-copy{max-width:600px}.eyebrow{color:var(--green);font-size:.78rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin:0 0 .65rem}.hero h1{max-width:720px;font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.04;letter-spacing:-.045em;margin:0 0 1.1rem}.lead{font-size:clamp(1.15rem,2vw,1.4rem);font-weight:700;color:#3b5147;margin:.5rem 0 1rem}.intro{font-size:1.03rem;color:#4e5b54;max-width:650px}.actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}.button{font-size:1rem}.hero-image{display:block;width:100%;height:auto;max-height:460px;object-fit:contain}
.section{padding:3rem 0;border-top:1px solid var(--line)}.heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem}.heading h2{font-size:clamp(1.8rem,4vw,2.5rem);letter-spacing:-.035em;line-height:1.15;margin:0}.muted,.rules-intro{color:var(--muted)}.small{font-size:.9rem}.status{font-size:.9rem;color:var(--muted);min-height:1.5rem}#interest-map{height:410px;width:100%;margin:1.3rem 0 1rem;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#e7ece8}.zip-summary{display:flex;gap:.55rem;flex-wrap:wrap}.zip-pill{display:inline-flex;align-items:center;gap:.25rem;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.45rem .8rem;font-size:.93rem}.zip-pill b{color:var(--green)}
.empty-games{display:flex;align-items:center;gap:1.25rem;padding:1.4rem;border:1px solid var(--line);background:#fff;border-radius:16px;margin:1.5rem 0}.empty-games h3{margin:0 0 .35rem}.empty-games p{margin:.2rem 0 .5rem;color:var(--muted)}.empty-card-mark{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;width:76px;height:104px;border:1px solid #d8d8d2;border-radius:8px;background:#fff;font:28px/1.05 Georgia,serif;box-shadow:0 4px 12px #0000000d}.empty-card-mark span{color:var(--red)}.games-section{padding-bottom:3.5rem}
.rules-section h3{margin:2rem 0 .65rem;font-size:1.25rem}.rules-section h4{margin:1.25rem 0 .35rem}.rules-section p,.rules-section li{max-width:920px}.rules-section li{margin:.3rem 0}.rules-section ul,.rules-section ol{padding-left:1.4rem}.rules-section .table-wrap{overflow-x:auto}.rules-section table{border-collapse:collapse;width:100%;min-width:580px;background:#fff}.rules-section th,.rules-section td{padding:.7rem .8rem;border:1px solid var(--line);text-align:left}.rules-section th{background:var(--green-light)}.rules-image{margin:1.5rem 0}.rules-image img{display:block;width:min(100%,760px);height:auto;border-radius:14px}.rules-image figcaption{font-size:.85rem;color:var(--muted);margin-top:.35rem}
.faq-section details{border-bottom:1px solid var(--line);padding:1rem 0}.faq-section summary{cursor:pointer;font-weight:750}.faq-section details p{margin:.55rem 0 0;color:var(--muted);max-width:850px}.legal-section{padding-block:2rem}.legal-section p{max-width:950px;color:#4d5952}.legal-section .heading{margin-bottom:.8rem}
footer{padding:1.5rem max(1.2rem,calc((100vw - 1120px)/2)) 2.5rem;border-top:1px solid var(--line);background:#fff;color:var(--muted);font-size:.9rem}footer p{margin:.25rem 0}.footer-links{display:flex;gap:1rem;flex-wrap:wrap;margin-top:.65rem}.footer-links a{color:var(--green)}
@media(max-width:820px){.header{align-items:flex-start;flex-direction:column;gap:.65rem;padding:.75rem 1rem}nav{gap:.9rem;flex-wrap:wrap}nav a{font-size:.88rem}.hero{grid-template-columns:1fr;padding-top:2.7rem}.hero-image{max-height:320px;grid-row:1}.hero-copy{grid-row:2}.section{padding:2.4rem 0}}
@media(max-width:520px){main{width:min(100% - 1.25rem,1120px)}.brand{white-space:normal}nav{gap:.65rem}.nav-cta{padding:.5rem .8rem}.hero h1{font-size:2.6rem}.empty-games{align-items:flex-start;padding:1rem}.empty-card-mark{width:56px;height:78px;font-size:23px}#interest-map{height:340px}.footer-links{gap:.7rem}}
