/* MBL Booking — multi-step booking form styles.
   Scoped under .mbl-bp. Shares the dark token system with the widget. */

.mbl-bp{
  --mbl-ink:#08080a;--mbl-char-1:#0e0e10;--mbl-char-2:#141417;--mbl-char-3:#1c1c20;
  --mbl-char-4:#26262b;--mbl-char-5:#34343a;
  --mbl-line:rgba(255,255,255,0.06);--mbl-line-2:rgba(255,255,255,0.1);--mbl-line-3:rgba(255,255,255,0.18);
  --mbl-bone:#f5f3ee;--mbl-bone-3:#a4a09a;--mbl-mute:#76767a;
  --mbl-amber:#d49951;--mbl-amber-bright:#e8b873;--mbl-amber-soft:rgba(212,153,81,0.12);--mbl-amber-glow:rgba(212,153,81,0.4);
  --mbl-green:#5fc880;
  --mbl-sans:'Inter',system-ui,sans-serif;--mbl-mono:'JetBrains Mono','SFMono-Regular',monospace;

  max-width:1180px;margin:0 auto;color:var(--mbl-bone);font-family:var(--mbl-sans);
  font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;box-sizing:border-box;
}
.mbl-bp *,.mbl-bp *::before,.mbl-bp *::after{box-sizing:border-box;}
.mbl-bp button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;text-transform:none;letter-spacing:normal;box-shadow:none;line-height:normal;}
.mbl-bp input,.mbl-bp textarea{font-family:inherit;}
.mbl-hide{display:none !important;}

/* step rail */
.mbl-rail{display:flex;align-items:flex-start;justify-content:space-between;max-width:920px;margin:0 auto 44px;position:relative;}
.mbl-rail::before{content:"";position:absolute;top:21px;left:8%;right:8%;height:1px;background:var(--mbl-line-2);z-index:0;}
.mbl-rail-step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:10px;flex:1;}
.mbl-rail-dot{width:44px;height:44px;border-radius:50%;background:var(--mbl-char-3);border:1px solid var(--mbl-line-2);color:var(--mbl-bone-3);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;transition:all .25s;}
.mbl-rail-step.active .mbl-rail-dot{background:var(--mbl-amber);border-color:var(--mbl-amber);color:var(--mbl-ink);box-shadow:0 0 0 5px var(--mbl-amber-soft);}
.mbl-rail-step.done .mbl-rail-dot{background:var(--mbl-char-3);border-color:var(--mbl-amber);color:var(--mbl-amber);}
.mbl-rail-label{font-size:13px;color:var(--mbl-bone-3);text-align:center;transition:color .2s;}
.mbl-rail-step.active .mbl-rail-label{color:var(--mbl-bone);font-weight:600;}

/* layouts */
.mbl-grid{display:grid;grid-template-columns:1fr 480px;gap:24px;align-items:start;}
.mbl-layout{display:grid;grid-template-columns:320px 1fr;gap:24px;align-items:start;}
.mbl-card{background:var(--mbl-char-1);border:1px solid var(--mbl-line);}
.mbl-band{padding:13px 20px;background:var(--mbl-char-2);border-bottom:1px solid var(--mbl-line);font-family:var(--mbl-mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--mbl-bone-3);}

/* tabs */
.mbl-tabs{display:flex;border-bottom:1px solid var(--mbl-line);}
.mbl-tab{flex:1;padding:16px;font-size:12px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;color:var(--mbl-bone-3);transition:all .2s;text-align:center;}
.mbl-tab:hover{color:var(--mbl-bone);}
.mbl-tab.active{background:var(--mbl-amber);color:var(--mbl-ink);}

/* field atoms */
.mbl-fields{display:flex;flex-direction:column;}
.mbl-fields .mbl-f{border:none;border-bottom:1px solid var(--mbl-line);}
.mbl-fields .mbl-f:focus-within{background:var(--mbl-char-2);}
.mbl-f{background:var(--mbl-char-1);padding:13px 16px;position:relative;}
.mbl-f-label{font-family:var(--mbl-mono);font-size:10px;color:var(--mbl-amber);letter-spacing:0.15em;text-transform:uppercase;margin-bottom:6px;display:flex;align-items:center;gap:6px;}
.mbl-f-label .spacer{flex:1;}
.mbl-f-label .useloc{font-size:9px;color:var(--mbl-bone-3);letter-spacing:0.1em;text-decoration:underline;text-underline-offset:2px;cursor:pointer;}
.mbl-f-label .useloc:hover{color:var(--mbl-amber-bright);}
.mbl-f-input{font-size:15px;font-weight:600;color:var(--mbl-bone);width:100%;background:transparent;letter-spacing:-0.01em;border:none;outline:none;padding:0;}
.mbl-f-input::placeholder{color:var(--mbl-mute);font-weight:400;}
textarea.mbl-f-input{resize:vertical;min-height:70px;}
.mbl-2{display:grid;grid-template-columns:1fr 1fr;}
.mbl-2 .mbl-f{border-right:1px solid var(--mbl-line);}
.mbl-2 .mbl-f:last-child{border-right:none;}
.mbl-3{display:grid;grid-template-columns:1fr 1fr 1fr;}
.mbl-3 .mbl-f{border-right:1px solid var(--mbl-line);}
.mbl-3 .mbl-f:last-child{border-right:none;}
.mbl-only-round,.mbl-only-diff{display:flex;flex-direction:column;}

/* dropdown (shared with widget look) */
.mbl-dd{position:relative;}
.mbl-dd-value{font-size:15px;font-weight:600;color:var(--mbl-bone);display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;white-space:nowrap;}
.mbl-dd-value .mbl-chev{color:var(--mbl-bone-3);transition:transform .2s;flex-shrink:0;display:flex;}
.mbl-dd.open .mbl-dd-value .mbl-chev{transform:rotate(180deg);color:var(--mbl-amber);}
.mbl-dd-panel{position:absolute;left:-1px;right:-1px;top:calc(100% + 8px);background:var(--mbl-char-3);border:1px solid var(--mbl-line-3);box-shadow:0 20px 40px -10px rgba(0,0,0,0.7);z-index:50;max-height:220px;overflow-y:auto;display:none;min-width:120px;}
.mbl-dd.open .mbl-dd-panel{display:block;}
.mbl-dd-opt{padding:10px 14px;font-size:14px;font-weight:500;color:var(--mbl-bone-3);cursor:pointer;border-bottom:1px solid var(--mbl-line);white-space:nowrap;}
.mbl-dd-opt:last-child{border-bottom:none;}
.mbl-dd-opt:hover{background:var(--mbl-char-4);color:var(--mbl-bone);}
.mbl-dd-opt.sel{color:var(--mbl-amber-bright);background:var(--mbl-amber-soft);}
.mbl-time{display:flex;align-items:center;gap:7px;}
.mbl-time .mbl-sep{color:var(--mbl-bone-3);font-weight:700;}
.mbl-time .mbl-dd{flex:0 0 auto;}
.mbl-time .mbl-dd-value{justify-content:flex-start;gap:5px;}

/* map + stats */
.mbl-map{height:380px;background:linear-gradient(135deg,var(--mbl-char-3),var(--mbl-char-1));border:1px solid var(--mbl-line);position:relative;overflow:hidden;}
.mbl-map-sm{height:220px;margin-bottom:16px;}
.mbl-map .mbl-map-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--mbl-amber);text-align:center;font-family:var(--mbl-mono);font-size:11px;letter-spacing:0.15em;text-transform:uppercase;padding:24px;}
.mbl-stats{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--mbl-line);border-top:none;}
.mbl-stat{padding:20px;display:flex;align-items:center;gap:14px;}
.mbl-stat:first-child{border-right:1px solid var(--mbl-line);}
.mbl-stat-ico{color:var(--mbl-amber);}
.mbl-stat-l{font-family:var(--mbl-mono);font-size:9px;color:var(--mbl-bone-3);letter-spacing:0.12em;text-transform:uppercase;}
.mbl-stat-v{font-size:22px;font-weight:300;color:var(--mbl-bone);letter-spacing:-0.02em;}

/* nav */
.mbl-nav{display:flex;justify-content:space-between;align-items:center;margin-top:24px;}
.mbl-bp .mbl-btn{padding:15px 26px;font-size:12px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;transition:all .2s;display:inline-flex;align-items:center;gap:10px;border:none;border-radius:0;}
.mbl-bp button.mbl-btn-primary{background:var(--mbl-amber) !important;color:var(--mbl-ink) !important;}
.mbl-bp button.mbl-btn-primary:hover{background:var(--mbl-amber-bright) !important;transform:translateY(-1px);box-shadow:0 10px 28px var(--mbl-amber-glow);}
.mbl-bp button.mbl-btn-primary svg{transition:transform .2s;}
.mbl-bp button.mbl-btn-primary:hover svg{transform:translateX(4px);}
.mbl-bp button.mbl-btn-primary[disabled]{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none;background:var(--mbl-amber) !important;}
.mbl-bp button.mbl-btn-ghost{background:transparent !important;color:var(--mbl-bone-3) !important;border:1px solid var(--mbl-line-2) !important;}
.mbl-bp button.mbl-btn-ghost:hover{color:var(--mbl-bone) !important;border-color:var(--mbl-line-3) !important;}
.mbl-note{text-align:center;color:var(--mbl-mute);font-family:var(--mbl-mono);font-size:11px;margin-top:18px;}

/* summary sidebar */
.mbl-sum-h{font-size:17px;font-weight:600;color:var(--mbl-bone);padding:18px 20px;border-bottom:1px solid var(--mbl-line);}
.mbl-sum-blk{padding:13px 20px;border-bottom:1px solid var(--mbl-line);}
.mbl-sum-k{font-family:var(--mbl-mono);font-size:9px;color:var(--mbl-bone-3);letter-spacing:0.12em;text-transform:uppercase;margin-bottom:4px;}
.mbl-sum-v{font-size:14px;color:var(--mbl-bone);font-weight:500;}
.mbl-sum-row{display:flex;justify-content:space-between;padding:11px 20px;border-bottom:1px solid var(--mbl-line);font-size:14px;}
.mbl-sum-row .k{color:var(--mbl-bone-3);}
.mbl-sum-row .v{color:var(--mbl-bone);font-weight:500;}
.mbl-sum-total{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;background:var(--mbl-char-2);}
.mbl-sum-total .k{font-family:var(--mbl-mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--mbl-bone-3);}
.mbl-sum-total .v{font-size:22px;font-weight:800;font-family:var(--mbl-mono);color:var(--mbl-amber-bright);}

/* vehicle cards */
.mbl-veh{display:grid;grid-template-columns:200px 1fr auto auto;gap:20px;padding:20px;border-bottom:1px solid var(--mbl-line);align-items:center;cursor:pointer;transition:background .15s;}
.mbl-veh:hover{background:var(--mbl-char-2);}
.mbl-veh.sel{background:var(--mbl-amber-soft);box-shadow:inset 3px 0 0 var(--mbl-amber);}
.mbl-veh-img{position:relative;width:100%;aspect-ratio:4/3;background:linear-gradient(135deg,var(--mbl-char-4),var(--mbl-char-2));display:flex;align-items:center;justify-content:center;color:var(--mbl-mute);border:1px solid var(--mbl-line);border-radius:8px;overflow:hidden;}
.mbl-veh-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.mbl-veh-img svg{width:64px;height:auto;opacity:.5;}
.mbl-veh-name{font-size:18px;font-weight:600;color:var(--mbl-bone);margin-bottom:6px;}
.mbl-veh-desc{font-size:12px;color:var(--mbl-bone-3);margin-bottom:8px;}
.mbl-veh-cap{display:flex;gap:18px;}
.mbl-veh-cap div{display:flex;align-items:center;gap:7px;font-family:var(--mbl-mono);font-size:13px;color:var(--mbl-bone-3);}
.mbl-bp button.mbl-veh-select{padding:11px 22px;border:1px solid var(--mbl-line-2);font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--mbl-bone-3);transition:all .15s;white-space:nowrap;background:transparent !important;border-radius:0;}
.mbl-veh:hover button.mbl-veh-select{border-color:var(--mbl-line-3);color:var(--mbl-bone);}
.mbl-veh.sel button.mbl-veh-select{background:var(--mbl-amber) !important;border-color:var(--mbl-amber);color:var(--mbl-ink) !important;}

/* booking options */
.mbl-opt{display:grid;grid-template-columns:1fr auto auto;gap:20px;align-items:center;padding:16px 20px;border-bottom:1px solid var(--mbl-line);}
.mbl-opt-name{font-size:15px;font-weight:500;color:var(--mbl-bone);}
.mbl-opt-price{font-family:var(--mbl-mono);font-size:12px;color:var(--mbl-bone-3);margin-top:2px;}
.mbl-stepper{display:flex;align-items:center;border:1px solid var(--mbl-line-2);}
.mbl-stepper button{width:34px;height:34px;color:var(--mbl-bone-3);font-size:18px;transition:all .15s;}
.mbl-stepper button:hover{color:var(--mbl-amber);background:var(--mbl-char-2);}
.mbl-stepper .qty{width:40px;text-align:center;font-family:var(--mbl-mono);font-weight:600;color:var(--mbl-bone);}
.mbl-bp button.mbl-opt-select{padding:10px 20px;border:1px solid var(--mbl-line-2);font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--mbl-bone-3);transition:all .15s;background:transparent !important;border-radius:0;}
.mbl-bp button.mbl-opt-select:hover{border-color:var(--mbl-line-3);color:var(--mbl-bone);}
.mbl-bp button.mbl-opt-select.sel{background:var(--mbl-amber) !important;border-color:var(--mbl-amber);color:var(--mbl-ink) !important;}
.mbl-bp .mbl-stepper button{width:34px;height:34px;color:var(--mbl-bone-3);font-size:18px;transition:all .15s;background:transparent !important;border:none;border-radius:0;}
.mbl-bp .mbl-stepper button:hover{color:var(--mbl-amber);background:var(--mbl-char-2) !important;}

.mbl-form-error{margin-top:16px;padding:12px 16px;background:rgba(220,80,80,0.12);border:1px solid rgba(220,80,80,0.3);color:#f0b4b4;font-size:13px;}

@media(max-width:900px){
  .mbl-grid{grid-template-columns:1fr;}
  /* Steps 2 & 3: stack, and push the Summary column to the bottom so the
     vehicle/contact selection is what the user sees first. */
  .mbl-layout{display:flex;flex-direction:column;}
  .mbl-layout > div:first-child{order:2;}
  .mbl-layout > div:last-child{order:1;}
  .mbl-veh{grid-template-columns:1fr;text-align:center;gap:14px;}
  .mbl-veh-cap{justify-content:center;}
  .mbl-veh-img{max-width:360px;margin:0 auto;}
}

/* native date input — match dark theme */
.mbl-bp input[type="date"]{color-scheme:dark;cursor:pointer;}
.mbl-bp input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(70%) sepia(40%) saturate(500%) hue-rotate(350deg);cursor:pointer;}

/* ===== Confirmation / Invoice page ===== */
.mbl-inv{max-width:1080px;margin:0 auto;padding:8px 0 4px;font-family:var(--mbl-sans);}
.mbl-inv *{box-sizing:border-box;}
/* The document is a light "paper" invoice on the dark page for contrast + print feel */
.mbl-inv-doc{
	background:#fbf9f5;color:#1d1d22;border-radius:16px;overflow:hidden;
	box-shadow:0 40px 90px -30px rgba(0,0,0,0.85);border:1px solid rgba(0,0,0,0.06);
}
/* top band */
.mbl-inv-top{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:26px 36px;background:linear-gradient(180deg,#161618,#0f0f11);color:#f4f1ea;}
.mbl-inv-logo{max-height:50px;display:block;}
.mbl-inv-company{font-size:21px;font-weight:800;letter-spacing:0.02em;}
.mbl-inv-contact{margin-top:8px;font-size:12px;line-height:1.7;color:#b9b6ad;}
.mbl-inv-meta{text-align:right;}
.mbl-inv-doctype{font-family:var(--mbl-mono);font-size:10px;letter-spacing:0.22em;text-transform:uppercase;color:var(--mbl-amber);}
.mbl-inv-num{font-size:23px;font-weight:800;letter-spacing:0.01em;margin-top:4px;font-family:var(--mbl-mono);}
.mbl-inv-date{font-size:12px;color:#b9b6ad;margin-top:4px;}
.mbl-inv-status{display:inline-block;margin-top:10px;padding:5px 14px;border-radius:30px;font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;}
.mbl-inv-status.is-paid{background:rgba(95,200,128,0.18);color:#7ee2a0;border:1px solid rgba(95,200,128,0.4);}
.mbl-inv-status.is-pending{background:rgba(216,160,90,0.18);color:var(--mbl-amber-bright);border:1px solid rgba(216,160,90,0.4);}
/* confirm line */
.mbl-inv-confirmline{display:flex;align-items:center;gap:12px;padding:14px 36px;background:#f1ede4;border-bottom:1px solid #e6e0d4;font-size:13.5px;color:#4a463d;}
.mbl-inv-check{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:#2e9e57;color:#fff;display:flex;align-items:center;justify-content:center;}
/* bill-to + map */
.mbl-inv-billrow{display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap;padding:22px 36px 4px;}
.mbl-inv-billlabel{font-family:var(--mbl-mono);font-size:10px;letter-spacing:0.16em;text-transform:uppercase;color:#9a948a;margin-bottom:6px;}
.mbl-inv-billto{font-size:13px;line-height:1.7;color:#55514a;}
.mbl-inv-billname{font-size:16px;font-weight:700;color:#1d1d22;}
.mbl-inv-map{width:340px;max-width:100%;border-radius:10px;overflow:hidden;border:1px solid #e6e0d4;align-self:flex-start;}
.mbl-inv-map img{width:100%;height:auto;display:block;}
/* multi-column section grid — compact, no long scroll */
.mbl-inv-grid{
	column-count:2;column-gap:28px;
	padding:18px 36px 6px;
}
.mbl-inv-block{break-inside:avoid;display:inline-block;width:100%;margin-bottom:18px;}
.mbl-inv-bhead{font-family:var(--mbl-mono);font-size:10px;letter-spacing:0.16em;text-transform:uppercase;color:var(--mbl-amber-deep,#a8763a);font-weight:700;margin-bottom:4px;padding-bottom:6px;border-bottom:2px solid #efe9dd;}
.mbl-inv-btable{width:100%;border-collapse:collapse;}
.mbl-inv-btable td{padding:7px 0;font-size:13.5px;border-bottom:1px solid #f1ece1;vertical-align:top;}
.mbl-inv-btable tr:last-child td{border-bottom:none;}
.mbl-inv-k{color:#6b665d;width:48%;}
.mbl-inv-v{color:#1d1d22;font-weight:600;text-align:right;}
/* totals */
.mbl-inv-totals{padding:10px 36px 24px;display:flex;justify-content:flex-end;}
.mbl-inv-totalrow{display:flex;align-items:center;justify-content:space-between;gap:60px;min-width:300px;padding:16px 22px;background:#161618;color:#fff;border-radius:12px;}
.mbl-inv-totalrow span:first-child{font-family:var(--mbl-mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:#b9b6ad;}
.mbl-inv-totalval{font-size:26px;font-weight:800;color:var(--mbl-amber-bright);font-family:var(--mbl-mono);}
/* footer */
.mbl-inv-foot{padding:2px 36px 30px;}
.mbl-inv-cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px;}
.mbl-inv-foot .mbl-btn{padding:13px 26px;border-radius:10px;font-size:12px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;transition:all .2s;}
.mbl-inv-foot .mbl-btn-primary{background:var(--mbl-amber,#c9a25f)!important;color:#1a1206!important;}
.mbl-inv-foot .mbl-btn-primary:hover{background:var(--mbl-amber-bright,#e7c98c)!important;}
.mbl-inv-foot .mbl-btn-ghost{color:#55514a!important;border:1px solid #cfc7b8!important;background:#fff!important;}
.mbl-inv-foot .mbl-btn-ghost:hover{border-color:#a8763a!important;color:#1d1d22!important;}
.mbl-inv-fineprint{font-size:12px;color:#8b857a;margin:0;}
@media(max-width:760px){
	.mbl-inv-grid{column-count:1;}
	.mbl-inv-top,.mbl-inv-confirmline,.mbl-inv-billrow,.mbl-inv-totals,.mbl-inv-foot,.mbl-inv-grid{padding-left:20px;padding-right:20px;}
	.mbl-inv-meta{text-align:left;}
	.mbl-inv-map{width:100%;}
}

/* =====================================================================
   v1.9.4 — Legibility + "Restrained" premium pass.
   Self-contained override block. Remove this whole block to revert.
   Keeps structure/flow untouched; readability + depth only.
   ===================================================================== */

/* stronger structural lines + AA-safe placeholder grey */
.mbl-bp{
  --mbl-line:rgba(255,255,255,0.1);
  --mbl-line-2:rgba(255,255,255,0.16);
  --mbl-mute:#9a9aa0;
  /* frame the whole product so it lifts off the dark page */
  border:1px solid var(--mbl-line-2);
  border-radius:22px;
  padding:42px 40px 46px;
  background:
    radial-gradient(900px 380px at 50% -30%, rgba(212,153,81,0.06), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
  box-shadow:
    0 24px 60px -30px rgba(0,0,0,0.85),
    0 60px 150px -50px rgba(0,0,0,0.95),
    0 0 90px -42px rgba(212,153,81,0.20),
    inset 0 1px 0 rgba(255,255,255,0.06);
}

/* surfaces: lighter card top, thin lit edge (flat inside the frame) */
.mbl-bp .mbl-card{
  background:linear-gradient(180deg,#131316,#0e0e10);
  border-color:var(--mbl-line-2);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.045);
}
.mbl-bp .mbl-map{box-shadow:inset 0 1px 0 rgba(255,255,255,0.045);}

/* section bands: quiet, refined header with a single amber marker */
.mbl-bp .mbl-band{
  font-size:11.5px;color:var(--mbl-bone);font-weight:600;letter-spacing:0.14em;
  background:var(--mbl-char-2);display:flex;align-items:center;gap:10px;
}
.mbl-bp .mbl-band::before{
  content:"";width:6px;height:6px;border-radius:50%;
  background:var(--mbl-amber);flex:0 0 auto;box-shadow:0 0 0 3px var(--mbl-amber-soft);
}

/* fields become real, visible cells */
.mbl-bp .mbl-fields{gap:14px;padding:18px;}
.mbl-bp .mbl-fields .mbl-f{
  border:1px solid var(--mbl-line-2);border-radius:10px;background:var(--mbl-char-2);
  padding:14px 16px;transition:border-color .16s, background .16s, box-shadow .16s;
}
.mbl-bp .mbl-fields .mbl-f:focus-within{
  background:var(--mbl-char-3);border-color:var(--mbl-amber);
  box-shadow:0 0 0 3px var(--mbl-amber-soft);
}
.mbl-bp .mbl-2,.mbl-bp .mbl-3{gap:14px;}
.mbl-bp .mbl-2 .mbl-f,.mbl-bp .mbl-3 .mbl-f{border-right:1px solid var(--mbl-line-2);}

/* labels: bigger, tighter tracking, brighter */
.mbl-bp .mbl-f-label{
  font-size:11.5px;letter-spacing:0.08em;color:var(--mbl-amber-bright);
  margin-bottom:7px;font-weight:500;
}
.mbl-bp .mbl-f-label .useloc{
  font-size:10.5px;color:var(--mbl-bone);letter-spacing:0.04em;
  text-decoration:underline;text-underline-offset:2px;
}
.mbl-bp .mbl-f-label .useloc:hover{color:var(--mbl-amber-bright);}

/* input value presence + readable placeholder */
.mbl-bp .mbl-f-input{font-size:15.5px;}
.mbl-bp .mbl-f-input::placeholder{color:var(--mbl-mute);font-weight:400;}

/* tabs: clearer inactive state (active stays dark-on-amber from base) */
.mbl-bp .mbl-tab:not(.active){color:var(--mbl-bone-3);font-size:12.5px;box-shadow:inset 0 -2px 0 transparent;}
.mbl-bp .mbl-tab:not(.active):hover{box-shadow:inset 0 -2px 0 var(--mbl-line-3);color:var(--mbl-bone);}

/* stat numbers stop being thin/faint */
.mbl-bp .mbl-stat-v{font-weight:400;}
.mbl-bp .mbl-stat-l{font-size:9.5px;color:var(--mbl-bone);}

/* refined step rail */
.mbl-bp .mbl-rail-dot{font-weight:600;}
.mbl-bp .mbl-rail-step.active .mbl-rail-dot{box-shadow:0 0 0 4px var(--mbl-amber-soft);}

/* primary CTA is the hero: gently lifted even at rest */
.mbl-bp button.mbl-btn-primary{
  padding:16px 30px;letter-spacing:0.09em;
  box-shadow:0 14px 32px -12px var(--mbl-amber-glow);
}
.mbl-bp button.mbl-btn-primary:hover{box-shadow:0 18px 42px -10px var(--mbl-amber-glow);}

/* brighter amber date-picker glyph */
.mbl-bp input[type="date"]::-webkit-calendar-picker-indicator{
  filter:invert(74%) sepia(38%) saturate(720%) hue-rotate(348deg) brightness(96%);
  cursor:pointer;opacity:.9;
}
.mbl-bp input[type="date"]::-webkit-calendar-picker-indicator:hover{opacity:1;}

/* form heading */
.mbl-bp .mbl-head{text-align:center;max-width:640px;margin:0 auto 32px;}
.mbl-bp .mbl-head h2{font-size:27px;font-weight:700;letter-spacing:-0.015em;margin:0 0 8px;color:var(--mbl-bone);}
.mbl-bp .mbl-head p{margin:0;font-size:14.5px;color:var(--mbl-bone-3);}

/* trust strip */
.mbl-bp .mbl-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 12px;margin:30px auto 0;max-width:940px;}
.mbl-bp .mbl-trust-chip{display:inline-flex;align-items:center;gap:9px;padding:10px 17px;border:1px solid var(--mbl-line-2);border-radius:999px;background:var(--mbl-char-1);font-size:12.5px;color:var(--mbl-bone-3);transition:border-color .16s;}
.mbl-bp .mbl-trust-chip:hover{border-color:var(--mbl-line-3);}
.mbl-bp .mbl-trust-chip svg{color:var(--mbl-amber);flex:0 0 auto;}
.mbl-bp .mbl-trust-chip b{color:var(--mbl-bone);font-weight:600;}

@media(max-width:600px){
  .mbl-bp{padding:24px 16px 28px;border-radius:16px;}
}

/* =====================================================================
   v1.9.5 — Light / embedded skin. Activated with [mbl_booking skin="light"].
   Light palette, no outer frame, single-column, no duplicate heading/trust —
   for dropping the form into a theme layout (e.g. the split booking page).
   ===================================================================== */
.mbl-bp.mbl-skin-light{
  --mbl-ink:#1d1d20;
  --mbl-char-1:#ffffff;--mbl-char-2:#f4f1ea;--mbl-char-3:#ece7dc;--mbl-char-4:#e0d9cc;--mbl-char-5:#d4cdbd;
  --mbl-line:#e6e0d3;--mbl-line-2:#dad3c3;--mbl-line-3:#c8c0ad;
  --mbl-bone:#1d1d20;--mbl-bone-3:#6f6a60;--mbl-mute:#a39d90;
  --mbl-amber:#d49951;--mbl-amber-bright:#a96f1f;--mbl-amber-soft:rgba(192,130,42,0.14);--mbl-amber-glow:rgba(212,153,81,0.45);
  /* drop the frame so it sits inside the host layout */
  border:none;border-radius:0;padding:0;background:none;box-shadow:none;
  max-width:560px;margin:0 auto;
}
.mbl-bp.mbl-skin-light .mbl-head,
.mbl-bp.mbl-skin-light .mbl-trust{display:none;}
.mbl-bp.mbl-skin-light .mbl-card{background:#fff;box-shadow:none;}
.mbl-bp.mbl-skin-light .mbl-grid{grid-template-columns:1fr;}
.mbl-bp.mbl-skin-light .mbl-f-label{color:#a96f1f;}
.mbl-bp.mbl-skin-light input[type="date"]{color-scheme:light;}
.mbl-bp.mbl-skin-light input[type="date"]::-webkit-calendar-picker-indicator{filter:none;opacity:.85;}

/* =====================================================================
   v1.9.6 — Theme-native elevated dark look (matches site .hero-form).
   Pure re-skin on existing markup. Remove this block to revert.
   Map stays the plugin's live Google map.
   ===================================================================== */

/* outer wrapper: no frame, just a faint warm pool behind the form */
.mbl-bp{
  background:radial-gradient(900px 560px at 40% 30%, rgba(212,153,81,0.06), transparent 58%);
  border:none;border-radius:0;box-shadow:none;padding:0;
}
.mbl-bp .mbl-head{display:none;}   /* page already carries a heading */

/* step rail: mono uppercase labels */
.mbl-bp .mbl-rail-label{font-family:var(--mbl-mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;}

/* ---- form / summary card = theme .hero-form recipe + corner brackets ---- */
.mbl-bp .mbl-card{
  position:relative;overflow:visible;border-radius:2px;
  background:radial-gradient(130% 60% at 50% -12%, rgba(212,153,81,0.06), transparent 58%),linear-gradient(180deg,var(--mbl-char-2),var(--mbl-char-1));
  border:1px solid var(--mbl-line-3);
  box-shadow:0 40px 80px -15px rgba(0,0,0,0.6),0 0 0 1px rgba(212,153,81,0.1),inset 0 1px 0 rgba(255,255,255,0.06);
}
.mbl-bp .mbl-card::before,.mbl-bp .mbl-card::after{content:"";position:absolute;width:14px;height:14px;border:1.5px solid var(--mbl-amber);pointer-events:none;z-index:2;}
.mbl-bp .mbl-card::before{top:-1px;left:-1px;border-right:none;border-bottom:none;}
.mbl-bp .mbl-card::after{bottom:-1px;right:-1px;border-left:none;border-top:none;}

/* ---- tabs: boxed, amber active ---- */
.mbl-bp .mbl-tabs{display:flex;padding:6px;margin:14px;background:var(--mbl-char-1);border:1px solid var(--mbl-line);}
.mbl-bp .mbl-tab{flex:1;padding:11px 14px;font-size:11px;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;color:var(--mbl-bone-3);text-align:center;box-shadow:none;}
.mbl-bp .mbl-tab:hover{color:var(--mbl-bone);}
.mbl-bp .mbl-tab.active{background:var(--mbl-amber);color:var(--mbl-ink);}

/* ---- section bands: eyebrow (amber line + mono amber) ---- */
.mbl-bp .mbl-band{padding:6px 18px 12px;background:none;border-bottom:none;font-family:var(--mbl-mono);font-size:11px;font-weight:400;color:var(--mbl-amber);letter-spacing:0.25em;text-transform:uppercase;display:flex;align-items:center;gap:12px;}
.mbl-bp .mbl-band::before{content:"";width:24px;height:1px;border-radius:0;background:var(--mbl-amber);box-shadow:none;}

/* ---- fields: dark recessed wells ---- */
.mbl-bp .mbl-fields{padding:0 14px 14px;gap:8px;}
.mbl-bp .mbl-fields .mbl-f{
  background:var(--mbl-ink);border:1px solid var(--mbl-line-2);border-radius:0;padding:14px 18px;
  box-shadow:inset 0 1px 2px rgba(0,0,0,0.4);transition:border-color .15s,box-shadow .15s;
}
.mbl-bp .mbl-fields .mbl-f:hover,.mbl-bp .mbl-fields .mbl-f:focus-within{
  background:var(--mbl-ink);border-color:var(--mbl-amber);
  box-shadow:inset 0 1px 2px rgba(0,0,0,0.4),0 0 0 3px var(--mbl-amber-soft);
}
.mbl-bp .mbl-2 .mbl-f,.mbl-bp .mbl-3 .mbl-f{border-right:1px solid var(--mbl-line-2);}
.mbl-bp .mbl-f-label{font-family:var(--mbl-mono);font-size:10px;color:var(--mbl-amber);letter-spacing:0.15em;text-transform:uppercase;font-weight:400;margin-bottom:6px;}
.mbl-bp .mbl-f-input{font-size:15px;font-weight:600;color:var(--mbl-bone);}
.mbl-bp .mbl-f-input::placeholder{color:var(--mbl-mute);font-weight:400;}

/* ---- map + stats: matching panels ---- */
.mbl-bp .mbl-map{
  border:1px solid var(--mbl-line-3);border-radius:2px;
  background:linear-gradient(180deg,var(--mbl-char-2),var(--mbl-char-1));
  box-shadow:0 40px 80px -15px rgba(0,0,0,0.6),0 0 0 1px rgba(212,153,81,0.08),inset 0 1px 0 rgba(255,255,255,0.06);
}
.mbl-bp .mbl-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;border:none;margin-top:14px;}
.mbl-bp .mbl-stat{
  padding:18px;border:1px solid var(--mbl-line-3);border-radius:2px;
  background:linear-gradient(180deg,var(--mbl-char-2),var(--mbl-char-1));
  box-shadow:0 24px 50px -30px rgba(0,0,0,0.8),inset 0 1px 0 rgba(255,255,255,0.05);
}
.mbl-bp .mbl-stat:first-child{border-right:1px solid var(--mbl-line-3);}
.mbl-bp .mbl-stat-ico{width:40px;height:40px;border-radius:50%;background:var(--mbl-amber-soft);border:1px solid var(--mbl-amber);color:var(--mbl-amber-bright);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.mbl-bp .mbl-stat-ico svg{width:18px;height:18px;}
.mbl-bp .mbl-stat-l{font-family:var(--mbl-mono);font-size:10px;color:var(--mbl-bone-3);letter-spacing:0.12em;text-transform:uppercase;}
.mbl-bp .mbl-stat-v{font-weight:300;}

/* ---- CTA: theme .btn-amber (sharp) ---- */
.mbl-bp button.mbl-btn-primary{background:var(--mbl-amber);color:var(--mbl-ink);border-radius:0;padding:16px 30px;letter-spacing:0.05em;box-shadow:none;}
.mbl-bp button.mbl-btn-primary:hover{background:var(--mbl-amber-bright);box-shadow:0 8px 24px var(--mbl-amber-glow);transform:none;}

/* ---- trust strip: inline mono, amber icons ---- */
.mbl-bp .mbl-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:22px;margin-top:30px;}
.mbl-bp .mbl-trust-chip{background:none;border:none;border-radius:0;padding:0;font-family:var(--mbl-mono);font-size:10px;color:var(--mbl-bone-3);letter-spacing:0.08em;text-transform:uppercase;}
.mbl-bp .mbl-trust-chip b{color:var(--mbl-bone);font-weight:600;}
.mbl-bp .mbl-trust-chip svg{color:var(--mbl-amber);}

/* =====================================================================
   v1.9.7 — Step + tab transitions (CSS-only; plays on show).
   ===================================================================== */
@keyframes mblPanelIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
@keyframes mblFieldIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}

/* each step fades and rises in when it becomes the active panel */
.mbl-bp .mbl-panel{animation:mblPanelIn .42s cubic-bezier(.22,.61,.36,1) both;}

/* fields that appear when switching One-Way / Round Trip / Hourly fade in */
.mbl-bp .mbl-only-round,
.mbl-bp .mbl-only-hourly,
.mbl-bp .mbl-only-extratime,
.mbl-bp .mbl-not-hourly,
.mbl-bp .mbl-only-diff{animation:mblFieldIn .3s ease both;}

/* smooth the tab highlight and the step-rail dots */
.mbl-bp .mbl-tab{transition:background-color .25s ease,color .25s ease,box-shadow .25s ease;}
.mbl-bp .mbl-rail-dot{transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease;}

@media(prefers-reduced-motion:reduce){
  .mbl-bp .mbl-panel,
  .mbl-bp .mbl-only-round,.mbl-bp .mbl-only-hourly,.mbl-bp .mbl-only-extratime,.mbl-bp .mbl-not-hourly,.mbl-bp .mbl-only-diff{animation:none;}
}
