/* Arena32 Venue OS 1.0.7.236: jump-to-section sticky navigation + true Quick Book */
body .a32-public-booking-form .a32-booking-slot-picker .a32-v236-period-tabs{
  position:sticky!important;
  top:var(--a32-v236-header-offset,0px)!important;
  z-index:110!important;
  background:#fff!important;
  border:1px solid #dcebe2!important;
  border-radius:10px!important;
  padding:5px!important;
  box-shadow:0 3px 9px rgba(0,42,22,.1)!important;
}
/* Navigation controls are now 1.2 times their previous size on all screens. */
body .a32-public-booking-form .a32-v236-period-tabs .a32-ux-period-btn strong{font-size:13.2px!important;line-height:1.22!important;}
body .a32-public-booking-form .a32-v236-period-tabs .a32-ux-period-btn small{font-size:9.6px!important;line-height:1.16!important;}
/* Keep time + turf column headings onscreen below the sticky period rail. */
body .a32-public-booking-form .a32-booking-slot-picker[data-a32-layout="matrix"] .a32-slot-picker-table thead th{
  position:sticky!important;
  top:calc(var(--a32-v236-header-offset,0px) + var(--a32-v236-nav-height,66px) + 2px)!important;
  z-index:100!important;
  background:#e4f3e9!important;
  box-shadow:0 2px 1px rgba(20,92,50,.17)!important;
}
body .a32-public-booking-form .a32-booking-slot-picker .a32-v236-period-tabs button:focus-visible,
body .a32-public-booking-form .a32-v236-quick-panel button:focus-visible{outline:2px solid #00864c!important;outline-offset:2px;}
body .a32-public-booking-form .a32-booking-calendar-panel.a32-v236-quick-mode .a32-slot-picker-body{display:none!important;}
body .a32-public-booking-form .a32-v236-quick-panel[hidden]{display:none!important;}
body .a32-public-booking-form .a32-v236-quick-panel{margin:12px 0 18px;padding:14px;border-radius:14px;border:1px solid #cde6d9;background:#f8fdf9;}
body .a32-public-booking-form .a32-v236-quick-title{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;align-items:baseline;margin-bottom:12px;}
body .a32-public-booking-form .a32-v236-quick-title strong{color:#095d3c;font-size:17px;}
body .a32-public-booking-form .a32-v236-quick-title small{color:#5e7569;font-size:12px;}
body .a32-public-booking-form .a32-v236-quick-turfs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:12px;}
body .a32-public-booking-form .a32-v236-quick-turfs button,
body .a32-public-booking-form .a32-v236-quick-periods button{background:#fff;color:#145c3c;border:1px solid #d6e7df;border-radius:9px;min-width:0;padding:10px 4px;font-size:13px;font-weight:800;cursor:pointer;white-space:normal;}
body .a32-public-booking-form .a32-v236-quick-turfs button.is-active,
body .a32-public-booking-form .a32-v236-quick-periods button.is-active{background:#0a814d!important;color:#fff!important;border-color:#0a814d!important;}
body .a32-public-booking-form .a32-v236-quick-periods{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-bottom:10px;}
body .a32-public-booking-form .a32-v236-quick-periods button{font-size:11px;padding:9px 2px;}
body .a32-public-booking-form .a32-v236-quick-count{color:#536c5c;font-size:12px;margin:3px 0 10px;}
body .a32-public-booking-form .a32-v236-quick-times{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;}
body .a32-public-booking-form .a32-v236-quick-time{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:68px;border:1px solid #d0e6d8;border-radius:9px;background:#e9f8ef;color:#104e34;cursor:pointer;min-width:0;padding:6px 2px;}
body .a32-public-booking-form .a32-v236-quick-time strong{font-size:14px;line-height:1.2;}
body .a32-public-booking-form .a32-v236-quick-time small{font-size:11px;color:#49745e;}
body .a32-public-booking-form .a32-v236-quick-time.is-active{border:2px solid #087d4e;background:#d6f0e3;}
body .a32-public-booking-form .a32-v236-quick-empty{padding:18px;border-radius:9px;background:#fff4e2;font-size:13px;color:#77571f;line-height:1.5;}
body .a32-public-booking-form .a32-v236-quick-footnote{margin:12px 0 0;font-size:11px;color:#697c6e;}
@media(max-width:850px){body .a32-public-booking-form .a32-v236-quick-times{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(max-width:650px){
  body .a32-public-booking-form .a32-v236-period-tabs .a32-ux-period-btn strong{font-size:13.2px!important;}
  body .a32-public-booking-form .a32-v236-period-tabs .a32-ux-period-btn small{font-size:9.6px!important;}
  body .a32-public-booking-form .a32-v236-quick-panel{padding:10px;}
  body .a32-public-booking-form .a32-v236-quick-title strong{font-size:15px;}
  body .a32-public-booking-form .a32-v236-quick-title small{font-size:11px;}
  body .a32-public-booking-form .a32-v236-quick-times{grid-template-columns:repeat(2,minmax(0,1fr));}
  body .a32-public-booking-form .a32-v236-quick-periods{grid-template-columns:repeat(3,minmax(0,1fr));}
  body .a32-public-booking-form .a32-v236-quick-periods button{font-size:11px;}
  body .a32-public-booking-form .a32-v236-quick-turfs button{font-size:11px;}
}
@media(max-width:360px){body .a32-public-booking-form .a32-v236-period-tabs .a32-ux-period-btn strong{font-size:12px!important;}body .a32-public-booking-form .a32-v236-period-tabs .a32-ux-period-btn small{font-size:9px!important;}}
/* Earlier mobile styles gave the entire form overflow:hidden, which prevents
   sticky descendants from following viewport scroll. Keep them unclipped. */
@media(max-width:650px){
  body .a32-public-booking-form{overflow:visible!important;}
  body .a32-public-booking-form .a32-booking-calendar-panel{overflow:visible!important;}
}
@media(max-width:650px){
  body .a32-public-booking-form .a32-flow-actions{margin-left:0!important;margin-right:0!important;max-width:100%!important;box-sizing:border-box!important;}
}
