.services-menu{position:relative;border:0;padding:0;font-size:14px}.services-menu summary{font-size:inherit;display:flex;align-items:center;gap:6px;min-height:44px}.services-menu summary:after{content:'⌄';font-size:15px;color:#365c22}.services-menu[open] summary:after{content:'⌃'}.services-menu>div{position:absolute;top:100%;left:-18px;min-width:245px;padding:12px;background:#fffdf5;border:1px solid #dce3cf;border-radius:12px;box-shadow:0 12px 30px #21321920;display:grid;gap:4px;z-index:35}.services-menu>div>a{padding:14px;border-radius:7px;white-space:nowrap}.services-menu>div>a:hover{background:#ecf6d8}.home-availability{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:45px;margin-top:45px;padding:38px;background:#edf5da;border-radius:20px;align-items:start}.home-availability-intro h3{font-size:clamp(30px,3.2vw,43px);letter-spacing:-1.2px;line-height:1.08;margin:18px 0}.home-availability-intro p{font-size:14px;color:#506045}.home-prices{display:flex;flex-wrap:wrap;gap:15px;margin:24px 0}.home-prices>span{background:#fffdf5;padding:16px;border-radius:10px;font-size:12px;flex:1;min-width:115px}.home-prices strong{display:block;font-size:25px;margin-top:8px;letter-spacing:-.8px}.home-prices small{width:100%;color:#5c6657;line-height:1.5}.home-sports-link{display:inline-block;font-size:13px;font-weight:bold;text-decoration:underline;line-height:1.6}.home-calendar-card{min-width:0;background:#fffdf5;border:1px solid #d4dfc4;border-radius:16px;padding:25px;box-shadow:0 6px 20px #20351808}.home-calendar-card button{font:inherit}.home-month{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:12px}.home-month strong{text-transform:capitalize;text-align:center;font-size:17px}.home-month button{border:1px solid #d5dfca;border-radius:9px;background:white;width:42px;height:42px;font-size:28px;flex-shrink:0}.home-weekdays,.home-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:5px}.home-weekdays{font-size:10px;font-weight:bold;color:#6b7562;margin:15px 0 10px}.home-days button{border:0;background:#e9f4da;border-radius:8px;aspect-ratio:1;min-height:36px;color:#24331a;font-size:14px}.home-days button:disabled{background:transparent;color:#adb3a7;cursor:default}.home-days .adjacent{opacity:.45}.home-days button.chosen{background:#a1f32a;color:#142009;box-shadow:inset 0 0 0 2px #4c7c20;font-weight:bold}.home-days .is-today{text-decoration:underline;text-underline-offset:4px}.home-calendar-actions{display:flex;justify-content:space-between;gap:12px;margin:17px 0}.home-calendar-actions button{border:1px solid #d5dfca;border-radius:7px;padding:8px 12px;background:white;font-size:12px}.home-hours{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}.home-slot{padding:14px;border-radius:10px;border:1px solid #9cbf7c;background:#e8f6df;color:#204821;display:block}.home-slot strong,.home-slot span{display:block}.home-slot span{font-size:12px;margin-top:6px}.home-slot.amber{background:#fff4cd;border-color:#d4b45a;color:#715900}.home-slot.red,.home-slot.full{background:#ffede6;border-color:#dc9a8a;color:#92352a}.home-slot.full{opacity:.7}.home-slot:hover:not(.full){outline:2px solid currentColor;outline-offset:2px}.home-calendar-card>small{font-size:11px;line-height:1.6;color:#69755e;display:block}.home-calendar-card>p{font-size:13px}.hero h1{font-size:clamp(43px,5.5vw,74px);line-height:1.05;letter-spacing:-2.5px}header nav{gap:18px}.plan.green p{max-width:420px}@media(max-width:1100px){header nav{gap:12px;font-size:12px}.services-menu{font-size:12px}.home-availability{gap:25px;padding:26px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.home-calendar-card{padding:18px}}@media(max-width:800px){.home-availability{grid-template-columns:minmax(0,1fr);padding:22px;gap:25px}.home-availability-intro h3{font-size:34px}.home-prices{margin:20px 0}.home-calendar-card{padding:17px}.home-month strong{font-size:16px}.home-days button{min-height:36px}.services-menu{font-size:14px;width:100%}.services-menu>div{position:static;box-shadow:none;margin-top:8px;min-width:0}.hero h1{font-size:clamp(43px,9vw,65px)}header nav{gap:16px;font-size:14px}}@media(max-width:400px){.home-availability{padding:14px}.home-calendar-card{padding:12px}.home-days,.home-weekdays{gap:3px}.home-days button{min-height:32px}.home-prices strong{font-size:22px}.home-calendar-actions button{font-size:11px;padding:8px}.home-hours{grid-template-columns:minmax(0,1fr)}}
.booking-steps p [data-home-pricing],.booking-steps p [data-home-schedule]{font:inherit;letter-spacing:normal;color:inherit;font-weight:normal}

[data-home-pricing]{white-space:pre-line}
/* Keep date and time selection together, independently of monitor width. */
.home-availability{display:block;max-width:1120px;margin:40px auto 0;padding:28px;scroll-margin-top:110px}.home-availability-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);column-gap:32px;align-items:center;margin-bottom:24px}.home-availability-intro>.section-label{grid-column:1;grid-row:1}.home-availability-intro h3{grid-column:1;grid-row:2;font-size:29px;line-height:1.15;margin:9px 0 5px;letter-spacing:-.8px}.home-availability-intro>p{grid-column:1;grid-row:3;margin:0;font-size:14px}.home-availability-intro .home-prices{grid-column:2;grid-row:1/4;margin:0;gap:9px}.home-prices>span{padding:12px;min-width:100px}.home-prices strong{font-size:23px;margin-top:6px}.home-prices small{font-size:11px}.home-sports-link{grid-column:1/-1;margin-top:12px;font-size:12px}.home-calendar-card{display:grid;grid-template-columns:320px minmax(0,1fr);gap:32px;padding:24px;align-items:start}.home-calendar-pane{width:320px;max-width:100%}.home-calendar-card h4{font-size:15px;letter-spacing:0;margin:0 0 16px}.home-month{margin-bottom:10px}.home-month strong{font-size:15px}.home-month button{width:36px;height:36px;min-height:36px}.home-weekdays{margin:12px 0 8px}.home-days{grid-auto-rows:40px;gap:4px}.home-days button{height:40px;min-height:40px;aspect-ratio:auto;padding:0;font-size:13px}.home-calendar-actions{margin:14px 0 0;align-items:center}.home-calendar-actions span{font-size:11px;color:#637056}.home-calendar-actions button{min-height:36px;padding:8px 12px}.home-times-pane{border-left:1px solid #dce5d1;padding-left:28px;min-width:0}.home-times-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.home-times-toolbar h4{margin:0}.home-times-toolbar button{background:transparent;border:1px solid #d5dfca;border-radius:7px;padding:8px 10px;font-size:11px;min-height:34px}.home-times-pane>#home-selected{margin:12px 0 16px;font-size:15px;font-weight:bold;text-transform:capitalize}.home-hours{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-slot{padding:12px;min-height:70px}.home-slot strong{font-size:15px}.home-slot span{font-size:11px;line-height:1.5}.home-times-pane>p,.home-times-pane>small{font-size:12px;line-height:1.6}.home-times-pane>small{display:block;color:#69755e}.home-availability button:focus-visible,.home-availability a:focus-visible{outline:3px solid #ff7938;outline-offset:3px}@media(max-width:1000px){.home-availability{padding:22px}.home-calendar-card{grid-template-columns:300px minmax(0,1fr);gap:22px;padding:20px}.home-calendar-pane{width:300px}.home-times-pane{padding-left:20px}.home-hours{grid-template-columns:minmax(0,1fr)}.home-slot{min-height:56px}.home-availability-intro h3{font-size:26px}}@media(max-width:760px){.home-availability{padding:18px}.home-availability-intro{grid-template-columns:minmax(0,1fr);gap:0}.home-availability-intro>.section-label,.home-availability-intro>h3,.home-availability-intro>p,.home-availability-intro .home-prices,.home-sports-link{grid-column:auto;grid-row:auto}.home-availability-intro .home-prices{margin-top:16px;max-width:360px}.home-calendar-card{grid-template-columns:minmax(0,1fr);gap:24px;padding:18px}.home-calendar-pane{width:320px;justify-self:center}.home-times-pane{border-left:0;border-top:1px solid #dce5d1;padding:22px 0 0}.home-hours{grid-template-columns:repeat(2,minmax(0,1fr))}.home-times-pane>small{font-size:11px}}@media(max-width:400px){.home-availability{padding:12px}.home-calendar-card{padding:12px}.home-calendar-pane{width:100%}.home-days{grid-auto-rows:38px;gap:3px}.home-days button{height:38px;min-height:38px}.home-availability-intro h3{font-size:25px}.home-slot{padding:10px}.home-slot strong{font-size:14px}.home-slot span{font-size:11px}.home-month strong{font-size:14px}}
