/* V221 launch QA fixes: memberships, authentic NYE media, darts crop, signup offer */
.tts-testing-banner{position:relative;z-index:2147483000;display:flex;align-items:center;justify-content:center;gap:10px;min-height:42px;padding:10px 18px;box-sizing:border-box;background:#ef4d58;color:#fff;text-align:center;font:700 13px/1.35 Arial,Helvetica,sans-serif;letter-spacing:.01em}
.tts-testing-banner strong{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;background:rgba(0,0,0,.16);font-size:10px;letter-spacing:.12em;white-space:nowrap}.tts-testing-banner span{display:inline-block}
.public-site .public-footer .footer-brand-column{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important}.public-site .public-footer .footer-logo{display:block!important;width:min(220px,86%)!important;max-height:160px!important;height:auto!important;object-fit:contain!important;margin:0 auto 20px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;filter:none!important;opacity:1!important}.tts-preview-badge{display:none!important}

/* Home memberships: create separation and show all four prices. */
.public-site .membership-banner-v221{margin:30px 6vw 95px!important;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr)!important;gap:42px!important;align-items:center!important}
.public-site .membership-banner-copy .btn{margin-top:18px}
.public-site .membership-banner-prices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:min(650px,100%)}
.public-site .membership-price-box{position:relative;display:grid;grid-template-columns:1fr auto;align-items:end;gap:4px 10px;min-height:120px;padding:18px 18px 16px;border:1px solid #d4ddd7;border-radius:17px;background:#fffaf0;color:#173f35;text-decoration:none;box-sizing:border-box;transition:transform .18s ease,box-shadow .18s ease}
.public-site .membership-price-box:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,63,53,.09)}
.public-site .membership-price-box>span{grid-column:1/3;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#536760}.public-site .membership-price-box strong{font:52px/.9 Georgia,serif;color:#00483e}.public-site .membership-price-box small{padding-bottom:5px;font-weight:800;color:#60716b}.public-site .membership-price-box.annual-offer{border:2px solid #0b5b4e;background:#eef7f3}.public-site .membership-price-box.annual-offer>b{position:absolute;right:12px;top:10px;padding:5px 8px;border-radius:999px;background:#ef4d58;color:#fff;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.public-site .membership-price-box.annual-offer>span{padding-top:18px}

/* Membership page: monthly is standard/default, annual is the visible special offer. */
.public-site .plans-grid-v221{align-items:start;gap:28px}.public-site .monthly-default-card{margin:18px 0 12px;padding:20px 22px;border:1px solid #d4ddd7;border-radius:18px;background:#fffaf0}.public-site .monthly-default-card .billing-label{display:block;margin-bottom:8px;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#536760}.public-site .monthly-default-card .plan-price{display:flex;align-items:flex-end;gap:9px;margin:5px 0 16px}.public-site .monthly-default-card .plan-price strong{font-size:66px}.public-site .monthly-default-card .plan-price span{padding-bottom:8px;font-weight:800;color:#5e6e68}.public-site .monthly-default-card .btn{width:100%;justify-content:center}.public-site .annual-special-card{position:relative;margin:0 0 22px;padding:20px 22px;border:2px solid #0b5b4e;border-radius:18px;background:#eef7f3}.public-site .annual-special-card .annual-special-badge{display:inline-flex;margin-bottom:10px;padding:6px 9px;border-radius:999px;background:#ef4d58;color:#fff;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.public-site .annual-special-card>div{display:flex;align-items:flex-end;gap:8px}.public-site .annual-special-card>div strong{font:48px/.95 Georgia,serif;color:#00483e}.public-site .annual-special-card>div small{padding-bottom:6px;font-weight:800;color:#50655e}.public-site .annual-special-card p{margin:9px 0 14px;color:#50655e;line-height:1.45}.public-site .annual-special-button{display:flex!important;width:100%;justify-content:center!important;background:#00483e!important;color:#fff!important;border-color:#00483e!important}

/* Membership selector shown when somebody creates an account from a plan. */
.signup-membership-offer{margin:4px 0 22px;padding:16px;border:1px solid #d5ddd7;border-radius:16px;background:#fffdf8}.signup-membership-offer h3{margin:5px 0 12px;font:26px/1.05 Georgia,serif;color:#003f35}.signup-membership-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.signup-membership-option{position:relative;display:block;cursor:pointer}.signup-membership-option>input{position:absolute;opacity:0;pointer-events:none}.signup-membership-option>span:not(.offer-ribbon){display:grid;gap:5px;height:100%;padding:13px;border:1px solid #d5ddd7;border-radius:13px;background:#fff}.signup-membership-option b{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#52645e}.signup-membership-option strong{font:30px/1 Georgia,serif;color:#003f35}.signup-membership-option strong small{font:700 11px/1 Arial,sans-serif}.signup-membership-option em{font-style:normal;font-size:11px;color:#697772}.signup-membership-option>input:checked+span:not(.offer-ribbon){border:2px solid #ef4d58;box-shadow:0 0 0 3px rgba(239,75,86,.08)}.signup-membership-option.annual>span:not(.offer-ribbon){background:#eef7f3;border-color:#7fa99f}.signup-membership-option.annual>input:checked+span:not(.offer-ribbon){border-color:#0b5b4e}.offer-ribbon{position:absolute;z-index:2;right:8px;top:-7px;padding:4px 7px;border-radius:999px;background:#ef4d58;color:#fff;font-size:8px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.signup-membership-help{display:block;margin-top:10px;color:#697772;line-height:1.4}

/* NYE: replace the synthetic fireworks scene with an authentic simulator photograph. */
.public-site .nye-feature-media,.public-site .nye-event-hero-media{background-image:url('/assets/nye-2026-real-v221.jpg')!important;background-position:center center!important;background-size:cover!important}.public-site .nye-feature-media::after{background:linear-gradient(90deg,rgba(6,77,66,.50),rgba(6,77,66,.05) 50%)!important}.public-site .nye-event-hero-media::before{background:linear-gradient(90deg,#064d42 0%,rgba(6,77,66,.45) 18%,rgba(6,77,66,.02) 54%)!important}

/* Darts hero: keep the exact 500px hero, reduce copy footprint so CTAs do not crop. */
.public-site .darts-hero-copy{padding-top:34px!important;padding-bottom:28px!important}.public-site .darts-hero-copy h1{font-size:clamp(58px,5.3vw,82px)!important;line-height:.88!important;margin:8px 0 14px!important}.public-site .darts-hero-copy p{font-size:16px!important;line-height:1.42!important;max-width:560px!important;margin-bottom:16px!important}.public-site .darts-hero-copy .hero-actions{gap:10px!important}.public-site .darts-hero-copy .hero-actions .btn{padding:11px 17px!important;font-size:14px!important}

@media(max-width:1050px){.public-site .membership-banner-v221{grid-template-columns:1fr!important}.public-site .membership-banner-prices{width:100%}}
@media(max-width:700px){.tts-testing-banner{align-items:flex-start;gap:7px;padding:9px 12px;font-size:11px}.tts-testing-banner strong{margin-top:1px}.public-site .public-footer .footer-logo{width:min(210px,72vw)!important}.public-site .membership-banner-v221{margin:20px 20px 65px!important}.public-site .membership-banner-prices{grid-template-columns:1fr 1fr;gap:10px}.public-site .membership-price-box{min-height:110px;padding:14px}.public-site .membership-price-box strong{font-size:42px}.signup-membership-options{grid-template-columns:1fr}.public-site .darts-hero-copy{padding:28px 20px 22px!important}.public-site .darts-hero-copy h1{font-size:52px!important}.public-site .darts-hero-copy p{font-size:14px!important;max-width:390px!important}.public-site .darts-hero-copy .hero-actions .btn{padding:10px 14px!important;font-size:13px!important}}
@media(max-width:480px){.public-site .membership-banner-prices{grid-template-columns:1fr}.public-site .membership-price-box{min-height:96px}.public-site .darts-hero-copy h1{font-size:46px!important}}
/* Signed-in membership chooser: monthly is the default, annual is the special offer. */
.plan-billing-options{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}.plan-billing-option.monthly-default{order:1;background:#fffaf0;border:1px solid #d7ddd8}.plan-billing-option.annual-special{order:2;background:#eef7f3;border:2px solid #0b5b4e}.plan-billing-option.annual-special .btn{background:#00483e!important;color:#fff!important;border-color:#00483e!important}.billing-pill.neutral{background:#f2eee3;color:#5d6d67}
@media(max-width:640px){.plan-billing-options{grid-template-columns:1fr!important}}

/* V222 launch QA: golf layout, booking layout, CTA contrast, feature alignment */
.public-site .golf-tech-v222{padding-top:82px!important;padding-bottom:74px!important}
.public-site .golf-tech-intro-v222{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:70px;align-items:start;max-width:1380px;margin:0 auto}
.public-site .golf-tech-intro-v222 h2{font:clamp(48px,5vw,76px)/.96 Georgia,'Times New Roman',serif;letter-spacing:-.035em;margin:10px 0 0;color:#00483e;max-width:720px}
.public-site .golf-tech-copy-v222{padding-top:33px}
.public-site .golf-tech-copy-v222 p{margin:0 0 18px;color:#425d55;font-size:18px;line-height:1.65}
.public-site .tech-cards-v222{max-width:1380px;margin:48px auto 0;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.public-site .tech-cards-v222 article{background:#fffdf8;border:1px solid #d6dfda;border-radius:22px;padding:28px;min-height:190px;box-shadow:0 12px 30px rgba(0,72,62,.035)}
.public-site .tech-cards-v222 article strong{display:none!important}
.public-site .tech-cards-v222 h3{font:30px/1.05 Georgia,'Times New Roman',serif;color:#00483e;margin:0 0 14px}
.public-site .tech-cards-v222 p{margin:0;color:#5b6d67;line-height:1.6}
.public-site .bay-showcase .section-heading .btn.btn-primary{color:#fff!important;background:#ef4d58!important;border-color:#ef4d58!important;text-decoration:none!important;min-width:168px;text-align:center}
.public-site .feature-band-v222{display:block!important;padding:0!important;background:#ef4d58!important}
.public-site .feature-band-v222 .feature-band-inner-v222{max-width:1380px;margin:0 auto;padding:28px 6vw;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;align-items:center}
.public-site .feature-band-v222 .feature-band-inner-v222>div{display:flex;flex-direction:column;gap:5px;min-width:0;padding:0 10px}
.public-site .feature-band-v222 strong{font-size:17px;line-height:1.25;color:#fff}
.public-site .feature-band-v222 span{font-size:15px;line-height:1.4;color:rgba(255,255,255,.94)}
#publicMobileMenu{display:none!important}
/* Legacy booking fallback is kept tidy; V222 opens the real booking sheet automatically. */
body:has(.booking-wizard-page){background:#fbf6ea!important}
.booking-wizard-page .booking-wizard-landing{background:#fbf6ea!important;min-height:calc(100vh - 92px)!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:center!important;padding:64px 6vw!important;box-sizing:border-box!important}
.booking-wizard-page .booking-wizard-landing>.booking-wizard-header{display:none!important}
.booking-wizard-page .booking-wizard-hero{width:min(920px,100%)!important;min-height:0!important;margin:0 auto!important;padding:46px!important;background:#fffdf8!important;border:1px solid #d6dfda!important;border-radius:28px!important;box-shadow:0 22px 60px rgba(0,72,62,.08)!important;color:#00483e!important;text-align:left!important}
.booking-wizard-page .booking-wizard-hero .tts-eyebrow{color:#ef4d58!important}
.booking-wizard-page .booking-wizard-hero h1{font:clamp(54px,6vw,82px)/.94 Georgia,'Times New Roman',serif!important;color:#00483e!important;letter-spacing:-.04em!important;margin:10px 0 18px!important;max-width:760px!important}
.booking-wizard-page .booking-wizard-hero>p:not(.tts-eyebrow){color:#51655e!important;font-size:17px!important;line-height:1.55!important;max-width:700px!important}
.booking-wizard-page .booking-launch-button{background:#ef4d58!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:14px 24px!important;font-weight:900!important;min-width:150px!important}
/* Never show staff-only Leadbetter in public/customer booking areas. */
.public-site .bay-card[data-bay='leadbetter'],.booking-bay-list [data-name*='Leadbetter']{display:none!important}
@media(max-width:900px){
  .public-site .golf-tech-intro-v222{grid-template-columns:1fr;gap:18px}
  .public-site .golf-tech-copy-v222{padding-top:0}
  .public-site .tech-cards-v222{grid-template-columns:1fr}
  .public-site .feature-band-v222 .feature-band-inner-v222{grid-template-columns:1fr;gap:18px;padding:24px 20px}
  .public-site .feature-band-v222 .feature-band-inner-v222>div{padding:0}
}
@media(max-width:600px){
  .booking-wizard-page .booking-wizard-landing{padding:28px 16px!important}
  .booking-wizard-page .booking-wizard-hero{padding:26px 20px!important;border-radius:22px!important}
  .booking-wizard-page .booking-wizard-hero h1{font-size:52px!important}
}

/* V223 unified booking hub */
.booking-hub-hero{width:min(1680px,calc(100% - 64px));min-height:540px;margin:34px auto 0;border-radius:30px;overflow:hidden;display:grid;grid-template-columns:minmax(420px,.85fr) minmax(0,1.15fr);background:#064d42;color:#fff;box-shadow:0 22px 55px rgba(0,72,62,.12)}
.booking-hub-copy{padding:68px 58px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.booking-hub-copy .eyebrow{color:#ff6a72}.booking-hub-copy h1{margin:12px 0 18px;font:clamp(62px,6vw,100px)/.86 Georgia,'Times New Roman',serif;letter-spacing:-.055em;color:#fff}.booking-hub-copy p{max-width:610px;margin:0 0 26px;color:rgba(255,255,255,.84);font-size:18px;line-height:1.55}.booking-hub-cta{font-size:17px!important;padding:16px 28px!important}.booking-hub-media{display:grid;grid-template-columns:1.06fr .94fr;min-width:0}.booking-hub-media figure{position:relative;margin:0;min-height:540px;overflow:hidden}.booking-hub-media img{width:100%;height:100%;object-fit:cover;display:block}.booking-hub-media figure:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,36,31,.68))}.booking-hub-media figure:first-child:before{content:'';position:absolute;z-index:2;inset:0 auto 0 0;width:120px;background:linear-gradient(90deg,#064d42,transparent)}.booking-hub-media figure span{position:absolute;z-index:3;left:24px;bottom:22px;color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:12px}
.booking-choice-section{padding-top:72px!important;padding-bottom:90px!important}.booking-choice-section .section-heading>div{max-width:860px}.booking-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:34px}.booking-choice-card{position:relative;min-height:300px;padding:30px;border:1px solid #d4ded8;border-radius:24px;background:#fffdf8;color:#00483e;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.booking-choice-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(0,72,62,.09)}.booking-choice-card:before{content:'';position:absolute;right:-42px;top:-45px;width:170px;height:170px;border-radius:50%;opacity:.12}.booking-choice-card.golf:before{background:#0b6a58}.booking-choice-card.darts:before{background:#ef4d58}.booking-choice-card.both{background:#064d42;color:#fff;border-color:#064d42}.booking-choice-card.both:before{background:#b6ff32;opacity:.1}.booking-choice-tag{display:inline-flex;width:max-content;padding:7px 10px;border-radius:999px;background:#eef5f1;color:#07594b;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.booking-choice-card.darts .booking-choice-tag{background:#ffe7e8;color:#b72835}.booking-choice-card.both .booking-choice-tag{background:#b6ff32;color:#07120d}.booking-choice-card h3{position:relative;margin:18px 0 10px;font:clamp(36px,3vw,48px)/.98 Georgia,'Times New Roman',serif;letter-spacing:-.04em;color:inherit}.booking-choice-card p{position:relative;margin:0;max-width:400px;color:#5c7068;line-height:1.55}.booking-choice-card.both p{color:rgba(255,255,255,.76)}.booking-choice-card>strong{position:relative;margin-top:26px;font-size:15px;color:#ef4d58}.booking-choice-card.both>strong{color:#b6ff32}
.booking-back-choice{display:inline-flex;margin-top:20px;color:#00483e;font-weight:850;text-decoration:none}.booking-back-choice.light{color:#fff}.unified-sub-booking{padding-bottom:50px!important}
.combo-booking-hero{width:min(1680px,calc(100% - 64px));min-height:420px;margin:34px auto 0;border-radius:30px;padding:68px 58px;box-sizing:border-box;background:linear-gradient(90deg,rgba(0,54,47,.94),rgba(0,54,47,.76)),url('/assets/interactive-darts-social-v204.jpg') center/cover;color:#fff;display:flex;align-items:center}.combo-booking-hero>div{max-width:850px}.combo-booking-hero .eyebrow{color:#ff6a72}.combo-booking-hero h1{margin:10px 0 16px;font:clamp(58px,6vw,92px)/.88 Georgia,'Times New Roman',serif;letter-spacing:-.055em;color:#fff}.combo-booking-hero p{max-width:760px;margin:0;color:rgba(255,255,255,.84);font-size:18px;line-height:1.55}.combo-planner-section{padding-top:70px!important}.combo-planner-copy{max-width:840px}.combo-planner-copy h2{font:clamp(44px,4vw,68px)/.95 Georgia,'Times New Roman',serif;letter-spacing:-.04em;margin:8px 0 12px;color:#00483e}.combo-planner-copy p{max-width:720px;color:#5b6d67;font-size:17px;line-height:1.55}.combo-planner-form{display:grid;grid-template-columns:1fr .7fr 1fr auto;gap:12px;align-items:end;margin:32px 0 28px;padding:22px;border:1px solid #d6dfda;border-radius:22px;background:#fffdf8}.combo-planner-form label{display:grid;gap:7px;color:#00483e;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.combo-planner-form input,.combo-planner-form select{min-height:48px;padding:0 13px;border:1px solid #cdd9d3;border-radius:13px;background:#fff;color:#173f35;font:750 15px Arial,sans-serif}.combo-planner-form .btn{min-height:48px}.combo-planner-results{min-height:120px}.combo-loading{padding:30px;text-align:center;border-radius:18px;background:#f2eee4;color:#65746e}.combo-results-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:15px}.combo-results-head h3{font:34px/1 Georgia,serif;color:#00483e;margin:5px 0}.combo-results-head small{max-width:460px;color:#6b7873;text-align:right;line-height:1.45}.combo-suggestion-list{display:grid;gap:12px}.combo-suggestion{position:relative;display:grid;gap:14px;padding:22px;border:1px solid #d6dfda;border-radius:20px;background:#fffdf8}.combo-suggestion.recommended{border:2px solid #0b6a58;background:#eff7f3}.combo-best{position:absolute;right:16px;top:14px;padding:6px 9px;border-radius:999px;background:#ef4d58;color:#fff;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.combo-time-line{display:grid;grid-template-columns:1fr 50px 1fr;gap:14px;align-items:center}.combo-time-line>div{display:grid;gap:4px}.combo-time-line b{font:38px/1 Georgia,serif;color:#00483e}.combo-time-line span{font-weight:800;color:#536761}.combo-time-line i{text-align:center;font-style:normal;font-size:26px;color:#ef4d58}.combo-gap{margin:0;color:#7b6a5f}.combo-gap.good{color:#0b6a58;font-weight:800}.combo-suggestion-foot{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;padding-top:13px;border-top:1px solid #dce4df}.combo-suggestion-foot>span{color:#6a7872;font-size:13px}.combo-suggestion-foot>strong{font-size:18px;color:#00483e}.tts-combo-plan-strip{margin:0 0 16px;padding:13px 15px;border-radius:15px;background:#eaf6ef;border:1px solid #9cc4b8;color:#07594b;display:grid;gap:3px}.tts-combo-plan-strip strong{font-size:13px}.tts-combo-plan-strip span{font-size:12px;line-height:1.4}
@media(max-width:1050px){.booking-hub-hero{grid-template-columns:1fr}.booking-hub-media{min-height:340px}.booking-hub-media figure{min-height:340px}.booking-hub-copy{padding:50px 40px}.booking-choice-grid{grid-template-columns:1fr}.combo-planner-form{grid-template-columns:1fr 1fr}.combo-planner-form .btn{grid-column:1/-1}.combo-suggestion-foot{grid-template-columns:1fr auto}.combo-suggestion-foot .btn{grid-column:1/-1}}
@media(max-width:700px){.booking-hub-hero,.combo-booking-hero{width:calc(100% - 24px);margin-top:12px;border-radius:22px}.booking-hub-copy,.combo-booking-hero{padding:36px 24px}.booking-hub-copy h1,.combo-booking-hero h1{font-size:54px}.booking-hub-copy p,.combo-booking-hero p{font-size:15px}.booking-hub-media{grid-template-columns:1fr 1fr;min-height:230px}.booking-hub-media figure{min-height:230px}.booking-choice-section{padding-top:42px!important}.booking-choice-card{min-height:230px;padding:24px}.combo-planner-form{grid-template-columns:1fr}.combo-planner-form .btn{grid-column:auto}.combo-results-head{align-items:flex-start;flex-direction:column}.combo-results-head small{text-align:left}.combo-time-line{grid-template-columns:1fr 32px 1fr}.combo-time-line b{font-size:30px}.combo-suggestion-foot{grid-template-columns:1fr}.combo-best{position:static;width:max-content}}

/* V223.1 unified booking flow refinements */
.booking-hub-page-hero{background:linear-gradient(90deg,#00483e 0%,#05584c 48%,#08473e 100%)!important;align-items:stretch!important}
.booking-hub-page-hero .booking-hub-copy{padding:82px 58px 82px 58px!important}
.booking-hub-page-hero .booking-hub-copy h1{max-width:680px}
.booking-hub-page-hero .booking-hub-media{position:relative;grid-template-columns:1.03fr .97fr!important;background:#031c18}
.booking-hub-page-hero .booking-hub-media.merged:before{content:'';position:absolute;left:calc(50% - 110px);top:0;bottom:0;width:220px;background:linear-gradient(90deg,rgba(6,77,66,.96),rgba(6,77,66,0));z-index:3;pointer-events:none}
.booking-hub-page-hero .booking-hub-media figure{min-height:540px!important}
.booking-hub-page-hero .booking-hub-media figure.darts-board:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.18),rgba(0,0,0,.04) 35%,rgba(0,0,0,.25))}
.booking-hub-page-hero .booking-hub-media figure.darts-board img{object-position:center center}
.booking-hub-page-hero .booking-hub-media figure.golf img{object-position:center center}
.booking-choice-card h3{max-width:420px}
.booking-choice-card>strong{font-weight:900}
.unified-sub-booking .booking-back-choice{color:#fffaf0!important}
.unified-golf-layout,.combo-booking-layout{grid-template-columns:minmax(0,1.15fr) 320px!important;align-items:start}
.tts-embedded-booking-card{padding:0!important;overflow:hidden!important}
.tts-embedded-booking-card .darts-booking-heading,.tts-embedded-booking-card .tts-embedded-booking-intro,.tts-embedded-booking-card .tts-embed-note{padding:0 28px}
.tts-embedded-booking-card .darts-booking-heading{padding-top:28px}
.tts-embedded-booking-intro{margin:6px 0 0;color:#5a6c66;line-height:1.6}
.tts-embed-note{display:grid;gap:5px;margin:18px 0 22px;padding-bottom:22px!important;border-bottom:1px solid #e2e8e4;color:#5c6f68}
.tts-embed-note strong{color:#00483e;font-size:.92rem}
.tts-legacy-booking-frame{display:block;width:100%;min-height:1200px;border:0;background:#fbf6ea}
.combo-booking-card{display:grid;gap:18px}
.combo-booking-fields{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.combo-search-button{justify-content:center;width:100%}
.combo-results-block{margin-top:0!important}
.combo-results-block .darts-booking-block-head{margin-bottom:14px}
.combo-planner-results{min-height:140px}
@media(max-width:1180px){
  .combo-booking-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:1050px){
  .booking-hub-page-hero .booking-hub-copy{padding:52px 40px!important}
  .booking-hub-page-hero .booking-hub-media.merged:before{left:calc(50% - 70px);width:140px}
  .unified-golf-layout,.combo-booking-layout{grid-template-columns:1fr!important}
}
@media(max-width:700px){
  .booking-hub-page-hero .booking-hub-copy{padding:36px 24px!important}
  .booking-hub-page-hero .booking-hub-media{grid-template-columns:1fr 1fr!important}
  .booking-hub-page-hero .booking-hub-media figure{min-height:220px!important}
  .booking-hub-page-hero .booking-hub-media.merged:before{left:calc(50% - 46px);width:92px}
  .tts-embedded-booking-card .darts-booking-heading,.tts-embedded-booking-card .tts-embedded-booking-intro,.tts-embedded-booking-card .tts-embed-note{padding-left:20px;padding-right:20px}
  .tts-embedded-booking-card .darts-booking-heading{padding-top:20px}
  .combo-booking-fields{grid-template-columns:1fr!important}
}

/* V224 unified booking system */
.book-main-hero{display:grid;grid-template-columns:minmax(420px,.86fr) minmax(0,1.14fr);min-height:500px;background:#00483e;color:#fff;margin:0;width:100%;overflow:hidden}
.book-main-hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:72px max(52px,calc((100vw - 1680px)/2 + 52px));padding-right:56px;box-sizing:border-box}
.book-main-hero-copy .eyebrow{color:#ff5a63}.book-main-hero-copy h1{margin:12px 0 18px;font:clamp(68px,6vw,100px)/.88 Georgia,'Times New Roman',serif;letter-spacing:-.055em;color:#fff;max-width:700px}.book-main-hero-copy p{max-width:650px;margin:0 0 28px;color:rgba(255,255,255,.86);font-size:18px;line-height:1.55}.book-main-hero-copy .btn{font-size:16px;padding:15px 27px}
.book-main-hero-media{position:relative;min-height:500px;overflow:hidden;background:#102f2a}.book-main-hero-media:before{content:'';position:absolute;z-index:2;left:0;top:0;bottom:0;width:180px;background:linear-gradient(90deg,#00483e 0%,rgba(0,72,62,.78) 28%,rgba(0,72,62,0) 100%);pointer-events:none}.book-main-hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 55%,rgba(0,36,31,.22));pointer-events:none}.book-main-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.unified-booking-choice-section{padding-top:64px!important;padding-bottom:78px!important}.unified-booking-choice-section .section-heading{margin-bottom:28px}.unified-booking-choice-section .section-heading p{max-width:760px;color:#5d6d67;font-size:16px;line-height:1.55}
.unified-booking-stage{padding-top:46px!important;padding-bottom:86px!important}.unified-booking-back{display:inline-flex;margin:0 auto 18px;max-width:1100px;width:min(1100px,100%);box-sizing:border-box;color:#0a584d;font-size:13px;font-weight:850;text-decoration:none}.unified-booking-back:hover{text-decoration:underline}
.unified-booking-card{width:min(1100px,100%);margin:0 auto!important;padding:34px!important;border-radius:28px!important;box-shadow:0 20px 55px rgba(0,72,62,.08)!important}
.unified-booking-card .darts-booking-heading{margin-bottom:24px}.unified-booking-card .darts-booking-heading h2{font:clamp(48px,4.5vw,68px)/.94 Georgia,'Times New Roman',serif!important;letter-spacing:-.04em!important;color:#00483e!important;margin:6px 0 0!important}
.unified-booking-card .darts-booking-fields{grid-template-columns:repeat(3,minmax(0,1fr))!important}.unified-booking-card .darts-booking-fields label,.combo-preference-row label{display:grid;gap:8px;color:#00483e;font-size:12px;font-weight:900}.unified-booking-card .darts-booking-fields input,.unified-booking-card .darts-booking-fields select,.combo-preference-row select{width:100%;min-height:48px;border:1px solid #c9d8d2;border-radius:13px;background:#fff;color:#173f35;padding:0 13px;font:750 15px Arial,sans-serif;box-sizing:border-box}
.unified-booking-card .darts-booking-block{margin-top:24px}.unified-booking-card .darts-time-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.unified-booking-card .darts-time-grid button{min-height:64px;padding:11px 12px}.unified-booking-card .darts-time-grid button strong{font-size:17px}.unified-booking-card .darts-time-grid button small{font-size:11px}
.golf-simulator-block{border-top:1px solid #d9e1dc;padding-top:22px}.golf-simulator-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.golf-sim-choice{display:grid;grid-template-columns:180px 1fr;min-height:160px;padding:0;border:1px solid #cedbd5;border-radius:18px;background:#fffdf8;overflow:hidden;text-align:left;cursor:pointer;transition:.18s ease;box-shadow:none}.golf-sim-choice:hover{transform:translateY(-1px);border-color:#8db3a8}.golf-sim-choice.selected{border:2px solid #0a6758;background:#eef7f2;box-shadow:0 0 0 3px rgba(10,103,88,.08)}.golf-sim-choice-image{display:flex;align-items:center;justify-content:center;background:#f0f1eb;padding:14px}.golf-sim-choice-image img{max-width:100%;max-height:128px;object-fit:contain}.golf-sim-choice-copy{padding:16px 17px;display:flex;flex-direction:column;gap:4px}.golf-sim-choice-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#6c7a75;font-weight:900}.golf-sim-choice-copy strong{font-size:20px;color:#00483e}.golf-sim-choice-copy em{font-size:12px;color:#5f716b;font-style:normal;font-weight:800}.golf-sim-choice-copy span{font-size:12px;line-height:1.4;color:#596a64;margin-top:3px}.golf-sim-choice-copy b{font-size:15px;color:#ef4d58;margin-top:auto}
.booking-extras-row{display:grid;grid-template-columns:1fr 1.35fr;gap:12px;margin-top:22px}.booking-extras-row>label,.booking-member-option>label{display:flex;gap:11px;align-items:flex-start;padding:16px;border:1px solid #d4dfda;border-radius:15px;background:#fffdf8;color:#173f35}.booking-extras-row input,.booking-member-option input{margin-top:3px;width:18px;height:18px}.booking-extras-row span,.booking-member-option span{display:grid;gap:4px}.booking-extras-row strong,.booking-member-option strong{font-size:14px;color:#00483e}.booking-extras-row small,.booking-member-option small{font-size:12px;line-height:1.45;color:#687873}.booking-extras-row .darts-waiver-link{font-size:14px}
.booking-member-option{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-top:22px;padding:14px;border-radius:16px;background:#eef7f2;border:1px solid #b7d1c8}.booking-member-option>label{border:0;background:transparent;padding:5px}.booking-member-hours{display:grid!important;gap:6px!important}.booking-member-hours>span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.booking-member-hours select{min-height:44px;border:1px solid #b8cac4;border-radius:11px;background:#fff;padding:0 10px}
.booking-lane-note{margin:14px 0 0;padding:13px 15px;border-radius:13px;background:#edf6f2;color:#285f55;font-size:12px;line-height:1.45}.combo-preference-row{max-width:330px;margin-top:14px}.combo-time-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.combo-time-choice{position:relative;min-height:88px;padding:16px 17px;border:1px solid #ccd9d4;border-radius:16px;background:#fff;text-align:left;cursor:pointer;display:grid;gap:7px}.combo-time-choice:hover{border-color:#8bb3a7}.combo-time-choice.selected,.combo-time-choice.recommended.selected{border:2px solid #0a6758;background:#eef7f2}.combo-time-choice.recommended{border-color:#91b8ad}.combo-time-choice strong{font-size:18px;color:#00483e}.combo-time-choice strong i{font-style:normal;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#ef4d58}.combo-time-choice small{font-size:11px;line-height:1.4;color:#66766f}.combo-best-inline{position:absolute;right:10px;top:9px;padding:4px 7px;border-radius:999px;background:#ef4d58;color:white;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.unified-booking-card .darts-booking-summary{margin-top:24px}.unified-booking-card .darts-checkout-button{margin-top:18px;min-height:52px;font-size:15px}.unified-booking-card .darts-rules-check{margin-top:18px}
@media(max-width:1080px){.book-main-hero{grid-template-columns:1fr}.book-main-hero-copy{padding:58px 40px}.book-main-hero-media{min-height:360px}.book-main-hero-media:before{width:100%;height:90px;bottom:auto;background:linear-gradient(180deg,#00483e 0%,rgba(0,72,62,0) 100%)}.unified-booking-card .darts-time-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.golf-simulator-choice-grid{grid-template-columns:1fr}.booking-extras-row{grid-template-columns:1fr}.booking-member-option{grid-template-columns:1fr}.combo-time-choice-grid{grid-template-columns:1fr}}
@media(max-width:700px){.book-main-hero-copy{padding:42px 22px}.book-main-hero-copy h1{font-size:56px}.book-main-hero-copy p{font-size:15px}.book-main-hero-media{min-height:250px}.unified-booking-stage{padding:24px 12px 70px!important}.unified-booking-back{padding:0 6px}.unified-booking-card{padding:22px 16px!important;border-radius:22px!important}.unified-booking-card .darts-booking-heading h2{font-size:46px!important}.unified-booking-card .darts-booking-fields{grid-template-columns:1fr!important}.unified-booking-card .darts-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.golf-sim-choice{grid-template-columns:120px 1fr;min-height:150px}.golf-sim-choice-image{padding:8px}.golf-sim-choice-copy{padding:13px}.unified-booking-choice-section{padding-top:42px!important}}
