/*!
 * B-LineXpress Content — front-end styles
 * Version: 0.1.0
 * Luxury black-car service. Dark charcoal + gold. Cormorant Garamond / Manrope.
 */

/* ---------- Tokens ---------- */
:root{
  --gold:#c9a227;
  --gold-2:#e3c25a;
  --bg:#0a0a0a;
  --bg-2:#070706;
  --panel:#0c0c0b;
  --panel-2:#111110;
  --line:#1c1b18;
  --line-2:#26241f;
  --text:#e8e6e1;
  --heading:#f3f1ec;
  --muted:#8d8a82;
  --serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --sans:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --maxw:1280px;
}

/* ---------- Reset ---------- */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body.blx{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.5;}
.blx img{max-width:100%;display:block;}
.blx a{color:inherit;}
.blx ::selection{background:var(--gold);color:#0a0a0a;}
.blx h1,.blx h2,.blx h3{margin:0;}

/* ---------- Reusable atoms ---------- */
.blx .wrap{max-width:var(--maxw);margin:0 auto;padding-left:24px;padding-right:24px;}
.blx .eyebrow{display:inline-block;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);}
.blx .serif{font-family:var(--serif);}
.blx .section{padding:clamp(74px,9vw,120px) 0;}
.blx .section--tight{padding:clamp(48px,6vw,80px) 0;}
.blx .dark-band{background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}

.blx .btn{display:inline-flex;align-items:center;gap:.55em;font-weight:700;font-size:13px;
  letter-spacing:.12em;text-transform:uppercase;padding:16px 30px;border-radius:2px;
  text-decoration:none;transition:all .25s;border:1px solid transparent;cursor:pointer;}
.blx .btn--gold{background:var(--gold);color:#0a0a0a;}
.blx .btn--gold:hover{background:var(--gold-2);transform:translateY(-1px);}
.blx .btn--ghost{background:transparent;color:var(--text);border-color:#3a3833;font-weight:600;}
.blx .btn--ghost:hover{border-color:var(--gold);color:var(--gold);}
.blx .btn--sm{padding:12px 22px;font-size:12px;}

.blx .h2{font-family:var(--serif);font-weight:600;font-size:clamp(34px,4.5vw,56px);
  line-height:1.02;color:var(--heading);}
.blx .lead{color:var(--muted);font-size:16px;line-height:1.7;}

/* ---------- Top bar ---------- */
.blx-topbar{background:#070707;border-bottom:1px solid #1a1a18;font-size:12px;letter-spacing:.06em;}
.blx-topbar .wrap{padding-top:9px;padding-bottom:9px;display:flex;align-items:center;
  justify-content:space-between;gap:16px;flex-wrap:wrap;}
.blx-topbar .grp{display:flex;align-items:center;gap:18px;color:#9a978f;flex-wrap:wrap;}
.blx-topbar a{text-decoration:none;color:#9a978f;}
.blx-topbar a.tel{color:var(--gold);font-weight:600;}
.blx-topbar .sep{color:#3a3833;}
.blx-topbar .always{letter-spacing:.16em;}

/* ---------- Header / nav ---------- */
.blx-header{position:sticky;top:0;z-index:50;background:rgba(7,7,7,.86);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid #1a1a18;}
.blx-header .wrap{padding-top:16px;padding-bottom:16px;display:flex;align-items:center;
  justify-content:space-between;gap:24px;}
.blx-brand{text-decoration:none;display:flex;flex-direction:column;line-height:1;}
.blx-brand .name{font-family:var(--serif);font-weight:700;font-size:26px;color:#f3f1ec;letter-spacing:.5px;}
.blx-brand .sub{font-size:9.5px;letter-spacing:.34em;color:var(--gold);margin-top:4px;text-transform:uppercase;}
.blx-nav{display:flex;align-items:center;gap:30px;}
.blx-nav a{color:#cfccc4;text-decoration:none;font-size:13px;letter-spacing:.1em;text-transform:uppercase;transition:color .2s;}
.blx-nav a:hover{color:var(--gold);}
.blx-nav a.is-cta{color:#0a0a0a;background:var(--gold);font-weight:700;font-size:12px;
  letter-spacing:.14em;padding:13px 24px;border-radius:2px;}
.blx-nav a.is-cta:hover{background:var(--gold-2);color:#0a0a0a;transform:translateY(-1px);}
.blx-burger{display:none;background:none;border:0;cursor:pointer;padding:8px;}
.blx-burger span{display:block;width:24px;height:2px;background:#e8e6e1;margin:5px 0;transition:.25s;}

/* ---------- Hero ---------- */
.blx-hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;overflow:hidden;}
.blx-hero .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;}
.blx-hero .scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,7,7,.55) 0%,rgba(7,7,7,.1) 35%,rgba(7,7,7,.82) 100%);}
.blx-hero .inner{position:relative;width:100%;padding-bottom:60px;}
.blx-hero .col{max-width:760px;}
.blx-hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(46px,7vw,86px);
  line-height:.98;color:#f6f4ef;letter-spacing:.5px;margin:22px 0 0;text-wrap:balance;}
.blx-hero p{font-size:clamp(16px,1.5vw,19px);line-height:1.7;color:#cfccc4;max-width:560px;margin:26px 0 0;}
.blx-hero .cta-row{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap;}
.blx-hero--sub{min-height:62vh;}

/* page sub-hero (fleet/tours) */
.blx-subhero{position:relative;min-height:58vh;display:flex;align-items:flex-end;overflow:hidden;
  border-bottom:1px solid var(--line);}
.blx-subhero .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.blx-subhero .scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,7,7,.5),rgba(7,7,7,.85));}
.blx-subhero .inner{position:relative;width:100%;padding-bottom:54px;}
.blx-subhero h1{font-family:var(--serif);font-weight:600;font-size:clamp(40px,6vw,72px);
  line-height:1;color:#f6f4ef;margin:18px 0 0;}
.blx-subhero p{color:#cfccc4;font-size:17px;line-height:1.7;max-width:560px;margin:18px 0 0;}

/* ---------- Quote widget ---------- */
.blx-quote{position:relative;z-index:10;margin-top:-46px;}
.blx-quote .card{background:#121210;border:1px solid var(--line-2);border-radius:4px;
  box-shadow:0 30px 70px -30px rgba(0,0,0,.8);padding:26px;display:grid;
  grid-template-columns:1.2fr 1.2fr 1fr .9fr auto;gap:20px;align-items:end;}
.blx-field{display:flex;flex-direction:column;gap:8px;}
.blx-field label{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);}
.blx-field input,.blx-field select{background:#0a0a09;border:1px solid #2a2823;border-radius:2px;
  color:#f0eee8;font-family:inherit;font-size:14px;padding:13px 14px;outline:none;color-scheme:dark;}
.blx-field input:focus,.blx-field select:focus{border-color:var(--gold);}
.blx-quote .submit{height:48px;align-self:end;white-space:nowrap;}

/* ---------- Intro ---------- */
.blx-intro{max-width:1000px;margin:0 auto;padding:clamp(74px,9vw,120px) 24px clamp(20px,4vw,50px);text-align:center;}
.blx-intro p{font-family:var(--serif);font-weight:500;font-size:clamp(24px,3vw,36px);
  line-height:1.4;color:#e9e6df;margin:20px 0 0;text-wrap:pretty;}

/* ---------- Logo strip ---------- */
.blx-logos{padding:clamp(30px,4vw,46px) 0 clamp(50px,6vw,76px);}
.blx-logos .caption{text-align:center;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);margin:0 0 30px;}
.blx-logos .row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(28px,5vw,64px);}
.blx-logos .row span{font-family:var(--serif);font-size:clamp(18px,2vw,24px);font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;color:#76736b;transition:color .25s;}
.blx-logos .row span:hover{color:var(--gold);}

/* ---------- Section heading row ---------- */
.blx-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  margin-bottom:44px;flex-wrap:wrap;}
.blx-head-row .eyebrow{margin-bottom:14px;}
.blx-head-center{text-align:center;max-width:660px;margin:0 auto 54px;}
.blx-head-center .eyebrow{margin-bottom:16px;}
.blx-textlink{color:var(--gold);text-decoration:none;font-size:13px;letter-spacing:.1em;
  text-transform:uppercase;border-bottom:1px solid #3a3833;padding-bottom:4px;transition:border-color .2s;}
.blx-textlink:hover{border-color:var(--gold);}

/* ---------- Destinations ---------- */
.blx-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.blx-dest{position:relative;display:block;height:420px;border-radius:4px;overflow:hidden;
  text-decoration:none;border:1px solid #1d1c19;background:#0d0d0c;transition:transform .3s;}
.blx-dest:hover{transform:translateY(-4px);}
.blx-dest img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.blx-dest .scrim{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,7,7,.9) 0%,rgba(7,7,7,0) 55%);}
.blx-dest .cap{position:absolute;left:0;right:0;bottom:0;padding:28px;}
.blx-dest .cap .region{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);}
.blx-dest .cap h3{font-family:var(--serif);font-weight:600;font-size:32px;color:#f6f4ef;margin:8px 0 0;}
.blx-dest .cap .go{display:inline-block;margin-top:14px;color:#cfccc4;font-size:13px;letter-spacing:.12em;text-transform:uppercase;}

/* ---------- Fleet teaser (home) ---------- */
.blx-feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,5vw,72px);align-items:center;}
.blx-feature .lead{margin:18px 0 30px;max-width:480px;}
.blx-spec-list{display:flex;flex-direction:column;border-top:1px solid var(--line);margin-bottom:34px;}
.blx-spec-list .row{display:flex;align-items:baseline;justify-content:space-between;gap:20px;
  padding:18px 0;border-bottom:1px solid var(--line);}
.blx-spec-list .row .name{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--heading);}
.blx-spec-list .row .meta{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);white-space:nowrap;}
.blx-feature .media{position:relative;display:block;height:clamp(320px,34vw,440px);border-radius:4px;
  overflow:hidden;border:1px solid #1d1c19;background:#000;text-decoration:none;}
.blx-feature .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.blx-feature .media .cap{position:absolute;left:0;right:0;bottom:0;padding:26px;display:flex;
  align-items:flex-end;justify-content:space-between;gap:16px;background:linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,0));}
.blx-feature .media .cap .t{font-family:var(--serif);font-size:26px;font-weight:600;color:#f6f4ef;}
.blx-feature .media .cap .v{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);}

/* ---------- Services / numbered grid ---------- */
.blx-cells{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:4px;overflow:hidden;}
.blx-cell{background:var(--panel);padding:38px 30px;transition:background .25s;}
.blx-cell:hover{background:var(--panel-2);}
.blx-cell .num{font-family:var(--serif);font-size:30px;color:var(--gold);}
.blx-cell h3{font-family:var(--serif);font-weight:600;font-size:25px;color:var(--heading);margin:18px 0 12px;}
.blx-cell p{color:var(--muted);font-size:14px;line-height:1.65;margin:0;}

/* ---------- Why us ---------- */
.blx-why{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center;}
.blx-why .h2{font-size:clamp(34px,4.5vw,52px);line-height:1.03;}
.blx-why .lead{margin-top:22px;}
.blx-points{display:flex;flex-direction:column;}
.blx-point{display:flex;gap:22px;padding:24px 0;border-top:1px solid var(--line);}
.blx-point:last-child{border-bottom:1px solid var(--line);}
.blx-point .n{font-family:var(--serif);font-size:26px;color:var(--gold);min-width:44px;}
.blx-point h3{font-size:17px;color:#f0eee8;margin:2px 0 6px;font-weight:600;}
.blx-point p{color:var(--muted);font-size:14px;line-height:1.6;margin:0;}

/* ---------- Clients grid ---------- */
.blx-clients{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:#1a1916;
  border:1px solid #1a1916;border-radius:4px;overflow:hidden;}
.blx-clients .c{background:#0b0b0a;min-height:96px;display:flex;align-items:center;justify-content:center;
  padding:18px 16px;transition:background .25s;}
.blx-clients .c:hover{background:#100f0d;}
.blx-clients .c span{font-family:var(--serif);font-weight:600;font-size:17px;letter-spacing:.04em;
  color:#7d7a72;text-align:center;line-height:1.15;transition:color .25s;}
.blx-clients .c:hover span{color:var(--gold);}
.blx-note{text-align:center;color:#5f5c55;font-size:12px;letter-spacing:.06em;margin:24px 0 0;}

/* ---------- Airports ---------- */
.blx-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.blx-airport{display:block;text-decoration:none;background:var(--panel);border:1px solid #1d1c19;
  border-radius:4px;padding:32px 28px;transition:border-color .25s,transform .25s;}
.blx-airport:hover{border-color:var(--gold);transform:translateY(-3px);}
.blx-airport .code{font-family:var(--serif);font-size:48px;font-weight:600;color:var(--gold);line-height:1;}
.blx-airport .code.sm{font-size:36px;letter-spacing:-.5px;}
.blx-airport h3{font-size:16px;color:#f0eee8;margin:16px 0 4px;font-weight:600;}
.blx-airport p{color:var(--muted);font-size:13px;line-height:1.5;margin:0;}

/* ---------- CTA band ---------- */
.blx-cta{position:relative;overflow:hidden;border-top:1px solid var(--line);}
.blx-cta .bg{position:absolute;inset:0;background:linear-gradient(135deg,#14130f,#0a0a09);
  background-image:repeating-linear-gradient(135deg,rgba(201,162,39,.04) 0 2px,transparent 2px 16px);}
.blx-cta .inner{position:relative;max-width:900px;margin:0 auto;padding:clamp(74px,9vw,120px) 24px;text-align:center;}
.blx-cta h2{font-family:var(--serif);font-weight:600;font-size:clamp(38px,5vw,64px);line-height:1.02;color:#f6f4ef;}
.blx-cta p{color:#cfccc4;font-size:17px;line-height:1.7;margin:20px auto 36px;max-width:520px;}
.blx-cta .row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

/* ---------- Footer ---------- */
.blx-footer{background:#060605;border-top:1px solid var(--line);}
.blx-footer .cols{padding:70px 24px 30px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;}
.blx-footer .name{font-family:var(--serif);font-weight:700;font-size:24px;color:#f3f1ec;}
.blx-footer p{color:var(--muted);font-size:14px;line-height:1.7;margin:16px 0 0;}
.blx-footer .colhead{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);}
.blx-footer .links{display:flex;flex-direction:column;gap:11px;margin-top:18px;}
.blx-footer .links a{color:#bdbab2;text-decoration:none;font-size:14px;transition:color .2s;}
.blx-footer .links a:hover{color:var(--gold);}
.blx-footer .bar{border-top:1px solid var(--line);}
.blx-footer .bar .wrap{padding-top:22px;padding-bottom:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.blx-footer .bar span{color:#6f6c64;font-size:12.5px;}
.blx-footer .bar .places{letter-spacing:.1em;}

/* ---------- Fleet detail page ---------- */
.blx-fleet-tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:50px;}
.blx-fleet-tab{background:#0c0c0b;border:1px solid var(--line);color:#cfccc4;font-family:inherit;
  font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:14px 22px;border-radius:2px;
  cursor:pointer;transition:all .25s;display:flex;flex-direction:column;gap:3px;align-items:flex-start;}
.blx-fleet-tab .k{font-size:10px;letter-spacing:.16em;color:var(--muted);}
.blx-fleet-tab:hover{border-color:#3a3833;}
.blx-fleet-tab.is-active{background:var(--gold);color:#0a0a0a;border-color:var(--gold);}
.blx-fleet-tab.is-active .k{color:rgba(10,10,10,.7);}
.blx-vehicle{display:none;grid-template-columns:1.05fr .95fr;gap:clamp(36px,5vw,64px);align-items:center;}
.blx-vehicle.is-active{display:grid;}
.blx-vehicle .media{position:relative;height:clamp(340px,42vw,520px);border-radius:4px;overflow:hidden;
  border:1px solid #1d1c19;background:#000;}
.blx-vehicle .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.blx-vehicle .badge{position:absolute;top:20px;left:20px;background:rgba(7,7,7,.78);border:1px solid var(--line-2);
  color:var(--gold);font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:8px 14px;border-radius:2px;}
.blx-vehicle .klass{color:var(--gold);}
.blx-vehicle h2{font-family:var(--serif);font-weight:600;font-size:clamp(30px,3.6vw,46px);color:var(--heading);margin:10px 0 0;}
.blx-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;margin:26px 0 0;padding:0;list-style:none;}
.blx-feature-grid li{display:flex;align-items:flex-start;gap:10px;color:#cfccc4;font-size:14px;line-height:1.5;}
.blx-feature-grid li::before{content:"";flex:0 0 auto;width:6px;height:6px;margin-top:7px;background:var(--gold);transform:rotate(45deg);}
.blx-cap-row{display:flex;gap:40px;margin:30px 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.blx-cap-row .item .lbl{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);}
.blx-cap-row .item .val{font-family:var(--serif);font-size:26px;font-weight:600;color:var(--heading);margin-top:6px;}

/* ---------- Tours page ---------- */
.blx-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:48px;}
.blx-filter{background:#0c0c0b;border:1px solid var(--line);color:#cfccc4;font-family:inherit;font-size:12.5px;
  letter-spacing:.1em;text-transform:uppercase;padding:11px 20px;border-radius:2px;cursor:pointer;transition:all .25s;}
.blx-filter:hover{border-color:#3a3833;}
.blx-filter.is-active{background:var(--gold);color:#0a0a0a;border-color:var(--gold);}
.blx-tours{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.blx-tour{background:var(--panel);border:1px solid #1d1c19;border-radius:4px;overflow:hidden;
  display:flex;flex-direction:column;transition:border-color .25s,transform .25s;}
.blx-tour:hover{border-color:var(--gold);transform:translateY(-3px);}
.blx-tour .pic{position:relative;height:200px;background:linear-gradient(160deg,#161513,#0d0d0c);overflow:hidden;}
.blx-tour .pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.blx-tour .pic .ph{position:absolute;inset:0;display:flex;align-items:flex-end;padding:16px;
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.02) 0 2px,transparent 2px 13px);}
.blx-tour .pic .ph span{font-size:11px;letter-spacing:.1em;color:#6f6c64;font-style:italic;}
.blx-tour .pic .cat{position:absolute;top:14px;left:14px;background:rgba(7,7,7,.8);border:1px solid var(--line-2);
  color:var(--gold);font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:6px 11px;border-radius:2px;}
.blx-tour .body{padding:24px;display:flex;flex-direction:column;flex:1;}
.blx-tour .region{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);}
.blx-tour h3{font-family:var(--serif);font-weight:600;font-size:24px;color:var(--heading);margin:8px 0 0;}
.blx-tour .desc{color:var(--muted);font-size:13.5px;line-height:1.6;margin:12px 0 0;flex:1;}
.blx-tour .foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;
  padding-top:16px;border-top:1px solid var(--line);}
.blx-tour .foot .dur{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#8d8a82;}
.blx-tour .foot a{color:var(--gold);font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;}

.blx-custom{margin-top:60px;border:1px solid var(--line-2);border-radius:4px;background:
  linear-gradient(135deg,#121210,#0a0a09);padding:clamp(36px,5vw,56px);text-align:center;}
.blx-custom h3{font-family:var(--serif);font-weight:600;font-size:clamp(28px,3.4vw,40px);color:var(--heading);}
.blx-custom p{color:var(--muted);font-size:16px;line-height:1.7;max-width:520px;margin:16px auto 28px;}

/* ---------- Reveal animation ---------- */
.blx [data-reveal]{opacity:0;transform:translateY(30px);
  transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);}
.blx [data-reveal].is-in{opacity:1;transform:none;}

/* ---------- Responsive ---------- */
@media(max-width:1024px){
  .blx-quote .card{grid-template-columns:1fr 1fr;}
  .blx-quote .submit{grid-column:1 / -1;}
  .blx-grid-4,.blx-cells{grid-template-columns:repeat(2,1fr);}
  .blx-clients{grid-template-columns:repeat(4,1fr);}
}
@media(max-width:860px){
  .blx-nav{position:fixed;inset:64px 0 auto 0;flex-direction:column;align-items:stretch;gap:0;
    background:#0a0a09;border-bottom:1px solid var(--line);padding:8px 0;
    transform:translateY(-130%);transition:transform .3s;}
  .blx-nav.is-open{transform:none;}
  .blx-nav a{padding:15px 24px;border-bottom:1px solid #141310;}
  .blx-nav a.is-cta{margin:12px 24px;text-align:center;justify-content:center;}
  .blx-burger{display:block;}
  .blx-feature,.blx-why,.blx-vehicle.is-active{grid-template-columns:1fr;}
  .blx-grid-3,.blx-tours{grid-template-columns:1fr 1fr;}
  .blx-footer .cols{grid-template-columns:1fr 1fr;}
}
@media(max-width:560px){
  .blx-quote .card{grid-template-columns:1fr;}
  .blx-grid-3,.blx-grid-4,.blx-cells,.blx-tours{grid-template-columns:1fr;}
  .blx-clients{grid-template-columns:repeat(2,1fr);}
  .blx-cap-row{gap:24px;}
  .blx-footer .cols{grid-template-columns:1fr;}
}

/* =====================================================================
   Mobile-first refinements — v0.5.0 (95% of traffic is mobile)
   ===================================================================== */

/* Prevent iOS zoom-on-focus: form controls must be >=16px */
@media(max-width:860px){
  .blx-field input,.blx-field select,.blx-field textarea{font-size:16px;}
}

/* Anchor offset so the sticky header never hides a section heading */
.blx #top,.blx #reserve,.blx #destinations,.blx #fleet,.blx #services,
.blx #why,.blx #airports{scroll-margin-top:88px;}

@media(max-width:860px){
  .blx-hero{min-height:74vh;}
  .blx-hero .inner{padding-bottom:40px;}
  .blx-subhero{min-height:50vh;}
  .blx .section{padding:54px 0;}
  .blx-header .wrap{padding:13px 18px;}
  .blx-brand .name{font-size:22px;}
  .blx-burger{padding:11px;min-width:44px;min-height:44px;display:flex;flex-direction:column;justify-content:center;}
  /* Mobile dropdown nav anchored directly under the header bar */
  .blx-nav{position:absolute;top:100%;left:0;right:0;}
  .blx-topbar .wrap{justify-content:center;}
}

@media(max-width:600px){
  .blx-topbar{font-size:11.5px;}
  .blx-topbar .wrap{padding:8px 16px;gap:10px;}
  .blx-topbar .grp:last-child{display:none;}      /* keep tap-to-call; drop the rest */
  .blx .wrap{padding-left:18px;padding-right:18px;}
  .blx-hero h1{font-size:clamp(38px,11vw,58px);}
  .blx-hero p{font-size:16px;}
  .blx-hero .cta-row,.blx-cta .row{flex-direction:column;align-items:stretch;}
  .blx-hero .cta-row .btn,.blx-cta .row .btn{justify-content:center;width:100%;}
  .blx-dest{height:300px;}
  .blx-intro p{font-size:22px;}
}

/* ---- Sticky mobile action bar (Call + Reserve) ---- */
.blx-mobilebar{display:none;}
@media(max-width:860px){
  body.blx{padding-bottom:64px;}                  /* room for the fixed bar */
  .blx-mobilebar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;gap:1px;
    background:#211f1b;border-top:1px solid #34312a;box-shadow:0 -10px 30px rgba(0,0,0,.55);}
  .blx-mobilebar a{flex:1;display:flex;align-items:center;justify-content:center;gap:9px;
    padding:0 10px;min-height:60px;font-size:13px;font-weight:700;letter-spacing:.12em;
    text-transform:uppercase;text-decoration:none;}
  .blx-mobilebar .mb-call{background:#0c0c0b;color:#f0eee8;}
  .blx-mobilebar .mb-call svg{width:18px;height:18px;flex:0 0 auto;}
  .blx-mobilebar .mb-reserve{background:var(--gold);color:#0a0a0a;}
  .blx-mobilebar .mb-reserve:active,.blx-mobilebar .mb-call:active{filter:brightness(1.08);}
}
/* =====================================================================
   Fleet page — refined long-scroll showcase (v0.6.1). Dark brand, clean.
   ===================================================================== */
.blx-fleet-layout{display:grid;grid-template-columns:210px 1fr;gap:clamp(40px,6vw,96px);align-items:start;}

/* vehicle rows — alternating, hairline-separated, lots of air */
.blx-fleet-list{display:flex;flex-direction:column;}
.blx-veh{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:center;
  padding:clamp(52px,7vw,96px) 0;border-top:1px solid rgba(255,255,255,.07);scroll-margin-top:104px;}
.blx-veh:first-child{border-top:0;padding-top:6px;}
.blx-veh:nth-child(even) .veh-media{order:2;}

.blx-veh .veh-media{border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08);
  background:#0c0c0b;aspect-ratio:16/10;box-shadow:0 34px 70px -38px rgba(0,0,0,.85);}
.blx-veh .veh-media img{width:100%;height:100%;object-fit:cover;display:block;}
.blx-veh .veh-ph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;aspect-ratio:16/10;
  color:#6f6c64;font-style:italic;text-align:center;padding:20px;
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.02) 0 2px,transparent 2px 13px);}

.blx-veh .veh-info .eyebrow{margin-bottom:0;}
.blx-veh .veh-info h2{font-family:var(--serif);font-weight:600;font-size:clamp(28px,3.4vw,44px);color:var(--heading);line-height:1.05;margin:10px 0 0;}

/* capacity stats — light numbers, gold micro-labels, hairline divider */
.blx-veh .veh-caps{display:inline-flex;margin:26px 0 24px;}
.blx-veh .cap{display:flex;flex-direction:column;padding-right:34px;margin-right:34px;border-right:1px solid rgba(255,255,255,.12);}
.blx-veh .cap:last-child{border-right:0;padding-right:0;margin-right:0;}
.blx-veh .cap .num{font-family:var(--serif);font-weight:500;font-size:clamp(40px,5vw,54px);color:#f6f4ef;line-height:.9;}
.blx-veh .cap .lbl{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-top:10px;}

.blx-veh .veh-desc{color:#a6a39b;font-size:15px;line-height:1.85;margin:0 0 26px;max-width:46ch;}

/* features — quiet two-column list */
.blx-veh .blx-feature-grid{grid-template-columns:1fr 1fr;gap:9px 26px;margin:0 0 28px;}
.blx-veh .blx-feature-grid li{color:#b4b1a9;font-size:13.5px;}
.blx-veh .blx-feature-grid li::before{width:5px;height:5px;margin-top:8px;}

/* interior gallery */
.blx-veh .veh-gallery{margin:2px 0 28px;}
.blx-veh .vg-label{display:block;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:13px;}
.blx-veh .vg-thumbs{display:flex;gap:10px;flex-wrap:wrap;}
.blx-veh .vg-thumb{width:92px;height:64px;border-radius:6px;overflow:hidden;border:1px solid rgba(255,255,255,.1);padding:0;cursor:pointer;background:none;transition:border-color .2s,transform .2s;}
.blx-veh .vg-thumb:hover{border-color:var(--gold);transform:translateY(-2px);}
.blx-veh .vg-thumb img{width:100%;height:100%;object-fit:cover;}

.blx-veh .veh-cta{display:flex;gap:14px;flex-wrap:wrap;}

/* interior lightbox */
.blx-lightbox{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;background:rgba(5,5,5,.93);padding:24px;}
.blx-lightbox.open{display:flex;}
.blx-lightbox img{max-width:94vw;max-height:90vh;border-radius:8px;box-shadow:0 40px 90px -30px rgba(0,0,0,.9);}
.blx-lightbox .lb-close{position:absolute;top:18px;right:22px;background:none;border:0;color:#cfccc4;font-size:38px;line-height:1;cursor:pointer;}
.blx-lightbox .lb-close:hover{color:var(--gold);}
.blx-lightbox .lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(7,7,7,.6);border:1px solid var(--line-2);color:#f0eee8;width:48px;height:48px;border-radius:50%;font-size:22px;cursor:pointer;}
.blx-lightbox .lb-nav:hover{color:var(--gold);border-color:var(--gold);}
.blx-lightbox .lb-prev{left:18px;} .blx-lightbox .lb-next{right:18px;}

@media(max-width:980px){
  .blx-fleet-layout{grid-template-columns:1fr;}
  .blx-veh{grid-template-columns:1fr;gap:26px;padding:44px 0;}
  .blx-veh:nth-child(even) .veh-media{order:0;}
  .blx-veh .veh-desc{max-width:none;}
}
@media(max-width:600px){
  .blx-veh .blx-feature-grid{grid-template-columns:1fr;}
  .blx-veh .veh-cta{flex-direction:column;align-items:stretch;}
  .blx-veh .veh-cta .btn{justify-content:center;}
}

/* Nav login button (beside Reserve) */
.blx-nav a.blx-login{display:inline-flex;align-items:center;color:var(--text);border:1px solid var(--line-2);
  border-radius:2px;padding:12px 20px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
.blx-nav a.blx-login:hover{border-color:var(--gold);color:var(--gold);}
@media(max-width:860px){ .blx-nav a.blx-login{margin:0 24px;justify-content:center;} }

/* ---------- Instant quote result ---------- */
.blxq-dist{max-width:980px;margin:10px auto 0;color:#c9a227;font-size:13px;letter-spacing:.04em;text-align:center;}
.blx-quote-result{width:100%;margin:18px 0 0;box-sizing:border-box;}
.blxq-note{background:#0e0e0c;border:1px solid #26241f;border-radius:12px;padding:18px 20px;color:#cfccc4;font-size:14px;text-align:center;}
.blxq-card{width:100%;box-sizing:border-box;background:linear-gradient(160deg,#15140f,#0c0c0b);border:1px solid #2a2823;border-radius:16px;padding:26px 28px;box-shadow:0 30px 70px -34px rgba(0,0,0,.85);}
.blxq-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.blxq-eyebrow{font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;color:#c9a227;}
.blxq-toggle{display:inline-flex;border:1px solid #2a2823;border-radius:999px;overflow:hidden;}
.blxq-toggle button{background:transparent;border:0;color:#cfccc4;font:inherit;font-size:12.5px;padding:8px 16px;cursor:pointer;transition:all .15s;}
.blxq-toggle button.on{background:#c9a227;color:#0a0a0a;font-weight:700;}
.blxq-price{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(40px,6vw,58px);color:#f3f1ec;line-height:1.05;margin:10px 0 2px;}
.blxq-price .basis{font-family:'Manrope',sans-serif;font-size:14px;font-weight:500;color:#8d8a82;letter-spacing:.02em;}
.blxq-veh{color:#e8e6e1;font-size:15px;margin-top:6px;}
.blxq-badge{display:inline-block;margin-left:8px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:999px;border:1px solid;}
.blxq-badge.ok{color:#7fd49a;border-color:rgba(92,184,122,.5);background:rgba(92,184,122,.12);}
.blxq-badge.warn{color:#e3c25a;border-color:rgba(201,162,39,.5);background:rgba(201,162,39,.12);}
.blxq-meta{color:#8d8a82;font-size:13px;margin-top:8px;}
.blxq-alts{margin-top:20px;border-top:1px solid #232220;padding-top:16px;}
.blxq-alts .lbl{display:block;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#8d8a82;margin-bottom:10px;}
.blxq-alt{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 0;border-top:1px solid #1d1c19;color:#cfccc4;font-size:14px;}
.blxq-alt:first-of-type{border-top:0;}
.blxq-alt .ap{color:#f3f1ec;font-weight:600;}
.blxq-alt em{color:#8d8a82;font-weight:400;font-style:normal;font-size:12px;}
.blxq-cta{display:inline-flex;margin-top:22px;}
.blxq-fine{color:#6f6c64;font-size:12px;margin:12px 0 0;}
.blxq-pac{display:block;width:100%;}

/* ---------- Quote widget: route builder ---------- */
#blx-quoteform{display:flex;flex-direction:column;gap:14px;}
.blxq-triptype{display:inline-flex;gap:8px;background:rgba(255,255,255,.04);border:1px solid #2a2823;border-radius:999px;padding:4px;align-self:flex-start;}
.blxq-tt{position:relative;}
.blxq-tt input{position:absolute;opacity:0;inset:0;cursor:pointer;}
.blxq-tt span{display:block;padding:8px 18px;border-radius:999px;font-size:13px;color:#cfccc4;transition:all .15s;cursor:pointer;}
.blxq-tt input:checked + span{background:#c9a227;color:#0a0a0a;font-weight:700;}
.blxq-stops{display:flex;flex-direction:column;gap:10px;}
.blxq-stop{display:grid;grid-template-columns:96px 1fr auto;align-items:center;gap:12px;margin:0;}
.blxq-stop > label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#8d8a82;}
.blxq-stop-in{min-width:0;}
.blxq-stop-in input{width:100%;}
.blxq-rm{background:none;border:0;color:#8d8a82;font-size:22px;line-height:1;cursor:pointer;padding:0 6px;}
.blxq-rm:hover{color:#e06a5b;}
.blxq-addstop{align-self:flex-start;background:none;border:1px dashed #3a3833;color:#c9a227;font:inherit;font-size:13px;padding:9px 16px;border-radius:8px;cursor:pointer;transition:all .15s;}
.blxq-addstop:hover{border-color:#c9a227;}
.blxq-rowfields{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media(max-width:640px){.blxq-stop{grid-template-columns:1fr auto;}.blxq-stop > label{grid-column:1 / -1;margin-bottom:-4px;}}

/* ===== Trip planner (v0.9.14) ===== */
.blx-quote{padding-top:0;}
.blxq-planner{display:grid;grid-template-columns:1.05fr 1fr;gap:0;background:#0e0e0c;border:1px solid #26241f;border-radius:18px;overflow:hidden;box-shadow:0 40px 90px -45px rgba(0,0,0,.9);}
.blxq-form{padding:30px 30px 32px;display:flex;flex-direction:column;gap:16px;}
.blxq-form .blxq-eyebrow{font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;color:#c9a227;}
.blxq-triptype{display:inline-flex;gap:4px;background:rgba(255,255,255,.04);border:1px solid #2a2823;border-radius:999px;padding:4px;align-self:flex-start;}
.blxq-tt{position:relative;}
.blxq-tt input{position:absolute;opacity:0;inset:0;cursor:pointer;}
.blxq-tt span{display:block;padding:8px 20px;border-radius:999px;font-size:13px;color:#cfccc4;transition:all .15s;}
.blxq-tt input:checked + span{background:#c9a227;color:#0a0a0a;font-weight:700;}

/* route — google-maps style nodes + connector */
.blxq-stops{display:flex;flex-direction:column;}
.blxq-stop{position:relative;display:grid;grid-template-columns:26px 1fr 26px;align-items:center;gap:10px;padding:6px 0;}
.blxq-node{display:flex;align-items:center;justify-content:center;height:100%;}
.blxq-node i{width:11px;height:11px;border-radius:50%;background:#e3c25a;border:2px solid #0e0e0c;box-shadow:0 0 0 1px #c9a227;display:block;}
.blxq-stop.is-origin .blxq-node i{background:#5cb87a;box-shadow:0 0 0 1px #5cb87a;}
.blxq-stop.is-dest .blxq-node i{border-radius:50% 50% 50% 0;transform:rotate(45deg);background:#c9a227;box-shadow:0 0 0 1px #c9a227;}
.blxq-stop::before{content:"";position:absolute;left:12px;top:-6px;bottom:50%;width:2px;background:repeating-linear-gradient(#3a3833 0 4px,transparent 4px 8px);}
.blxq-stop:first-child::before{display:none;}
.blxq-stop-field input{width:100%;background:#0a0a0a;border:1px solid #2a2823;border-radius:10px;color:#f0eee8;font:inherit;font-size:15px;padding:13px 14px;outline:none;}
.blxq-stop-field input:focus{border-color:#c9a227;}
.blxq-rm{background:none;border:0;color:#6f6c64;font-size:20px;line-height:1;cursor:pointer;}
.blxq-rm:hover{color:#e06a5b;}
.blxq-pac{display:block;width:100%;}

.blxq-addstop{align-self:flex-start;background:none;border:1px dashed #3a3833;color:#c9a227;font:inherit;font-size:13px;padding:9px 15px;border-radius:9px;cursor:pointer;transition:all .15s;display:inline-flex;align-items:center;gap:7px;}
.blxq-addstop span{font-size:16px;line-height:1;}
.blxq-addstop:hover{border-color:#c9a227;background:rgba(201,162,39,.07);}
.blxq-dist{margin:0;color:#e3c25a;font-size:13.5px;letter-spacing:.02em;}
.blxq-dist strong{color:#f3f1ec;}
.blxq-rowfields{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.blxq-f label{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#8d8a82;margin-bottom:6px;}
.blxq-f input{width:100%;background:#0a0a0a;border:1px solid #2a2823;border-radius:10px;color:#f0eee8;font:inherit;font-size:15px;padding:12px 13px;outline:none;}
.blxq-f input:focus{border-color:#c9a227;}
.blxq-submit{width:100%;justify-content:center;margin-top:2px;}

/* map */
.blxq-mapwrap{position:relative;min-height:420px;background:#0e0e0c;}
.blxq-map{position:absolute;inset:0;width:100%;height:100%;}
.blxq-map-badge{position:absolute;top:14px;left:14px;z-index:2;background:rgba(10,10,10,.7);border:1px solid #2a2823;color:#e3c25a;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:6px 11px;border-radius:999px;backdrop-filter:blur(4px);}
.blxq-map-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:30px;color:#5a574f;font-size:14px;}
.blxq-map:not(:empty) + .blxq-map-badge ~ .blxq-map-ph{display:none;}

/* result */
.blx-quote-result{margin-top:6px;}
@media(max-width:860px){
  .blxq-planner{grid-template-columns:1fr;}
  .blxq-mapwrap{min-height:300px;order:-1;}
}

/* quote planner: 3-up fields + traffic note */
.blxq-rowfields{grid-template-columns:1fr 1fr 1fr;}
.blxq-traffic{display:block;color:#9a978f;font-size:12px;margin-top:2px;}
@media(max-width:520px){.blxq-rowfields{grid-template-columns:1fr 1fr;}}

/* map fallback note */
.blxq-map-note{position:absolute;left:14px;right:14px;bottom:14px;z-index:2;background:rgba(10,10,10,.82);border:1px solid #5c4a1e;color:#e3c25a;font-size:12px;line-height:1.5;padding:9px 12px;border-radius:10px;backdrop-filter:blur(4px);}

/* quote planner: use-my-location */
.blxq-stop-field{position:relative;}
.blxq-gps{display:inline-flex;align-items:center;gap:5px;margin-top:6px;background:none;border:0;color:#c9a227;
  font:inherit;font-size:12px;letter-spacing:.02em;cursor:pointer;padding:2px 0;}
.blxq-gps:hover{color:#e3c25a;text-decoration:underline;}
.blxq-gps[disabled]{opacity:.6;cursor:default;}
.blxq-stop-note{display:block;margin-top:4px;color:#9a978f;font-size:12px;}

/* quote planner: drag-to-reorder stops */
.blxq-node{cursor:grab;}
.blxq-node:active{cursor:grabbing;}
.blxq-stop{border-radius:8px;transition:box-shadow .12s,opacity .12s;}
.blxq-stop.dragging{opacity:.45;}
.blxq-stop.drag-over{box-shadow:inset 0 2px 0 0 #c9a227;}

/* ===== Quote planner — mobile polish (primary booking surface) ===== */
@media(max-width:860px){
  .blx-quote{padding-left:14px;padding-right:14px;}
  .blxq-form{padding:22px 16px 26px;gap:14px;}
  .blxq-mapwrap{min-height:240px;}
  /* 16px inputs prevent iOS zoom-on-focus */
  .blxq-stop-field input,.blxq-f input{font-size:16px;}
  .blxq-stop{grid-template-columns:24px 1fr 24px;}
  .blxq-price{font-size:clamp(34px,11vw,44px);}
  .blxq-toggle button{padding:8px 14px;}
}
@media(max-width:520px){
  .blxq-rowfields{grid-template-columns:1fr 1fr;}
  .blxq-rowfields .blxq-f:last-child{grid-column:1 / -1;}
  .blxq-triptype{width:100%;justify-content:center;}
  .blxq-tt span{padding:9px 0;width:100%;text-align:center;}
  .blxq-tt{flex:1;}
}

/* ===== Trip planner — refinement pass (professional polish) ===== */
/* Dark-mode native date/time/number pickers so text + icons are crisp on the dark card */
#blx-quoteform input, #blx-quoteform select { color-scheme: dark; }
.blxq-f input, .blxq-stop-field input { color:#f3f1ec; }
.blxq-f input[type=date], .blxq-f input[type=time]{ letter-spacing:.03em; font-variant-numeric:tabular-nums; }
.blxq-f input::-webkit-calendar-picker-indicator{ filter:invert(0.85); opacity:.55; cursor:pointer; transition:opacity .15s; }
.blxq-f input::-webkit-calendar-picker-indicator:hover{ opacity:.95; }
.blxq-f input[type=number]::-webkit-inner-spin-button{ opacity:.45; }

/* breathing room + clearer labels */
#blx-quoteform{ gap:18px; }
.blxq-f label{ color:#9a978f; margin-bottom:8px; }
.blxq-rowfields{ gap:14px; }
.blxq-stop{ padding:5px 0; }
.blxq-form .blxq-eyebrow{ margin-bottom:2px; }

/* quieter "use my location" + status note */
.blxq-gps{ color:#8d8a82; font-size:11.5px; margin-top:5px; }
.blxq-gps:hover{ color:#c9a227; text-decoration:none; }
.blxq-stop-note{ color:#8d8a82; font-size:11.5px; }

/* distance read-out as a refined centered chip */
.blxq-dist{ align-self:center; text-align:center; color:#e3c25a; background:rgba(201,162,39,.08);
  border:1px solid rgba(201,162,39,.24); border-radius:999px; padding:8px 16px; font-size:13px; }
.blxq-dist strong{ color:#f6f3ec; }

/* a touch more separation before the CTA */
.blxq-submit{ margin-top:6px; }

/* expected drop-off line */
.blxq-arrive{align-self:center;text-align:center;color:#9a978f;font-size:12.5px;margin:0;}
.blxq-arrive strong{color:#e3c25a;}

/* consolidated route summary box (full width, matches Get a Quote button) */
.blxq-summary{width:100%;box-sizing:border-box;background:rgba(201,162,39,.08);border:1px solid rgba(201,162,39,.24);
  border-radius:12px;padding:14px 16px;text-align:center;display:flex;flex-direction:column;gap:4px;}
.blxq-summary .blxq-dist{align-self:auto;background:none;border:0;padding:0;margin:0;border-radius:0;color:#e3c25a;font-size:13.5px;}
.blxq-summary .blxq-dist strong{color:#f6f3ec;}
.blxq-summary .blxq-arrive{margin:0;color:#cfccc4;font-size:12.5px;}
.blxq-summary .blxq-arrive strong{color:#e3c25a;}

/* sold-out / no-availability quote state */
.blxq-card.blxq-soldout{border-color:rgba(201,162,39,.30);}
.blxq-sold-eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#9a978f;margin-bottom:10px;}
.blxq-sold-head{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;line-height:1.15;color:#f6f3ec;margin:0 0 10px;}
.blxq-sold-sub{color:#cfccc4;font-size:14.5px;line-height:1.6;margin:0 0 16px;max-width:46ch;}
.blxq-sold-fit{display:inline-block;background:rgba(201,162,39,.08);border:1px solid rgba(201,162,39,.24);
  border-radius:999px;padding:7px 14px;font-size:12.5px;color:#cfccc4;margin-bottom:18px;}
.blxq-sold-fit strong{color:#e3c25a;}
.blxq-card.blxq-soldout .blxq-cta{margin-top:0;}
.blxq-sold-alt{display:inline-block;margin-top:12px;color:#9a978f;font-size:13px;text-decoration:none;
  border-bottom:1px solid rgba(154,151,143,.4);padding-bottom:1px;transition:color .2s,border-color .2s;}
.blxq-sold-alt:hover{color:#e3c25a;border-color:rgba(201,162,39,.5);}

/* fleet 3d viewer tag */
.veh-media{ position:relative; }
.veh-3dtag{ position:absolute; right:12px; bottom:12px; z-index:2; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#d8ba63; background:rgba(8,8,10,.72); border:1px solid rgba(189,152,46,.44); border-radius:999px; padding:4px 10px; pointer-events:none; }

/* ---- Fleet showroom: full-width 3D stage + selector tabs ---- */
.blxsr-section{ padding:0 0 8px; background:#0a0a0c; }
.blxsr{ width:100%; color:#ece9e2; }
.blxsr-tabs{ display:flex; gap:8px; justify-content:center; flex-wrap:wrap; padding:30px 20px 20px; }
.blxsr-tab{ background:transparent; border:1px solid transparent; border-radius:12px; padding:12px 24px; cursor:pointer; text-align:left; transition:all .22s; color:#8d8a83; font-family:inherit; }
.blxsr-tab .nm{ display:block; font-family:'Cormorant Garamond',Georgia,serif; font-size:20px; line-height:1.15; color:inherit; }
.blxsr-tab .cl{ display:block; font-size:10px; letter-spacing:.22em; text-transform:uppercase; margin-top:4px; color:#6c6963; }
.blxsr-tab:hover{ color:#d9d5cc; }
.blxsr-tab.on{ color:#f3efe6; border-color:rgba(201,162,39,.45); background:rgba(201,162,39,.08); }
.blxsr-tab.on .cl{ color:#c9a227; }
.blxsr-viewport{ position:relative; overflow:hidden; }
.blxsr-track{ display:flex; transition:transform .65s cubic-bezier(.25,.8,.25,1); }
.blxsr-slide{ flex:0 0 100%; min-width:100%; }
.blxsr-stage{ position:relative; height:min(58vh,560px); background:#0a0a0c; overflow:hidden; }
.blxsr-sky{ position:absolute; inset:0; z-index:0; pointer-events:none; }
.blxsr-ridge{ position:absolute; inset:0; width:100%; height:100%; display:block; }
.blxsr-sky::after{ content:""; position:absolute; inset:0; background:radial-gradient(70% 60% at 50% 42%, rgba(0,0,0,0) 40%, rgba(0,0,0,.55) 100%); }
.blxsr-floor{ position:absolute; left:50%; bottom:6%; transform:translateX(-50%); width:min(72%,760px); height:90px;
  background:radial-gradient(closest-side, rgba(201,162,39,.16), rgba(201,162,39,0) 78%); filter:blur(6px); }
.blxsr-stage model-viewer,.blxsr-stage .blxsr-loading,.blxsr-stage .veh-3dtag,.blxsr-stage img{ position:relative; z-index:1; }
.blxsr-stage model-viewer{ width:100%; height:100%; display:block; --poster-color:transparent; }
.blxsr-stage img{ width:100%; height:100%; object-fit:contain; display:block; }
.blxsr-stage .veh-ph{ height:100%; display:flex; align-items:center; justify-content:center; color:#6c6963; font-family:'Cormorant Garamond',serif; font-size:28px; }
.blxsr-info{ display:grid; grid-template-columns:1.25fr .9fr; gap:48px; max-width:1180px; margin:0 auto; padding:40px 28px 70px; }
.blxsr-l .serif{ font-size:clamp(30px,4vw,44px); margin:10px 0 16px; }
.blxsr-desc{ color:#b9b5ac; line-height:1.75; max-width:58ch; margin:0 0 22px; }
.blxsr-r{ display:flex; flex-direction:column; gap:26px; }
.blxsr-arrow{ position:absolute; top:calc(min(58vh,560px)/2); transform:translateY(-50%); z-index:4; width:46px; height:46px; border-radius:50%; border:1px solid rgba(255,255,255,.22); background:rgba(10,10,12,.55); color:#ece9e2; font-size:24px; line-height:1; cursor:pointer; transition:all .2s; }
.blxsr-arrow:hover{ border-color:rgba(201,162,39,.6); color:#c9a227; }
.blxsr-arrow.prev{ left:20px; } .blxsr-arrow.next{ right:20px; }
@media(max-width:900px){
  .blxsr-stage{ height:44vh; }
  .blxsr-info{ grid-template-columns:1fr; gap:28px; padding:28px 20px 54px; }
  .blxsr-tab{ padding:9px 16px; } .blxsr-tab .nm{ font-size:16px; }
  .blxsr-arrow{ width:38px; height:38px; top:22vh; }
}

/* 3d stage loading state */
.blxsr-loading{ height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; color:#8d8a83; font-size:12px; letter-spacing:.22em; text-transform:uppercase; background:transparent; }
.blxsr-loading .spin{ width:26px; height:26px; border-radius:50%; border:2px solid rgba(201,162,39,.25); border-top-color:#c9a227; animation:blxsrspin 1s linear infinite; }
@keyframes blxsrspin{ to{ transform:rotate(360deg); } }

/* coming-soon stage state (no 3d model yet) */
.blxsr-loading.soon .spin{ display:none; }
.blxsr-loading.soon .badge{ width:44px; height:44px; border-radius:12px; border:1px solid rgba(201,162,39,.4); background:rgba(201,162,39,.08); color:#c9a227; font-family:'Cormorant Garamond',serif; font-size:17px; font-weight:700; display:flex; align-items:center; justify-content:center; }

/* photographic showroom plate */
.blxsr-sky.photo{ overflow:hidden; }
.blxsr-plate{ position:absolute; inset:-4%; width:108%; height:108%; object-fit:cover; display:block; }
.blxsr-sky.photo::after{ content:""; position:absolute; inset:0;
  background:radial-gradient(70% 62% at 50% 46%, rgba(0,0,0,0) 38%, rgba(0,0,0,.62) 100%); }

/* ---------- Header: lighter, roomier, still modern ---------- */
.blx-header .wrap{ gap:32px; }
.blx-brand{ flex:none; }
.blx-brand .name{ font-size:23px; }
.blx-brand .sub{ font-size:8.5px; letter-spacing:.26em; white-space:nowrap; margin-top:5px; }
.blx-nav{ flex-wrap:nowrap; gap:26px; }
.blx-nav a{ white-space:nowrap; font-size:11.5px; letter-spacing:.13em; font-weight:500; }
.blx-nav a.is-cta{ font-size:11px; letter-spacing:.15em; padding:11px 20px; font-weight:600; }
.blx-nav a.blx-login{ font-size:11px; letter-spacing:.13em; padding:10px 16px; font-weight:500;
  border-color:rgba(255,255,255,.16); }
.blx-nav a.blx-login.alt{ border-color:rgba(201,162,39,.38); color:var(--gold); }
.blx-navsep{ width:1px; height:20px; background:rgba(255,255,255,.14); flex:none; }
@media(max-width:1440px){
  .blx-header .wrap{ gap:24px; }
  .blx-nav{ gap:20px; }
  .blx-nav a{ font-size:11px; letter-spacing:.1em; }
  .blx-nav a.blx-login{ padding:9px 13px; }
  .blx-nav a.is-cta{ padding:10px 17px; }
}
@media(max-width:1280px){
  .blx-nav{ gap:15px; }
  .blx-nav a{ font-size:10.5px; letter-spacing:.08em; }
  .blx-nav a.blx-login.alt{ display:none; }
  .blx-navsep{ display:none; }
}

/* ---------- phones: polish pass ---------- */
@media(max-width:560px){
  .blx .btn{ padding:15px 24px; min-height:48px; justify-content:center; }
  .blx .section{ padding:56px 0; }
  .blx .wrap{ padding-left:18px; padding-right:18px; }
  .blx-field input, .blx-field select{ height:48px; font-size:16px; }
  .blxq-f input, .blxq-stop-field input{ font-size:16px; }
  .blx-topbar .grp{ gap:10px; font-size:11px; }
}
