.calendar-page{background:var(--site-charcoal);color:var(--site-off-white)}.calendar-shell{max-width:1280px;margin:0 auto;padding:0 32px}.calendar-opening{padding:80px 0 96px}.calendar-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:56px;margin-bottom:40px;display:grid}.calendar-page h1{max-width:620px;margin:0 0 24px;line-height:1.04}.calendar-page h2{line-height:1.12}.calendar-label{color:var(--site-accent);text-transform:uppercase;letter-spacing:3px;align-items:center;gap:8px;margin:0 0 24px;font-size:13px;display:flex}.calendar-intro{color:var(--site-muted);max-width:600px;font-size:18px;line-height:1.65}.calendar-stats{border:1px solid var(--site-rule);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.calendar-stats>div{border-right:1px solid var(--site-rule);min-width:0;padding:18px 16px}.calendar-stats>div:last-child{border-right:0}.calendar-stats .count-up{font-size:40px;line-height:1.2}.calendar-stats .is-next .count-up{color:var(--site-accent)}.calendar-stats p{color:var(--site-muted);margin-top:4px;font-size:13px;line-height:1.35}.calendar-next{border:1px solid var(--site-accent);grid-template-columns:minmax(0,58fr) minmax(0,42fr);display:grid}.calendar-next-photo{background:var(--site-panel);min-height:430px;position:relative;overflow:hidden}.calendar-photo-wrap{position:absolute;inset:0}.calendar-photo{object-fit:cover;object-position:center 25%;filter:grayscale();width:100%;height:100%;transition:filter .5s;animation:18s ease-in-out infinite alternate calendar-ken-burns}.calendar-next-photo:hover .calendar-photo{filter:grayscale(0)}.calendar-photo-caption{background:var(--site-charcoal);padding:5px 8px;font-size:13px;position:absolute;bottom:12px;left:12px}.calendar-next-copy{align-self:center;min-width:0;padding:32px}.calendar-next-copy h2{margin:0 0 16px;font-size:44px}.calendar-next-copy .calendar-label{margin-bottom:16px}.calendar-next-date{color:var(--site-muted);margin-bottom:18px;font-size:16px}.calendar-clock{background:var(--site-panel);grid-template-columns:repeat(4,minmax(0,1fr));padding:12px 0;display:grid}.calendar-clock>div{text-align:center}.calendar-clock span{font-variant-numeric:tabular-nums;font-size:32px;line-height:1.2;display:block}.calendar-clock>div:first-child span{color:var(--site-accent)}.calendar-clock small{color:var(--site-muted);font-size:13px}.calendar-confirmed{flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0;display:flex}.calendar-confirmed p{color:var(--site-muted);font-size:14px}.calendar-faces{padding-left:8px;display:flex}.calendar-page .calendar-face{border:2px solid var(--site-charcoal);background:var(--site-accent);flex:none;width:40px;height:40px;margin-left:-8px;overflow:hidden;border-radius:50%!important}.calendar-face img{object-fit:cover;object-position:center 25%;filter:grayscale();mix-blend-mode:multiply;width:100%;height:100%}.calendar-face:hover img{filter:none;mix-blend-mode:normal}.calendar-actions{flex-wrap:wrap;gap:10px;display:flex}.calendar-pulse{background:var(--site-accent);flex:none;width:8px;height:8px;animation:2.4s ease-in-out infinite calendar-pulse;border-radius:50%!important}.calendar-map-band{background:var(--site-panel);padding:96px 0}.calendar-map-header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px;display:flex}.calendar-map-header h2{margin:0}.calendar-label-muted{color:var(--site-muted)}.calendar-map-legend{color:var(--site-muted);flex:none;gap:18px;font-size:13px;display:flex}.calendar-map-legend span{align-items:center;gap:7px;display:flex}.calendar-map-legend i{background:var(--site-accent);width:8px;height:8px;border-radius:50%!important}.calendar-map-legend span:last-child i{background:var(--site-map-past)}.calendar-map-canvas{aspect-ratio:2;position:relative}.calendar-map-canvas svg{width:100%;height:100%;display:block;overflow:visible}.calendar-map-land{fill:var(--site-map-dot)}.calendar-map-dot{fill:var(--site-map-past)}.calendar-map-marker.is-upcoming .calendar-map-dot{fill:var(--site-accent)}.calendar-map-hit{fill:#0000}.calendar-map-ring{fill:none;stroke:var(--site-accent);stroke-width:1.5px;transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite calendar-map-pulse}.calendar-map-marker:hover .calendar-map-dot,.calendar-map-marker:focus .calendar-map-dot{stroke:var(--site-off-white);stroke-width:2px}.calendar-map-label rect{fill:var(--site-charcoal);stroke:var(--site-accent);stroke-width:1px}.calendar-map-label text{fill:var(--site-off-white);font-size:11px}.calendar-map-leader{stroke:var(--site-accent);stroke-width:.6px;fill:none}.calendar-map-tooltip{z-index:5;background:var(--site-charcoal);border:1px solid var(--site-accent);border-radius:3px;min-width:190px;max-width:90%;padding:10px 14px;font-size:16px;position:absolute;transform:translate(-50%,-110%)}.calendar-map-tooltip span{color:var(--site-muted);margin-top:4px;font-size:13px;display:block}.calendar-map-tooltip .calendar-tooltip-link{color:var(--site-accent)}.calendar-room-card{border:1px solid var(--site-rule);transition:transform .25s,border-color .25s}.calendar-room-card:hover{border-color:var(--site-accent);transform:translateY(-4px)}.calendar-month-band,.calendar-seats-band{border-bottom:1px solid var(--site-rule);padding:96px 0}.calendar-schedule-header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px;display:flex}.calendar-schedule-header h2,.calendar-seats-band h2{margin:0}.calendar-feed-actions{align-items:center;gap:8px;display:flex}.calendar-month-strip{overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--site-rule) transparent;cursor:grab;-webkit-user-select:none;user-select:none;min-width:0;max-width:100%;padding-bottom:12px;display:flex;position:relative;overflow-x:auto}.calendar-month-strip:active{cursor:grabbing}.calendar-month-strip:after{content:"";flex:0 0 calc(100% - 130px)}.calendar-month{border-left:1px solid var(--site-rule);flex:0 0 110px;min-height:210px;padding:0 8px}.calendar-month.is-current{border-color:var(--site-accent)}.calendar-month-label{text-transform:uppercase;letter-spacing:3px;color:var(--site-muted);margin:0 0 10px;font-size:13px}.is-current .calendar-month-label,.calendar-today{color:var(--site-accent)}.calendar-month-room{border:1px solid var(--site-rule);color:var(--site-muted);border-radius:3px;margin-bottom:8px;padding:8px;font-size:13px;line-height:1.4;transition:border-color .25s,transform .25s;display:block}.calendar-month-room span{display:block}.calendar-month-room.is-upcoming{border-color:var(--site-accent);background:var(--site-calendar-upcoming);color:var(--site-off-white)}.calendar-month-room.is-upcoming span{color:var(--site-accent)}.calendar-month-room:hover{border-color:var(--site-accent);transform:translateY(-4px)}.calendar-today{font-size:13px}.calendar-filters{border:1px solid var(--site-rule);grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:32px 0 24px;padding:20px;display:grid}.calendar-filters>div{min-width:0}.calendar-filters label{color:var(--site-muted);margin-bottom:8px;font-size:13px;display:block}.calendar-seat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.calendar-seat-card{background:var(--site-calendar-upcoming);border-radius:3px;height:400px;position:relative;overflow:hidden}.calendar-seat-image{width:100%;height:100%;position:absolute;inset:0}.calendar-seat-photo{object-fit:cover;object-position:center 25%;filter:grayscale();width:100%;height:100%;transition:filter .5s}.calendar-seat-source{z-index:2;background:var(--site-charcoal);max-width:calc(100% - 20px);color:var(--site-muted);padding:4px 6px;font-size:13px;position:absolute;top:10px;left:10px}.calendar-seat-card:hover .calendar-seat-photo,.calendar-seat-card:focus-within .calendar-seat-photo{filter:grayscale(0)}.calendar-seat-copy{background:var(--site-closing-photo-shade);flex-direction:column;justify-content:end;padding:20px;display:flex;position:absolute;inset:0}.calendar-seat-date{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.calendar-seat-date time{white-space:nowrap;color:var(--site-accent);font-size:32px;line-height:1.25}.calendar-seat-date span{color:var(--site-off-white);white-space:nowrap;font-size:13px}.calendar-seat-copy h3{margin:8px 0;font-size:26px}.calendar-seat-copy p{color:var(--site-off-white);margin:0 0 12px;font-size:14px}.calendar-seat-progress{background:var(--site-rule);height:2px;margin-bottom:8px;overflow:hidden}.calendar-seat-progress span{background:var(--site-accent);transform-origin:0;width:100%;height:100%;transition:transform .9s;display:block}.calendar-empty{color:var(--site-muted);padding:24px 0}.calendar-past-band,.calendar-vote-band{border-bottom:1px solid var(--site-rule);padding:96px 0}.calendar-past-mosaic{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:180px;grid-auto-flow:dense;gap:6px;display:grid}.calendar-past-tile{min-width:0;display:block;position:relative;overflow:hidden}.calendar-past-tile.is-large{grid-area:span 2/span 2}.calendar-past-image{width:100%;height:100%;position:absolute;inset:0}.calendar-past-photo{object-fit:cover;object-position:center 20%;filter:grayscale();width:100%;height:100%;transition:filter .5s}.calendar-past-tile:hover .calendar-past-photo,.calendar-past-tile:focus .calendar-past-photo{filter:grayscale(0)}.calendar-past-caption{background:var(--site-closing-photo-shade);justify-content:space-between;align-items:end;gap:8px;padding:14px;display:flex;position:absolute;inset:0}.calendar-past-caption h3{margin:0;font-size:18px;line-height:1.25}.calendar-past-caption time{color:var(--site-off-white);font-size:13px}.calendar-film{background:var(--site-accent);color:var(--site-charcoal);border-radius:3px;padding:2px 6px;font-size:13px}.calendar-vote-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:64px;display:grid}.calendar-vote-layout h2{margin:0 0 24px}.calendar-vote-intro{color:var(--site-muted);margin-bottom:24px;font-size:17px;line-height:1.6}.calendar-vote-row{grid-template-columns:100px minmax(0,1fr) 32px;align-items:center;gap:12px;margin-bottom:10px;font-size:14px;display:grid}.calendar-vote-row>span:last-child{text-align:right;color:var(--site-muted)}.calendar-vote-track{background:var(--site-rule);height:14px;overflow:hidden}.calendar-vote-track span{background:var(--site-accent);transform-origin:0;width:100%;height:100%;transition:transform .9s;display:block}.calendar-vote-source{color:var(--site-muted);margin-top:22px;font-size:13px}.calendar-vote-form{border:1px solid var(--site-accent);background:var(--site-charcoal);min-width:0;padding:32px}.calendar-vote-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;min-width:0;display:grid}.calendar-vote-fields label{color:var(--site-muted);min-width:0;font-size:13px}.calendar-vote-fields input{width:100%;min-width:0;margin-top:8px}.calendar-vote-notify{cursor:pointer;align-items:center;gap:10px;margin:24px 0;font-size:14px;display:flex}.calendar-vote-notify button{flex:none}.calendar-vote-message{color:var(--site-accent);margin-bottom:18px;font-size:14px}.calendar-vote-submit{width:100%}@media (width<=759px){.calendar-past-band,.calendar-vote-band{padding:56px 0}.calendar-past-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:170px}.calendar-past-tile.is-large{grid-area:span 1/span 1}.calendar-past-caption{padding:10px}.calendar-past-caption h3{font-size:17px}.calendar-vote-layout{grid-template-columns:minmax(0,1fr);gap:32px}.calendar-vote-form{padding:24px 18px}.calendar-vote-fields{gap:18px 12px}}@media (prefers-reduced-motion:reduce){.calendar-vote-track span{transition:none}}@keyframes calendar-ken-burns{0%{transform:scale(1)}to{transform:scale(1.08)}}@keyframes calendar-pulse{50%{opacity:.4}}@keyframes calendar-map-pulse{to{opacity:0;transform:scale(2.3)}}@layer utilities{body .calendar-page section{background:var(--site-charcoal);color:var(--site-off-white);border-radius:0}body .calendar-page section.calendar-map-band,body .calendar-page section.calendar-seats-band,body .calendar-page section.calendar-vote-band{background:var(--site-panel)}body .calendar-page .calendar-past-caption h3{overflow-wrap:normal;line-height:1.25;font-size:18px!important}body .calendar-page .calendar-vote-track,body .calendar-page .calendar-vote-track span{border-radius:0!important}@media (width<=759px){body .calendar-page .calendar-past-caption h3{font-size:17px!important}body .calendar-page .calendar-vote-fields{grid-template-columns:minmax(0,1fr)}}body .calendar-page .calendar-vote-fields input{border:0;border-bottom:1px solid var(--site-rule);color:var(--site-off-white);box-shadow:none;background:0 0;border-radius:0;padding:6px 0;font-size:14px}body .calendar-page .calendar-seat-invite{color:var(--site-accent);height:auto;box-shadow:none;background:0 0;justify-content:start;padding:8px 0;font-size:14px}body .calendar-page .calendar-seat-invite:before,body .calendar-page .calendar-seat-invite:after{display:none}body .calendar-page .calendar-filters button{border:0;border-bottom:1px solid var(--site-rule);color:var(--site-off-white);box-shadow:none;background:0 0;border-radius:0;padding-left:0;font-size:14px}body .calendar-page :is(h1,h2,h3){color:var(--site-off-white);letter-spacing:0}body .calendar-page .calendar-label{color:var(--site-accent);letter-spacing:3px!important;font-size:13px!important}body .calendar-page .calendar-label-muted{color:var(--site-muted)}body .calendar-page .calendar-next-copy h2{font-size:44px!important}body .calendar-page .calendar-button{border:1px solid var(--site-accent);white-space:normal;height:auto;min-height:46px;box-shadow:none;padding:12px 16px;font-size:14px;background:var(--site-accent)!important;color:var(--site-charcoal)!important;border-radius:3px!important}body .calendar-page .calendar-button-outline{border-color:var(--site-rule);color:var(--site-off-white)!important;background:0 0!important}body .calendar-page .calendar-button .btn-premium-dots,body .calendar-page .calendar-button:before,body .calendar-page .calendar-button:after{display:none}body .calendar-page .calendar-button .btn-premium-content{color:inherit}}@media (width<=1050px){.calendar-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px}.calendar-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-stats>div:nth-child(-n+2){border-bottom:1px solid var(--site-rule)}.calendar-stats>div:nth-child(2){border-right:0}.calendar-next-copy{padding:24px}}@media (width<=759px){.calendar-shell{padding:0 20px}.calendar-opening{padding:48px 0 56px}.calendar-hero{grid-template-columns:minmax(0,1fr);gap:28px}.calendar-next{grid-template-columns:minmax(0,1fr)}.calendar-next-photo{aspect-ratio:1.4;min-height:0}.calendar-next-copy{padding:24px 20px}.calendar-map-band{padding:56px 0}.calendar-map-header{display:block}.calendar-map-legend{margin-top:20px}.calendar-map-label{display:none}.calendar-map-tooltip{transform:translate(-50%,-40%)}.calendar-actions{align-items:stretch}.calendar-actions>*{flex:100%}body .calendar-page .calendar-next-copy h2{font-size:36px!important}.calendar-map-canvas{aspect-ratio:1.7}}@media (prefers-reduced-motion:reduce){.calendar-photo,.calendar-pulse,.calendar-map-ring{animation:none}.calendar-room-card:hover{transform:none}}@media (width<=1050px){.calendar-seat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-schedule-header{flex-direction:column;align-items:start}}@media (width<=759px){.calendar-month-band,.calendar-seats-band{padding:56px 0}.calendar-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:16px}.calendar-seat-grid{grid-template-columns:minmax(0,1fr)}.calendar-feed-actions{width:100%}.calendar-feed-actions>a{flex:1}.calendar-seat-copy{padding:18px}}@media (prefers-reduced-motion:reduce){.calendar-seat-progress span{transition:none}.calendar-month-room:hover{transform:none}}@media (width<=759px){body .calendar-page .calendar-vote-fields{grid-template-columns:minmax(0,1fr)!important;display:grid!important}body .calendar-page .calendar-vote-fields input{font-size:16px!important}}body .calendar-page .calendar-vote-track>span{height:100%;background:var(--site-accent)!important}@media (prefers-reduced-motion:reduce){body .calendar-page .calendar-vote-track>span{transition:none;transform:scaleX(var(--vote-ratio))!important}}
