
/* v3.16.33 — stable first paint. Intrinsic SVG sizes also exist in markup;
   these guards prevent theme/global SVG rules from expanding booking icons. */
.bph-cb svg{max-width:24px;max-height:24px}
.bph-cb__mobile-info{display:none!important}
/* v3.16.14 — approved Court Booking UI, canonical desktop/mobile stylesheet. */
.bph-cb{--cb-green:#10b957;--cb-green-bright:#58eb83;--cb-green-soft:#eaf8ee;--cb-ink:#11181d;--cb-muted:#6b747b;--cb-line:#e2e7e3;--cb-dark:#06181c;--cb-dark-2:#0b2228;box-sizing:border-box;width:100vw;margin-left:calc(50% - 50vw);overflow:hidden;background:#fff;color:var(--cb-ink);font-family:Roboto,Arial,sans-serif}
.bph-cb *{box-sizing:border-box}
.bph-cb :where(h1,h2,h3,p,figure,ul,ol){margin-block-start:0}
.bph-cb :where(button,input,select,textarea){font:inherit;letter-spacing:normal;text-transform:none;box-shadow:none}
.bph-cb a{text-decoration:none}
.bph-cb svg{display:block;width:21px;height:21px;flex:0 0 auto}
.bph-cb__shell,.bph-cb__hero-shell{width:min(1160px,calc(100% - 48px));margin:0 auto}
.bph-cb__hero{position:relative;min-height:300px;overflow:hidden;background:var(--cb-dark);color:#fff}
.bph-cb__hero-media{position:absolute;inset:0;background-position:center 54%;background-size:cover}
.bph-cb__hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,19,22,.96) 0%,rgba(3,19,22,.88) 42%,rgba(3,19,22,.52) 72%,rgba(3,19,22,.68) 100%)}
.bph-cb__hero-shell{position:relative;z-index:2;display:flex;align-items:center;min-height:300px;padding:44px 0 58px}
.bph-cb__hero-copy{max-width:560px}
.bph-cb__eyebrow{display:block;margin-bottom:12px;color:var(--cb-green-bright);font-size:11px;font-weight:600;letter-spacing:.18em}
.bph-cb__hero h1{margin:0!important;color:#fff!important;font-size:64px!important;font-weight:600!important;line-height:.95!important;letter-spacing:-.055em!important}
.bph-cb__hero-copy>p{margin:13px 0 26px!important;color:rgba(255,255,255,.92)!important;font-size:22px!important;font-weight:500!important;line-height:1.2!important}
.bph-cb__hero-trust{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.bph-cb__hero-trust span{display:inline-flex;align-items:center;gap:9px;color:#fff;font-size:12px}
.bph-cb__hero-trust svg{width:20px;height:20px;color:var(--cb-green-bright)}
.bph-cb__hero-trust b{font-weight:600}
.bph-cb__booking-area{position:relative;padding:0 0 26px;background:#f7f8f6}
.bph-cb__booking-area>.bph-cb__shell{position:relative;z-index:3;margin-top:-38px}
.bph-cb__server-error{margin:0 0 12px;padding:12px 15px;border:1px solid #efc6c1;border-radius:10px;background:#fff5f4;color:#a03831;font-size:12px}
.bph-cb__stepper{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:12px;margin-bottom:12px;padding:14px 20px;border:1px solid rgba(13,38,30,.09);border-radius:13px;background:#fff;box-shadow:0 10px 26px rgba(21,39,32,.06)}
.bph-cb__stepper>div{height:2px;background:#dfe4e1}
.bph-cb__stepper button{display:flex;align-items:center;gap:8px;padding:0;border:0;background:transparent;color:#88908d;appearance:none;cursor:default}
.bph-cb__stepper button:not(:disabled){cursor:pointer}
.bph-cb__stepper i{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#dfe4e1;color:#68716e;font-size:11px;font-style:normal;font-weight:600}
.bph-cb__stepper span{font-size:11px;font-weight:600;white-space:nowrap}
.bph-cb__stepper .is-active,.bph-cb__stepper .is-complete{color:#0a9444}
.bph-cb__stepper .is-active i,.bph-cb__stepper .is-complete i{background:var(--cb-green);color:#fff}
.bph-cb__stage-wrap{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px;padding:12px;border:1px solid rgba(13,38,30,.09);border-radius:15px;background:#fff;box-shadow:0 14px 34px rgba(21,39,32,.06)}
.bph-cb__aside{display:flex;flex-direction:column;gap:10px}
.bph-cb__aside-image{position:relative;min-height:300px;overflow:hidden;border-radius:11px;background-position:center;background-size:cover}
.bph-cb__aside-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,14,17,.08),rgba(2,14,17,.76))}
.bph-cb__aside-image>div{position:absolute;bottom:18px;left:20px;z-index:2;color:#fff}
.bph-cb__aside-image strong{display:block;font-size:23px;line-height:1.08;letter-spacing:.015em}
.bph-cb__aside-image span{display:block;margin-top:8px;color:rgba(255,255,255,.88);font-size:12px;line-height:1.45}
.bph-cb__aside-points{display:grid;gap:13px;padding:16px;border-radius:11px;background:linear-gradient(135deg,#edf8f1,#f7faf7)}
.bph-cb__aside-points>span{display:grid;grid-template-columns:25px 1fr;column-gap:9px;align-items:start}
.bph-cb__aside-points svg{grid-row:1/3;width:22px;height:22px;color:#0b8340}
.bph-cb__aside-points b{font-size:11px}
.bph-cb__aside-points small{margin-top:2px;color:#747e79;font-size:9.5px}
.bph-cb__stage-card{min-width:0;border:1px solid #edf0ee;border-radius:11px;background:#fff}
.bph-cb__step{display:flex;flex-direction:column;min-height:514px;padding:22px}
.bph-cb__step[hidden]{display:none!important}
.bph-cb__step>header{margin-bottom:17px}
.bph-cb__step>header h2{margin:0!important;color:#141b20!important;font-size:21px!important;line-height:1.18!important;letter-spacing:-.025em!important}
.bph-cb__step>header p{margin:5px 0 0!important;color:var(--cb-muted)!important;font-size:12px!important;line-height:1.5!important}
.bph-cb__mobile-step{display:none}
.bph-cb__primary,.bph-cb__secondary{min-height:46px;border-radius:8px;font-size:11px;font-weight:600;cursor:pointer}
.bph-cb__primary{display:flex;align-items:center;justify-content:center;gap:12px;padding:0 20px;border:0;background:linear-gradient(90deg,#0aa94e,#0cc15a);color:#fff}
.bph-cb__primary:disabled{opacity:.45;cursor:not-allowed}
.bph-cb__primary span{font-size:18px;line-height:1}
.bph-cb__secondary{padding:0 20px;border:1px solid #d9dfdb;background:#fff;color:#26302b}
.bph-cb__footer-split{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding-top:16px}
.bph-cb__date-layout{display:grid;grid-template-columns:minmax(320px,1.04fr) minmax(270px,.96fr);gap:18px;align-items:stretch}
.bph-cb__calendar,.bph-cb__date-help{border:1px solid #e0e5e1;border-radius:10px;background:#fff}
.bph-cb__calendar{padding:16px}
.bph-cb__calendar-head{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;margin-bottom:14px}
.bph-cb__calendar-head button{width:32px;height:32px;border:0;border-radius:7px;background:transparent;color:#121a1f;font-size:22px;cursor:pointer}
.bph-cb__calendar-head button:hover{background:#f0f5f1}
.bph-cb__calendar-head strong{text-align:center;font-size:13px}
.bph-cb__weekdays,.bph-cb__days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.bph-cb__weekdays{margin-bottom:5px}
.bph-cb__weekdays span{text-align:center;color:#77817c;font-size:9px;font-weight:500}
.bph-cb__days button{aspect-ratio:1;border:1px solid transparent;border-radius:7px;background:#fff;color:#1d252a;font-size:10.5px;font-weight:500;cursor:pointer}
.bph-cb__days button:hover:not(:disabled):not(.is-selected){border-color:#d8eee0;background:#edf8f0}
.bph-cb__days button.is-outside,.bph-cb__days button:disabled{color:#bdc4c0;cursor:not-allowed}
.bph-cb__days button.is-today:not(.is-selected){border-color:#99d5ac}
.bph-cb__days button.is-selected{border-color:#13a64d;background:#13a64d;color:#fff;box-shadow:0 5px 12px rgba(19,166,77,.18)}
.bph-cb__date-side{display:flex;flex-direction:column}
.bph-cb__date-help{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}
.bph-cb__date-help-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:12px;border-radius:50%;background:var(--cb-green-soft);color:var(--cb-green)}
.bph-cb__date-help strong{font-size:13px}
.bph-cb__date-help p{max-width:250px;margin:8px 0 0!important;color:#7a837e!important;font-size:11px!important;line-height:1.55!important}
.bph-cb__date-actions{padding-top:12px}
.bph-cb__date-actions .bph-cb__primary{width:100%}
.bph-cb__mobile-info{display:none}
.bph-cb__loading{display:flex;align-items:center;justify-content:center;gap:9px;min-height:120px;color:#6e7772;font-size:11px}
.bph-cb__loading svg{animation:bph-cb-spin 1s linear infinite}
@keyframes bph-cb-spin{to{transform:rotate(360deg)}}
.bph-cb__court-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.bph-cb__court-card{overflow:hidden;padding:0;border:1px solid #dfe5e1;border-radius:10px;background:#fff;color:var(--cb-ink);text-align:left;cursor:pointer}
.bph-cb__court-card:hover:not(:disabled){border-color:#96d3a9}
.bph-cb__court-card.is-selected{border-color:#21bd60;box-shadow:0 0 0 1px #21bd60}
.bph-cb__court-card.is-unavailable{opacity:.46;cursor:not-allowed}
.bph-cb__court-photo{display:block;height:116px;background-image:url("../images/padel-environment.webp");background-size:cover}
.bph-cb__court-photo--one{background-position:34% 54%}
.bph-cb__court-photo--two{background-position:74% 52%;filter:saturate(.9)}
.bph-cb__court-meta{display:flex;flex-direction:column;padding:9px 11px}
.bph-cb__court-meta b{font-size:12px}
.bph-cb__court-meta small{display:flex;align-items:center;gap:6px;margin-top:4px;color:#66716c;font-size:9px}
.bph-cb__court-meta small i{width:8px;height:8px;border-radius:50%;background:#17b954}
.bph-cb__selection-panel{margin-top:11px;padding:13px;border:1px solid #e2e7e3;border-radius:10px;background:#fafcf9}
.bph-cb__time-heading{margin-bottom:9px;color:#151d22;font-size:11px;font-weight:600}
.bph-cb__time-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:10px}
.bph-cb__time-slot{height:39px;border:1px solid #dce3de;border-radius:7px;background:#fff;color:#1d2822;font-size:10px;font-weight:600;cursor:pointer}
.bph-cb__time-slot:hover{border-color:#9bd7ac;background:#f2fbf5}
.bph-cb__time-slot.is-selected{border-color:#0eaf51;background:#0eaf51;color:#fff}
.bph-cb__field-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.bph-cb__field-row label{display:grid;gap:5px}
.bph-cb__field-row label>span{color:#5d6862;font-size:9px;font-weight:600}
.bph-cb__field-row input,.bph-cb__field-row select{width:100%;min-height:39px;padding:0 10px;border:1px solid #dce4df;border-radius:7px;background:#fff;color:#1b2420;font-size:10px}
.bph-cb__window-note{margin-top:8px;color:#717b76;font-size:9px;line-height:1.45}
.bph-cb__quote{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;margin-top:9px;padding:10px 11px;border-radius:8px;background:#edf8f0}
.bph-cb__quote>span{font-size:9px;font-weight:600}
.bph-cb__quote strong{grid-row:1/4;grid-column:2;color:#0d7b3c;font-size:17px}
.bph-cb__quote small{grid-column:1;color:#68736d;font-size:8.5px}
.bph-cb__member-saving{color:#0b9345!important;font-weight:600}
.bph-cb__message{margin-top:10px;padding:10px 12px;border-radius:8px;background:#f5f7f5;color:#59645e;font-size:10px}
.bph-cb__review{overflow:hidden;border:1px solid #e0e5e1;border-radius:10px;background:#fff}
.bph-cb__review>div{display:grid;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:0 13px;border-bottom:1px solid #eef1ef}
.bph-cb__review>div:last-child{border-bottom:0}
.bph-cb__review span{display:flex;align-items:center;gap:8px;color:#5f6964;font-size:10px;font-weight:500}
.bph-cb__review span svg{width:17px;height:17px;color:#18221e}
.bph-cb__review strong{font-size:10px;font-weight:600}
.bph-cb__review button{padding:0;border:0;background:transparent;color:#0da14b;font-size:9px;font-weight:600;cursor:pointer}
.bph-cb__review-total strong{font-size:15px}
.bph-cb__review-total small{grid-column:2;color:#0b9345;font-size:8px;font-weight:600}
.bph-cb__checkout-form{display:grid;gap:9px;margin-top:10px}
.bph-cb__customer-fields,.bph-cb__gift-fields{padding:12px;border:1px solid #e1e6e2;border-radius:9px;background:#fff}
.bph-cb__customer-fields h3,.bph-cb__gift-fields h3{margin:0 0 9px!important;color:#18211d!important;font-size:11px!important;font-weight:600!important}
.bph-cb__gift-fields h3 small{margin-left:5px;color:#7b857f;font-size:8px;font-weight:500}
.bph-cb__gift-fields>p{margin:-4px 0 9px!important;color:#77817c!important;font-size:8.5px!important;line-height:1.45!important}
.bph-cb__customer-fields>div,.bph-cb__gift-fields>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.bph-cb__gift-fields>div{grid-template-columns:1fr 1fr}
.bph-cb__customer-fields label,.bph-cb__gift-fields label{display:grid;gap:5px}
.bph-cb__customer-fields label>span,.bph-cb__gift-fields label>span{color:#5d6862;font-size:8.5px;font-weight:600}
.bph-cb__customer-fields input,.bph-cb__gift-fields input{width:100%;min-height:38px;padding:0 10px;border:1px solid #dce4df;border-radius:7px;background:#fff;color:#18211d;font-size:10px}
.bph-cb__secure-note{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center;padding:12px;border-radius:9px;background:#f3f6f4;color:#17211d}
.bph-cb__secure-note svg{width:23px;height:23px}
.bph-cb__secure-note span{display:grid;gap:2px}
.bph-cb__secure-note b{font-size:10px}
.bph-cb__secure-note small{color:#6d7772;font-size:8.5px;line-height:1.4}
.bph-cb__phase-note{padding:10px 11px;border:1px solid #e1e6e2;border-radius:8px;background:#fafbfa;color:#6a746f;font-size:8.5px;line-height:1.45}
.bph-cb__benefits{border-top:1px solid #e7ebe8;background:#fff}
.bph-cb__benefits .bph-cb__shell{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:21px 0}
.bph-cb__benefits span{display:grid;grid-template-columns:40px 1fr;align-items:center;column-gap:10px}
.bph-cb__benefits svg{grid-row:1/3;width:38px;height:38px;padding:9px;border-radius:50%;background:#ebf8ef;color:#0b7c3e}
.bph-cb__benefits i{display:grid;gap:1px;font-style:normal}
.bph-cb__benefits b{font-size:10px}
.bph-cb__benefits small{color:#77807b;font-size:8.5px}
.bph-cb--default .bph-cb__hero-copy{display:none}
.bph-cb--default .bph-cb__hero{min-height:236px}
.bph-cb--default .bph-cb__hero-shell{min-height:236px;padding:0}
.bph-cb--default .bph-cb__booking-area{background:#06181c}
.bph-cb--default .bph-cb__booking-area>.bph-cb__shell{margin-top:-176px;padding-bottom:34px}
.bph-cb--default .bph-cb__stepper{margin-left:326px;margin-right:12px;margin-bottom:0;border-bottom:0;border-radius:14px 14px 0 0;box-shadow:none}
.bph-cb--default .bph-cb__stage-wrap{grid-template-columns:300px minmax(0,1fr);gap:14px;padding:0 12px 12px;border:0;border-radius:0;background:transparent;box-shadow:none}
.bph-cb--default .bph-cb__aside-image{min-height:342px;border-radius:11px;background-position:center 56%}
.bph-cb--default .bph-cb__aside-image:after{background:linear-gradient(180deg,rgba(2,14,17,.16),rgba(2,14,17,.84))}
.bph-cb--default .bph-cb__aside-image strong{font-size:25px;letter-spacing:-.025em}
.bph-cb--default .bph-cb__aside-image span{font-size:13px;line-height:1.35}
.bph-cb--default .bph-cb__aside-points{border:1px solid rgba(255,255,255,.08);background:rgba(6,29,33,.82);color:#fff}
.bph-cb--default .bph-cb__aside-points svg{color:#58ef88}
.bph-cb--default .bph-cb__aside-points small{color:rgba(255,255,255,.66)}
.bph-cb--default .bph-cb__stage-card{border-radius:0 0 11px 11px}
.bph-cb--light .bph-cb__hero{min-height:356px;background:#f6f4ef;color:#111}
.bph-cb--light .bph-cb__hero-media{opacity:.74;filter:saturate(.72) brightness(1.18)}
.bph-cb--light .bph-cb__hero:after{background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.88) 39%,rgba(255,255,255,.40) 66%,rgba(255,255,255,.08) 100%)}
.bph-cb--light .bph-cb__hero-shell{min-height:356px;padding:46px 0 96px}
.bph-cb--light .bph-cb__eyebrow{color:#687078;letter-spacing:.34em}
.bph-cb--light .bph-cb__hero h1{color:#080a0b!important}
.bph-cb--light .bph-cb__hero-copy>p{color:#5e646e!important}
.bph-cb--light .bph-cb__hero-trust span{color:#1c2923}
.bph-cb--light .bph-cb__hero-trust svg{color:#0b7840}
.bph-cb--light .bph-cb__booking-area{padding:0 0 18px;background:#f7f7f5}
.bph-cb--light .bph-cb__booking-area>.bph-cb__shell{margin-top:-78px}
.bph-cb--light .bph-cb__stepper{margin-bottom:0;border-radius:14px 14px 0 0}
.bph-cb--light .bph-cb__stage-wrap{margin-top:0;border-radius:0 0 14px 14px}
.bph-cb--light .bph-cb__aside-image{min-height:330px}
.bph-cb--light .bph-cb__stage-card{border-radius:11px}
.bph-cb--confirmation{min-height:720px;padding:60px 16px 52px;background:linear-gradient(180deg,#0b2228 0%,#06181c 100%);color:#fff}
.bph-cb__confirm-shell{width:min(520px,100%);margin:0 auto;text-align:center}
.bph-cb__confirm-check{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 20px;border:4px solid #58eb83;border-radius:50%;color:#58eb83;font-size:42px;font-weight:500;line-height:1}
.bph-cb__confirm-shell>span{display:block;color:#58eb83;font-size:9px;font-weight:600;letter-spacing:.15em}
.bph-cb__confirm-shell h1{margin:7px 0 5px!important;color:#fff!important;font-size:30px!important;font-weight:600!important;line-height:1.1!important;letter-spacing:-.035em!important}
.bph-cb__confirm-shell>p{margin:0 0 17px!important;color:rgba(255,255,255,.8)!important;font-size:11px!important}
.bph-cb__confirm-card{overflow:hidden;border-radius:12px;background:#fff;color:#121a1e;text-align:left}
.bph-cb__confirm-card:before{content:"Booking Details";display:block;padding:14px 15px 7px;font-size:12px;font-weight:600}
.bph-cb__confirm-card>div{display:grid;grid-template-columns:120px 1fr;align-items:center;min-height:48px;padding:0 15px;border-bottom:1px solid #eef1ef}
.bph-cb__confirm-card>div:last-child{border-bottom:0}
.bph-cb__confirm-card span{color:#66716c;font-size:9px;font-weight:500}
.bph-cb__confirm-card strong{font-size:10px;font-weight:600}
.bph-cb__confirm-note{margin-top:10px;padding:12px 14px;border-radius:10px;background:#f3f6f4;color:#59645e;text-align:left;font-size:9px;line-height:1.45}
.bph-cb__confirm-actions{display:grid;gap:8px;margin-top:11px}
.bph-cb__confirm-actions .bph-cb__primary,.bph-cb__confirm-actions .bph-cb__secondary{width:100%;min-height:48px}
.bph-cb__confirm-actions .bph-cb__primary{background:linear-gradient(90deg,#4ae67c,#61ef8a);color:#06180e}
.bph-cb__confirm-actions .bph-cb__secondary{display:flex;align-items:center;justify-content:center;border-color:#73858b;background:transparent;color:#fff}
@media (min-width:768px){
.bph-cb--default .bph-cb__hero{display:none}
.bph-cb--default .bph-cb__booking-area{min-height:760px;padding:0;background-image:linear-gradient(90deg,rgba(2,20,24,.90) 0%,rgba(2,20,24,.82) 38%,rgba(2,20,24,.74) 100%),var(--bph-cb-bg-image);background-size:cover;background-position:center 48%;background-repeat:no-repeat}
.bph-cb--default .bph-cb__booking-area>.bph-cb__shell{display:grid;grid-template-columns:300px minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;row-gap:0;align-items:start;margin-top:0;padding:64px 12px 34px}
.bph-cb--default .bph-cb__stepper{grid-column:2;grid-row:1;margin:0;border:0;border-bottom:1px solid #edf0ee;border-radius:14px 14px 0 0;box-shadow:none}
.bph-cb--default .bph-cb__stage-wrap{display:contents}
.bph-cb--default .bph-cb__aside{grid-column:1;grid-row:1 / span 2;align-self:start}
.bph-cb--default .bph-cb__stage-card{grid-column:2;grid-row:2;border:0;border-radius:0 0 14px 14px;box-shadow:none}
.bph-cb--default .bph-cb__aside-image{min-height:342px}
}

/* v3.16.38 — dedicated Step 3 duration stage. Duration is selected before
   Review on every viewport; pricing metadata comes from the selected live slot. */
.bph-cb__selection-panel .bph-cb__field-row{display:none!important}
.bph-cb__duration-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px}
.bph-cb__duration-context>span{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:12px 13px;border:1px solid #e2e7e3;border-radius:10px;background:#fff;color:#182026}
.bph-cb__duration-context svg{width:21px;height:21px;color:#0b9a48}
.bph-cb__duration-context i{display:grid;gap:2px;min-width:0;font-style:normal}
.bph-cb__duration-context small{color:#7a8580;font-size:9.5px;font-weight:600}
.bph-cb__duration-context strong{overflow:hidden;color:#182026;font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.bph-cb__duration-stage-card{padding:16px;border:1px solid #e0e5e1;border-radius:11px;background:#fff}
.bph-cb__duration-stage-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}
.bph-cb__duration-stage-head strong{font-size:14px;font-weight:700}
.bph-cb__duration-stage-head small{color:#7a8580;font-size:10px}
.bph-cb__duration-stage-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.bph-cb__duration-stage-option{display:grid;grid-template-columns:minmax(0,1fr) auto 24px;align-items:center;gap:12px;min-height:72px;padding:12px 14px;border:1px solid #dfe5e1;border-radius:10px;background:#fff;color:#151d22;text-align:left;cursor:pointer;appearance:none}
.bph-cb__duration-stage-option:hover{border-color:#8ed5a5;background:#f8fcf9}
.bph-cb__duration-stage-option>span{display:grid;gap:3px}
.bph-cb__duration-stage-option b{font-size:13px;font-weight:700}
.bph-cb__duration-stage-option small{color:#728078;font-size:10px;font-weight:600}
.bph-cb__duration-stage-option>strong{color:#11181d;font-size:12px;font-weight:700;white-space:nowrap}
.bph-cb__duration-stage-option>i{display:grid;place-items:center;width:22px;height:22px;border:1.5px solid #cfd7d2;border-radius:50%;color:transparent;font-size:12px;font-style:normal;font-weight:700}
.bph-cb__duration-stage-option.is-selected{border-color:#13b956;background:#eefaf2;box-shadow:0 0 0 1px #13b956}
.bph-cb__duration-stage-option.is-selected>i{border-color:#13b956;background:#13b956;color:#fff}
.bph-cb__duration-stage-quote{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 12px;margin-top:12px;padding:12px 14px;border-radius:10px;background:#edf9f1}
.bph-cb__duration-stage-quote>span{color:#59665f;font-size:10px;font-weight:700}
.bph-cb__duration-stage-quote>strong{grid-row:1/3;grid-column:2;color:#0b8f43;font-size:16px;font-weight:700}
.bph-cb__duration-stage-quote>small{color:#6b7871;font-size:9.5px}
.bph-cb__duration-stage-quote>.bph-cb__member-saving{grid-column:1/3;margin-top:4px;color:#0b8f43;font-weight:700}

@media (max-width:767px){
.bph-cb{min-height:100dvh;background:linear-gradient(180deg,#0b2228 0%,#06181c 46%,#06181c 100%);color:#fff}
.bph-cb__shell,.bph-cb__hero-shell{width:100%}
.bph-cb__hero{height:68px;min-height:68px;background:transparent}
.bph-cb__hero-media{inset:0;opacity:.72;background-position:center 38%}
.bph-cb__hero:after{background:linear-gradient(180deg,rgba(5,22,26,.24),#07191d 100%)}
.bph-cb__hero-shell{display:none}
.bph-cb__booking-area{padding:0 0 18px;background:transparent}
.bph-cb__booking-area>.bph-cb__shell{margin-top:0;padding-bottom:0}
.bph-cb__stepper{grid-template-columns:auto 1fr auto 1fr auto;gap:7px;margin:0;padding:7px 43px 18px;border:0;border-radius:0;background:transparent;box-shadow:none}
.bph-cb__stepper>div{height:2px;background:#526168}
.bph-cb__stepper button{display:block;min-width:0}
.bph-cb__stepper span{display:none}
.bph-cb__stepper i{width:27px;height:27px;margin:0 auto;background:#55636a;color:#c8ced1}
.bph-cb__stepper .is-active i,.bph-cb__stepper .is-complete i{background:#58ef88;color:#062014}
.bph-cb__stage-wrap{display:block;padding:0 14px;border:0;border-radius:0;background:transparent;box-shadow:none}
.bph-cb__aside{display:none!important}
.bph-cb__stage-card{border:0;border-radius:0;background:transparent}
.bph-cb__step{min-height:calc(100dvh - 151px);padding:0}
.bph-cb__step>header{margin:0 3px 14px}
.bph-cb__mobile-step{display:none}
.bph-cb__desktop-num{display:none}
.bph-cb__step>header h2{color:#fff!important;font-size:22px!important;line-height:1.08!important}
.bph-cb__step>header p{margin-top:4px!important;color:rgba(255,255,255,.82)!important;font-size:11px!important}
.bph-cb__date-layout{display:block}
.bph-cb__date-help{display:none}
.bph-cb__calendar{padding:15px 13px;border:0;border-radius:11px;box-shadow:0 12px 26px rgba(0,0,0,.14)}
.bph-cb__calendar-head{margin-bottom:13px}
.bph-cb__calendar-head strong{font-size:12px}
.bph-cb__weekdays span{font-size:8.5px}
.bph-cb__days{gap:3px}
.bph-cb__days button{font-size:10px}
.bph-cb__mobile-info{display:flex;align-items:center;gap:11px;margin-top:10px;padding:12px 13px;border-radius:9px;background:#fff;color:#131c20}
.bph-cb__mobile-info svg{width:22px;height:22px}
.bph-cb__mobile-info span{display:grid;gap:2px}
.bph-cb__mobile-info b{font-size:10px}
.bph-cb__mobile-info small{color:#737d78;font-size:8.5px}
.bph-cb__date-actions{padding-top:10px}
.bph-cb__date-actions .bph-cb__primary{min-height:48px}
.bph-cb__court-grid{gap:8px}
.bph-cb__court-card{border-radius:9px}
.bph-cb__court-photo{height:102px}
.bph-cb__court-meta{padding:8px 9px}
.bph-cb__court-meta b{font-size:11px}
.bph-cb__selection-panel{margin-top:9px;padding:11px;border:0;border-radius:9px;background:#fff;color:#151e22;box-shadow:0 10px 24px rgba(0,0,0,.12)}
.bph-cb__time-heading{font-size:10px}
.bph-cb__time-slots{grid-template-columns:repeat(3,1fr);gap:6px}
.bph-cb__time-slot{height:35px;font-size:9.5px}
.bph-cb__field-row{grid-template-columns:1fr}
.bph-cb__field-row label>span{font-size:8px}
.bph-cb__field-row input,.bph-cb__field-row select{min-height:37px}
.bph-cb__window-note{font-size:8px}
.bph-cb__quote strong{font-size:15px}
.bph-cb__loading{color:#d7dfe2}
.bph-cb__message{background:#fff;color:#55615b}
.bph-cb__review{border:0;border-radius:9px;background:#fff;color:#121a1e;box-shadow:0 10px 24px rgba(0,0,0,.12)}
.bph-cb__review>div{grid-template-columns:90px minmax(0,1fr) auto;min-height:50px;padding:0 11px;gap:7px}
.bph-cb__review span{font-size:9px}
.bph-cb__review span svg{width:16px;height:16px}
.bph-cb__review strong{font-size:9px}
.bph-cb__review button{font-size:8px}
.bph-cb__review-total strong{font-size:14px}
.bph-cb__checkout-form{gap:8px;margin-top:9px}
.bph-cb__customer-fields,.bph-cb__gift-fields{padding:10px;border:0;box-shadow:0 9px 22px rgba(0,0,0,.1)}
.bph-cb__customer-fields>div,.bph-cb__gift-fields>div{grid-template-columns:1fr;gap:7px}
.bph-cb__customer-fields input,.bph-cb__gift-fields input{min-height:38px}
.bph-cb__secure-note{background:#fff;color:#121a1e;box-shadow:0 9px 22px rgba(0,0,0,.1)}
.bph-cb__phase-note{border-color:#46555b;background:transparent;color:#b8c1c5}
.bph-cb__footer-split{display:grid;grid-template-columns:82px minmax(0,1fr);gap:8px;padding-top:10px}
.bph-cb__primary,.bph-cb__secondary{min-height:48px;border-radius:8px}
.bph-cb__secondary{padding:0 8px;border-color:#708087;background:transparent;color:#fff}
.bph-cb__benefits{display:none}
.bph-cb__server-error{margin:0 14px 12px}
.bph-cb--default .bph-cb__hero,.bph-cb--light .bph-cb__hero{height:68px;min-height:68px}
.bph-cb--default .bph-cb__booking-area>.bph-cb__shell,.bph-cb--light .bph-cb__booking-area>.bph-cb__shell{margin-top:0}
.bph-cb--default .bph-cb__stepper,.bph-cb--light .bph-cb__stepper{margin-left:0;margin-right:0;border-radius:0}
.bph-cb--default .bph-cb__stage-wrap,.bph-cb--light .bph-cb__stage-wrap{padding-top:0;padding-bottom:0;border:0;border-radius:0;background:transparent}
.bph-cb--default .bph-cb__stage-card,.bph-cb--light .bph-cb__stage-card{border-radius:0;background:transparent}
.bph-cb--confirmation{min-height:100dvh;padding:42px 14px 28px}
.bph-cb__confirm-check{width:68px;height:68px;margin-bottom:17px;font-size:39px}
.bph-cb__confirm-shell h1{font-size:25px!important}
.bph-cb__confirm-card>div{grid-template-columns:94px 1fr;min-height:46px}
.bph-cb__confirm-actions .bph-cb__primary,.bph-cb__confirm-actions .bph-cb__secondary{min-height:46px}
}
@media (max-width:390px){
.bph-cb__stepper{padding-left:34px;padding-right:34px}
.bph-cb__stage-wrap{padding-left:11px;padding-right:11px}
.bph-cb__calendar{padding-left:11px;padding-right:11px}
.bph-cb__court-photo{height:94px}
.bph-cb__review>div{grid-template-columns:84px minmax(0,1fr) auto}
}

/* v3.16.13 — desktop booking hierarchy/cascade repair.
   The global typography manager no longer controls structural buttons.
   These rules restore the approved proportions without relying on theme CSS. */
@media (min-width:768px){
  .bph-cb__stepper{min-height:62px;padding:14px 22px;gap:14px}
  .bph-cb__stepper button{min-width:0;line-height:1.2}
  .bph-cb__stepper i{width:30px;height:30px;font-size:12px}
  .bph-cb__stepper span{font-size:var(--bph-type-label,13px)!important;font-weight:var(--bph-weight-label,600)!important;line-height:1.2}
  .bph-cb__stepper>div{min-width:36px}
  .bph-cb__stage-wrap{align-items:stretch}
  .bph-cb__stage-card{overflow:hidden}
  .bph-cb__step{padding:26px 28px 28px}
  .bph-cb__step>header{margin-bottom:20px}
  .bph-cb__step>header h2{font-size:var(--bph-type-page,30px)!important;font-weight:var(--bph-weight-heading,600)!important;line-height:1.15!important;letter-spacing:-.025em!important}
  .bph-cb__step>header p{margin-top:7px!important;font-size:var(--bph-type-body,15px)!important;line-height:var(--bph-body-lh,1.5)!important}
  .bph-cb--default .bph-cb__desktop-num{display:none}
  .bph-cb--light .bph-cb__desktop-num{display:inline}
  .bph-cb__calendar-head strong{font-size:15px}
  .bph-cb__weekdays span{font-size:11px}
  .bph-cb__days button{font-size:12px}
  .bph-cb__date-help strong{font-size:15px}
  .bph-cb__date-help p{font-size:13px!important}
  .bph-cb__aside-points b{font-size:12px}
  .bph-cb__aside-points small{font-size:10.5px}
}

/* v3.16.26 — mobile booking reference correction.
   IMPORTANT: the booking plugin does NOT create, hide or replace the site/theme
   header or global mobile navigation. This block only styles booking content. */
.bph-cb__time-legend{display:none}
.bph-cb__secure-note small em{font-style:normal}

@media (max-width:767px){
  .bph-cb [hidden]{display:none!important}

  .bph-cb{
    --cb-green:#10b957;
    --cb-green-bright:#58ef88;
    min-height:100dvh!important;
    background:linear-gradient(180deg,#0b2228 0%,#06181c 46%,#06181c 100%)!important;
    color:#fff!important;
    font-family:Roboto,Arial,sans-serif!important;
  }
  .bph-cb *{font-family:inherit!important}

  /* Keep only the existing booking background strip. No duplicate plugin header. */
  .bph-cb--default .bph-cb__hero,
  .bph-cb--light .bph-cb__hero,
  .bph-cb__hero{
    display:block!important;
    height:68px!important;
    min-height:68px!important;
    background:transparent!important;
  }
  .bph-cb__hero-media{
    inset:0!important;
    opacity:.72!important;
    background-position:center 38%!important;
    background-size:cover!important;
  }
  .bph-cb__hero:after{
    background:linear-gradient(180deg,rgba(5,22,26,.24),#07191d 100%)!important;
  }
  .bph-cb__hero-shell{display:none!important}

  .bph-cb__booking-area{padding:0 0 120px!important;background:transparent!important}
  .bph-cb--default .bph-cb__booking-area>.bph-cb__shell,
  .bph-cb--light .bph-cb__booking-area>.bph-cb__shell,
  .bph-cb__booking-area>.bph-cb__shell{margin-top:0!important;padding-bottom:0!important}

  /* Approved compact progress counter: centered as one focused unit. */
  .bph-cb--default .bph-cb__stepper,
  .bph-cb--light .bph-cb__stepper,
  .bph-cb__stepper{
    width:300px!important;
    max-width:calc(100% - 44px)!important;
    grid-template-columns:36px minmax(0,1fr) 36px minmax(0,1fr) 36px minmax(0,1fr) 36px!important;
    gap:7px!important;
    margin:0 auto 28px!important;
    padding:14px 0 0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .bph-cb__stepper>div{height:2px!important;min-width:0!important;background:#596970!important;border-radius:20px!important}
  .bph-cb__stepper button{
    display:grid!important;place-items:center!important;
    width:36px!important;height:36px!important;min-width:36px!important;
    margin:0!important;padding:0!important;border:0!important;
    background:transparent!important;color:#d1d8db!important;box-shadow:none!important;
  }
  .bph-cb__stepper span{display:none!important}
  .bph-cb__stepper i{
    display:grid!important;place-items:center!important;
    width:36px!important;height:36px!important;margin:0!important;
    border-radius:50%!important;background:#5d6b71!important;color:#d6dde0!important;
    font-size:14px!important;font-weight:700!important;font-style:normal!important;line-height:1!important;
  }
  .bph-cb__stepper .is-complete i{background:#5d6b71!important;color:#d6dde0!important}
  .bph-cb__stepper .is-active i{background:#58ef88!important;color:#062014!important;box-shadow:0 5px 16px rgba(88,239,136,.18)!important}

  .bph-cb--default .bph-cb__stage-wrap,
  .bph-cb--light .bph-cb__stage-wrap,
  .bph-cb__stage-wrap{
    display:block!important;
    width:100%!important;
    max-width:520px!important;
    margin:0 auto!important;
    padding:0 22px!important;
    border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  }
  .bph-cb__aside{display:none!important}
  .bph-cb--default .bph-cb__stage-card,
  .bph-cb--light .bph-cb__stage-card,
  .bph-cb__stage-card{overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  .bph-cb__step{min-height:0!important;padding:0!important}
  .bph-cb__step>header{margin:0 0 19px!important;padding:0 1px!important}
  .bph-cb__mobile-step,.bph-cb__desktop-num{display:none!important}
  .bph-cb.bph-cb--default .bph-cb__step>header h2,
  .bph-cb.bph-cb--light .bph-cb__step>header h2,
  .bph-cb__step>header h2{
    margin:0!important;color:#fff!important;
    font-size:30px!important;font-weight:700!important;line-height:1.06!important;
    letter-spacing:-.04em!important;text-wrap:balance!important;
  }
  .bph-cb.bph-cb--default .bph-cb__step>header p,
  .bph-cb.bph-cb--light .bph-cb__step>header p,
  .bph-cb__step>header p{
    margin:8px 0 0!important;color:rgba(255,255,255,.84)!important;
    font-size:15px!important;font-weight:500!important;line-height:1.35!important;letter-spacing:-.01em!important;
  }

  /* STEP 1 */
  .bph-cb__date-layout{display:block!important}
  .bph-cb__date-help{display:none!important}
  .bph-cb__calendar{
    width:100%!important;
    padding:18px 15px 16px!important;
    border:0!important;border-radius:15px!important;
    background:#fff!important;color:#11181d!important;
    box-shadow:0 13px 30px rgba(0,0,0,.17)!important;
  }
  .bph-cb__calendar-head{grid-template-columns:42px 1fr 42px!important;align-items:center!important;margin:0 0 14px!important}
  .bph-cb__calendar-head button{
    display:grid!important;place-items:center!important;
    width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;
    border:0!important;border-radius:9px!important;background:transparent!important;color:#11181d!important;
    font-size:31px!important;font-weight:600!important;line-height:1!important;box-shadow:none!important;
  }
  .bph-cb__calendar-head strong{
    display:block!important;color:#11181d!important;text-align:center!important;
    font-size:19px!important;font-weight:700!important;line-height:1.2!important;letter-spacing:-.025em!important;
  }
  .bph-cb__weekdays,.bph-cb__days{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:4px!important}
  .bph-cb__weekdays{margin-bottom:6px!important}
  .bph-cb__weekdays span{color:#64717a!important;text-align:center!important;font-size:11px!important;font-weight:700!important;line-height:1!important}
  .bph-cb__days button{
    display:grid!important;place-items:center!important;
    width:100%!important;height:42px!important;min-width:0!important;min-height:42px!important;
    aspect-ratio:auto!important;margin:0!important;padding:0!important;
    border:1px solid transparent!important;border-radius:10px!important;background:#fff!important;color:#11181d!important;
    font-size:14px!important;font-weight:700!important;line-height:1!important;box-shadow:none!important;appearance:none!important;
  }
  .bph-cb__days button.is-outside,.bph-cb__days button:disabled{color:#bac3c7!important;background:#fff!important;opacity:1!important;font-weight:600!important}
  .bph-cb__days button.is-today:not(.is-selected){border:1.5px solid #74d99c!important;color:#11181d!important;background:#fff!important}
  .bph-cb__days button.is-selected{border-color:#10b957!important;background:#10b957!important;color:#fff!important;box-shadow:0 6px 15px rgba(16,185,87,.22)!important}

  /* Explicit correction from review: remove the white availability card. */
  .bph-cb__mobile-info{display:none!important}
  .bph-cb__date-actions{padding:12px 0 0!important}
  .bph-cb__date-actions .bph-cb__primary{width:100%!important}

  /* Shared CTA */
  .bph-cb .bph-cb__primary{
    min-height:56px!important;border:0!important;border-radius:13px!important;
    background:linear-gradient(90deg,#42e879 0%,#58ef88 100%)!important;color:#fff!important;
    font-size:15px!important;font-weight:700!important;line-height:1!important;
    box-shadow:0 10px 24px rgba(10,180,79,.12)!important;
  }
  .bph-cb .bph-cb__primary span{margin-left:auto!important;color:#fff!important;font-size:25px!important;font-weight:600!important;line-height:1!important}
  .bph-cb .bph-cb__primary:disabled{background:#17683a!important;color:rgba(255,255,255,.58)!important;opacity:1!important}
  .bph-cb .bph-cb__primary:disabled span{color:rgba(255,255,255,.58)!important}
  .bph-cb__date-actions .bph-cb__primary{padding:0 20px 0 24px!important}

  /* STEP 2 */
  .bph-cb__loading{min-height:52px!important;margin:-2px 0 8px!important;color:#dce4e7!important;font-size:13px!important;font-weight:600!important}
  .bph-cb__loading svg{width:24px!important;height:24px!important}
  .bph-cb__court-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:0!important}
  .bph-cb__court-card{overflow:hidden!important;border:1px solid #dfe5e1!important;border-radius:13px!important;background:#fff!important;color:#11181d!important;box-shadow:none!important}
  .bph-cb__court-card.is-selected{border-color:#36db73!important;box-shadow:0 0 0 2px #36db73!important}
  .bph-cb__court-card.is-unavailable{opacity:.50!important}
  .bph-cb__court-photo{height:118px!important;background-size:cover!important}
  .bph-cb__court-meta{padding:11px 12px 12px!important}
  .bph-cb__court-meta b{color:#11181d!important;font-size:15px!important;font-weight:700!important;line-height:1.2!important}
  .bph-cb__court-meta small{gap:7px!important;margin-top:6px!important;color:#435159!important;font-size:11px!important;font-weight:600!important;line-height:1.2!important}
  .bph-cb__court-meta small i{width:10px!important;height:10px!important;background:#11b957!important}
  .bph-cb__court-card.is-unavailable .bph-cb__court-meta small i{background:#cbd3d8!important}
  .bph-cb__selection-panel{margin:13px 0 0!important;padding:13px 12px 12px!important;border:0!important;border-radius:13px!important;background:#fff!important;color:#11181d!important;box-shadow:0 11px 25px rgba(0,0,0,.13)!important}
  .bph-cb__time-heading{margin:0 0 10px!important;color:#11181d!important;font-size:14px!important;font-weight:700!important;line-height:1.2!important}
  .bph-cb__time-slots{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0!important}
  .bph-cb__time-slot{height:43px!important;min-height:43px!important;padding:0!important;border:1px solid #dce3df!important;border-radius:9px!important;background:#fff!important;color:#11181d!important;font-size:13px!important;font-weight:700!important;line-height:1!important;box-shadow:none!important}
  .bph-cb__time-slot.is-selected{border-color:#10b957!important;background:#10b957!important;color:#fff!important;box-shadow:0 5px 12px rgba(16,185,87,.18)!important}
  .bph-cb__field-row{display:block!important;margin:10px 0 0!important}
  .bph-cb__start-field{display:none!important}
  .bph-cb__duration-field{display:none!important}
  .bph-cb__selection-panel.needs-duration .bph-cb__duration-field{display:grid!important;gap:6px!important}
  .bph-cb__duration-field>span{color:#4e5b62!important;font-size:12px!important;font-weight:700!important}
  .bph-cb__duration-field select{width:100%!important;min-height:43px!important;padding:0 12px!important;border:1px solid #dce3df!important;border-radius:9px!important;background:#fff!important;color:#11181d!important;font-size:13px!important;font-weight:700!important}
  .bph-cb__time-legend{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin:12px 1px 0!important;color:#53616a!important;font-size:10.5px!important;font-weight:600!important;line-height:1!important}
  .bph-cb__time-legend span{display:flex!important;align-items:center!important;gap:6px!important;white-space:nowrap!important}
  .bph-cb__time-legend i{display:block!important;width:10px!important;height:10px!important;border-radius:50%!important;box-sizing:border-box!important}
  .bph-cb__time-legend i.is-available{background:#10b957!important}
  .bph-cb__time-legend i.is-unavailable{background:#cbd3d8!important}
  .bph-cb__time-legend i.is-selected{width:12px!important;height:12px!important;border:2px solid #11181d!important;background:#fff!important}
  .bph-cb__window-note{display:none!important}
  .bph-cb__quote{display:none!important}
  .bph-cb__message{margin-top:10px!important;padding:12px 13px!important;border-radius:10px!important;background:#fff!important;color:#506059!important;font-size:12px!important;line-height:1.4!important}
  .bph-cb__footer-split{display:block!important;margin-top:12px!important;padding:0!important}
  .bph-cb__footer-split .bph-cb__secondary{display:none!important}
  .bph-cb__footer-split .bph-cb__primary{width:100%!important;padding:0 20px 0 24px!important}

  /* STEP 3 — Select duration */
  .bph-cb__duration-context{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin:0 0 11px!important}
  .bph-cb__duration-context>span{display:grid!important;grid-template-columns:1fr!important;justify-items:start!important;gap:6px!important;min-width:0!important;padding:11px 10px!important;border:0!important;border-radius:11px!important;background:rgba(255,255,255,.10)!important;color:#fff!important}
  .bph-cb__duration-context svg{width:19px!important;height:19px!important;color:#58ef88!important}
  .bph-cb__duration-context i{gap:2px!important;width:100%!important}
  .bph-cb__duration-context small{color:rgba(255,255,255,.62)!important;font-size:9px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.04em!important}
  .bph-cb__duration-context strong{width:100%!important;color:#fff!important;font-size:11px!important;font-weight:700!important;line-height:1.2!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .bph-cb__duration-stage-card{padding:14px 13px!important;border:0!important;border-radius:14px!important;background:#fff!important;color:#11181d!important;box-shadow:0 11px 26px rgba(0,0,0,.15)!important}
  .bph-cb__duration-stage-head{display:block!important;margin:0 0 12px!important}
  .bph-cb__duration-stage-head strong{display:block!important;color:#11181d!important;font-size:15px!important;font-weight:700!important;line-height:1.2!important}
  .bph-cb__duration-stage-head small{display:block!important;margin-top:4px!important;color:#66737a!important;font-size:11px!important;font-weight:500!important}
  .bph-cb__duration-stage-options{grid-template-columns:1fr!important;gap:9px!important}
  .bph-cb__duration-stage-option{grid-template-columns:minmax(0,1fr) auto 25px!important;gap:10px!important;min-height:66px!important;padding:11px 12px!important;border:1px solid #dce3df!important;border-radius:11px!important;background:#fff!important;color:#11181d!important;box-shadow:none!important}
  .bph-cb__duration-stage-option>span{gap:2px!important}
  .bph-cb__duration-stage-option b{color:#11181d!important;font-size:14px!important;font-weight:700!important;line-height:1.2!important}
  .bph-cb__duration-stage-option small{color:#6b777e!important;font-size:10.5px!important;font-weight:600!important}
  .bph-cb__duration-stage-option>strong{color:#11181d!important;font-size:13px!important;font-weight:700!important}
  .bph-cb__duration-stage-option>i{width:23px!important;height:23px!important;border-width:2px!important;font-size:12px!important}
  .bph-cb__duration-stage-option.is-selected{border-color:#10b957!important;background:#eefaf2!important;box-shadow:0 0 0 1px #10b957!important}
  .bph-cb__duration-stage-option.is-selected>i{border-color:#10b957!important;background:#10b957!important;color:#fff!important}
  .bph-cb__duration-stage-quote{grid-template-columns:1fr auto!important;gap:3px 12px!important;margin:11px 0 0!important;padding:12px 13px!important;border-radius:10px!important;background:#eefaf2!important}
  .bph-cb__duration-stage-quote>span{color:#536159!important;font-size:10.5px!important;font-weight:700!important}
  .bph-cb__duration-stage-quote>strong{color:#0b9948!important;font-size:17px!important;font-weight:700!important}
  .bph-cb__duration-stage-quote>small{color:#65736b!important;font-size:10px!important}
  .bph-cb__duration-stage-quote>.bph-cb__member-saving{color:#0b9345!important;font-size:10px!important;font-weight:700!important}
  .bph-cb__step[data-step="3"] .bph-cb__footer-split{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;gap:10px!important;margin-top:12px!important;padding:0!important}
  .bph-cb__step[data-step="3"] .bph-cb__footer-split .bph-cb__secondary{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:57px!important;padding:0 16px!important;border:1.5px solid rgba(255,255,255,.62)!important;border-radius:13px!important;background:transparent!important;color:#fff!important;font-size:14px!important;font-weight:700!important}
  .bph-cb__step[data-step="3"] .bph-cb__footer-split .bph-cb__primary{display:flex!important;width:100%!important;min-height:57px!important}

  /* STEP 4 — Review */
  .bph-cb__review{overflow:hidden!important;border:0!important;border-radius:14px!important;background:#fff!important;color:#11181d!important;box-shadow:0 11px 26px rgba(0,0,0,.15)!important}
  .bph-cb__review>div{grid-template-columns:112px minmax(0,1fr) auto!important;gap:10px!important;min-height:62px!important;padding:0 16px!important;border-bottom:1px solid #e9eeeb!important}
  .bph-cb__review span{gap:9px!important;color:#64717a!important;font-size:12px!important;font-weight:700!important;line-height:1.2!important}
  .bph-cb__review span svg{width:20px!important;height:20px!important;color:#11181d!important;stroke-width:1.8!important}
  .bph-cb__review strong{color:#11181d!important;font-size:13px!important;font-weight:700!important;line-height:1.25!important}
  .bph-cb__review button{color:#0eaa50!important;font-size:11px!important;font-weight:700!important;line-height:1!important}
  .bph-cb__review-total strong{font-size:16px!important}
  .bph-cb__review-total small{font-size:9.5px!important}
  .bph-cb__checkout-form{display:flex!important;flex-direction:column!important;gap:10px!important;margin-top:12px!important}
  .bph-cb__secure-note{order:1;grid-template-columns:40px 1fr!important;gap:13px!important;min-height:76px!important;padding:14px 17px!important;border-radius:13px!important;background:#fff!important;color:#11181d!important;box-shadow:0 10px 24px rgba(0,0,0,.12)!important}
  .bph-cb__secure-note svg{width:28px!important;height:28px!important;color:#11181d!important}
  .bph-cb__secure-note span{gap:4px!important}
  .bph-cb__secure-note b{color:#11181d!important;font-size:14px!important;font-weight:700!important;line-height:1.2!important}
  .bph-cb__secure-note small{color:#68757d!important;font-size:12px!important;font-weight:500!important;line-height:1.3!important}
  .bph-cb__secure-note small em{display:none!important}
  .bph-cb__checkout-form>.bph-cb__footer-split{order:2;margin-top:0!important}
  .bph-cb__customer-fields{order:3}
  .bph-cb__gift-fields{order:4}
  .bph-cb__phase-note{order:5}
  .bph-cb__customer-fields,.bph-cb__gift-fields{padding:14px!important;border:0!important;border-radius:13px!important;background:#fff!important;color:#11181d!important;box-shadow:0 9px 22px rgba(0,0,0,.10)!important}
  .bph-cb__customer-fields h3,.bph-cb__gift-fields h3{font-size:15px!important;font-weight:700!important}
  .bph-cb__customer-fields label>span,.bph-cb__gift-fields label>span{color:#536169!important;font-size:11px!important;font-weight:700!important}
  .bph-cb__customer-fields input,.bph-cb__gift-fields input{min-height:44px!important;border-radius:9px!important;color:#11181d!important;font-size:13px!important}
  .bph-cb__phase-note{font-size:11px!important;line-height:1.45!important}
  .bph-cb__benefits{display:none!important}
  .bph-cb__server-error{margin:0 22px 14px!important;border-radius:11px!important;font-size:12px!important}
}

@media (max-width:390px){
  .bph-cb--default .bph-cb__stage-wrap,
  .bph-cb--light .bph-cb__stage-wrap,
  .bph-cb__stage-wrap{padding-left:17px!important;padding-right:17px!important}
  .bph-cb--default .bph-cb__stepper,
  .bph-cb--light .bph-cb__stepper,
  .bph-cb__stepper{width:286px!important;max-width:calc(100% - 38px)!important}
  .bph-cb.bph-cb--default .bph-cb__step>header h2,
  .bph-cb.bph-cb--light .bph-cb__step>header h2,
  .bph-cb__step>header h2{font-size:28px!important}
  .bph-cb__calendar{padding-left:12px!important;padding-right:12px!important}
  .bph-cb__days button{height:39px!important;min-height:39px!important;font-size:13px!important}
  .bph-cb__court-photo{height:106px!important}
  .bph-cb__review>div{grid-template-columns:100px minmax(0,1fr) auto!important;padding-left:13px!important;padding-right:13px!important}
}

/* v3.16.27 — approved mobile Step 2/3 correction.
   The WordPress theme remains authoritative for the site header/navigation.
   No plugin header is created, hidden, replaced, or restyled here. */
@media (max-width:767px){
  /* Step 2 must remain exactly court + available time slots + legend. */
  .bph-cb__selection-panel .bph-cb__field-row,
  .bph-cb__selection-panel .bph-cb__duration-field,
  .bph-cb__selection-panel.needs-duration .bph-cb__duration-field{
    display:none!important;
  }

  /* Duration is chosen from Review only when the real source exposes >1 option. */
  .bph-cb__duration-sheet[hidden]{display:none!important}
  .bph-cb__duration-sheet{
    position:fixed!important;
    inset:0!important;
    z-index:999999!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:center!important;
    padding:18px!important;
    box-sizing:border-box!important;
  }
  .bph-cb__duration-sheet-backdrop{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(0,17,22,.58)!important;
    backdrop-filter:blur(5px)!important;
    -webkit-backdrop-filter:blur(5px)!important;
    appearance:none!important;
  }
  .bph-cb__duration-sheet-card{
    position:relative!important;
    width:min(100%,430px)!important;
    margin:0!important;
    padding:18px!important;
    border:0!important;
    border-radius:20px!important;
    background:#fff!important;
    color:#11181d!important;
    box-shadow:0 22px 60px rgba(0,0,0,.32)!important;
    box-sizing:border-box!important;
  }
  .bph-cb__duration-sheet-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:14px!important;
    margin:0 0 14px!important;
  }
  .bph-cb__duration-sheet-head>div{
    display:grid!important;
    gap:3px!important;
  }
  .bph-cb__duration-sheet-head span{
    color:#6b777d!important;
    font-size:11px!important;
    font-weight:700!important;
    line-height:1.25!important;
  }
  .bph-cb__duration-sheet-head strong{
    color:#11181d!important;
    font-size:20px!important;
    font-weight:700!important;
    line-height:1.15!important;
    letter-spacing:-.02em!important;
  }
  .bph-cb__duration-sheet-head>button{
    display:grid!important;
    place-items:center!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #dfe5e1!important;
    border-radius:50%!important;
    background:#fff!important;
    color:#11181d!important;
    font-size:25px!important;
    font-weight:500!important;
    line-height:1!important;
    appearance:none!important;
  }
  .bph-cb__duration-options{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  .bph-cb__duration-option{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    min-height:58px!important;
    margin:0!important;
    padding:0 14px!important;
    border:1px solid #dce3df!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#11181d!important;
    box-shadow:none!important;
    appearance:none!important;
  }
  .bph-cb__duration-option strong{
    color:#11181d!important;
    font-size:14px!important;
    font-weight:700!important;
    line-height:1.15!important;
  }
  .bph-cb__duration-option span{
    color:#10aa50!important;
    font-size:10px!important;
    font-weight:700!important;
    line-height:1!important;
  }
  .bph-cb__duration-option.is-selected{
    border-color:#24ce66!important;
    background:#effbf3!important;
    box-shadow:0 0 0 1px #24ce66 inset!important;
  }
  .bph-cb.is-duration-open{isolation:isolate}

  .bph-cb__review [data-review-duration]{white-space:nowrap!important}
}

/* v3.16.28 — Phase 3 mobile review screen reference lock.
   Scope is intentionally limited to the booking review step. The WordPress
   theme remains authoritative for all site header/navigation chrome. */
@media (max-width:767px){
  .bph-cb__step[data-step="4"]{
    width:100%!important;
    color:#fff!important;
  }
  .bph-cb__step[data-step="4"]>header{
    margin:0 0 18px!important;
    padding:0!important;
  }
  .bph-cb__step[data-step="4"]>header h2{
    margin:0!important;
    color:#fff!important;
    font-size:30px!important;
    font-weight:700!important;
    line-height:1.06!important;
    letter-spacing:-.04em!important;
  }
  .bph-cb__step[data-step="4"]>header p{
    margin:8px 0 0!important;
    color:rgba(255,255,255,.86)!important;
    font-size:15px!important;
    font-weight:500!important;
    line-height:1.35!important;
    letter-spacing:-.01em!important;
  }

  /* Approved white five-row booking summary. */
  .bph-cb__step[data-step="4"] .bph-cb__review{
    width:100%!important;
    overflow:hidden!important;
    margin:0!important;
    border:0!important;
    border-radius:15px!important;
    background:#fff!important;
    color:#11181d!important;
    box-shadow:0 11px 26px rgba(0,0,0,.14)!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review>div{
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr) 38px!important;
    align-items:center!important;
    gap:8px!important;
    min-height:66px!important;
    margin:0!important;
    padding:0 17px!important;
    border-bottom:1px solid #e8edef!important;
    box-sizing:border-box!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review>div:last-child{
    border-bottom:0!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review span{
    display:grid!important;
    grid-template-columns:23px auto!important;
    align-items:center!important;
    justify-content:start!important;
    gap:10px!important;
    min-width:0!important;
    color:#5f6d76!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1.15!important;
    white-space:nowrap!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review span svg{
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
    color:#11181d!important;
    stroke-width:1.9!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review strong{
    min-width:0!important;
    color:#11181d!important;
    font-size:14px!important;
    font-weight:700!important;
    line-height:1.25!important;
    letter-spacing:-.015em!important;
    overflow-wrap:anywhere!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review button{
    justify-self:end!important;
    width:auto!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:8px 0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#08a94d!important;
    font-size:12px!important;
    font-weight:700!important;
    line-height:1!important;
    box-shadow:none!important;
    appearance:none!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review-total strong{
    font-size:15px!important;
    font-weight:700!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review-total small{
    grid-column:2/4!important;
    margin:-8px 0 10px!important;
    color:#0b9345!important;
    font-size:10px!important;
    font-weight:700!important;
    line-height:1.3!important;
  }
  .bph-cb__step[data-step="4"] [data-review-duration]{
    white-space:nowrap!important;
  }

  /* Secure panel follows the review card exactly before the primary action. */
  .bph-cb__step[data-step="4"] .bph-cb__checkout-form{
    display:flex!important;
    flex-direction:column!important;
    gap:11px!important;
    width:100%!important;
    margin:13px 0 0!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__secure-note{
    order:1!important;
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    align-items:center!important;
    gap:13px!important;
    width:100%!important;
    min-height:78px!important;
    margin:0!important;
    padding:14px 17px!important;
    border:0!important;
    border-radius:14px!important;
    background:#fff!important;
    color:#11181d!important;
    box-shadow:0 10px 24px rgba(0,0,0,.12)!important;
    box-sizing:border-box!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__secure-note svg{
    width:29px!important;
    height:29px!important;
    color:#11181d!important;
    stroke-width:1.9!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__secure-note span{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:4px!important;
    color:#11181d!important;
    white-space:normal!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__secure-note b{
    color:#11181d!important;
    font-size:14px!important;
    font-weight:700!important;
    line-height:1.15!important;
    letter-spacing:-.01em!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__secure-note small{
    color:#68757d!important;
    font-size:11.5px!important;
    font-weight:500!important;
    line-height:1.3!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__secure-note small em{
    display:none!important;
  }

  .bph-cb__step[data-step="4"] .bph-cb__checkout-form>.bph-cb__footer-split{
    order:2!important;
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__footer-split .bph-cb__secondary{
    display:none!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__footer-split .bph-cb__primary{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:57px!important;
    margin:0!important;
    padding:0 20px 0 24px!important;
    border:0!important;
    border-radius:13px!important;
    background:linear-gradient(90deg,#42e879 0%,#58ef88 100%)!important;
    color:#fff!important;
    font-size:15.5px!important;
    font-weight:700!important;
    line-height:1!important;
    letter-spacing:-.015em!important;
    box-shadow:0 10px 24px rgba(10,180,79,.12)!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__footer-split .bph-cb__primary span{
    display:block!important;
    margin-left:auto!important;
    color:#fff!important;
    font-size:25px!important;
    font-weight:600!important;
    line-height:1!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__footer-split .bph-cb__primary:disabled{
    background:#17683a!important;
    color:rgba(255,255,255,.58)!important;
    opacity:1!important;
  }

  /* Keep the existing source-backed checkout fields below the approved review
     composition; no booking/payment/customer logic is removed. */
  .bph-cb__step[data-step="4"] .bph-cb__customer-fields{order:3!important}
  .bph-cb__step[data-step="4"] .bph-cb__gift-fields{order:4!important}
  .bph-cb__step[data-step="4"] .bph-cb__phase-note{order:5!important}
}

@media (max-width:390px){
  .bph-cb__step[data-step="4"] .bph-cb__review>div{
    grid-template-columns:102px minmax(0,1fr) 34px!important;
    min-height:63px!important;
    padding-left:14px!important;
    padding-right:14px!important;
    gap:7px!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review span{
    grid-template-columns:21px auto!important;
    gap:8px!important;
    font-size:12px!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review span svg{
    width:19px!important;
    height:19px!important;
    min-width:19px!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review strong{font-size:13px!important}
  .bph-cb__step[data-step="4"] .bph-cb__review button{font-size:11px!important}
}


/* v3.16.33 — availability can exist without a usable price. Keep those starts
   visible as unavailable rather than pretending the court itself is closed. */
.bph-cb__time-slot.is-unavailable,.bph-cb__time-slot:disabled{cursor:not-allowed;background:#f2f5f3;color:#aab4b8;border-color:#e3e8e5;box-shadow:none;opacity:1}
@media(max-width:767px){.bph-cb__time-slot.is-unavailable,.bph-cb__time-slot:disabled{background:#f4f6f5!important;color:#aeb7bb!important;border-color:#e4e8e6!important;box-shadow:none!important;opacity:1!important}}


/* v3.16.34 — Mobile Step 2 navigation repair.
 * Step 1 is the entry point; Step 2 must always expose an explicit way back
 * to the date selector. Keep Step 3's approved payment CTA treatment intact. */
@media (max-width: 767px){
  .bph-cb__step[data-step="2"] .bph-cb__footer-split{
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr)!important;
    align-items:stretch!important;
    gap:10px!important;
    width:100%!important;
    margin-top:12px!important;
    padding:0!important;
  }
  .bph-cb__step[data-step="2"] .bph-cb__footer-split .bph-cb__secondary{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:57px!important;
    margin:0!important;
    padding:0 16px!important;
    border:1.5px solid rgba(255,255,255,.62)!important;
    border-radius:13px!important;
    background:transparent!important;
    color:#fff!important;
    font-size:14px!important;
    font-weight:700!important;
    line-height:1!important;
    box-shadow:none!important;
  }
  .bph-cb__step[data-step="2"] .bph-cb__footer-split .bph-cb__primary{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    min-height:57px!important;
    margin:0!important;
  }
}

/* v3.16.36 — managed court inventory imagery */
.bph-cb__court-photo.has-managed-image{background:none!important;filter:none!important;overflow:hidden}
.bph-cb__court-photo.has-managed-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

/* v3.16.39 — five-stage booking journey + dedicated payment state.
 * Steps: Date → Court & Time → Duration → Review → Your Details.
 * Payment is a separate checkout state after Step 5; the theme header remains authoritative. */
.bph-cb__stepper{grid-template-columns:auto 1fr auto 1fr auto 1fr auto 1fr auto}
.bph-cb__inner-stage-header{margin:0 0 17px}
.bph-cb__inner-stage-header h2{margin:0!important;color:#141b20!important;font-size:21px!important;line-height:1.18!important;letter-spacing:-.025em!important}
.bph-cb__inner-stage-header p{margin:5px 0 0!important;color:var(--cb-muted)!important;font-size:12px!important;line-height:1.5!important}
.bph-cb__checkout-journey{display:block;margin:0}
.bph-cb__details-stage,.bph-cb__payment-stage{width:100%}
.bph-cb__returning-note{display:flex;align-items:flex-start;gap:9px;margin-top:10px;padding:10px 11px;border-radius:8px;background:#eff9f2;color:#1f5f39}
.bph-cb__returning-note strong{font-size:10px;white-space:nowrap}
.bph-cb__returning-note span{font-size:9px;line-height:1.4;color:#54705d}
.bph-cb__payment-eyebrow{display:block;margin:0 0 6px;color:#0aa94e;font-size:9px;font-weight:700;letter-spacing:.14em}
.bph-cb__payment-summary{overflow:hidden;border:1px solid #e0e6e2;border-radius:10px;background:#fff}
.bph-cb__payment-summary>div{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;min-height:46px;padding:0 13px;border-bottom:1px solid #edf0ee}
.bph-cb__payment-summary>div:last-child{border-bottom:0}
.bph-cb__payment-summary span{color:#68736d;font-size:10px;font-weight:600}
.bph-cb__payment-summary strong{color:#11181d;font-size:12px;font-weight:700}
.bph-cb__payment-summary .is-due{background:#f0faf3}
.bph-cb__payment-summary .is-due span{color:#1a5832;font-weight:700}
.bph-cb__payment-summary .is-due strong{color:#079746;font-size:15px}
.bph-cb__gift-choice{margin-top:10px;padding:12px;border:1px solid #e1e6e2;border-radius:10px;background:#fff}
.bph-cb__gift-choice-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.bph-cb__gift-choice-head h3{margin:0!important;color:#151d19!important;font-size:12px!important;font-weight:700!important}
.bph-cb__gift-choice-head p{margin:4px 0 0!important;color:#77817c!important;font-size:9px!important;line-height:1.4!important}
.bph-cb__gift-choice-head>span{padding:4px 7px;border-radius:999px;background:#f1f4f2;color:#68736d;font-size:8px;font-weight:700}
.bph-cb__gift-toggle{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}
.bph-cb__gift-toggle button{min-height:38px;border:1px solid #d9e0dc;border-radius:8px;background:#fff;color:#4f5c55;font-size:10px;font-weight:700;cursor:pointer}
.bph-cb__gift-toggle button.is-selected{border-color:#10b957;background:#eaf9ef;color:#087d3b;box-shadow:0 0 0 1px #10b957}
.bph-cb__gift-choice .bph-cb__gift-fields{margin-top:10px;padding:0;border:0;background:transparent;box-shadow:none}
.bph-cb__gift-choice .bph-cb__gift-fields>small{display:block;margin-top:8px;color:#76817b;font-size:8.5px;line-height:1.45}
.bph-cb__payment-stage>.bph-cb__secure-note{margin-top:10px}
.bph-cb__payment-stage>.bph-cb__phase-note{margin-top:10px}
.bph-cb__payment-stage>.bph-cb__footer-split{margin-top:12px}
.bph-cb__cta-arrow{font-size:18px!important;line-height:1!important}
[data-payment-submit-label]{font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important}

@media (max-width:767px){
  .bph-cb--default .bph-cb__stepper,
  .bph-cb--light .bph-cb__stepper,
  .bph-cb__stepper{
    width:330px!important;
    max-width:calc(100% - 36px)!important;
    grid-template-columns:34px minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr) 34px!important;
    gap:4px!important;
  }
  .bph-cb__stepper button{width:34px!important;height:34px!important;min-width:34px!important}
  .bph-cb__stepper i{width:34px!important;height:34px!important;font-size:13px!important}

  /* Step 4 is now review only. No customer or payment fields live here. */
  .bph-cb__step[data-step="4"] .bph-cb__secure-note{
    margin:13px 0 0!important;
    order:initial!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review-actions{
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr)!important;
    gap:10px!important;
    width:100%!important;
    margin-top:12px!important;
    padding:0!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review-actions .bph-cb__secondary{
    display:flex!important;align-items:center!important;justify-content:center!important;
    width:100%!important;min-height:57px!important;padding:0 16px!important;
    border:1.5px solid rgba(255,255,255,.62)!important;border-radius:13px!important;
    background:transparent!important;color:#fff!important;font-size:14px!important;font-weight:700!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review-actions .bph-cb__primary{
    display:flex!important;width:100%!important;min-height:57px!important;
    border-radius:13px!important;background:linear-gradient(90deg,#42e879 0%,#58ef88 100%)!important;
    color:#fff!important;font-size:15px!important;font-weight:700!important;opacity:1!important;
  }
  .bph-cb__step[data-step="4"] .bph-cb__review-actions .bph-cb__primary:disabled{
    background:#17683a!important;color:rgba(255,255,255,.58)!important;opacity:1!important;
  }

  /* Step 5: customer identity first. */
  .bph-cb__step[data-step="5"]{padding-bottom:6px!important}
  .bph-cb__step[data-step="5"] .bph-cb__checkout-journey{display:block!important;margin:0!important}
  .bph-cb__inner-stage-header{margin:0 0 19px!important;padding:0 1px!important}
  .bph-cb__inner-stage-header h2{color:#fff!important;font-size:30px!important;font-weight:700!important;line-height:1.08!important;letter-spacing:-.035em!important}
  .bph-cb__inner-stage-header p{margin-top:7px!important;color:rgba(255,255,255,.82)!important;font-size:14px!important;font-weight:500!important;line-height:1.35!important}
  .bph-cb__payment-eyebrow{margin-bottom:8px!important;color:#58ef88!important;font-size:10px!important}
  .bph-cb__step[data-step="5"] .bph-cb__customer-fields{
    display:block!important;margin:0!important;padding:17px!important;border:0!important;border-radius:14px!important;
    background:#fff!important;color:#11181d!important;box-shadow:0 11px 26px rgba(0,0,0,.15)!important;
  }
  .bph-cb__step[data-step="5"] .bph-cb__customer-fields>div:first-child{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
  .bph-cb__step[data-step="5"] .bph-cb__customer-fields label{display:grid!important;gap:7px!important}
  .bph-cb__step[data-step="5"] .bph-cb__customer-fields label>span{color:#536169!important;font-size:12px!important;font-weight:700!important}
  .bph-cb__step[data-step="5"] .bph-cb__customer-fields input{
    width:100%!important;min-height:52px!important;padding:0 14px!important;border:1.5px solid #d9e2dd!important;border-radius:11px!important;
    background:#fff!important;color:#11181d!important;font-size:14px!important;font-weight:600!important;outline:none!important;
  }
  .bph-cb__step[data-step="5"] .bph-cb__customer-fields input:focus{border-color:#10b957!important;box-shadow:0 0 0 3px rgba(16,185,87,.10)!important}
  .bph-cb__returning-note{margin-top:13px!important;padding:12px 13px!important;border-radius:10px!important;background:#effaf2!important}
  .bph-cb__returning-note strong{color:#087c3b!important;font-size:11px!important;font-weight:700!important}
  .bph-cb__returning-note span{color:#577162!important;font-size:10.5px!important;line-height:1.4!important}
  .bph-cb__details-stage>.bph-cb__footer-split,
  .bph-cb__payment-stage>.bph-cb__footer-split{
    display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;gap:10px!important;width:100%!important;margin-top:12px!important;padding:0!important;
  }
  .bph-cb__details-stage>.bph-cb__footer-split .bph-cb__secondary,
  .bph-cb__payment-stage>.bph-cb__footer-split .bph-cb__secondary{
    display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:57px!important;
    padding:0 16px!important;border:1.5px solid rgba(255,255,255,.62)!important;border-radius:13px!important;background:transparent!important;
    color:#fff!important;font-size:14px!important;font-weight:700!important;
  }
  .bph-cb__details-stage>.bph-cb__footer-split .bph-cb__primary,
  .bph-cb__payment-stage>.bph-cb__footer-split .bph-cb__primary{
    display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;min-height:57px!important;
    padding:0 16px 0 20px!important;border:0!important;border-radius:13px!important;background:linear-gradient(90deg,#42e879 0%,#58ef88 100%)!important;
    color:#fff!important;font-size:14px!important;font-weight:700!important;opacity:1!important;
  }
  .bph-cb__details-stage>.bph-cb__footer-split .bph-cb__primary:disabled,
  .bph-cb__payment-stage>.bph-cb__footer-split .bph-cb__primary:disabled{
    background:#17683a!important;color:rgba(255,255,255,.58)!important;opacity:1!important;
  }

  /* Payment state is intentionally inside the completed five-stage journey. */
  .bph-cb__payment-summary{border:0!important;border-radius:14px!important;box-shadow:0 11px 26px rgba(0,0,0,.15)!important}
  .bph-cb__payment-summary>div{min-height:56px!important;padding:0 16px!important}
  .bph-cb__payment-summary span{font-size:12px!important;font-weight:700!important}
  .bph-cb__payment-summary strong{font-size:13px!important;font-weight:700!important}
  .bph-cb__payment-summary .is-due strong{font-size:17px!important}
  .bph-cb__gift-choice{margin-top:12px!important;padding:16px!important;border:0!important;border-radius:14px!important;background:#fff!important;box-shadow:0 10px 24px rgba(0,0,0,.12)!important}
  .bph-cb__gift-choice-head h3{color:#11181d!important;font-size:15px!important;font-weight:700!important}
  .bph-cb__gift-choice-head p{font-size:11px!important}
  .bph-cb__gift-choice-head>span{font-size:9px!important}
  .bph-cb__gift-toggle{gap:8px!important;margin-top:13px!important}
  .bph-cb__gift-toggle button{min-height:44px!important;border-radius:9px!important;font-size:12px!important}
  .bph-cb__gift-choice .bph-cb__gift-fields{margin-top:13px!important;padding-top:13px!important;border-top:1px solid #e9eeeb!important}
  .bph-cb__gift-choice .bph-cb__gift-fields>div{display:grid!important;grid-template-columns:1fr!important;gap:11px!important}
  .bph-cb__gift-choice .bph-cb__gift-fields label>span{font-size:11px!important;font-weight:700!important}
  .bph-cb__gift-choice .bph-cb__gift-fields input{min-height:48px!important;border-radius:10px!important;font-size:13px!important}
  .bph-cb__gift-choice .bph-cb__gift-fields>small{font-size:10.5px!important}
  .bph-cb__payment-stage>.bph-cb__secure-note{margin-top:12px!important;order:initial!important}
  .bph-cb__payment-stage>.bph-cb__phase-note{margin-top:10px!important;order:initial!important}
  [data-payment-submit-label]{font-size:14px!important;font-weight:700!important;line-height:1!important}
  .bph-cb__cta-arrow{margin-left:auto!important;color:#fff!important;font-size:24px!important}
}

@media (max-width:390px){
  .bph-cb--default .bph-cb__stepper,
  .bph-cb--light .bph-cb__stepper,
  .bph-cb__stepper{width:312px!important;max-width:calc(100% - 30px)!important;gap:3px!important}
  .bph-cb__stepper button{width:32px!important;height:32px!important;min-width:32px!important}
  .bph-cb__stepper i{width:32px!important;height:32px!important;font-size:12px!important}
  .bph-cb__step[data-step="5"] .bph-cb__customer-fields{padding:14px!important}
  .bph-cb__details-stage>.bph-cb__footer-split,
  .bph-cb__payment-stage>.bph-cb__footer-split{grid-template-columns:100px minmax(0,1fr)!important}
}

/* v3.16.40 — final payment CTA scale + payment-method icon */
.bph-cb__payment-submit{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:10px!important;
}
.bph-cb .bph-cb__payment-submit .bph-cb__payment-icon{
  margin:0!important;
  width:20px!important;
  height:20px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 20px!important;
  color:currentColor!important;
  font-size:inherit!important;
  line-height:1!important;
}
.bph-cb .bph-cb__payment-submit .bph-cb__payment-icon svg{
  width:20px!important;
  height:20px!important;
  display:block!important;
}
.bph-cb .bph-cb__payment-submit [data-payment-submit-label]{
  margin:0!important;
  min-width:0!important;
  text-align:center!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.15!important;
  letter-spacing:-.01em!important;
  white-space:nowrap!important;
}
.bph-cb .bph-cb__payment-submit .bph-cb__cta-arrow{
  margin:0!important;
  justify-self:end!important;
  font-size:24px!important;
  line-height:1!important;
}
@media (max-width:767px){
  .bph-cb__payment-stage>.bph-cb__footer-split .bph-cb__payment-submit{
    padding:0 16px!important;
    min-height:57px!important;
  }
  .bph-cb .bph-cb__payment-submit [data-payment-submit-label]{
    font-size:14px!important;
    line-height:1.15!important;
  }
}
@media (max-width:390px){
  .bph-cb .bph-cb__payment-submit [data-payment-submit-label]{font-size:13px!important}
  .bph-cb__payment-submit{column-gap:8px!important}
}

/* v3.17.1 — Phase 2 Booking → Match bridge. A confirmed court remains a plain booking unless the customer explicitly chooses an invite/community action. */
.bph-cb__social-bridge{margin-top:18px;padding:20px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.075);text-align:left}
.bph-cb__social-copy>span{display:block;margin-bottom:7px;color:#58ef88;font-size:10px;font-weight:700;letter-spacing:.16em}.bph-cb__social-copy h2{margin:0!important;color:#fff!important;font-size:19px!important;line-height:1.2!important;font-weight:600!important}.bph-cb__social-copy p{margin:7px 0 0!important;color:rgba(255,255,255,.72)!important;font-size:12px!important;line-height:1.5!important}
.bph-cb__social-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.bph-cb__social-actions a{display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:center;min-height:72px;padding:13px 14px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:#fff;color:#122026!important;text-decoration:none!important}.bph-cb__social-actions strong{font-size:12px;font-weight:700}.bph-cb__social-actions small{grid-column:1;color:#748078;font-size:9.5px;line-height:1.35}.bph-cb__social-actions b{grid-row:1/3;grid-column:2;color:#08a84e;font-size:18px;font-weight:500}.bph-cb__social-actions a:first-child{border-color:#78d99c;background:#f3fbf6}
@media(max-width:767px){.bph-cb--confirmation{padding-left:21px!important;padding-right:21px!important}.bph-cb__social-bridge{padding:15px;border-radius:12px}.bph-cb__social-actions{grid-template-columns:1fr}.bph-cb__social-actions a{min-height:66px}.bph-cb__social-copy h2{font-size:17px!important}}

/* v3.27.2 — branded Start-a-Match authentication gate */
.bph-cb--match-auth{position:relative;min-height:680px;overflow:hidden;background:#061b1d;background-image:var(--bph-match-auth-bg);background-size:cover;background-position:center;color:#fff;display:flex;align-items:flex-end;justify-content:center;padding:60px 20px}
.bph-cb__match-auth-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,20,22,.14),rgba(4,20,22,.56) 46%,rgba(4,20,22,.96) 100%)}
.bph-cb__match-auth-shell{position:relative;z-index:1;width:min(620px,100%);padding:30px;border:1px solid rgba(255,255,255,.18);border-radius:24px;background:rgba(4,23,24,.76);box-shadow:0 24px 70px rgba(0,0,0,.22);backdrop-filter:blur(10px)}
.bph-cb__match-auth-back{display:inline-flex;margin-bottom:22px;color:rgba(255,255,255,.88)!important;text-decoration:none!important;font-size:13px;font-weight:700}
.bph-cb__match-auth-kicker{display:block;margin-bottom:8px;color:#62dfa0;font-size:11px;font-weight:700;letter-spacing:.15em}
.bph-cb__match-auth-shell h1{margin:0;color:#fff;font-size:42px;line-height:1.04;letter-spacing:-.045em;font-weight:700}
.bph-cb__match-auth-shell p{max-width:520px;margin:13px 0 0;color:rgba(255,255,255,.84);font-size:16px;line-height:1.55}
.bph-cb__match-auth-actions{display:grid;gap:11px;margin-top:26px}
.bph-cb__match-auth-actions .bph-cb__primary,.bph-cb__match-auth-actions .bph-cb__secondary{width:100%;min-height:54px;border-radius:14px;text-align:center;justify-content:center}
.bph-cb__match-auth-actions .bph-cb__primary{background:#19d974;color:#07140e!important}
.bph-cb__match-auth-actions .bph-cb__secondary{border-color:rgba(255,255,255,.48);background:rgba(255,255,255,.05);color:#fff!important}
.bph-cb__match-auth-shell>small{display:block;margin-top:15px;color:rgba(255,255,255,.66);font-size:12px;text-align:center}
@media(max-width:640px){
  .bph-cb--match-auth{min-height:calc(100vh - 120px);padding:34px 20px;background-position:center center}
  .bph-cb__match-auth-shell{padding:24px 20px;border-radius:22px}
  .bph-cb__match-auth-shell h1{font-size:36px}
  .bph-cb__match-auth-shell p{font-size:15px}
}
