body{color:#18212b;background:#fff}header,main,footer{max-width:1120px}.hero{gap:36px;padding:40px 0}.hero h1{letter-spacing:-.04em;text-transform:none;font-size:44px;line-height:1.08}.hero .intro{max-width:480px;font-size:16px}.art{box-shadow:none;border-radius:16px;max-height:250px}.art img{aspect-ratio:16/9}.hero-brand{background:#f7faf8;border:1px solid #e5ece7}.hero-brand .hero-image{aspect-ratio:16/9;background:0 0;justify-content:center;align-items:center;padding:28px;display:flex}.hero-brand .hero-image picture{width:100%;display:block}.hero-brand .hero-image img{aspect-ratio:auto;object-fit:contain;width:100%;max-width:100%;height:auto;position:static}#events .heading h2{letter-spacing:-.035em;font-size:28px}.games{max-width:none;margin:8px 0 28px;display:block}.game-group{margin:0 0 18px;padding:0}.game-group-title{letter-spacing:-.025em;margin:12px 0 4px;font-size:19px;font-weight:650}.game{min-height:0;box-shadow:none;background:#fff;border:0;border-bottom:1px solid #e9eceb;border-radius:0;grid-template-columns:92px minmax(0,1fr) 100px;align-items:center;gap:16px;margin:0;padding:16px 0;display:grid;overflow:visible}.game:hover{box-shadow:none;background:#fafcfb;border-color:#dfe8e2}.game:focus{outline:none}.game:focus-visible{outline:none;box-shadow:inset 0 0 0 2px #18864b;border-radius:8px!important}.game-thumb{object-fit:cover;border-radius:13px;width:92px;height:100px}.game-info{flex-direction:column;align-items:flex-start;gap:3px;min-width:0;padding:0;display:flex}.game-info h3{letter-spacing:-.022em;font-size:17px;font-weight:650;line-height:1.3}.game-info .game-location{display:none}.game-info .game-address{color:#6c757f;white-space:nowrap;text-overflow:ellipsis;width:100%;margin:0;font-size:13px;line-height:1.4;overflow:hidden;display:block!important}.game-price{margin:0;font-size:14px;font-weight:600;line-height:1.5}.game-price del{color:#8c959d;font-size:12px;font-weight:400}.game-host{color:#75808a;align-items:center;gap:4px;margin:0;font-size:12px;line-height:1.3;display:flex}.game-tags{gap:5px;margin:3px 0 0;display:flex}.game-tags span{color:#45514a;background:#f6f8f7;border:1px solid #edf0ee;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:500;line-height:1.5}.capacity-progress{gap:3px;width:min(210px,100%);margin:5px 0 0;display:flex}.capacity-progress span{border-radius:2px;flex:1;height:4px}.capacity-progress span.host{background:var(--green)}.game-side{flex-direction:column;justify-content:flex-start;align-self:start;align-items:flex-end;gap:8px;margin:0;padding:0;display:flex}.game-side time{white-space:nowrap;font-size:15px;font-weight:650;line-height:1.4}.game-side .spots{color:#45514a;white-space:nowrap;font-variant-numeric:tabular-nums;background:#f7f8f7;border:1px solid #e9eceb;border-radius:999px;justify-content:center;align-items:center;gap:5px;width:max-content;min-width:62px;min-height:27px;margin:0;padding:4px 9px;font-size:12px;font-weight:550;line-height:1;display:inline-flex}.spots svg{flex-shrink:0;width:14px;height:14px}.game-side .status-badge{letter-spacing:0;text-transform:none;min-height:21px;margin:0;padding:2px 7px;font-size:10px}.game-side .status-badge.open{display:none}.next-label{color:var(--green);letter-spacing:0;vertical-align:middle;background:#eaf6ee;border-radius:5px;margin-left:9px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-block}.game:first-of-type,.game:last-child,.game:only-of-type{border:0;border-bottom:1px solid #e9eceb;border-radius:0}.game-info .game-price{font-size:14px;font-weight:550;line-height:1.4}.game-info .capacity-progress{max-width:190px;margin:4px 0 0;display:flex}.game-info .capacity-progress span{height:3px}#event-dialog[open]{flex-direction:column;display:flex;overflow:hidden}#event-dialog .dialog-inner{overscroll-behavior:contain;min-height:0;overflow-y:auto}#event-dialog>.join-options{padding:14px 24px calc(14px + env(safe-area-inset-bottom));flex-shrink:0;margin:0;position:static}.preview{display:none}body:not(:has(.admin-shell)) header .brand{white-space:nowrap;font-size:18px}.filters{background:0 0;border:0;flex-wrap:wrap;gap:7px;margin:18px 0 12px;padding:0;display:flex}.filter{min-height:36px;box-shadow:none;background:#f8f9f8;border:1px solid #e5e9e6;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500}.filter[aria-pressed=true]{color:var(--green);background:#eaf6ee;border-color:#bcddc8}.dialog{overscroll-behavior:contain;scroll-behavior:auto;border:1px solid #e3e8e5;border-radius:20px;width:min(620px,100% - 32px);height:fit-content;max-height:calc(100dvh - 48px);margin:auto;box-shadow:0 24px 90px #10231d30}.dialog::backdrop{backdrop-filter:blur(5px);background:#13201c66}.dialog-inner{padding:24px}.dialog .dialog-head{align-items:flex-start;gap:16px;margin:0}.dialog .dialog-head>div{flex:1;min-width:0}#booking-game{color:#6f7b73;margin:10px 0 0;font-size:14px;line-height:1.5}#booking-dialog .privacy-note{margin:12px 0;font-size:12px;line-height:1.55}#booking-dialog .form-error:empty{display:none}#checkout-button{width:100%;min-height:44px;margin-top:16px}.dialog h2{letter-spacing:-.035em;margin:4px 0;font-size:26px;font-weight:650;line-height:1.17}.dialog .dialog-close{background:#f0f3f1;border-radius:50%;flex:0 0 32px;width:32px;height:32px;min-height:32px;font-size:23px;font-weight:400}.dialog .eyebrow{letter-spacing:.08em;font-size:10px}.detail-copy{color:#707b75;margin:8px 0;font-size:14px;line-height:1.6}#detail-subtitle{color:#273a30;margin:14px 0 4px;font-weight:550}.event-links{flex-wrap:wrap;gap:8px;margin:16px 0 20px;display:flex}.event-links #map-link,.event-links #calendar-link,.event-links #share-link{color:#336648;background:#f8faf9;border:1px solid #e2e8e4;border-radius:8px;justify-content:center;align-items:center;min-height:32px;padding:7px 11px;font-size:12px;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.detail-meta{border-block:1px solid #e8ece9;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:18px 0;padding:14px 0}.detail-meta div{background:0 0;border:0;border-radius:0;padding:0 12px}.detail-meta div:first-child{padding-left:0}.detail-meta div+div{border-left:1px solid #e8ece9}.detail-meta span{font-size:11px}.detail-meta strong{margin-top:5px;font-size:13px;font-weight:600;line-height:1.5}.game-rules{background:0 0;border:0;margin:20px 0;padding:0}.game-rules h3,.roster h3{letter-spacing:-.02em;font-size:15px;font-weight:600}.game-rules ul{padding-left:18px;font-size:13px;line-height:1.6}.rosters{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.roster,.roster.team-b{background:#fbfcfb;border:1px solid #e8ece9;border-radius:12px;min-height:0;padding:14px}.roster ol{font-size:12px;line-height:1.5}.host-card{background:#f3f8f4;border:1px solid #e4eee7;border-radius:10px;padding:12px 14px}.host-card span{letter-spacing:.07em;color:var(--muted);font-size:9px;font-weight:600}.host-card strong{font-size:13px;font-weight:550}.join-options{padding:16px 24px calc(16px + env(safe-area-inset-bottom));box-shadow:none;background:#fff;border-top:1px solid #e6ece8;grid-template-columns:1fr 1fr;gap:10px;margin:20px -24px -24px;position:sticky;bottom:-24px}.join-options .register,.join-options .secondary{letter-spacing:0;text-transform:none;border-radius:10px;min-height:44px;font-size:13px;font-weight:600}.dialog .field{margin-top:16px}.dialog .field input,.dialog .field select{border:1px solid #dfe6e1;border-radius:10px;font-size:16px}.dialog .register{letter-spacing:0;text-transform:none;border-radius:10px}@media (width<=700px){header,main,footer{padding-left:16px;padding-right:16px}header{flex-direction:row;align-items:center;gap:12px;padding-top:14px;padding-bottom:14px}header nav{gap:12px;font-size:12px}.brand{font-size:16px}.hero{padding:25px 0 24px;display:block}.hero h1{max-width:340px;margin:8px 0 10px;font-size:32px}.hero .art,.hero .button{display:none}#events .heading{flex-direction:row;align-items:center;display:flex}#events .heading h2{margin-top:4px;font-size:22px}#events .heading .tag{white-space:nowrap;min-height:26px;padding:4px 8px;font-size:11px}.filters{scrollbar-width:none;flex-wrap:nowrap;margin:14px -16px 8px;padding:0 16px;overflow:auto}.filter{flex:none;min-height:33px;padding:6px 11px;font-size:12px}.game-group{margin-bottom:12px}.game-group-title{margin:12px 0 0;font-size:17px}.game{grid-template-columns:70px minmax(0,1fr) 65px;gap:10px;min-height:0;padding:12px 0}.game-thumb{border-radius:12px;align-self:start;width:70px;height:86px;margin-top:1px}.game-info h3{font-size:14px;line-height:1.28}.game-info .game-address{font-size:11px}.game-price{font-size:12px;line-height:1.5}.game-host{font-size:10px;line-height:1.4}.game-tags{gap:4px;margin-top:2px}.game-tags span{padding:1px 7px;font-size:10px}.game-side{gap:7px}.game-side time{font-size:12px}.game-side .spots{gap:4px;min-width:56px;min-height:25px;padding:4px 7px;font-size:11px}.game-side .status-badge{white-space:normal;text-align:center;max-width:70px;font-size:9px}body:not(:has(.admin-shell)) header{flex-wrap:wrap;gap:12px;padding:12px 16px}body:not(:has(.admin-shell)) header .brand{font-size:16px}body:not(:has(.admin-shell)) header nav{flex-wrap:nowrap;gap:14px;width:auto;margin-left:auto;font-size:12px;display:flex}header nav a[href=\#events],header nav a[href=\#how],header nav a[href=\#contact]{display:none}body:not(:has(.admin-shell)) main{padding-inline:16px}.hero h1{font-size:28px;line-height:1.12}.hero h1 br{display:none}.hero h1 br:after{content:" "}.hero h1 em{display:block}.hero .eyebrow{font-size:9px}.hero .intro{font-size:13px;line-height:1.5}.hero{padding:22px 0}.game-info .game-price{font-size:12px}#event-dialog>.join-options{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.capacity-progress{gap:2px;margin-top:4px}.capacity-progress span{height:3px}.dialog{border-radius:18px;width:calc(100% - 16px);max-height:calc(100dvh - 24px)}.dialog-inner{padding:20px}.dialog h2{font-size:23px}.detail-meta{grid-template-columns:1fr 1fr;row-gap:15px}.detail-meta div{padding:0 12px}.detail-meta div:nth-child(odd){border-left:0;padding-left:0}.join-options{padding:12px 20px calc(12px + env(safe-area-inset-bottom));margin:20px -20px -20px;bottom:-20px}.join-options .register,.join-options .secondary{min-height:44px;font-size:12px}.event-links{gap:6px}.event-links #map-link,.event-links #calendar-link,.event-links #share-link{padding:7px 9px;font-size:11px}}#event-dialog .detail-venue-photo{object-fit:cover;border-radius:12px;flex-shrink:0;width:76px;height:88px}#event-dialog .dialog-head{align-items:center;gap:16px;padding-right:35px;position:relative}#event-dialog .dialog-close{position:absolute;top:0;right:0}#event-dialog h2{letter-spacing:-.025em;margin:0 0 9px;font-size:23px;line-height:1.2}#event-dialog .eyebrow{display:none}#event-dialog #detail-subtitle{color:#66717f;margin:0;font-size:13px;font-weight:500;line-height:1.6}#event-dialog .dialog-head+.detail-copy{margin-top:20px;font-size:13px}#event-dialog .event-links{margin:10px 0 20px}#event-dialog .event-links a{background:#fff;border-color:#e4e7eb;min-height:36px}#event-dialog .detail-meta{background:#f7f9f8;border:1px solid #edf0ee;border-radius:12px;margin:16px 0 20px;padding:16px 4px}#event-dialog .detail-meta div{padding:0 12px}#event-dialog .detail-meta strong{color:#26362d;font-size:13px;line-height:1.5}.roster-disclosure{border-block:1px solid #e8ece9;margin:20px 0;padding:16px 0}.roster-disclosure summary{cursor:pointer;justify-content:space-between;align-items:center;font-size:14px;font-weight:600;list-style:none;display:flex}.roster-disclosure summary::-webkit-details-marker{display:none}.roster-disclosure summary:after{content:"+";color:var(--muted);font-size:20px;font-weight:400}.roster-disclosure[open] summary:after{content:"−"}.roster-disclosure .rosters{margin:16px 0 0}#event-dialog .host-card{background:0 0;border:0;margin:18px 0 0;padding:0}#event-dialog .host-card span{letter-spacing:.03em;font-size:10px;font-weight:500}#event-dialog .host-card strong{margin-top:5px}#event-dialog .game-rules{margin:20px 0}#event-dialog .game-rules li{margin-top:6px}@media (width<=700px){#event-dialog .dialog-inner{padding:20px}#event-dialog h2{font-size:20px}#event-dialog .detail-venue-photo{width:64px;height:76px}#event-dialog .dialog-head{gap:12px;padding-right:30px}#event-dialog #detail-subtitle{font-size:12px}#event-dialog .detail-meta{grid-template-columns:1fr 1fr;gap:16px 0}#event-dialog .detail-meta div:nth-child(odd){border-left:0}#event-dialog>.join-options{padding-top:14px;padding-bottom:calc(14px + env(safe-area-inset-bottom))}}#account-dialog .account-status{background:0 0;border:0;padding:0}#account-dialog .account-identity{overflow-wrap:anywhere;background:#f7f8fa;border-radius:10px;padding:14px 16px;font-size:14px;font-weight:500;display:block}#account-dialog .account-status>p{color:#667085;margin:18px 0 8px;font-size:13px}#account-dialog .account-events{margin:0 0 24px;padding:0;list-style:none}#account-dialog .account-events li{border-bottom:1px solid #eaecf0;flex-direction:column;align-items:stretch;gap:8px;padding:20px 0;font-size:14px;line-height:1.55;display:flex}#account-dialog .account-events strong{letter-spacing:-.25px;font-size:16px;font-weight:600}#account-dialog .account-events li>span{color:#667085}#account-dialog .account-booking-actions{flex-wrap:wrap;gap:8px;margin-top:5px;display:flex}#account-dialog .account-booking-actions>*{border:1px solid #dfe4e8;border-radius:9px;justify-content:center;align-items:center;min-height:40px;margin:0;padding:9px 14px;font-size:13px;font-weight:550;text-decoration:none;display:inline-flex}#account-dialog #logout-button{color:#667085;border-color:#dfe4e8;padding:9px 14px;font-size:13px}.host-card .detail-host-photo{float:left;object-fit:cover;border:1px solid #e2e5e9;border-radius:50%;width:56px;height:56px;margin-right:14px}.host-card:after{content:"";clear:both;display:block}.event-links #share-link{font:inherit;cursor:pointer;background:#fff;border:1px solid #e2e5e9;border-radius:9px;padding:10px 14px;font-size:13px;font-weight:500;text-decoration:none}.event-links input[readonly]{width:100%;font:inherit;border:1px solid #e2e5e9;border-radius:8px;padding:10px;font-size:13px}.hero{text-align:center;display:block}body .hero h1{width:100%;max-width:none}.hero-steps{width:100%;max-width:360px;color:var(--ink);grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px auto 0;padding:0;list-style:none;display:grid}.hero-steps li{text-align:center;flex-direction:column;align-items:center;gap:8px;min-width:0;display:flex}.hero-step-icon{width:26px;height:26px;color:var(--green);flex:none;display:block}.hero-step-label{font-size:var(--type-body);white-space:nowrap;font-weight:500;line-height:1.4}@media (width<=600px){.hero-steps{gap:12px;max-width:360px;margin-top:18px}.hero-step-label>span{display:block}}