@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root { --ink:#111912;--black:#101611;--dark:#10261b;--green:#087b43;--green-bright:#109655;--mint:#a7e5bc;--yellow:#fbe33e;--cream:#f7f5e9;--paper:#fffdf5;--border:#dedfce;--muted:#656e62;--radius:15px; }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased} button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #e3a90c;outline-offset:3px}img{max-width:100%}.page-shell{max-width:1240px;margin:0 auto;padding-left:28px;padding-right:28px}.skip-link{position:absolute;left:16px;top:-70px;padding:12px;background:#fff;z-index:10000}.skip-link:focus{top:12px}
.header{background:#fcfbf0;border-bottom:1px solid #e2e1d3;position:relative;z-index:500}.nav{min-height:79px;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;gap:12px;color:#193722;font-family:'Space Grotesk',sans-serif;font-size:19px;font-weight:700;letter-spacing:-1px;white-space:nowrap}.brand img{width:44px;height:44px;border:2px solid #1b3e2b;border-radius:50%;object-fit:cover}.brand-dot{color:#108b4b}.nav-links{display:flex;gap:27px;align-items:center;margin-left:auto}.nav-links a{font-size:13px;font-weight:800;transition:color .2s}.nav-links a:hover,.nav-social:hover{color:#088d47}.nav-social{margin-left:10px;font-size:13px;font-weight:800;color:#0b6737;white-space:nowrap}
.hero{background:#08271a;color:#f4f8e7;overflow:hidden}.hero-grid{padding-top:78px;padding-bottom:77px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:58px;min-height:520px}.eyebrow,.kicker{font-family:'Space Grotesk',sans-serif;font-size:11px;line-height:1.4;letter-spacing:2px;font-weight:700}.eyebrow{color:#abe6b5;display:flex;align-items:center;gap:9px}.live-dot{display:inline-block;width:7px;height:7px;background:#c8ff4d;box-shadow:0 0 0 4px #237843;border-radius:50%;margin-right:4px}.eyebrow-suffix{opacity:.5}.hero h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(46px,5.2vw,75px);max-width:630px;line-height:.98;letter-spacing:-4.3px;margin:30px 0 24px;font-weight:700}.hero h1 em{font-style:normal;color:var(--yellow)}.hero-copy>p{font-size:17px;line-height:1.7;max-width:490px;color:#d0e0d0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:29px 0 51px}.button{display:inline-flex;align-items:center;justify-content:center;gap:17px;border:2px solid transparent;border-radius:8px;font-size:13px;font-weight:800;padding:14px 20px;min-height:50px;transition:transform .18s,background .18s}.button:hover{transform:translateY(-2px)}.button-yellow{background:var(--yellow);color:#152117}.button-yellow:hover{background:#ffe967}.button-outline{border-color:#779c84;color:#f6ffe3;background:transparent}.button-outline:hover{border-color:#d9fbde}.hero-foot{display:flex;flex-wrap:wrap;gap:15px;color:#a8ceb2;font-size:10px;font-weight:800;letter-spacing:.8px}.hero-visual{position:relative;padding:12px 12px 22px}.brand-display{border:9px solid #0f4c2c;background:#078245;border-radius:10px;box-shadow:13px 17px 0 #001c11,-8px -8px 0 rgba(29,121,68,.3),0 0 0 1px #4ca570;overflow:hidden}.brand-display img{display:block;width:100%;height:auto;background:#087a39}.brand-screen-top,.brand-screen-bottom{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;font-family:'Space Grotesk';font-size:10px;letter-spacing:1.3px;font-weight:700;color:#c8f8c8;background:#034c29}.brand-screen-top>span:first-child{color:#f4d83c}.brand-screen-bottom{background:#08703a}.blinker{animation:blink 1.1s infinite}@keyframes blink{50%{opacity:0}}.sticker{background:var(--yellow);color:#122318;width:136px;height:136px;border-radius:50%;position:absolute;right:-15px;bottom:-36px;transform:rotate(12deg);box-shadow:4px 5px 0 #001e10;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05;text-align:center}.sticker-num{font:700 45px/1 'Space Grotesk';letter-spacing:-3px}.sticker>span:last-child{font:800 12px/1.12 'Space Grotesk';letter-spacing:.8px}.ticker{background:var(--yellow);color:#102c17;overflow:hidden;border-top:2px solid #074129;border-bottom:2px solid #074129}.ticker-inner{font:800 12px/1.4 'Space Grotesk';white-space:nowrap;letter-spacing:2px;padding:13px 0;text-align:center}
.directory-section{padding:95px 0 78px}.section-intro{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:32px}.kicker{color:#087b43}.kicker span{color:#8d9a8c}.section-intro h2,.about-copy h2,.suggest-wrap h2{font:700 clamp(39px,4.7vw,62px)/1 'Space Grotesk';letter-spacing:-3px;margin:15px 0 0}.section-intro h2 span{color:#25845a}.section-intro>p{max-width:340px;margin:0 10px 7px 0;font-size:15px;line-height:1.7;color:#677568}.explorer{border:1px solid #d7decf;border-radius:13px;overflow:hidden;background:var(--paper);box-shadow:0 18px 45px rgba(13,33,17,.055)}.explorer-controls{padding:20px 23px 17px;border-bottom:1px solid var(--border)}.search-wrap{display:flex;align-items:center;border:1.5px solid #c9d2c3;border-radius:8px;min-height:56px;background:#fff;transition:border-color .2s}.search-wrap:focus-within{border-color:#0a8745}.search-symbol{font-size:27px;line-height:1;color:#177a47;margin-left:16px;margin-right:12px}.search-wrap input{border:0;background:transparent;outline:none;width:100%;min-width:0;min-height:51px;font-size:15px;color:#18261d}.search-wrap input:focus-visible{outline:none}.search-wrap input::placeholder{color:#7e8b7a}.search-shortcut{font-size:10px;font-weight:800;color:#8d9d8d;letter-spacing:.7px;padding:0 15px}.filter-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.filter-chip,.nearby-button{padding:10px 17px;background:#f6f7ed;border:1px solid #d9e1d4;color:#38513a;border-radius:30px;font-weight:800;font-size:12px;min-height:39px}.filter-chip.active{background:#123e28;border-color:#123e28;color:white}.filter-chip:hover:not(.active),.nearby-button:hover{border-color:#7fae88}.nearby-button{margin-left:auto;background:#fff;color:#137a3f}.explorer-meta{background:#f4f7eb;display:flex;min-height:46px;gap:15px;align-items:center;justify-content:space-between;padding:10px 22px;border-bottom:1px solid #dde3d6}.result-counter{font-size:12px;font-weight:800}.result-counter>span:first-child{color:#098342}.results-sub{color:#839083;font-weight:500}.geo-message{font-size:12px;color:#46764a}.explorer-body{display:grid;grid-template-columns:minmax(340px, 44%) minmax(0, 56%);height:610px}.venue-pane{overflow:auto;overscroll-behavior:contain;background:#fff}.venue-card{display:grid;grid-template-columns:88px 1fr;gap:14px;padding:16px 18px;border-bottom:1px solid #e9eee4;min-height:130px;transition:background .18s}.venue-card:hover{background:#f7fbee}.venue-thumb{height:96px;width:88px;border-radius:9px;background:#e1edda;display:flex;align-items:center;justify-content:center;font-size:34px;overflow:hidden;position:relative;color:#0f663b}.venue-thumb img{width:100%;height:100%;object-fit:cover}.venue-thumb.arcade{background:#1b5332;color:#fbe33e}.venue-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.venue-card h3{font:700 16px/1.2 'Space Grotesk';letter-spacing:-.35px;margin:3px 0 6px}.type-badge{white-space:nowrap;display:inline-flex;align-items:center;border:1px solid #b8ddbd;background:#e3f8e6;color:#126d39;padding:5px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.7px;font-size:9px;font-weight:900}.type-badge.arcade{background:#fff4bd;border-color:#f1d87a;color:#816000}.venue-card p{margin:0 0 7px;font-size:12px;line-height:1.45;color:#5e6e5f}.venue-card .venue-location{font-weight:700;color:#2d5c3c}.venue-meta{display:flex;justify-content:space-between;gap:9px;align-items:center;margin-top:10px}.venue-features{font-size:10px;color:#7d887c;font-weight:700}.venue-open{padding:0;border:0;background:transparent;color:#07713b;font-size:12px;font-weight:900;white-space:nowrap}.venue-open:hover{text-decoration:underline}.loading-message,.empty-state{text-align:center;padding:65px 20px;color:#607161}.empty-state strong{display:block;font:700 22px 'Space Grotesk';margin-bottom:8px;color:#13271a}.map-pane{border-left:1px solid #dce3d4;display:flex;flex-direction:column;position:relative;min-width:0}.map-topbar{height:47px;flex:0 0 47px;background:#f4f7eb;padding:0 15px;display:flex;align-items:center;justify-content:space-between;font:800 11px 'Space Grotesk';letter-spacing:1px;border-bottom:1px solid #dfe8d9}.map-pulse{color:#0b9a57;font-size:12px}.map-topbar button{background:transparent;border:0;font:800 11px 'Space Grotesk';color:#156c3c}.map-topbar button:hover{text-decoration:underline}#map{background:#dfebd7;flex:1;min-height:0;position:relative}.map-fallback{position:absolute;top:45%;text-align:center;left:10%;right:10%;font-size:16px;color:#245a30}.map-fallback small{font-size:12px;color:#64826a}.map-legend{height:47px;flex:0 0 47px;display:flex;align-items:center;gap:20px;padding:0 18px;background:#fff;font-size:11px;font-weight:800;color:#415843}.legend-dot{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:6px;vertical-align:middle;border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.3)}.legend-dot.arcade{background:#f9c72b}.legend-dot.shop{background:#058546}.map-disclaimer{margin-left:auto;font-size:10px;color:#879286;font-weight:500}.venue-marker{border:3px solid white;border-radius:50%;box-shadow:0 2px 8px #0004;background:#f6be30;width:22px;height:22px}.venue-marker.shop{background:#078f56}.leaflet-popup-content-wrapper{border-radius:9px}.leaflet-popup-content{margin:13px 16px}.popup-title{font-weight:800;font-size:14px}.popup-sub{font-size:12px;color:#59745f;margin:3px 0 10px}.popup-detail{border:0;background:#0d663b;color:white;border-radius:5px;padding:9px 12px;font-size:12px;font-weight:800;cursor:pointer}.accuracy-note{line-height:1.55;font-size:12px;color:#637161;margin:18px 2px 0}.accuracy-note a{color:#0c8147;text-decoration:underline;text-underline-offset:2px}
.about-section{background:#e6edde;padding:91px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.about-image{position:relative;border-radius:11px;overflow:hidden;background:#173b25;aspect-ratio: 5 / 4;box-shadow:12px 12px 0 #c4d2bd}.about-image img{width:100%;height:100%;object-fit:cover}.photo-label{position:absolute;bottom:17px;left:17px;right:17px;background:#142619e8;color:white;border-left:4px solid var(--yellow);padding:11px 15px}.photo-label span{display:block;color:#ebd75e;font:800 9px 'Space Grotesk';letter-spacing:1.5px;margin-bottom:5px}.photo-label strong{font:700 12px 'Space Grotesk';letter-spacing:.4px}.about-copy h2{font-size:clamp(36px,4vw,57px);margin:17px 0 25px}.about-copy h2 em{font-style:normal;color:#0b8248}.about-copy>p{font-size:15px;line-height:1.8;color:#465b4c}.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding-top:25px;margin-top:25px;border-top:1px solid #bfd0bd}.about-stats div{display:flex;flex-direction:column;gap:6px}.about-stats strong{font:700 29px 'Space Grotesk';color:#0b8144}.about-stats span{font-size:10px;font-weight:800;letter-spacing:.3px;color:#627d68}
.suggest-section{background:#0a3e27;color:white;padding:64px 0}.suggest-wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.suggest-wrap h2{margin:14px 0 12px;font-size:47px}.suggest-wrap .kicker{color:#bde7a4}.suggest-wrap p{line-height:1.7;color:#b9d7c1;max-width:580px;font-size:15px}.suggest-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px;white-space:nowrap}.insta-link{color:#d4ecd5;font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:4px}.footer{background:#0b2116;color:#b5c6b7;padding:43px 0 23px}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer-brand{color:#fff;font:700 23px 'Space Grotesk';letter-spacing:-1px;margin-bottom:8px}.footer-brand span{color:var(--yellow)}.footer-grid>div:first-child>div:last-child{font-size:12px}.footer-grid>div:nth-child(2){display:flex;gap:20px;flex-wrap:wrap;align-items:flex-start}.footer-grid a{font-size:12px;font-weight:700}.footer-grid a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #294532;margin-top:45px;padding-top:19px;display:flex;justify-content:space-between;gap:15px;color:#839c88;font-size:11px}
.venue-dialog{width:min(560px,calc(100% - 26px));max-height:calc(100% - 35px);overflow:auto;border:0;border-radius:16px;padding:0;background:#fffdf7;box-shadow:0 35px 120px #0007;color:#18301e}.venue-dialog::backdrop{background:#06180de0;backdrop-filter:blur(3px)}.modal-close{position:sticky;top:12px;float:right;z-index:20;margin:12px 12px -45px 0;width:38px;height:38px;border:0;border-radius:50%;font-size:17px;background:#f3f5e9;color:#143b28}.detail-image{height:210px;background:#0c5d35;display:flex;align-items:center;justify-content:center;font-size:90px;color:var(--yellow);position:relative}.detail-image img{width:100%;height:100%;object-fit:cover}.detail-content{padding:25px 29px 29px}.detail-category{display:flex;gap:7px;align-items:center;margin-bottom:12px}.detail-content h2{font:700 30px/1.1 'Space Grotesk';margin:9px 0 8px;letter-spacing:-1.25px}.detail-location{font-size:13px;color:#6e7a68;font-weight:700;line-height:1.5}.detail-content>p{line-height:1.7;font-size:14px;color:#475c4a;margin:19px 0}.detail-tags{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0 22px}.detail-tag{background:#eaf2e3;color:#296143;padding:7px 11px;border-radius:4px;font-size:11px;font-weight:800}.detail-actions{display:flex;gap:9px;flex-wrap:wrap}.detail-actions a{font-size:12px;min-height:43px;padding:10px 13px}.detail-actions .primary{background:#0b6b40;color:white}.detail-actions .secondary{border-color:#bbc9b8;color:#0d6438}.detail-note{margin-top:23px;border-top:1px solid #e2e7dc;padding-top:14px;font-size:11px;line-height:1.5;color:#758375}.modal-extra{display:flex;gap:11px;flex-wrap:wrap;margin-top:15px}.modal-extra a{font-size:12px;color:#0d7c46;text-decoration:underline}
@media(max-width:1050px){.page-shell{padding-left:22px;padding-right:22px}.hero-grid{gap:28px}.hero h1{font-size:58px}.sticker{width:112px;height:112px;right:-4px;bottom:-18px}.sticker-num{font-size:37px}.explorer-body{grid-template-columns:45% 55%}.venue-card{grid-template-columns:70px 1fr;padding:13px 12px}.venue-thumb{width:70px;height:85px}.type-badge{display:none}.about-grid{gap:35px}}
@media(max-width:760px){.header .nav{min-height:65px}.nav-links{display:none}.nav-social{margin-left:auto;font-size:11px}.brand{font-size:17px}.brand img{width:38px;height:38px}.hero-grid{grid-template-columns:1fr;min-height:0;padding-top:54px;padding-bottom:72px;gap:22px}.hero h1{font-size:clamp(48px,10vw,66px);letter-spacing:-3px;max-width:520px;margin:21px 0 13px}.hero-copy>p{font-size:15px;margin:0}.hero-actions{margin:21px 0 25px}.hero-visual{max-width:480px;width:100%;margin:0 auto}.sticker{bottom:-25px}.hero-foot{gap:9px;font-size:9px}.ticker-inner{font-size:10px}.directory-section{padding:59px 0 65px}.section-intro{display:block}.section-intro h2{font-size:48px}.section-intro>p{margin:18px 0 23px}.explorer-controls{padding:14px}.explorer-body{height:auto;display:flex;flex-direction:column}.map-pane{order:0;border-left:0;border-bottom:1px solid #dce3d4;height:375px}.venue-pane{order:1;overflow:visible;max-height:none}.map-pane #map{min-height:280px}.filter-row{gap:7px}.filter-chip,.nearby-button{padding:9px 12px;font-size:11px}.search-shortcut{display:none}.explorer-meta{padding:9px 13px}.venue-card{grid-template-columns:80px 1fr;padding:16px 15px}.venue-thumb{height:88px;width:80px}.type-badge{display:inline-flex}.about-section{padding:65px 0}.about-grid{grid-template-columns:1fr;gap:48px}.about-copy h2{max-width:550px}.suggest-wrap{display:block}.suggest-wrap h2{font-size:40px}.suggest-actions{margin-top:26px}.footer-grid,.footer-bottom{display:block}.footer-grid>div:nth-child(2){margin-top:27px}.footer-bottom span{display:block;margin-top:7px}}
@media(max-width:410px){.page-shell{padding-left:14px;padding-right:14px}.brand{font-size:15px;gap:6px}.nav-social{font-size:10px}.hero h1{font-size:45px}.hero-foot{font-size:8px}.hero-actions .button{width:100%}.sticker{width:93px;height:93px;right:2px;bottom:-29px}.sticker-num{font-size:31px}.sticker>span:last-child{font-size:9px}.venue-card{grid-template-columns:72px 1fr;gap:11px;padding:15px 11px}.venue-thumb{width:72px;height:83px}.venue-card h3{font-size:15px}.type-badge{font-size:8px}.map-disclaimer{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
