.wsbr-booking{--wsbr-ink:#173747;--wsbr-deep:#102b3b;--wsbr-teal:#0d6c72;--wsbr-line:#d5dfdf;--wsbr-muted:#566a73;color:var(--wsbr-ink);width:min(1100px,calc(100% - 32px));margin:0 auto 60px;font:16px/1.55 Arial,Helvetica,sans-serif}
.wsbr-booking *{box-sizing:border-box}
.wsbr-booking [hidden]{display:none!important}
.wsbr-booking .wsbr-intro{padding:45px 0 30px}
.wsbr-booking .wsbr-eyebrow{color:var(--wsbr-teal);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin:0 0 10px}
.wsbr-booking h1{font-size:clamp(34px,5vw,58px);font-weight:400;line-height:1.08;letter-spacing:-1.5px;margin:0 0 17px;max-width:830px}
.wsbr-booking h2{font-size:clamp(25px,3vw,36px);font-weight:400;line-height:1.2;margin:0 0 14px}
.wsbr-booking h3{font-size:18px;margin:0;text-transform:capitalize}
.wsbr-booking p{color:var(--wsbr-muted);max-width:840px;margin:0 0 18px}
.wsbr-booking .wsbr-facts{display:flex;flex-wrap:wrap;gap:9px}
.wsbr-booking .wsbr-facts span{border:1px solid var(--wsbr-line);padding:7px 12px;font-size:13px;font-weight:700}
.wsbr-booking .wsbr-passion-line{max-width:none;margin:5px 0 12px;color:var(--wsbr-deep);font-family:var(--ws-type-display,"Lora",Georgia,serif);font-size:clamp(23px,2.7vw,31px);line-height:1.3}
.wsbr-booking .wsbr-vehicle-lead{max-width:1000px;margin:0 0 13px;font-size:18px;line-height:1.65}
.wsbr-booking .wsbr-vehicle-invitation{max-width:1000px;margin:0;font-size:17px;line-height:1.6;color:var(--wsbr-deep);font-weight:600}
.wsbr-booking .wsbr-vehicle-details{margin-top:30px;padding:clamp(20px,2.5vw,28px);background:#fff;border:1px solid var(--wsbr-line)}
.wsbr-booking .wsbr-vehicle-title{max-width:none;margin:0 0 14px;font-family:var(--ws-type-display,"Lora",Georgia,serif);font-size:clamp(25px,2.8vw,34px);line-height:1.3}
.wsbr-booking .wsbr-vehicle-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,auto);grid-auto-flow:column;column-gap:26px;row-gap:0;list-style:none;margin:0;padding:0}
.wsbr-booking .wsbr-vehicle-specs li{display:flex;align-items:flex-start;gap:8px;min-height:40px;padding:7px 0;border-top:1px solid var(--wsbr-line);color:var(--wsbr-ink);font-size:15px;line-height:1.4}
.wsbr-booking .wsbr-vehicle-specs li::before{content:"–";flex:none;color:var(--wsbr-teal);font-weight:700}
@media(max-width:650px){.wsbr-booking .wsbr-vehicle-lead{font-size:16px}.wsbr-booking .wsbr-vehicle-invitation{font-size:16px}.wsbr-booking .wsbr-vehicle-details{margin-top:24px;padding:18px}.wsbr-booking .wsbr-vehicle-title{margin-bottom:12px}.wsbr-booking .wsbr-vehicle-specs{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row}.wsbr-booking .wsbr-vehicle-specs li{min-height:0;padding:8px 0}}
.wsbr-booking .wsbr-card{background:#fff;border:1px solid var(--wsbr-line);padding:clamp(18px,3vw,32px);margin-bottom:22px}
.wsbr-booking .wsbr-alert{background:#fff5e7;border:1px solid #e7c98d;color:#704514;padding:12px 16px;margin:0 0 20px}
.wsbr-booking .wsbr-cal-nav{max-width:560px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#eaf1f0;padding:8px 12px}
.wsbr-booking .wsbr-cal-nav button{width:40px;height:40px;border:1px solid var(--wsbr-line);background:#fff;color:var(--wsbr-deep);font-size:26px;cursor:pointer}
.wsbr-booking .wsbr-calendar{max-width:560px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;border:1px solid var(--wsbr-line);border-top:0;padding:10px}
.wsbr-booking .wsbr-weekday{text-align:center;font-size:12px;font-weight:700;padding:4px;color:var(--wsbr-muted)}
.wsbr-booking .wsbr-empty,.wsbr-booking .wsbr-calendar button{height:42px}
.wsbr-booking .wsbr-calendar button{border:1px solid transparent;background:#edf1f1;color:#667e82;cursor:pointer}
.wsbr-booking .wsbr-calendar button.wsbr-free{background:#e2f3eb;color:#126345}
.wsbr-booking .wsbr-calendar button.wsbr-busy:not(.wsbr-past):not(.wsbr-pending):not(.wsbr-selected){background:#f9e7e8;border-color:#edc4c8;color:#8b333c}
.wsbr-booking .wsbr-calendar button.wsbr-selected{background:var(--wsbr-deep);color:#fff}
.wsbr-booking .wsbr-calendar button:disabled,.wsbr-booking .wsbr-cal-nav button:disabled{opacity:.65;cursor:not-allowed}
.wsbr-booking .wsbr-calendar button.wsbr-busy:not(.wsbr-past):not(.wsbr-pending):disabled{opacity:1}
.wsbr-booking .wsbr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}
.wsbr-booking .wsbr-grid label,.wsbr-booking .wsbr-card>label:not(.wsbr-consent){display:flex;flex-direction:column;gap:5px;font-size:14px;font-weight:700}
.wsbr-booking input:not([type=checkbox]),.wsbr-booking select{width:100%;min-height:44px;padding:8px 10px;border:1px solid #aebfc3;color:var(--wsbr-ink);background:#fff;font:inherit}
.wsbr-booking .wsbr-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}
.wsbr-booking .wsbr-options label,.wsbr-booking .wsbr-consent{display:flex;flex-direction:row;align-items:flex-start;gap:9px;font-size:14px;margin:0 0 10px}
.wsbr-booking .wsbr-consent a{color:var(--wsbr-teal);text-decoration:underline;text-underline-offset:2px}
.wsbr-booking input[type=checkbox]{width:18px;height:18px;flex:none;accent-color:var(--wsbr-teal)}
.wsbr-booking .wsbr-price{background:#edf5f3;border-left:4px solid var(--wsbr-teal);padding:15px 18px;margin:18px 0}
.wsbr-booking .wsbr-price p{display:flex;justify-content:space-between;gap:10px;margin:0 0 7px}
.wsbr-booking .wsbr-price p:last-child{margin:0}
.wsbr-booking .wsbr-cost-lines{list-style:none;padding:0;margin:12px 0;border-top:1px solid var(--wsbr-line)}
.wsbr-booking .wsbr-cost-lines li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--wsbr-line);font-size:14px;line-height:1.45}
.wsbr-booking .wsbr-cost-lines li span{min-width:0}
.wsbr-booking .wsbr-cost-lines li strong{flex:none;white-space:nowrap;color:var(--wsbr-deep)}
.wsbr-booking .wsbr-quote-card .wsbr-price{background:transparent;border:0;padding:0;margin:14px 0 0}
.wsbr-booking .wsbr-quote-card .wsbr-price p{display:block;margin:10px 0;font-size:13px}
.wsbr-booking .wsbr-quote-card .wsbr-price p strong{display:block;font-size:16px;color:var(--wsbr-deep)}
.wsbr-booking .wsbr-quote-card .wsbr-price .wsbr-quote-total{border-top:1px solid var(--wsbr-line);padding-top:14px}
.wsbr-booking .wsbr-quote-card .wsbr-price .wsbr-quote-total strong{font-size:25px}
@media(min-width:981px){.wsbr-booking .wsbr-form:not([hidden]){display:grid;grid-template-columns:minmax(0,1fr) 340px;column-gap:34px;align-items:start}.wsbr-booking .wsbr-form>.wsbr-card:not(.wsbr-quote-card){grid-column:1}.wsbr-booking .wsbr-form>.wsbr-quote-card{grid-column:2;grid-row:1 / span 6;position:sticky;top:96px;align-self:start;max-height:calc(100vh - 118px);overflow:auto;border-radius:16px;box-shadow:0 10px 34px #102b3b13;padding:25px}}
.wsbr-booking .wsbr-docs{display:flex;flex-wrap:wrap;gap:9px;margin:17px 0}
.wsbr-booking .wsbr-docs a{border:1px solid var(--wsbr-line);padding:9px 12px;color:var(--wsbr-teal);font-size:14px}
.wsbr-booking .wsbr-small{font-size:13px;max-width:850px}
.wsbr-booking [data-wsbr-submit]{background:var(--wsbr-teal);color:#fff;border:0;padding:12px 20px;min-height:48px;font:700 14px Arial,Helvetica,sans-serif}
.wsbr-booking [data-wsbr-submit]:disabled{background:#a9b7b7;cursor:not-allowed}
.wsbr-booking .wsbr-doc-box{border:1px solid var(--wsbr-line);background:#f7faf9;padding:16px 18px 6px;margin:20px 0}
.wsbr-booking .wsbr-doc-box h3{text-transform:none;font-size:17px;margin:0 0 6px;color:var(--wsbr-deep)}
.wsbr-booking .wsbr-hint{background:#fff5e7;border-left:4px solid #db8a32;color:#704514;font-size:14px;padding:9px 12px;margin:0 0 12px}
.wsbr-booking .wsbr-steps-list{margin:6px 0 16px;padding:0;list-style:none;counter-reset:wsbr-step}
.wsbr-booking .wsbr-steps-list li{counter-increment:wsbr-step;position:relative;padding:6px 0 6px 38px;color:var(--wsbr-ink);font-size:15px}
.wsbr-booking .wsbr-steps-list li::before{content:counter(wsbr-step);position:absolute;left:0;top:4px;width:26px;height:26px;border-radius:50%;background:#e6eeee;color:var(--wsbr-deep);font-weight:700;font-size:13px;display:grid;place-items:center}
.wsbr-booking .wsbr-steps-list li.wsbr-step-done{color:var(--wsbr-muted)}
.wsbr-booking .wsbr-steps-list li.wsbr-step-done::before{content:"✓";background:var(--wsbr-teal);color:#fff}
.wsbr-booking .wsbr-contract-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 18px}
.wsbr-booking .wsbr-button{display:inline-flex;align-items:center;min-height:48px;padding:12px 20px;background:var(--wsbr-teal);color:#fff!important;text-decoration:none;font:700 15px Arial,Helvetica,sans-serif}
.wsbr-booking .wsbr-secondary-link{color:var(--wsbr-teal);text-decoration:underline;font-size:14px}
.wsbr-booking .wsbr-button.wsbr-attention{animation:wsbr-attention .5s ease-in-out 3}
@keyframes wsbr-attention{0%,100%{transform:none;box-shadow:none}50%{transform:scale(1.04);box-shadow:0 0 0 4px #f3c27e}}
.wsbr-booking [data-wsbr-contract-consent]{background:#f7faf9;border:1px solid var(--wsbr-line);padding:12px 14px}
.wsbr-booking [data-wsbr-accept]{background:var(--wsbr-teal);color:#fff;border:0;padding:12px 20px;min-height:48px;font:700 14px Arial,Helvetica,sans-serif}
.wsbr-booking [data-wsbr-accept]:disabled{background:#a9b7b7;cursor:not-allowed}
.wsbr-booking [data-wsbr-accept-status]{font-weight:700;color:var(--wsbr-deep)}
.wsbr-booking .wsbr-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.wsbr-booking .wsbr-success{border-left:5px solid var(--wsbr-teal)}
.wsbr-booking button:focus-visible,.wsbr-booking input:focus-visible,.wsbr-booking select:focus-visible,.wsbr-booking a:focus-visible{outline:3px solid #db8a32;outline-offset:2px}
.wsbr-unreleased{padding:26px;border:1px solid #d5dfdf;background:#f4f1eb}
@media(max-width:650px){.wsbr-booking{width:calc(100% - 24px)}.wsbr-booking .wsbr-intro{padding:27px 0}.wsbr-booking .wsbr-grid,.wsbr-booking .wsbr-options{grid-template-columns:1fr}.wsbr-booking .wsbr-calendar{gap:1px;padding:5px}.wsbr-booking .wsbr-empty,.wsbr-booking .wsbr-calendar button{height:38px}.wsbr-booking .wsbr-price p{display:block}}

/* Public preview follows the WingSail Horizon palette, type and open layout. */
.wsbr-preview{width:min(1220px,calc(100% - 96px));font-family:var(--ws-type-body,"Nunito Sans",Arial,Helvetica,sans-serif);font-size:17px;line-height:1.72}
.wsbr-preview .wsbr-intro{padding:20px 0 36px}
.wsbr-preview .wsbr-intro h2{font-family:var(--ws-type-display,"Lora",Georgia,serif);font-size:clamp(36px,3.8vw,52px);font-weight:500;letter-spacing:-1.2px;line-height:1.17;max-width:900px;margin-bottom:22px}
.wsbr-preview h2,.wsbr-preview h3{font-family:var(--ws-type-display,"Lora",Georgia,serif);font-weight:500;letter-spacing:-.6px}
.wsbr-preview h2{font-size:clamp(31px,2.9vw,39px)}
.wsbr-preview .wsbr-eyebrow{letter-spacing:2.5px}
.wsbr-preview .wsbr-lead{font-size:19px;max-width:760px;line-height:1.65}
.wsbr-preview .wsbr-facts{gap:10px 22px;margin-top:27px}
.wsbr-preview .wsbr-facts span{border:0;border-top:1px solid var(--wsbr-line);padding:12px 0;font-size:13px}
.wsbr-preview .wsbr-alert{background:var(--sand,#f4f1eb);border:0;border-left:4px solid var(--wsbr-teal);color:var(--wsbr-ink);padding:19px 24px;max-width:none;margin-bottom:28px}
.wsbr-preview .wsbr-card{border:0;border-top:1px solid var(--wsbr-line);background:transparent;padding:30px 0 38px;margin:0}
.wsbr-preview .wsbr-cal-nav{background:var(--sand,#f4f1eb)}
.wsbr-preview .wsbr-calendar{background:#fff}
.wsbr-preview .wsbr-calendar button{font-family:var(--ws-type-body,"Nunito Sans",Arial,sans-serif);font-weight:700}
.wsbr-preview .wsbr-grid{max-width:830px}
.wsbr-preview input:not([type=checkbox]),.wsbr-preview select{font-family:var(--ws-type-body,"Nunito Sans",Arial,sans-serif);min-height:49px;border-radius:3px;padding:10px 12px}
.wsbr-preview .wsbr-options{max-width:830px;gap:12px 22px}
.wsbr-preview .wsbr-options label{border:1px solid var(--wsbr-line);padding:14px 16px;margin:0;min-height:54px;align-items:center}
.wsbr-preview .wsbr-availability{background:#edf5f3;border-left:4px solid var(--wsbr-teal);padding:15px 19px;max-width:830px;margin:22px 0 0}
.wsbr-preview .wsbr-preview-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:38px;align-items:start}
.wsbr-preview .wsbr-preview-flow{min-width:0}
.wsbr-preview .wsbr-foreign-label,.wsbr-preview .wsbr-cost-type{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:700}
.wsbr-preview .wsbr-foreign-label{max-width:420px;margin:18px 0 12px}
.wsbr-preview .wsbr-cost-card{position:sticky;top:96px;align-self:start;max-height:calc(100vh - 118px);overflow:auto;background:#fff;border:1px solid var(--wsbr-line);border-radius:16px;box-shadow:0 10px 34px #102b3b13;padding:25px}
.wsbr-preview .wsbr-cost-card h2{font-size:23px;margin-bottom:18px}
.wsbr-preview .wsbr-cost-card .wsbr-cost-type select{margin-top:3px}
.wsbr-preview .wsbr-cost-status{font-size:14px;margin:19px 0}
.wsbr-preview .wsbr-cost-period{font-size:13px;margin:8px 0 3px}
.wsbr-preview .wsbr-cost-total{display:flex;justify-content:space-between;align-items:end;gap:10px;border-top:1px solid var(--wsbr-line);padding-top:17px;margin-top:17px;font-weight:700}
.wsbr-preview .wsbr-cost-total strong{font-size:28px;line-height:1.15;white-space:nowrap;color:var(--wsbr-deep)}
.wsbr-preview .wsbr-cost-tax{font-size:13px;text-align:right;margin:6px 0 16px}
.wsbr-preview .wsbr-cost-tax:empty{display:none}
.wsbr-preview .wsbr-cost-deposit{display:flex;justify-content:space-between;gap:12px;background:var(--sand,#f4f1eb);padding:13px 14px;margin:18px 0;font-size:13px}
.wsbr-preview .wsbr-cost-deposit strong{white-space:nowrap;font-size:16px;color:var(--wsbr-deep)}
.wsbr-preview .wsbr-cost-footnote,.wsbr-preview .wsbr-cost-disclaimer{font-size:12px;line-height:1.55}
.wsbr-preview .wsbr-cost-disclaimer{border-top:1px solid var(--wsbr-line);padding-top:14px;margin:18px 0 0}
.wsbr-preview .wsbr-contact{background:#dce9e6;padding:clamp(28px,4vw,52px);margin:24px 0 60px}
.wsbr-preview .wsbr-contact p:not(.wsbr-eyebrow){max-width:760px}
.wsbr-preview .wsbr-contact-link{display:inline-flex;gap:18px;align-items:center;background:var(--wsbr-teal);color:#fff;padding:15px 25px;font-size:14px;font-weight:700;text-decoration:none}
.wsbr-preview .wsbr-contact-link:hover{background:#0c6166;color:#fff}
@media(max-width:980px){.wsbr-preview{width:calc(100% - 64px)}.wsbr-preview .wsbr-preview-layout{grid-template-columns:1fr;gap:8px}.wsbr-preview .wsbr-cost-card{position:static;max-height:none;margin:0 0 30px}.wsbr-booking .wsbr-quote-card{position:static;max-height:none}}
@media(max-width:650px){.wsbr-preview{width:calc(100% - 40px);font-size:16px}.wsbr-preview .wsbr-intro{padding:14px 0 30px}.wsbr-preview .wsbr-lead{font-size:17px}.wsbr-preview .wsbr-card{padding:25px 0 32px}.wsbr-preview .wsbr-contact{margin-bottom:45px}.wsbr-preview .wsbr-contact-link{width:100%;justify-content:center}}
.wsbr-coupon { display:flex; align-items:end; gap:.7rem; flex-wrap:wrap; margin:.8rem 0 .15rem; }
.wsbr-coupon label { flex:1 1 14rem; min-width:0; }
.wsbr-coupon input { width:100%; text-transform:uppercase; }
.wsbr-coupon button { width:auto; min-height:2.8rem; }
[data-wsbr-coupon-breakdown] { font-weight:600; color:#145a70; }
.wsbr-booking .wsbr-quote-card .wsbr-coupon{display:flex;gap:6px;align-items:end;margin:8px 0 4px}
.wsbr-booking .wsbr-quote-card .wsbr-coupon label{flex:0 1 172px;min-width:124px;font-size:12px;font-weight:500}
.wsbr-booking .wsbr-quote-card .wsbr-coupon input{min-height:36px;padding:5px 8px;border-color:#cbd6d8;background:#f8faf9;font-size:13px}
.wsbr-booking .wsbr-quote-card .wsbr-coupon button{width:auto;min-height:36px;padding:5px 9px;border:1px solid #cbd6d8;background:#f1f5f5;color:var(--wsbr-deep);font-size:12px;font-weight:600;cursor:pointer}
.wsbr-booking [data-wsbr-coupon-status]:empty{display:none}
@media (max-width:600px) { .wsbr-coupon { display:grid; grid-template-columns:1fr 1fr; }
  .wsbr-coupon label { grid-column:1/-1; } .wsbr-coupon button { width:100%; } }

/* The mobile cost sheet reuses the existing quote and coupon controls. */
.wsbr-booking .wsbr-mobile-summary-toggle{display:none}
@media(max-width:980px){
  .wsbr-booking{padding-bottom:calc(86px + env(safe-area-inset-bottom, 0px))}
  .wsbr-booking .wsbr-form>.wsbr-quote-card{position:fixed;z-index:1001;left:0;right:0;bottom:0;width:100%;max-height:none;margin:0;padding:0;border:0;border-radius:16px 16px 0 0;box-shadow:0 -8px 30px #102b3b33;background:#102b3b}
  .wsbr-booking .wsbr-mobile-summary-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:68px;padding:10px 18px calc(10px + env(safe-area-inset-bottom, 0px));border:0;border-radius:16px 16px 0 0;background:var(--wsbr-deep);color:#fff;text-align:left;font:inherit;cursor:pointer}
  .wsbr-booking .wsbr-mobile-summary-heading{display:grid;gap:1px;min-width:0}
  .wsbr-booking .wsbr-mobile-summary-heading small{font-size:11px;line-height:1.2;letter-spacing:.04em}
  .wsbr-booking .wsbr-mobile-summary-heading strong{font-size:23px;line-height:1.15;white-space:nowrap}
  .wsbr-booking .wsbr-mobile-summary-action{font-size:12px;font-weight:700;text-align:right;line-height:1.3;color:#ffd166}
  .wsbr-booking .wsbr-mobile-summary-action span[aria-hidden]{display:inline-block;font-size:20px;vertical-align:middle;transition:transform .15s ease}
  .wsbr-booking .wsbr-quote-card.wsbr-mobile-summary-open .wsbr-mobile-summary-action span[aria-hidden]{transform:rotate(180deg)}
  .wsbr-booking .wsbr-mobile-summary-content{display:none;color:#f4f8fa;background:linear-gradient(155deg,#1d4b5e 0%,#123747 48%,#0b2533 100%);border-top:1px solid #ffffff30}
  .wsbr-booking .wsbr-quote-card.wsbr-mobile-summary-open .wsbr-mobile-summary-content{display:block;max-height:calc(75dvh - 68px);overflow-y:auto;overscroll-behavior:contain;padding:20px 18px 12px}
  .wsbr-booking .wsbr-mobile-summary-content h2,.wsbr-booking .wsbr-mobile-summary-content label{color:#f4f8fa}
  .wsbr-booking .wsbr-mobile-summary-content p{color:#cfdee5}
  .wsbr-booking .wsbr-mobile-summary-content .wsbr-eyebrow,.wsbr-booking .wsbr-mobile-summary-content [data-wsbr-coupon-breakdown]{color:#ffd166}
  .wsbr-booking .wsbr-mobile-summary-content .wsbr-cost-lines,.wsbr-booking .wsbr-mobile-summary-content .wsbr-cost-lines li,.wsbr-booking .wsbr-mobile-summary-content .wsbr-quote-total{border-color:#ffffff30}
  .wsbr-booking .wsbr-mobile-summary-content .wsbr-cost-lines li strong,.wsbr-booking .wsbr-quote-card .wsbr-mobile-summary-content .wsbr-price p strong{color:#fff}
  .wsbr-booking .wsbr-mobile-summary-content .wsbr-coupon label{color:#cfdee5}
  .wsbr-booking .wsbr-mobile-summary-content .wsbr-coupon input{border-color:#ffffff50;background:#ffffff12;color:#fff}
  .wsbr-booking .wsbr-mobile-summary-content .wsbr-coupon input::placeholder{color:#b9cbd3}
  .wsbr-booking .wsbr-mobile-summary-content .wsbr-coupon button{border-color:#ffffff50;background:#ffffff16;color:#f4f8fa}
  .wsbr-booking .wsbr-quote-card .wsbr-price .wsbr-quote-total strong{font-size:23px}
}
@media(max-width:360px){.wsbr-booking .wsbr-mobile-summary-heading strong{font-size:19px}.wsbr-booking .wsbr-mobile-summary-action{font-size:11px}}
@media(prefers-reduced-motion:reduce){.wsbr-booking .wsbr-mobile-summary-action span[aria-hidden]{transition:none}}

/* Phone and tablet: one step at a time (booking.js adds .wsbr-wizard-on below 981 px). Desktop keeps the full form. */
.wsbr-booking .wsbr-wizard,.wsbr-booking .wsbr-step-nav{display:none}
.wsbr-booking.wsbr-wizard-on [data-wsbr-panel]:not(.wsbr-panel-active){display:none!important}
.wsbr-booking.wsbr-wizard-on [data-wsbr-panel]>.wsbr-eyebrow{display:none}
.wsbr-booking.wsbr-wizard-on .wsbr-wizard{display:block;margin:0 0 14px}
.wsbr-booking .wsbr-wizard-label{margin:0 0 8px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--wsbr-teal)}
.wsbr-booking .wsbr-wizard ol{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:0;padding:0;list-style:none}
.wsbr-booking .wsbr-wizard button{width:100%;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 2px;border:0;border-top:4px solid #d5dfdf;background:transparent;color:var(--wsbr-muted);font:600 12px Arial,Helvetica,sans-serif;cursor:pointer}
.wsbr-booking .wsbr-wizard button span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e6eeee;color:var(--wsbr-deep);font-size:12px;font-weight:700}
.wsbr-booking .wsbr-wizard button.wsbr-step-reached{border-top-color:var(--wsbr-teal);color:var(--wsbr-deep)}
.wsbr-booking .wsbr-wizard button.wsbr-step-reached span{background:var(--wsbr-teal);color:#fff}
.wsbr-booking .wsbr-wizard button[aria-current="step"]{color:var(--wsbr-deep);font-weight:700}
.wsbr-booking .wsbr-wizard button[aria-current="step"] span{box-shadow:0 0 0 3px #f3c27e}
.wsbr-booking .wsbr-wizard button:disabled{cursor:default;opacity:.65}
.wsbr-booking.wsbr-wizard-on .wsbr-step-nav{display:block;margin-top:22px;border-top:1px solid var(--wsbr-line);padding-top:16px}
.wsbr-booking .wsbr-step-buttons{display:flex;gap:10px}
.wsbr-booking .wsbr-step-buttons button{min-height:50px;padding:12px 18px;font:700 15px Arial,Helvetica,sans-serif;cursor:pointer}
.wsbr-booking .wsbr-step-next{flex:1;border:0;background:var(--wsbr-teal);color:#fff}
.wsbr-booking .wsbr-step-back{border:1px solid var(--wsbr-line);background:#fff;color:var(--wsbr-deep)}
.wsbr-booking .wsbr-coupon-slot:empty{display:none}
.wsbr-booking .wsbr-coupon-slot{margin-top:18px;padding-top:14px;border-top:1px solid var(--wsbr-line)}
.wsbr-booking .wsbr-coupon-slot .wsbr-coupon{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin:0}
.wsbr-booking .wsbr-coupon-slot .wsbr-coupon label{flex:1 1 100%;font-size:14px;font-weight:700;color:var(--wsbr-ink)}
.wsbr-booking .wsbr-coupon-slot .wsbr-coupon input{min-height:44px;font-size:15px}
.wsbr-booking .wsbr-coupon-slot .wsbr-coupon button{min-height:44px;padding:8px 14px;border:1px solid var(--wsbr-line);background:#f1f5f5;color:var(--wsbr-deep);font-weight:700;cursor:pointer}

/* WingSail style: action buttons with slightly rounded corners. */
.wsbr-booking [data-wsbr-submit],.wsbr-booking [data-wsbr-accept],.wsbr-booking .wsbr-step-buttons button,.wsbr-booking .wsbr-button,.wsbr-booking .wsbr-coupon button,.wsbr-booking .wsbr-coupon input,.wsbr-booking .wsbr-cal-nav button,.wsbr-booking [data-wsbr-payment-link]{border-radius:10px}
