/* Booking presentation; Woo catalog, form producers and customer notices remain canonical. */
.bpc-guided-page{--bp-bg:#f5f7fa;--bp-card:#fff;--bp-text:#17212e;--bp-muted:#536172;--bp-line:#dce3eb;--bp-blue:#0066cc;--bp-soft:#edf5ff;--bp-shadow:0 8px 30px #162c4910;background:var(--bp-bg);color:var(--bp-text);padding:38px 24px 72px;font-family:inherit;line-height:1.55}
.bpc-guided-page *,.bpc-guided-page *::before,.bpc-guided-page *::after{box-sizing:border-box}
.bpc-guided-page [hidden]{display:none!important}
.bpc-guided-page :where(button,input,select,textarea,a,summary):focus-visible{outline:3px solid var(--bp-blue);outline-offset:3px}
.bpc-guided-page :where(button,a,summary){-webkit-tap-highlight-color:transparent}
.bpc-guided-shell,.bpc-booking-information__inner{max-width:1280px;margin-inline:auto}
.bpc-guided-ambient,.bpc-route-sheet__handle{display:none}
.bpc-qb-page-hero{max-width:830px;margin:0 auto 28px;text-align:center}
.bpc-guided-eyebrow,.bpc-booking-eyebrow{color:var(--bp-blue);font-size:12px;font-weight:750;letter-spacing:.09em;text-transform:uppercase;margin:0 0 10px}
.bpc-qb-page-hero h1{color:var(--bp-text);font-size:clamp(36px,4vw,56px);line-height:1.08;letter-spacing:-.045em;margin:0 0 18px;font-weight:750}
.bpc-qb-page-hero h1 span{color:var(--bp-blue)}
.bpc-qb-page-hero>p:last-child{font-size:18px;line-height:1.55;margin:0 auto;max-width:690px;color:var(--bp-muted)}
.bpc-booking-options{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:970px;margin:0 auto 30px}
.bpc-booking-options>a{display:flex;align-items:flex-start;gap:16px;padding:20px 22px;background:var(--bp-card);border:1px solid var(--bp-line);border-radius:18px;text-decoration:none;color:var(--bp-text);box-shadow:var(--bp-shadow)}
.bpc-booking-options>a:hover{border-color:var(--bp-blue)}
.bpc-booking-options__icon{display:grid;place-items:center;background:var(--bp-soft);color:var(--bp-blue);border-radius:13px;width:48px;height:48px;flex:0 0 auto}
.bpc-booking-options__icon svg{width:28px;height:28px}
.bpc-booking-options strong,.bpc-booking-options small,.bpc-booking-options__link{display:block}
.bpc-booking-options strong{font-size:17px;margin-bottom:4px}
.bpc-booking-options small{font-size:14px;color:var(--bp-muted);line-height:1.5}
.bpc-booking-options__link{font-size:13px;color:var(--bp-blue);font-weight:700;margin-top:8px}
.bpc-booking-progress{display:flex;justify-content:center;gap:32px;list-style:none;margin:0 0 26px;padding:20px 10px;border-top:1px solid var(--bp-line);border-bottom:1px solid var(--bp-line)}
.bpc-booking-progress li{display:flex;align-items:center;gap:9px;color:var(--bp-muted);font-size:14px;font-weight:650;line-height:1.3}
.bpc-booking-progress li>span{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;border-radius:50%;border:1px solid var(--bp-line);background:var(--bp-card);font-size:13px}
.bpc-booking-progress li[aria-current]{color:var(--bp-blue)}
.bpc-booking-progress li[aria-current]>span{background:var(--bp-blue);border-color:var(--bp-blue);color:white}
.bpc-stage-heading{margin:0 0 22px}
.bpc-stage-heading h2,.bpc-route-sheet h2,.bpc-simple-native h2{font-size:28px;line-height:1.2;letter-spacing:-.025em;margin:0 0 8px;color:var(--bp-text)}
.bpc-stage-heading p,.bpc-route-sheet__head p:last-child,.bpc-simple-native-head p:last-child{margin:0;font-size:15px;color:var(--bp-muted)}
.bpc-guided-live{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.bpc-flow-error,.bpc-guided-page .bpc-qb-feedback{padding:13px 16px;border-radius:12px;border:1px solid var(--bp-line);background:var(--bp-card);font-size:15px;color:var(--bp-text);margin:12px 0}
.bpc-flow-error,.bpc-guided-page .bpc-qb-feedback[role=alert]{background:#fff3f2;color:#912921;border-color:#e7aba6}
.bpc-guided-page [aria-invalid=true]{border-color:#b4382e!important}
.bpc-qb-catalog-stage,.bpc-route-sheet,.bpc-simple-native{scroll-margin-top:100px}
.bpc-guided-page .bpc-qb{width:100%;max-width:none;color:var(--bp-text);--qb-bg:var(--bp-bg);--qb-card:var(--bp-card);--qb-subtle:var(--bp-bg);--qb-text:var(--bp-text);--qb-copy:var(--bp-muted);--qb-muted:var(--bp-muted);--qb-line:var(--bp-line);--qb-line-strong:var(--bp-line);--qb-blue:var(--bp-blue);--qb-blue-soft:var(--bp-soft)}
.bpc-guided-page .bpc-qb-hero{max-width:none}
.bpc-guided-page .bpc-qb-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.bpc-guided-page .bpc-qb-card{box-shadow:none;min-width:0;grid-template-columns:36px minmax(0,1fr) 16px;gap:8px;padding:12px}
.bpc-guided-page .bpc-qb-card :where(.bpc-qb-card-img,.bpc-qb-card-dot){width:36px;height:36px}
.bpc-guided-page .bpc-qb-card strong{overflow-wrap:anywhere}
.bpc-guided-page .bpc-qb-card-arrow svg{width:16px;height:16px}
.bpc-guided-page .bpc-qb-card-img{max-height:90px;object-fit:contain}
.bpc-guided-page .bpc-qb-manual-grid :where(input,select,textarea){font-size:16px;line-height:1.5}
.bpc-guided-page .bpc-qb-manual{padding:24px}
.bpc-guided-page .bpc-qb-help{box-shadow:none;margin-top:18px}
.bpc-guided-page .bpc-qb-help__p{font-size:14px}
.bpc-guided-page .bpc-qb-basket-copy small{white-space:normal;overflow-wrap:anywhere}
.bpc-guided-page .bpc-qb-basket-disclaimer{font-size:13px;color:var(--bp-muted)}
.bpc-route-sheet,.bpc-simple-native{background:var(--bp-card);border:1px solid var(--bp-line);border-radius:22px;padding:28px;box-shadow:var(--bp-shadow)}
.bpc-route-sheet__head,.bpc-simple-native-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}
.bpc-route-sheet__close{flex-shrink:0;width:44px;height:44px;border:1px solid var(--bp-line);background:var(--bp-bg);color:var(--bp-text);border-radius:50%;font-size:26px;cursor:pointer}
.bpc-route-selection{display:grid;gap:10px;margin-bottom:22px}
.bpc-route-selection article{display:flex;gap:12px;padding:12px 14px;background:var(--bp-bg);border:1px solid var(--bp-line);border-radius:12px;align-items:flex-start}
.bpc-route-selection__number{display:grid;place-items:center;background:var(--bp-soft);color:var(--bp-blue);width:30px;height:30px;flex-shrink:0;border-radius:9px;font-weight:700}
.bpc-route-selection strong,.bpc-route-selection small{display:block;overflow-wrap:anywhere}
.bpc-route-selection small{font-size:14px;color:var(--bp-muted);margin-top:3px;white-space:pre-line}
.bpc-path-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.bpc-path-card{display:flex;gap:18px;align-items:center;padding:24px;border:1px solid var(--bp-line);border-radius:17px;text-align:left;background:var(--bp-card);color:var(--bp-text);cursor:pointer;font:inherit}
.bpc-path-card:hover,.bpc-path-card.is-selected{border-color:var(--bp-blue);background:var(--bp-soft)}
.bpc-path-card:disabled{opacity:.65;cursor:wait}
.bpc-path-illustration{display:grid;place-items:center;width:54px;height:54px;flex-shrink:0;color:var(--bp-blue)}
.bpc-path-illustration svg{width:45px;height:45px}
.bpc-path-copy strong,.bpc-path-copy small,.bpc-card-cta{display:block}
.bpc-path-copy strong{font-size:20px;margin-bottom:8px}
.bpc-path-copy small{font-size:14px;color:var(--bp-muted)}
.bpc-card-cta{font-size:14px;font-weight:750;color:var(--bp-blue);margin-top:16px}
.bpc-card-cta i{font-style:normal}
.bpc-route-support{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:20px;font-size:14px}
.bpc-route-support a,.bpc-information-copy a{color:var(--bp-blue);text-underline-offset:3px;font-weight:650}
.bpc-native-back{border:1px solid var(--bp-line);border-radius:11px;padding:10px 14px;min-height:44px;background:var(--bp-card);color:var(--bp-blue);font:inherit;font-size:14px;font-weight:650;cursor:pointer}
.bpc-final-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
.bpc-final-aside{grid-column:2;grid-row:1;position:sticky;top:100px}
.bpc-native-slot{grid-column:1;grid-row:1;min-width:0}
.bpc-final-details{background:var(--bp-bg);border:1px solid var(--bp-line);border-radius:16px;padding:18px}
.bpc-final-details>summary{font-weight:750;font-size:17px;cursor:pointer;min-height:30px}
.bpc-final-details .bpc-native-back{width:100%;margin-top:16px}
.bpc-native-summary{display:grid;gap:14px;margin-top:16px}
.bpc-native-summary>div{display:grid;gap:4px;border-bottom:1px solid var(--bp-line);padding-bottom:12px}
.bpc-native-summary>div:last-child{border:0;padding-bottom:0}
.bpc-native-summary span{font-size:12px;color:var(--bp-muted)}
.bpc-native-summary strong{font-size:14px;font-weight:650;white-space:pre-line;overflow-wrap:anywhere}
.bpc-native-notice{margin-top:16px;padding:15px;border-radius:12px;background:var(--bp-soft);font-size:13px;line-height:1.6;color:var(--bp-text)}
.bpc-native-slot .bpc-sl{max-width:none;padding:0;margin:0}
.bpc-native-slot .bpc-sl__grid{display:block}
.bpc-native-slot .bpc-sl__info,.bpc-native-slot .bpc-sl__form-head,.bpc-native-slot .bpc-sl__picker,.bpc-native-slot .bpc-sl__faq{display:none}
.bpc-native-slot .bpc-sl__form{padding:0;background:transparent;border:0;box-shadow:none;gap:18px}
.bpc-native-slot .bpc-sl__form h4{font-size:17px;border-top:1px solid var(--bp-line);padding-top:20px;margin-top:4px;color:var(--bp-text)}
.bpc-native-slot .bpc-sl__form h4>span{display:none}
.bpc-native-slot .bpc-sl__form label{font-size:14px;color:var(--bp-text)}
.bpc-native-slot .bpc-sl__form :where(input,select,textarea){color:var(--bp-text);background:var(--bp-card);border-color:var(--bp-line)}
.bpc-native-slot .bpc-sl__note,.bpc-native-slot .bpc-sl__privacy{font-size:13px;color:var(--bp-muted)}
.bpc-native-slot .bpc-sl__submit{border-radius:12px;min-height:52px;font-size:16px}
.bpc-guided-trust{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 28px;margin:26px auto;color:var(--bp-muted);font-size:13px}
.bpc-guided-trust span::before{content:'✓';color:var(--bp-blue);font-weight:750;margin-right:8px}
.bpc-booking-information{margin-top:48px;border-top:1px solid var(--bp-line);padding-top:36px}
.bpc-booking-information h2{font-size:32px;line-height:1.2;letter-spacing:-.025em;margin:0 0 12px;color:var(--bp-text)}
.bpc-information-intro{color:var(--bp-muted);font-size:16px;margin:0 0 24px}
.bpc-booking-information__grid{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:12px}
.bpc-booking-information__grid>details{background:var(--bp-card);border:1px solid var(--bp-line);border-radius:14px;scroll-margin-top:110px}
.bpc-booking-information__grid summary{padding:18px 20px;font-size:16px;font-weight:650;cursor:pointer;line-height:1.5}
.bpc-information-copy{padding:0 20px 20px;color:var(--bp-muted);font-size:15px;line-height:1.65}
.bpc-information-copy p{margin:0 0 14px}.bpc-information-copy p:last-child{margin-bottom:0}
.bpc-information-copy ol{padding-left:20px;margin:0 0 16px}.bpc-information-copy li+li{margin-top:9px}
.bpc-information-copy address{font-style:normal;color:var(--bp-text);padding:15px;background:var(--bp-bg);border-radius:10px;margin:16px 0}
@media(min-width:1050px){.bpc-guided-page .bpc-qb:has(.bpc-qb-basket){display:grid;grid-template-columns:minmax(0,1fr) 360px;column-gap:28px;align-items:start}.bpc-guided-page .bpc-qb:has(.bpc-qb-basket)>*{grid-column:1;min-width:0}.bpc-guided-page .bpc-qb>.bpc-qb-basket{grid-column:2!important;grid-row:1/9;margin-top:0;position:sticky;top:100px;padding:20px}.bpc-guided-page .bpc-qb-basket-head,.bpc-guided-page .bpc-qb-basket-footer{align-items:stretch;flex-direction:column}.bpc-guided-page .bpc-qb-basket-head h2{font-size:21px}.bpc-guided-page .bpc-qb-basket-item{grid-template-columns:32px minmax(0,1fr);padding:10px;gap:10px}.bpc-guided-page .bpc-qb-basket-item>img,.bpc-guided-page .bpc-qb-basket-index{width:32px;height:32px}.bpc-guided-page .bpc-qb-basket-actions{grid-column:2;justify-content:flex-end}.bpc-guided-page .bpc-qb-continue{white-space:normal}}
@media(max-width:900px){.bpc-final-layout{display:flex;flex-direction:column;gap:22px}.bpc-final-aside,.bpc-native-slot{width:100%;position:static}.bpc-simple-native-head{flex-direction:column;gap:14px}.bpc-final-details{padding:15px}.bpc-native-notice{font-size:14px}.bpc-booking-progress{gap:18px}.bpc-path-card{padding:18px;gap:10px}}
@media(max-width:600px){.bpc-guided-page{padding:25px 16px 42px}.bpc-qb-page-hero{text-align:left;margin-bottom:22px}.bpc-qb-page-hero h1{font-size:37px;margin-bottom:14px}.bpc-qb-page-hero>p:last-child{font-size:16px}.bpc-booking-options{grid-template-columns:1fr;gap:10px;margin-bottom:24px}.bpc-booking-options>a{padding:15px;gap:12px;border-radius:14px}.bpc-booking-options strong{font-size:16px}.bpc-booking-options small{font-size:14px}.bpc-booking-options__link{margin-top:4px}.bpc-booking-options__icon{width:40px;height:40px}.bpc-booking-progress{justify-content:space-between;gap:8px;padding:15px 0;margin-bottom:22px}.bpc-booking-progress li{flex-direction:column;align-items:flex-start;gap:8px;font-size:12px;max-width:32%;line-height:1.4}.bpc-booking-progress li>span{width:26px;height:26px}.bpc-stage-heading h2,.bpc-route-sheet h2,.bpc-simple-native h2{font-size:24px}.bpc-stage-heading{margin-bottom:18px}.bpc-guided-page .bpc-qb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bpc-guided-page .bpc-qb-card-img{max-height:65px}.bpc-guided-page .bpc-qb-manual{padding:16px}.bpc-guided-page .bpc-qb-manual-grid{grid-template-columns:1fr}.bpc-guided-page .bpc-qb-manual-grid label.is-wide{grid-column:1}.bpc-route-sheet,.bpc-simple-native{padding:18px 15px;border-radius:17px}.bpc-path-grid,.bpc-booking-information__grid{grid-template-columns:1fr}.bpc-path-card{padding:18px 14px;gap:12px}.bpc-path-copy strong{font-size:18px}.bpc-path-illustration{width:40px}.bpc-path-illustration svg{width:36px;height:36px}.bpc-route-sheet__head{gap:10px}.bpc-native-slot .bpc-sl__row{grid-template-columns:1fr}.bpc-guided-trust{justify-content:flex-start;gap:8px 18px;font-size:12px;margin:22px 0}.bpc-booking-information{margin-top:30px;padding-top:26px}.bpc-booking-information h2{font-size:27px}.bpc-booking-information__grid summary{padding:16px;font-size:15px}.bpc-information-copy{padding:0 16px 18px}.bpc-guided-page .bpc-qb-basket-item{grid-template-columns:34px minmax(0,1fr);gap:10px}.bpc-guided-page .bpc-qb-basket-item>img,.bpc-guided-page .bpc-qb-basket-index{width:34px;height:34px}.bpc-guided-page .bpc-qb-basket-actions{grid-column:2;justify-content:flex-end}.bpc-guided-page .bpc-qb-continue{width:100%;white-space:normal}}
[data-theme=dark] .bpc-guided-page{--bp-bg:#111820;--bp-card:#1a2530;--bp-text:#eef3f8;--bp-muted:#b6c4d3;--bp-line:#354553;--bp-blue:#78baff;--bp-soft:#22384f;--bp-shadow:none}
[data-theme=dark] .bpc-guided-page :where(.bpc-flow-error,.bpc-qb-feedback[role=alert]){background:#402722;color:#ffd4cf;border-color:#86534e}
@media(prefers-reduced-motion:reduce){.bpc-guided-page *{scroll-behavior:auto!important;transition:none!important}}

/* Distinct link/fill colors preserve contrast in both themes. */
.bpc-guided-page{--bp-fill:#0066cc}
.bpc-guided-page :where(.bpc-qb-search-go,.bpc-qb-manual-open,.bpc-qb-manual-save,.bpc-qb-continue,.bpc-sl__submit){background:var(--bp-fill);color:#fff}
.bpc-guided-page .bpc-booking-progress li[aria-current]>span{background:var(--bp-fill);border-color:var(--bp-fill);color:#fff}
.bpc-qb-other-categories{margin-top:16px;padding:14px 16px;background:var(--bp-card);border:1px solid var(--bp-line);border-radius:14px}
.bpc-qb-other-categories>summary{font-size:14px;font-weight:650;cursor:pointer;color:var(--bp-muted)}
.bpc-qb-other-categories>.bpc-qb-grid{margin-top:14px}
.bpc-new-request{display:inline-flex;align-items:center;margin-top:24px;text-decoration:none}
.bpc-guided-page[data-request-complete=true] .bpc-native-notice{display:none}
@media(max-width:600px){.bpc-booking-options{grid-template-columns:1fr 1fr}.bpc-booking-options>a{display:block;padding:13px}.bpc-booking-options__icon{margin-bottom:10px}.bpc-booking-options strong{font-size:15px}.bpc-booking-options small{font-size:13px}.bpc-booking-options__link{font-size:12px}.bpc-qb-page-hero h1{font-size:35px}.bpc-qb-page-hero>p:last-child{font-size:16px}}

/* Compact first decision on phones; the linked sections retain full instructions. */
@media(max-width:600px){.bpc-booking-options small,.bpc-booking-options__icon{display:none}.bpc-booking-options>a{padding:14px}.bpc-booking-options strong{min-height:44px}.bpc-booking-options__link{margin-top:4px}}
.bpc-native-slot .bpc-sl__form :where(input,select,textarea){font-family:inherit;font-size:16px;line-height:1.5}
.bpc-native-slot .bpc-sl__row{align-items:start}
.bpc-information-copy h3{font-size:16px;line-height:1.45;color:var(--bp-text);margin:20px 0 8px}

/* Keep the search full width and collapse unused sidebar grid rows. */
.bpc-guided-page .bpc-qb-hero{width:100%}
@media(min-width:1050px){.bpc-guided-page .bpc-qb:has(.bpc-qb-basket){grid-auto-rows:min-content;align-content:start}}

[data-theme=dark] .bpc-guided-page .bpc-native-slot .bpc-sl__form{background:transparent;border:0;box-shadow:none}
[data-theme=dark] .bpc-guided-page .bpc-native-slot .bpc-sl__form :where(input,select,textarea){background:var(--bp-card);color:var(--bp-text);border-color:var(--bp-line)}

/* Keep native placeholder text readable in both color themes. */
.bpc-guided-page .bpc-native-slot .bpc-sl__form :where(input,textarea)::placeholder{color:var(--bp-muted);opacity:1}

/* On phones, keep the full label below the icon instead of squeezing it beside the arrow. */
@media(max-width:600px){.bpc-guided-page .bpc-qb-card{grid-template-columns:minmax(0,1fr) 16px;grid-template-rows:36px auto;align-items:center;row-gap:10px}.bpc-guided-page .bpc-qb-card>:is(.bpc-qb-card-img,.bpc-qb-card-dot){grid-column:1;grid-row:1}.bpc-guided-page .bpc-qb-card-arrow{grid-column:2;grid-row:1}.bpc-guided-page .bpc-qb-card strong{grid-column:1/-1;grid-row:2;align-self:start}}
