.events-page .site-header{position:relative;z-index:10;border-bottom:1px solid #b4badc;background:linear-gradient(110deg,#c9e1ff 0%,#d9dcfa 55%,#e1d0f1 100%)}
.events-page .header-inner{min-height:88px;gap:20px}
.events-page .brand{flex:0 1 400px;width:400px;min-width:0;max-width:400px;text-decoration:none}

.events-page .site-menu{display:flex;align-items:center;gap:4px;margin-left:auto}
.events-page .site-menu a{display:inline-flex;align-items:center;min-height:44px;padding:8px 11px;border:1px solid transparent;border-radius:7px;color:#344e70;font-size:16px;line-height:1.35;font-weight:700;text-decoration:none}
.events-page .site-menu a:hover{background:#bdd3f4;color:#24375e}
.events-page .site-menu a[aria-current="page"]{border-color:#664391;background:#664391;color:#fff}
.events-page .menu-toggle{display:none;align-items:center;justify-content:center;flex:none;min-width:56px;min-height:44px;padding:8px 10px;border:1px solid #8c97c0;border-radius:8px;background:#d9def8;color:#24375e;font-size:16px;line-height:1.3;font-weight:700}
.events-page .menu-toggle[aria-expanded="true"]{background:#664391;border-color:#664391;color:#fff}
.events-page .cart-toggle{min-width:75px;margin-left:0;gap:6px;padding:9px 12px;border-color:#b3942b;background:#ffda66;color:#24354b}
.events-page .cart-toggle:hover{background:#ffe58c}
.events-page .cart-toggle [data-cart-count]{min-width:20px;min-height:20px;padding:1px 4px;font-size:13px}
/* Match the centre pages and keep the dated activities together. */
body.events-page{font-size:17px;line-height:1.6}
.events-page .wrap{width:calc(100% - 64px);max-width:1160px}
.events-page .event-hero{min-height:140px;margin-block:26px 24px;border-color:#d1d9ec;border-radius:22px;background:#edf3ff}
.events-page .hero-copy{max-width:64%;padding:26px 38px}
.events-page .hero-copy h1{max-width:540px;font-size:50px;line-height:1.06;letter-spacing:.005em}
.events-page .hero-location{font-size:18px;line-height:1.6;margin-top:12px}
.events-page .activity-layout{display:block;margin-bottom:28px}
.events-page .activity-heading{margin-bottom:16px}
.events-page .activity-heading h2{font-size:32px;line-height:1.12}
.events-page .event-select-field{max-width:none;margin:0 0 18px}
.events-page #tournament-date-label{margin:0 0 8px;font-size:16px;font-weight:700}
.events-page .event-date-options{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:88px}
.events-page .event-date-option{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;min-width:137px;min-height:64px;padding:9px 13px;border:1px solid #bac7dd;border-radius:11px;background:#f5f7fd;color:#344e70;text-align:left;line-height:1.35;transition:padding .15s,min-height .15s,background .15s,border-color .15s}
.events-page .event-date-option strong{font-size:18px}
.events-page .event-date-option small{font-size:13px}
.events-page .event-date-option[aria-pressed="true"]{min-height:84px;min-width:162px;padding:13px 17px;border:2px solid #664391;background:#eee5fa;color:#4e2d75;box-shadow:0 3px 0 #d7c5ed}
.events-page .event-date-option[aria-pressed="true"] strong{font-size:22px}
.events-page .event-date-option:focus-visible{outline:3px solid #2459a6;outline-offset:3px}
.events-page .event-date-option:hover{border-color:#664391;background:#eee8f7}
.events-page .event-date-selection{font-size:12px;font-weight:700;letter-spacing:.02em}
.events-page .event-card.is-sold-out{border-top-color:#7b7891}
.events-page .event-card.is-sold-out .choose-button{background:#e6e4ec;color:#514b63;border-color:#b9b4c7;box-shadow:none;cursor:default}
.events-page .event-card.is-sold-out .event-availability{font-weight:700}
.events-page .event-card[hidden]{display:none}
.events-page .upcoming-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
@media(min-width:901px){.events-page .upcoming-grid:has(>#social-play[hidden]){grid-template-columns:repeat(2,minmax(0,1fr))}}
.events-page .upcoming-grid>.event-card{grid-area:auto;align-self:stretch;display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;padding:20px;border-radius:17px}
.events-page .card-kind{margin-bottom:9px;font-size:13px;font-weight:700;line-height:1.3;letter-spacing:.04em;text-transform:uppercase;color:inherit}
.events-page .upcoming-grid .card-top{min-height:34px;gap:8px;align-items:center}
.events-page .upcoming-grid .card-top h3{font-size:32px;line-height:1.05;color:inherit}
.events-page .upcoming-grid .card-top .card-age{font-size:14px;padding:5px 7px;white-space:nowrap}
.events-page .upcoming-grid .card-event-date{margin-top:13px;padding:10px 12px}
.events-page .card-date-weekday,.events-page .card-date-year{font-size:15px}
.events-page .card-date-main{font-size:36px}
.events-page .upcoming-grid .card-times{margin:14px 0 16px;padding-top:12px;gap:12px}
.events-page .card-times dt{font-size:14px}
.events-page .card-times dd{font-size:22px}
.events-page .upcoming-grid .card-price{margin: auto 0 12px;padding-top:8px;color:inherit}
.events-page .card-price>span,.events-page .choose-copy>small{display:block;margin-top:3px;font-size:15px;line-height:1.4}
.events-page .card-price>.card-ticket-includes{margin-top:5px;font-size:17px;font-weight:700;line-height:1.4}
.events-page .event-availability>.availability-tickets{display:block;font-size:17px;line-height:1.4}
.events-page .event-availability>.availability-included{display:block;margin-top:3px;font-size:15px;font-weight:400;line-height:1.45}
.events-page .availability-additional{display:grid;gap:3px;margin-top:13px;padding-top:11px;border-top:1px solid currentColor;font-size:15px;font-weight:400;line-height:1.45}
.events-page .availability-additional>strong{font-size:15px;font-weight:700}
.events-page .upcoming-grid .choose-button{position:static;grid-column:auto;grid-row:auto;width:100%;min-width:0;min-height:66px;margin:0;padding:10px 13px;gap:10px;font-size:17px}
.events-page .upcoming-grid .choose-copy{display:block;flex:1 1 auto;width:auto;min-width:0;padding:0;border:0;text-align:left}
.events-page .choose-copy>span{display:block;line-height:1.35}
.events-page .choose-copy>small{font-weight:700}
.events-page .ticket-note{font-size:15px;line-height:1.5;margin-top:16px}
.events-page .upcoming-grid>.social-play{--accent:#245c4e;background:linear-gradient(125deg,#eaf7ef,#d9eee2 85%);color:#245c4e;border:1px solid #a8cbb7;border-top:5px solid #559c7c;box-shadow:0 5px 0 #c5dece,0 12px 25px #245c4e0d}
.events-page .social-play::before{display:block}
.events-page .social-play:hover{border-color:#559c7c}
.events-page .social-times{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);border-top-color:#245c4e30}
.events-page .social-times dt{color:#346453}
.events-page .social-times dd{font-size:20px}
.events-page .social-booking{margin-top:auto}
.events-page .social-status{margin:0 0 8px;padding:0;color:#346453;font-size:14px;line-height:1.4}
.events-page .social-entry>span{font-size:15px}
.events-page .social-extras{display:grid;gap:2px;margin-top:6px;color:#346453;font-size:14px;line-height:1.4}
.events-page .social-play .choose-button{background:#fffefa;color:#245c4e;border-color:#77a492;box-shadow:0 3px 0 #245c4e18}
.events-page .social-play .choose-button:hover{background:#fff}
.events-page .event-card.xtreme{grid-area:auto;grid-column:auto;align-self:auto;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;padding:19px 22px;border:1px solid #dfc5b5;border-radius:14px;background:#f7eee7;box-shadow:none;color:#714a37}
.events-page .xtreme .xtreme-copy{flex:1;min-width:0}
.events-page .xtreme .card-kind{margin-bottom:5px;font-size:12px}
.events-page .xtreme .card-top{display:flex;justify-content:flex-start;align-items:center;gap:12px}
.events-page .xtreme .card-top h3{font-size:28px;line-height:1.05}
.events-page .xtreme .card-age{grid-column:auto;margin:0;padding:0;font-size:15px;line-height:1.4}
.events-page .xtreme .card-age strong{font-size:15px}
.events-page .xtreme .interest-card-status{grid-column:auto;grid-row:auto;margin:5px 0 0;padding:0;border:0;font-size:15px;line-height:1.4;color:#714a37}
.events-page .xtreme .choose-button{position:static;grid-column:auto;grid-row:auto;flex:0 0 210px;width:210px;min-height:48px;margin:0;background:#fffefa;border-color:#c6a38e;color:#714a37;font-size:16px}
@media(max-width:1100px){
 .events-page .header-inner{gap:14px;min-height:80px}.events-page .brand{flex:1 1 340px;width:340px;max-width:340px}.events-page .menu-toggle{display:inline-flex}.events-page .site-menu{position:absolute;top:100%;left:0;right:0;display:none;max-height:calc(100dvh - 80px);overflow-y:auto;padding:13px 24px 18px;margin:0;border-bottom:1px solid #b4badc;background:linear-gradient(110deg,#c9e1ff,#e1d0f1);box-shadow:0 12px 18px #24354b14}.events-page .site-menu.is-open{display:flex;flex-direction:column;align-items:stretch;gap:4px}.events-page .site-menu a{padding:10px 14px;min-height:46px}
}
@media(min-width:561px) and (max-width:900px){
 .events-page .upcoming-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
 .events-page .upcoming-grid>.social-play{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 24px}
 .events-page .social-play .card-kind,.events-page .social-play .card-top,.events-page .social-play .card-event-date,.events-page .social-play .social-times{grid-column:1}
 .events-page .social-play .card-kind{grid-row:1}
 .events-page .social-play .card-top{grid-row:2}
 .events-page .social-play .card-event-date{grid-row:3}
 .events-page .social-play .social-times{grid-row:4;margin-bottom:0}
 .events-page .social-play .social-booking{grid-column:2;grid-row:1/4;align-self:center;margin:0}
 .events-page .social-play .social-entry{margin:0 0 12px;padding-top:0}
 .events-page .social-play .choose-button{grid-column:2;grid-row:4;align-self:end}
}
@media(min-width:561px) and (max-width:700px){
 .events-page .social-play .card-top{flex-direction:column;align-items:flex-start;gap:7px}
 .events-page .social-times{grid-template-columns:minmax(0,1fr);gap:7px}
 .events-page .social-times>div{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
 .events-page .social-times dd{font-size:18px}
}
@media(max-width:760px){
 .events-page .wrap{width:calc(100% - 36px)}.events-page .event-hero{min-height:148px;margin-block:22px 20px;border-radius:18px}.events-page .hero-copy{max-width:80%;padding:26px 30px}.events-page .hero-copy h1{font-size:44px}.events-page .hero-location{font-size:17px;margin-top:12px}.events-page .activity-panel{padding:18px}.events-page .activity-heading h2{font-size:33px}.events-page .social-play{padding:16px 18px}.events-page .ticket-note{font-size:15px}
}
@media(max-width:560px){
 .events-page .wrap{width:calc(100% - 28px)}.events-page .header-inner{min-height:68px;gap:8px}.events-page .brand{flex:1 1 0;width:auto;max-width:340px}.events-page .menu-toggle{width:56px;min-width:56px;max-width:56px;padding-inline:6px}.events-page .cart-toggle{padding-inline:9px}.events-page .site-menu{padding:12px 14px 16px;max-height:calc(100dvh - 68px)}.events-page .event-hero{min-height:130px;margin-block:18px 20px;border-radius:16px}.events-page .hero-copy{max-width:100%;padding:25px 22px}.events-page .hero-copy h1{font-size:34px;line-height:1.08;max-width:none}.events-page .hero-location{font-size:17px;margin-top:12px}.events-page .activity-panel{padding:17px}.events-page .card-top h3{font-size:30px}.events-page .activity-heading h2{font-size:31px}
}
@media(max-width:370px){.events-page .menu-toggle{padding-inline:6px}.events-page .cart-toggle{padding-inline:7px}.events-page .hero-copy{padding-inline:19px}.events-page .card-top h3{font-size:28px}}
.events-page .site-footer{padding:22px 0;border-top:1px solid #d8dfeb;background:#f0f1f7}
.events-page .footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;color:#526078;font-size:15px;line-height:1.5}
.events-page .footer-inner a{display:inline-flex;align-items:center;min-height:44px;color:#344e70;font-size:15px;line-height:1.4}
@media(max-width:760px){.events-page .footer-inner{flex-direction:column;align-items:flex-start;gap:12px}}
@media(max-width:560px){
 .events-page .upcoming-grid{grid-template-columns:minmax(0,1fr);gap:20px}
 .events-page .upcoming-grid>.event-card{display:flex;grid-column:auto;padding:20px}
 .events-page .upcoming-grid .card-top h3{font-size:32px}
 .events-page .upcoming-grid .card-date-main{font-size:36px}
 .events-page .upcoming-grid .card-times{margin-bottom:14px}
 .events-page .upcoming-grid .choose-button{grid-column:auto;grid-row:auto}
 .events-page .event-card.xtreme{flex-direction:column;align-items:stretch;gap:15px;margin-top:22px;padding:18px 20px}
 .events-page .xtreme .choose-button{flex:auto;width:100%}
}
@media(max-width:370px){
 .events-page .upcoming-grid>.event-card{padding:17px}
 .events-page .upcoming-grid .card-top h3{font-size:30px}
 .events-page .upcoming-grid .card-top .card-age{font-size:13px;padding-inline:6px}
 .events-page .upcoming-grid .card-times dd{font-size:20px}
}
@media(prefers-reduced-motion:reduce){.events-page .event-card,.events-page .event-date-option{transition:none}.events-page .event-card:hover{transform:none}}
@media print{
 .events-page .site-header,.events-page .site-footer{display:none}.events-page .wrap{width:100%;max-width:none}.events-page .event-hero{min-height:0;margin:0 0 16px;border:0;border-radius:0}.events-page .hero-copy{padding:0;max-width:none}.events-page .hero-copy h1{font-size:36px}
 .events-page .upcoming-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.events-page .upcoming-grid>.event-card{display:flex;grid-column:auto;background:#fff;border:1px solid #999;box-shadow:none;color:#000;break-inside:avoid}.events-page .event-card.xtreme{background:#fff;border:1px solid #999;break-inside:avoid}.events-page .event-card::before{display:none}.events-page .choose-button{display:none}
}
.booking-hold-note{padding:12px 14px;border:1px solid #c9d9ed;border-radius:9px;background:#eef4fc;color:#344e70;font-size:15px;line-height:1.5;margin:12px 0}
