:root{--bg:#f8f7f2;--paper:#fff;--ink:#24352c;--muted:#677269;--green:#416950;--green-dark:#264b38;--sage:#e9eee4;--stroke:#e5e6de;--sand:#eecfa9;--radius:24px;--container:1220px;--ease:cubic-bezier(.2,.8,.2,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.55}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ddac72;outline-offset:4px}
img,svg{max-width:100%;display:block}
[hidden]{display:none!important}
.container{max-width:calc(var(--container) + 96px);margin-inline:auto;padding-inline:48px}
.section{padding:112px 0}
.section-shell{position:relative}
.skip-link{position:absolute;z-index:99;left:12px;top:-100px;padding:12px 20px;background:#fff;border:2px solid #416950;border-radius:12px}
.skip-link:focus{top:10px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(248,247,242,.93);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-bottom:1px solid rgba(67,88,70,.11)}
.header-inner{min-height:91px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}
.brand-mark{height:38px;width:38px;display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:3px;padding:7px;background:var(--green);border-radius:12px;flex:none;transform:rotate(-5deg)}
.brand-mark span{background:#f8f4e9;border-radius:3px}.brand-mark span:nth-child(2),.brand-mark span:nth-child(3){background:#d5b88d}
.brand-name{font-size:22px;font-weight:820;letter-spacing:-1.25px}.brand-name>span:first-child{font-weight:540}.brand-period{color:#c18859}
.desktop-nav{display:flex;gap:37px;align-items:center;margin-left:auto;margin-right:25px}
.desktop-nav a{font-size:14px;font-weight:600;color:#536256;transition:color .2s}.desktop-nav a:hover{color:#163b27}
.button{border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:16px 24px;border:1px solid transparent;font-weight:690;font-size:14px;white-space:nowrap;transition:background .2s,transform .2s,border-color .2s;cursor:pointer}
.button:hover{transform:translateY(-2px)}.button-small{background:#e7ece3;color:#294c36;padding:12px 17px;font-size:13px}.button-small:hover{background:#d9e4d9}
.button-primary{background:var(--green);color:#fff;box-shadow:0 12px 24px rgba(50,94,68,.12)}.button-primary:hover{background:#2f563d}
.button-outline{border:1px solid #c8d6c8;color:#2f573e;padding:13px 20px}.button-outline:hover{background:#f0f5ee}
.menu-toggle{border:1px solid #d7dfd5;background:transparent;padding:10px 9px;border-radius:10px;display:none;cursor:pointer}
.menu-toggle span{width:20px;height:2px;background:#416950;display:block;margin:4px 0;border-radius:2px}
.mobile-nav{display:none}
/* Hero */
.hero{overflow:hidden;padding-top:49px}
.hero-grid{display:grid;grid-template-columns:1.03fr 1fr;align-items:center;gap:45px;min-height:628px}
.hero-copy{padding:22px 0 45px}
.eyebrow,.section-kicker,.small-label{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:2.3px;font-weight:780;color:var(--green)}
.eyebrow-dot{display:block;width:8px;height:8px;border-radius:50%;background:#d1a37e;box-shadow:0 0 0 5px #f3e9d8}
.hero h1{font-weight:790;font-size:clamp(57px,5.15vw,79px);letter-spacing:-4.9px;line-height:1.025;margin:31px 0 26px;max-width:650px}
.headline-accent{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-style:italic;color:var(--green);letter-spacing:-3.7px}
.hero-lead{font-size:18px;line-height:1.65;color:#5e6a61;max-width:475px;margin:0}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:36px}
.text-link{font-weight:710;font-size:14px;color:#365641;display:inline-flex;gap:12px;align-items:center;border-bottom:1px solid #a8bba7;padding:6px 0}
.text-link:hover{color:#111}
.hero-footnote{display:flex;gap:12px;align-items:center;font-size:12px;font-weight:600;color:#738075;margin-top:63px;max-width:385px}.footnote-icon{color:#af7c52;font-size:29px;line-height:1}
.hero-media{position:relative;align-self:center;min-width:0;margin-right:-24px}
.hero-media img{border-radius:35px;width:100%;height:auto;box-shadow:0 25px 62px #41695017}
.hero-sticker{position:absolute;right:-10px;bottom:42px;background:#f8f3e6;border:1px solid #efe6d3;box-shadow:0 18px 34px #233c2823;border-radius:18px;padding:16px 22px;display:flex;align-items:center;gap:15px;font-size:13px;font-weight:700;line-height:1.4;transform:rotate(6deg)}.sticker-sparkle{color:#b97e50;font-size:34px}
.hero-bottom{padding-block:26px 33px;display:flex;align-items:center;gap:26px;color:#758276;font-size:12px;font-weight:600;letter-spacing:.1px;border-top:1px solid #e3e5dc}.hero-divider{width:25px;height:1px;background:#bfc8bc}.hero-bottom-decoration{font-size:20px;color:#a4b7a7;margin-left:auto}
/* headings */
.section-heading{margin-bottom:42px}
.section-heading h2,.faq-grid h2,.closing-card h2{font-size:clamp(40px,4.15vw,61px);line-height:1.12;letter-spacing:-2.5px;font-weight:730;margin:19px 0 0}
.serif-accent{font-family:Georgia,"Times New Roman",serif;color:var(--green);font-weight:400;font-style:italic;letter-spacing:-1.7px}
.section-heading p,.faq-description{margin:0;color:#69766c;font-size:16px;line-height:1.75}
.two-col-heading{display:grid;grid-template-columns:1.25fr .7fr;align-items:end;gap:90px}
.two-col-heading h2{max-width:680px}.two-col-heading p{padding-bottom:6px}
/* About */
.about-section{background:#fff}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.value-card{background:var(--bg);padding:31px 32px 37px;border-radius:22px;min-height:281px;position:relative;overflow:hidden}
.value-number{position:absolute;top:27px;right:32px;font-size:12px;letter-spacing:1.5px;color:#b8c1b6;font-weight:690}
.value-icon{height:62px;width:62px;background:#e7eee5;border:1px solid #d8e5d7;border-radius:20px;display:grid;place-items:center;margin-bottom:31px}
.value-icon svg{width:38px;height:38px;fill:none;stroke:#477356;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.value-card h3{font-size:20px;line-height:1.25;letter-spacing:-.6px;margin:0 0 12px}.value-card p{margin:0;color:#6d7a70;font-size:14px;line-height:1.7;max-width:300px}
/* Meetings */
.meetups-section{background:#eef1ea}
.meetups-heading,.games-heading{display:flex;align-items:end;justify-content:space-between;gap:60px}
.meetups-heading p,.games-heading p{max-width:380px}
.empty-events{background:#fff;border-radius:28px;padding:45px 55px 42px;min-height:295px;display:flex;align-items:center;gap:54px;box-shadow:0 12px 45px rgba(44,68,44,.04)}
.empty-art{height:172px;width:190px;flex:none;background:#e8f0e5;border-radius:22px;position:relative;display:grid;place-items:center;overflow:hidden}
.empty-art::before{content:"";border:1px solid #d3ded3;border-radius:50%;width:230px;height:230px;position:absolute;left:-110px;top:-85px}
.empty-dice{font-size:93px;line-height:1;color:#60816a;transform:rotate(-13deg);text-shadow:9px 11px #e8d1ad}.empty-star{position:absolute;right:16px;top:5px;color:#dcad83;font-size:32px}
.small-label{font-size:10px;letter-spacing:2px}.empty-events h3{font-size:27px;letter-spacing:-1px;line-height:1.25;margin:12px 0}.empty-events p{font-size:15px;line-height:1.75;max-width:560px;color:#6a766c;margin:0 0 17px}
.inline-arrow{font-weight:710;font-size:13px;color:#416950;display:inline-flex;gap:10px;align-items:center}.inline-arrow:hover{text-decoration:underline}
.event-card{display:flex;align-items:center;gap:28px;background:#fff;border-radius:20px;padding:25px 30px;margin-top:14px}
.event-date{background:#e6eee4;border-radius:16px;color:#3b6548;min-width:86px;height:91px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.2}
.event-date strong{font-size:36px;letter-spacing:-2px}.event-date span{font-size:13px;text-transform:uppercase;font-weight:800}
.event-info{flex:1;min-width:0}.event-time{font-size:12px;font-weight:700;color:#56745d!important;margin:0!important}.event-info h3{margin:4px 0 8px;font-size:22px;letter-spacing:-.7px}.event-info .event-description{margin:0;color:#718075;font-size:14px}.event-details{font-size:12px;color:#4b7757;margin-bottom:0}
/* Games */
.games-section{background:#fff}
.filter-bar{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:32px}
.filter-button{border:1px solid #dce4d9;background:transparent;color:#677769;border-radius:50px;padding:10px 20px;font-size:13px;font-weight:660;cursor:pointer;transition:background .18s,color .18s}
.filter-button:hover{background:#edf2eb}.filter-button.active{background:var(--green);border-color:var(--green);color:#fff}
.games-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.game-card{overflow:hidden;border:1px solid #eaece6;border-radius:21px;background:#fff;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}.game-card:hover{transform:translateY(-5px);box-shadow:0 17px 35px #243c2712}
.game-visual{height:219px;position:relative;overflow:hidden;display:grid;place-items:center;isolation:isolate}
.game-visual::after{content:"";inset:0;position:absolute;z-index:-1;opacity:.28;background:radial-gradient(circle at 70% 10%,white,transparent 45%)}
.visual-marker{position:absolute;left:20px;top:19px;font-weight:760;font-size:9px;letter-spacing:1.5px;color:#274733a8}
.game-content{padding:22px 23px 27px}.game-meta{color:#758477;font-size:12px;font-weight:650}.game-meta span{margin:0 8px;color:#aab4a8}.game-content h3{font-size:21px;letter-spacing:-.7px;margin:7px 0}.game-content p{font-size:13px;line-height:1.65;color:#768276;margin:0}
.game-visual-carca{background:#e8e7d5}.tile-stack{width:125px;height:125px;position:relative;transform:rotate(-12deg)}.tile-stack span{position:absolute;inset:0;border:9px solid #fcf4d9;border-radius:13px;background:linear-gradient(155deg,#9db491 0 43%,#f1c997 43% 62%,#acc4a2 62%);box-shadow:0 12px 18px #566b5342}.tile-stack span:nth-child(1){transform:translate(43px,1px) rotate(22deg)}.tile-stack span:nth-child(2){transform:translate(-17px,18px) rotate(-12deg)}.tile-stack span:nth-child(3){transform:translate(6px,0) rotate(5deg)}
.game-visual-dixit{background:#eeded7}.dixit-sun{position:absolute;width:160px;height:160px;border-radius:50%;background:#f8ecca;transform:translate(-45px,-15px)}.dixit-card{width:115px;height:158px;background:linear-gradient(140deg,#b1b7c9,#697b94);border:8px solid #fff6e9;border-radius:13px;box-shadow:12px 16px 20px #6f79822c;transform:rotate(13deg) translate(30px,3px);display:grid;place-items:center}.dixit-card span{font-size:76px;color:#fce6b4}
.game-visual-codenames{background:#e1e7dc}.codename-grid{width:172px;display:grid;grid-template-columns:repeat(3,1fr);gap:7px;transform:rotate(-8deg)}.codename-grid i{height:44px;background:#fbf8e9;border-radius:6px;box-shadow:0 6px 12px #59695526}.codename-grid i:nth-child(2),.codename-grid i:nth-child(6){background:#b9cdd5}.codename-grid i:nth-child(5),.codename-grid i:nth-child(8){background:#d89b85}
.game-visual-azul{background:#d6e8e6}.azul-board{background:#edf7ed;display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:10px;transform:rotate(9deg);border-radius:10px;box-shadow:10px 14px 24px #2e68752b}.azul-board i{width:42px;height:42px;border-radius:5px;background:#55899c;box-shadow:inset 4px 4px #fff3,inset -4px -4px #294a4c22}.azul-board i:nth-child(2n){background:#f2b66c}.azul-board i:nth-child(5){background:#f3eee2}.azul-board i:nth-child(7){background:#90b7a1}
.game-visual-ticket{background:#e9e1d4}.ticket-path{width:230px;height:140px;border-radius:80px;border:5px dashed #aec0a8;transform:rotate(-15deg);position:relative}.ticket-path span{width:35px;height:21px;background:#c07962;border-radius:8px;position:absolute;box-shadow:2px 5px #93594333}.ticket-path span:nth-child(1){top:-15px;left:15px}.ticket-path span:nth-child(2){top:-12px;right:30px}.ticket-path span:nth-child(3){right:-25px;top:60px}.ticket-path span:nth-child(4){bottom:-10px;right:80px}.ticket-path span:nth-child(5){bottom:10px;left:-23px}
.game-visual-hanabi{background:#dce3eb}.hanabi-sparks{position:relative;width:180px;height:130px}.hanabi-sparks i{font-style:normal;font-size:92px;position:absolute;color:#cb7f6a;filter:drop-shadow(9px 10px 5px #5a779225)}.hanabi-sparks i:nth-child(1){left:1px;top:-10px}.hanabi-sparks i:nth-child(2){right:0;top:0;color:#efd195}.hanabi-sparks i:nth-child(3){left:70px;top:54px;color:#7fa6a4;font-size:65px}
.section-note{margin:26px 0 0;color:#8c988d;font-size:12px}
/* How */
.how-section{background:#fff;padding-top:30px;padding-bottom:112px}
.how-panel{position:relative;padding:76px 80px 67px;border-radius:30px;background:#284a37;color:#f8f7f0;overflow:hidden;isolation:isolate}
.section-kicker.on-dark{color:#bcd5bc}.how-heading{position:relative;z-index:1;max-width:740px}.how-heading h2{font-size:clamp(40px,4.6vw,64px);line-height:1.11;letter-spacing:-2.3px;margin:23px 0 23px}.how-heading h2 em{font-family:Georgia,serif;font-weight:400;color:#e0caa4}.how-heading p{font-size:16px;color:#cbdbcc;line-height:1.7;max-width:575px;margin:0}
.steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:82px}.step{border-top:1px solid #8aad9070;padding-top:21px}.step-count{color:#e9cfaa;font-size:14px;font-weight:690}.step h3{font-size:19px;letter-spacing:-.5px;margin:18px 0 8px}.step p{font-size:14px;line-height:1.75;color:#bdcdbd;margin:0;max-width:250px}
.how-decoration{position:absolute;top:-130px;right:-65px;height:470px;width:470px;z-index:0;opacity:.25}.how-ring{position:absolute;display:block;border:1px solid #d6dfcd;border-radius:50%}.ring-one{inset:0}.ring-two{inset:50px}.ring-three{inset:110px;background:#a7c3a712}
/* FAQ */
.faq-section{background:var(--bg);padding-block:112px}.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:96px}.faq-description{margin-top:26px;max-width:375px}
.faq-list{border-top:1px solid #dce1d7}.faq-list details{border-bottom:1px solid #dce1d7;padding:19px 0}.faq-list summary{font-size:17px;font-weight:650;letter-spacing:-.3px;list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-plus{border:1px solid #ced9ce;width:33px;height:33px;border-radius:50%;display:grid;place-items:center;flex:none;transition:transform .25s;background:#fff}.faq-plus::before{content:"+";color:#446b55;font-size:23px;font-weight:350;line-height:1}.faq-list details[open] .faq-plus{transform:rotate(45deg)}.faq-list details p{margin:3px 65px 8px 0;color:#69786b;font-size:14px;line-height:1.8}
/* closing */
.closing-section{padding:20px 0 100px}.closing-card{background:#ecede4;border-radius:29px;min-height:330px;padding:62px 74px;display:flex;align-items:center;justify-content:space-between;gap:30px;overflow:hidden}.closing-card>div:first-child{position:relative;z-index:1;max-width:670px}.closing-card h2{max-width:630px}.closing-card p{font-size:15px;line-height:1.7;color:#6c796b;max-width:510px}.contact-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.closing-art{height:230px;width:300px;position:relative;flex:none}.closing-disc{display:block;position:absolute;width:132px;height:132px;border-radius:50%;background:#a3bca1;box-shadow:7px 12px #a7b8a235}.closing-disc.one{left:12px;top:10px}.closing-disc.two{left:132px;top:25px;background:#d7aa83}.closing-disc.three{left:79px;top:97px;background:#729b80}.closing-mini-card{position:absolute;top:72px;left:112px;width:79px;height:111px;background:#fff6e8;border-radius:13px;box-shadow:3px 12px 25px #5c68552b;transform:rotate(12deg);color:#d28f7d;display:grid;place-items:center;font-size:51px}
/* footer */
.site-footer{border-top:1px solid #e0e5dc;background:#fff}.footer-inner{min-height:116px;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-inner p,.footer-inner>span{font-size:13px;color:#839084}.brand-footer .brand-name{font-size:19px}.brand-footer .brand-mark{width:31px;height:31px;border-radius:9px;padding:6px}
/* responsive */
@media(max-width:1050px){.container{padding-inline:34px}.desktop-nav{gap:22px;margin-right:7px}.header-cta{display:none}.hero-grid{gap:25px;min-height:540px}.hero h1{font-size:clamp(52px,5.8vw,67px)}.hero-media{margin-right:0}.two-col-heading{gap:50px}.faq-grid{gap:46px}.how-panel{padding:62px}.closing-card{padding:50px}}
@media(max-width:760px){html{scroll-padding-top:73px}.container{padding-inline:22px}.section{padding-block:77px}.header-inner{min-height:70px}.brand-name{font-size:20px}.brand-mark{height:34px;width:34px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:block}.mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:8px 22px 18px;background:#f8f7f2;border-top:1px solid #e3e7df;box-shadow:0 25px 30px #31433315}.mobile-nav a{padding:13px 3px;font-weight:650;border-bottom:1px solid #e9ede6}.hero{padding-top:34px}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:24px;min-height:0}.hero-copy{padding:13px 0 0}.eyebrow{font-size:10px;letter-spacing:1.6px}.hero h1{font-size:clamp(48px,9.5vw,70px);letter-spacing:-3px;margin:23px 0}.headline-accent{letter-spacing:-2.7px}.hero-lead{font-size:16px;max-width:600px}.hero-actions{margin-top:25px}.hero-footnote{margin-top:29px;font-size:11px}.hero-media{margin-right:0}.hero-media img{max-height:470px;object-fit:cover;border-radius:25px}.hero-sticker{right:4px;bottom:18px;padding:10px 14px;font-size:11px}.sticker-sparkle{font-size:24px}.hero-bottom{padding-block:20px;gap:13px;font-size:10px}.hero-bottom span:nth-child(3),.hero-bottom .hero-divider{display:none}.section-heading{margin-bottom:30px}.section-heading h2,.faq-grid h2,.closing-card h2{font-size:clamp(37px,8vw,50px);letter-spacing:-1.8px}.two-col-heading,.faq-grid{grid-template-columns:1fr;gap:22px}.section-heading p{font-size:14px}.values-grid{grid-template-columns:1fr;gap:12px}.value-card{min-height:0;padding:24px}.value-icon{height:53px;width:53px;margin-bottom:19px}.value-card h3{font-size:19px}.meetups-heading,.games-heading{align-items:start;flex-direction:column;gap:15px}.empty-events{gap:23px;flex-direction:column;align-items:flex-start;padding:25px}.empty-art{width:100%;height:145px}.empty-events h3{font-size:25px}.event-card{align-items:flex-start;gap:17px;flex-wrap:wrap;padding:20px}.event-date{min-width:74px;width:74px;height:81px}.event-date strong{font-size:30px}.event-info{min-width:185px}.event-card .button{width:100%}.games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.game-visual{height:178px}.game-content{padding:17px}.game-content h3{font-size:18px}.game-meta{font-size:11px}.filter-bar{flex-wrap:nowrap;overflow-x:auto;margin-inline:-22px;padding-inline:22px;padding-bottom:8px;scrollbar-width:none}.filter-bar::-webkit-scrollbar{display:none}.filter-button{flex:none;padding:9px 17px}.how-section{padding-top:0}.how-panel{padding:43px 26px 38px;border-radius:25px}.how-heading h2{font-size:43px}.steps{grid-template-columns:1fr;gap:23px;margin-top:42px}.step{padding-top:14px}.step h3{margin:9px 0 4px}.how-decoration{right:-230px}.faq-list summary{font-size:15px}.closing-section{padding:0 0 70px}.closing-card{padding:35px 25px 25px;flex-direction:column;align-items:flex-start}.closing-art{align-self:center;transform:scale(.79);transform-origin:center;height:175px;margin-top:-25px}.footer-inner{padding-block:25px;min-height:0;flex-wrap:wrap}.footer-inner p{display:none}.footer-inner>span{margin-left:auto}}
@media(max-width:470px){.hero h1{font-size:47px}.hero-actions{gap:17px;align-items:flex-start;flex-direction:column}.hero-media img{min-height:285px}.games-grid{grid-template-columns:1fr}.game-visual{height:205px}.game-card{display:grid;grid-template-columns:145px 1fr}.game-visual{height:100%;min-height:170px}.game-content{padding:18px 15px}.game-meta{font-size:10px}.game-meta span{margin:0 3px}.game-content h3{font-size:18px}.game-content p{font-size:12px}.tile-stack,.dixit-card,.codename-grid,.azul-board,.ticket-path,.hanabi-sparks{transform:scale(.65) rotate(-8deg)}.hero-sticker{display:none}.footer-inner{display:block}.footer-inner>span{display:block;margin-top:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* V2 — youth-forward editorial direction: ink / electric blue / lime / coral */
:root{--bg:#F7F5EF;--paper:#FFFFFF;--ink:#17191E;--muted:#656768;--green:#384CEA;--green-dark:#263AC8;--sage:#E8E8FF;--stroke:#DAD9D2;--sand:#FF9377;--blue:#384CEA;--lime:#DAFB66;--coral:#FF957B;--radius:22px;--container:1320px}
html{scroll-padding-top:87px}
body{font-family:Inter,"Arial",sans-serif;color:var(--ink);background:var(--bg);letter-spacing:-.1px}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.skip-link{border:2px solid var(--blue)}
.container{max-width:calc(var(--container) + 84px);padding-inline:42px}
.section{padding:110px 0}
.site-header{background:rgba(247,245,239,.96);border-color:#15151522;box-shadow:none}
.header-inner{min-height:80px}
.brand-mark{background:var(--blue);border-radius:12px;transform:rotate(-11deg)}
.brand-mark span{background:var(--lime);border-radius:50%}.brand-mark span:nth-child(2),.brand-mark span:nth-child(3){background:#fff}
.brand-name{font-weight:950;letter-spacing:-1.6px;font-size:24px}.brand-name>span:first-child{font-weight:950}.brand-period{color:var(--blue);margin-left:3px;display:inline-block;transform:rotate(12deg)}
.desktop-nav a{color:#25272b;font-size:13px;font-weight:750;letter-spacing:.01em}.desktop-nav a:hover{color:var(--blue)}
.button{border-radius:9px;padding:17px 25px;font-size:13px;font-weight:850;letter-spacing:.01em;transition:transform .24s,box-shadow .24s,background .24s}
.button:hover{transform:translateY(-3px)}
.button-small,.button-primary{background:var(--blue);color:#fff;box-shadow:4px 4px 0 #17191E}.button-small:hover,.button-primary:hover{background:#2638c8;box-shadow:6px 6px 0 #17191E}
.button-outline{border:2px solid var(--ink);color:var(--ink);background:#fff}.button-outline:hover{background:var(--lime)}
.menu-toggle{border-color:#24262b;border-radius:8px;background:var(--lime)}.menu-toggle span{background:var(--ink)}
.mobile-nav:not([hidden]){background:var(--bg)}
/* poster-like hero */
.hero{padding:0;overflow:clip;background:var(--bg)}
.hero-grid{grid-template-columns:1fr .93fr;min-height:670px;gap:54px;align-items:center;padding-top:45px;padding-bottom:66px}
.hero-copy{padding:18px 0 0;position:relative;z-index:2}
.eyebrow,.section-kicker,.small-label{color:var(--blue);font-size:11px;letter-spacing:1.8px;font-weight:900}
.eyebrow{background:#E7E9FE;border:1px solid #bec6fd;border-radius:5px;padding:9px 12px;white-space:nowrap}
.eyebrow-dot{background:var(--blue);box-shadow:0 0 0 4px #C8D0FF;width:7px;height:7px}
.hero h1{font-size:clamp(69px,6.2vw,116px);font-weight:950;letter-spacing:-7.6px;line-height:.91;margin:33px 0 28px;max-width:780px;text-wrap:balance}
.headline-accent{font-family:inherit;font-weight:950;font-style:normal;color:var(--blue);letter-spacing:inherit;position:relative}
.headline-accent:after{content:"";position:absolute;bottom:1px;left:0;width:103%;height:10px;background:var(--lime);z-index:-1;transform:rotate(-2deg)}
.hero-asterisk{color:var(--coral);font-size:.55em;display:inline-block;transform:rotate(-18deg) translate(8px,-13px)}
.hero-lead{font-size:18px;color:#51535b;max-width:450px;line-height:1.56}
.hero-actions{margin-top:32px;gap:28px}
.text-link{color:var(--ink);border-color:var(--ink);font-weight:850}
.hero-footnote{margin-top:51px;color:#555865;max-width:420px;font-size:12px}.footnote-icon{color:var(--blue);font-size:30px}
.hero-media{margin-right:0;transform:rotate(1.8deg);filter:drop-shadow(16px 19px 0 #18191c);transition:transform .45s cubic-bezier(.2,.9,.2,1)}
.hero-media:hover{transform:rotate(0) translateY(-5px)}
.hero-media img{border:3px solid #111;border-radius:27px;box-shadow:none}
.hero-sticker{right:-22px;bottom:35px;background:var(--lime);border:2px solid #17191d;color:#111;border-radius:12px;padding:17px 21px;transform:rotate(-9deg);font-size:12px;letter-spacing:.5px;box-shadow:6px 6px 0 #17191E}.sticker-sparkle{font-size:32px;color:var(--blue)}
.marquee-band{background:var(--lime);color:#151616;padding:16px 0;overflow:hidden;border-top:2px solid #17191c;border-bottom:2px solid #17191c;white-space:nowrap}
.marquee-track{display:inline-block;font-size:22px;line-height:1.1;font-weight:950;letter-spacing:-.55px;animation:marquee 24s linear infinite}
@keyframes marquee{to{transform:translateX(-50%)}}
/* Big type + bento */
.section-kicker{padding:0 0 7px;border-bottom:2px solid currentColor}
.section-heading h2,.faq-grid h2,.closing-card h2{font-size:clamp(46px,5vw,73px);line-height:1.04;letter-spacing:-3.5px;font-weight:950}
.serif-accent{font-family:inherit;font-weight:900;font-style:normal;color:var(--blue);letter-spacing:inherit}
.section-heading p,.faq-description{color:#5F616A;font-size:16px}
.about-section{background:#FFF;padding:116px 0 125px}
.two-col-heading{grid-template-columns:1.2fr .8fr;gap:70px}
.values-grid{grid-template-columns:1.16fr 1fr 1fr;gap:16px}
.value-card{border-radius:15px;padding:31px;min-height:310px;transition:transform .28s,box-shadow .28s;background:#E7E9FF;border:2px solid #1B1B1D}
.value-card:nth-child(1){background:var(--lime)}.value-card:nth-child(2){background:var(--blue);color:#fff}.value-card:nth-child(3){background:#FFD1C2}
.value-card:hover{transform:translateY(-6px) rotate(-1deg);box-shadow:8px 8px 0 #17191E}
.value-number{color:inherit;opacity:.55;font-size:13px}
.value-icon{background:#fff;border:2px solid #14171c;border-radius:12px;transform:rotate(-9deg)}.value-icon svg{stroke:var(--blue)}
.value-card:nth-child(2) .value-icon{background:var(--lime)}
.value-card h3{font-size:24px;letter-spacing:-1.2px;max-width:250px;font-weight:900}
.value-card p{color:#383944;font-weight:500}.value-card:nth-child(2) p{color:#EFF0FF}
/* meeting spotlight */
.meetups-section{background:#20212A;color:#fff;position:relative;overflow:hidden}
.meetups-section:before{content:"✳";position:absolute;font-size:470px;line-height:1;right:-60px;top:-220px;color:#ffffff08;font-weight:900}
.meetups-section .section-kicker{color:var(--lime)}.meetups-section .serif-accent{color:var(--lime)}
.meetups-section .section-heading p{color:#c7c7d0}
.empty-events{background:#F7F5EF;border:2px solid var(--ink);border-radius:16px;padding:34px;min-height:260px;box-shadow:9px 9px 0 var(--blue);color:var(--ink)}
.empty-art{border-radius:12px;background:var(--lime);border:2px solid var(--ink);width:190px;height:180px}
.empty-dice{color:var(--blue);text-shadow:5px 7px #1d1d1d22}
.empty-events h3{font-size:32px;font-weight:950;letter-spacing:-1.2px}
.empty-events p{color:#51535c}.empty-star{color:#17191e}.inline-arrow{color:var(--blue);font-weight:900}
.event-card{background:var(--bg);color:var(--ink);border:2px solid var(--ink);box-shadow:7px 7px 0 var(--blue);border-radius:15px}
.event-date{background:var(--lime);color:var(--ink);border:2px solid var(--ink);border-radius:10px}
.event-time{color:var(--blue)!important}
/* Games */
.games-section{background:#FCFBF8}
.filter-bar{gap:8px;margin-bottom:28px}
.filter-button{font-weight:800;border:1.5px solid #1B1D23;color:#1B1D23;background:#fff;border-radius:7px;padding:11px 16px}
.filter-button:hover{background:#EDEEFF}.filter-button.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:3px 3px 0 #17191E}
.games-grid{gap:18px}
.game-card{border:2px solid #212328;border-radius:13px;box-shadow:5px 5px 0 #E5E2D9;transition:transform .3s,box-shadow .3s}
.game-card:hover{transform:translateY(-7px) rotate(-1deg);box-shadow:9px 10px 0 var(--lime)}
.game-visual{height:231px;border-bottom:2px solid #212328}
.visual-marker{font-size:10px;letter-spacing:1px;color:#161820;background:#ffffffd9;border:1px solid #131313;border-radius:5px;padding:5px 8px;top:15px;left:15px}
.game-content{padding:23px}.game-content h3{font-size:25px;letter-spacing:-1.1px;font-weight:900}.game-content p{color:#595D66}
.game-meta{font-size:11px;color:#646873}
.game-visual-carca{background:#D9FB65}.game-visual-dixit{background:#FFC5AE}.game-visual-codenames{background:#CFD0FF}.game-visual-azul{background:#9DE2E8}.game-visual-ticket{background:#FBE08B}.game-visual-hanabi{background:#C5D0FF}
.section-note{color:#74757a}
/* How */
.how-section{background:#FCFBF8;padding-top:36px;padding-bottom:96px}
.how-panel{background:var(--blue);border-radius:17px;border:2px solid var(--ink);padding:70px 70px 65px;box-shadow:10px 10px 0 #181A20}
.section-kicker.on-dark{color:var(--lime)}
.how-heading h2{font-size:clamp(51px,5vw,73px);line-height:1.04;font-weight:950;letter-spacing:-3.8px}
.how-heading h2 em{font-family:inherit;font-style:normal;font-weight:900;color:var(--lime)}
.how-heading p{color:#E6E9FF}.step{border-color:#ffffff5c}.step-count{color:var(--lime);font-weight:950}.step h3{font-size:22px;font-weight:900}.step p{color:#E1E5FF}
.how-decoration{opacity:.25}.how-ring{border:2px dashed #fff}
/* FAQ */
.faq-section{background:#F2F0E9}
.faq-list{border-color:#aaa9a2}.faq-list details{border-color:#aaa9a2;padding-block:21px}
.faq-list summary{font-size:18px;font-weight:850}.faq-plus{background:var(--lime);border:2px solid #1E2023;border-radius:8px}.faq-plus::before{color:#1d1d22}
.faq-list details p{color:#50525a}
/* CTA */
.closing-section{background:#F2F0E9;padding-bottom:100px}
.closing-card{background:var(--lime);border:2px solid #1d1d1d;border-radius:16px;padding:60px 70px;box-shadow:10px 10px 0 #191B20}
.closing-card .serif-accent{color:var(--blue)}.closing-card p{color:#4c4f47}
.closing-disc.one{background:var(--blue)}.closing-disc.two{background:var(--coral)}.closing-disc.three{background:#212124}
.closing-mini-card{color:var(--blue);background:#fff;border:2px solid #111}
.site-footer{background:#161922;border:0;color:#fff}
.footer-inner p,.footer-inner>span{color:#BCC0CE}
.brand-footer .brand-mark{background:var(--lime)}.brand-footer .brand-mark span{background:var(--blue)}
@media(max-width:1150px){.hero h1{font-size:clamp(66px,6vw,94px);letter-spacing:-5.2px}.hero-grid{gap:35px}.hero-sticker{right:-10px}.section-heading h2{font-size:clamp(46px,5vw,65px)}}
@media(max-width:760px){.container{padding-inline:22px}.header-inner{min-height:70px}.hero-grid{padding-top:38px;padding-bottom:45px;gap:34px}.hero-copy{padding:0}.hero h1{font-size:clamp(59px,12vw,89px);letter-spacing:-4px;margin:24px 0}.hero-lead{font-size:16px;max-width:530px}.hero-actions{margin-top:28px}.hero-footnote{margin-top:31px}.hero-media{margin:0 11px 10px 0;filter:drop-shadow(9px 10px 0 #16191D)}.hero-media img{border-radius:20px;max-height:520px}.hero-sticker{display:flex;right:-12px;bottom:18px;font-size:10px;padding:9px 11px;gap:7px}.sticker-sparkle{font-size:22px}.marquee-band{padding:11px 0}.marquee-track{font-size:17px}.about-section{padding:80px 0}.section-heading h2,.faq-grid h2,.closing-card h2{font-size:clamp(43px,8vw,62px);letter-spacing:-2.7px}.values-grid{grid-template-columns:1fr}.value-card{min-height:220px;padding:27px}.value-icon{margin-bottom:22px}.meetups-section:before{font-size:230px;top:-100px}.empty-events{padding:24px;gap:24px}.empty-art{height:170px;width:100%}.empty-events h3{font-size:28px}.games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-visual{height:188px}.game-content{padding:16px}.game-content h3{font-size:21px}.filter-bar{padding-top:4px;padding-bottom:12px}.how-panel{padding:44px 30px 38px;box-shadow:7px 7px 0 #191A20}.how-heading h2{font-size:clamp(43px,8vw,57px)}.closing-card{padding:37px 27px 25px;box-shadow:7px 7px 0 #191B20}}
@media(max-width:470px){.hero h1{font-size:clamp(57px,13.1vw,67px);letter-spacing:-3.5px}.hero-asterisk{transform:rotate(-18deg) translate(3px,-6px)}.hero-actions{gap:19px}.hero-media img{min-height:260px}.hero-sticker{right:-8px;bottom:12px}.games-grid{grid-template-columns:1fr}.game-card{display:grid;grid-template-columns:132px minmax(0,1fr)}.game-visual{height:100%;min-height:180px}.game-content{padding:15px}.game-meta{font-size:10px}.game-content h3{font-size:19px}.game-content p{font-size:12px}.visual-marker{font-size:8px;left:6px;top:8px;padding:4px}.hero-footnote{align-items:flex-start}.value-card h3{font-size:23px}.faq-list summary{font-size:16px}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}}
