/* Luxury Obsession shared stylesheet */
:root{
  font-family:"Inter", system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --bg:#050509;
  --accent:#b1121d;
  --accentSoft:rgba(177,18,29,0.14);

  --champagne:#e7dcc6;
  --titaniumA:rgba(252,252,253,0.92);
  --titaniumB:rgba(176,176,186,0.70);
  --hairline:rgba(231,220,198,0.18);
  --carbonImage:url("../media/carbon.webp");
  --text:#f5f5f5;
  --muted:#a3a3a3;
  --border:#262637;
  --radius:18px;
  --shadow:0 18px 45px rgba(0,0,0,0.4);
  --max:1120px;
  --logoSize: 60px;/*44px*/
  --wordmarkH: 38px;/*34px*/
}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at top,#191621 0,var(--bg) 55%);color:var(--text)}
a{color:inherit;text-decoration:none}
header{
  position:sticky;top:0;z-index:50;
  position:relative;
  backdrop-filter:blur(12px);
  background:linear-gradient(to bottom,rgba(5,5,9,0.92),rgba(5,5,9,0.62),transparent);
  border-bottom:1px solid rgba(255,255,255,0.03)
}
.container{max-width:var(--max);margin:0 auto;padding:0 1.5rem}
.navInner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0.50rem 0}/*0.75rem 0*/
.brand{display:inline-flex;align-items:center;gap:0.65rem}
.brandIcon{width:var(--logoSize);height:var(--logoSize);object-fit:contain;display:block}
.brandWordmark{height:var(--wordmarkH);width:auto;object-fit:contain;display:block}
.brandText{font-size:1.05rem;font-weight:850;letter-spacing:0.02em}

/* Brand title in Cinzel with gold motif */
.brandGold{
  font-family:"Cinzel", serif;
  font-weight:700;
  letter-spacing:0.18em;
  text-transform:uppercase;
  font-size: clamp(1.05rem, 1.2vw + 0.9rem, 1.2rem);
  line-height:1;
  background:linear-gradient(135deg,
    rgba(252,252,253,0.92),
    rgba(231,220,198,0.96),
    rgba(200,183,155,0.92),
    rgba(231,220,198,0.96)
  );
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-shadow:0 10px 30px rgba(0,0,0,0.35);
  white-space:nowrap;
}

@media (max-width:640px){
  .brandGold{font-size:0.90rem;letter-spacing:0.14em;}
}

@media (max-width:640px){
  .brandIcon{width:34px;height:34px}
  .brandWordmark{height:28px}
  .brandText{font-size:0.98rem}
}
.navRight{display:flex;align-items:center;gap:0.65rem}
.navLinks{display:flex;align-items:center;gap:0.8rem;font-size:0.9rem}
.navLinks a{padding:0.35rem 0.65rem;border-radius:999px;color:var(--muted);transition:0.2s}
.navLinks a:hover{color:var(--text);background:rgba(255,255,255,0.05)}
.navCta{
  padding:0.45rem 0.9rem;border-radius:999px;background:var(--accent);
  font-size:0.85rem;font-weight:800;color:#fff;box-shadow:0 10px 26px rgba(229,9,20,0.45)
}
.langPicker{display:inline-flex;align-items:center;gap:0.35rem}
.flagBtn{
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(255,255,255,0.04);
  border-radius:999px;padding:0.25rem 0.45rem;
  cursor:pointer;line-height:1;opacity:0.75
}
.flagBtn.active{opacity:1;border-color:rgba(229,9,20,0.55);box-shadow:0 0 0 1px rgba(229,9,20,0.25)}
.flagBtn svg{display:block}
.hamburger{
  display:none;width:42px;height:38px;border-radius:999px;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(255,255,255,0.04);
  cursor:pointer;align-items:center;justify-content:center
}
.hamburgerLines{display:grid;gap:4px}
.hamburgerLines span{width:18px;height:2px;border-radius:999px;background:rgba(245,245,245,0.92);display:block}
.mobileMenu{
  display:none;margin:0.65rem 0 0.95rem;padding:0.85rem;
  border-radius:16px;background:rgba(5,5,9,0.92);
  border:1px solid rgba(255,255,255,0.10);box-shadow:var(--shadow)
}
.mobileMenu a{display:flex;align-items:center;justify-content:space-between;padding:0.7rem 0.75rem;border-radius:12px}
.mobileMenu a:hover{background:rgba(255,255,255,0.05)}
.mobileMenuDivider{height:1px;background:rgba(255,255,255,0.08);margin:0.55rem 0}
.mobileMenuCta{
  display:flex;justify-content:center;padding:0.75rem 0.85rem;border-radius:14px;
  background:linear-gradient(135deg, rgba(231,220,198,0.96), rgba(231,220,198,0.82));
  border:1px solid rgba(0,0,0,0.18);
  font-weight:700;color:#0a0a0b !important;
  box-shadow:0 16px 40px rgba(0,0,0,0.35)
}

/* Header responsive behavior is handled by lo.js and the header patch at the end of this file. */

/* Mobile menu open state */
.mobileMenu[data-open="1"]{display:block}


/* Mobile menu language block */
.mobileLangBlock{display:grid;gap:0.55rem;padding:0.35rem 0}
.mobileLangTitle{font-size:0.78rem;color:var(--muted);letter-spacing:0.12em;text-transform:uppercase}
.mobileLangList{display:flex;flex-wrap:wrap;gap:0.5rem}
.mobileLangBtn{border:1px solid rgba(255,255,255,0.14);background:rgba(255,255,255,0.04);color:var(--text);padding:0.45rem 0.65rem;border-radius:999px;cursor:pointer;font:inherit;font-size:0.88rem}
.mobileLangBtn[aria-pressed="true"]{border-color:rgba(229,9,20,0.55);box-shadow:0 0 0 1px rgba(229,9,20,0.25)}

main{padding-bottom:2.2rem}
section{padding:3.4rem 0}
.eyebrow{text-transform:uppercase;letter-spacing:0.24em;font-size:0.7rem;color:var(--muted);margin-bottom:0.75rem}
.hero{padding-top:2.2rem}
.heroGrid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:2.4rem;align-items:center}
.heroTitle{font-size:clamp(2.35rem,3.2vw + 1rem,3.55rem);line-height:1.05;margin:0 0 0.75rem}
.heroHighlight{background:linear-gradient(to right, rgba(231,220,198,0.96), rgba(252,252,253,0.92));-webkit-background-clip:text;background-clip:text;color:transparent}
.heroSubtitle{font-size:1.05rem;color:var(--muted);max-width:38rem;line-height:1.65;white-space:pre-line}
.heroPills{margin-top:1.6rem;display:flex;flex-wrap:wrap;gap:0.6rem}
.heroPill{border-radius:999px;padding:0.3rem 0.8rem;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);font-size:0.75rem;color:var(--muted)}
.heroActions{margin-top:1.9rem;display:flex;flex-wrap:wrap;gap:0.9rem;align-items:center}
.btn{
  border-radius:999px;padding:0.8rem 1.25rem;border:none;outline:none;font-weight:800;
  cursor:pointer;font-size:0.95rem;display:inline-flex;align-items:center;gap:0.45rem;white-space:nowrap
}
.btnPrimary{background:linear-gradient(135deg, rgba(231,220,198,0.96), rgba(231,220,198,0.82));color:#07070b;box-shadow:0 18px 45px rgba(0,0,0,0.45);border:1px solid rgba(0,0,0,0.18)}
.btnSecondary{background:rgba(255,255,255,0.02);color:var(--muted);border:1px solid rgba(255,255,255,0.12)}
.heroNote{margin-top:1.05rem;font-size:0.82rem;color:var(--muted);line-height:1.6}
.heroMediaCard{
  border-radius:32px;overflow:hidden;background:radial-gradient(circle at top left,#ff4949,#050509 52%);
  box-shadow:var(--shadow);position:relative;min-height:300px;border:1px solid rgba(255,255,255,0.10)
}
.heroMediaCard video{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.08);filter:saturate(1.06) contrast(1.05)}
.heroBadge{
  position:absolute;bottom:1.15rem;left:1.25rem;right:1.25rem;background:rgba(5,5,9,0.78);
  padding:0.55rem 0.85rem;border-radius:999px;display:flex;align-items:center;justify-content:space-between;gap:0.6rem;
  border:1px solid rgba(255,255,255,0.16);font-size:0.75rem
}
.heroBadgeDot{width:9px;height:9px;border-radius:999px;background:#4ade80;box-shadow:0 0 12px rgba(74,222,128,0.9)}
.sectionTitle{font-size:1.75rem;margin:0 0 0.4rem}
.sectionSubtitle{font-size:0.95rem;color:var(--muted);max-width:52rem;margin:0}
.card{
  background:radial-gradient(circle at top left,#151520,#050509 55%);
  border-radius:var(--radius);border:1px solid var(--border);padding:1.3rem;box-shadow:var(--shadow)
}

/* Allow popovers (calendar) to escape cards without being clipped */
.formCard{overflow:visible}
.formCard::before,.formCard::after{border-radius:var(--radius)}
.formCard{isolation:isolate}

.carbonPanel{
  position:relative;
  /* create a single stacking context so popovers can sit above all card content */
  isolation:isolate;
}
.carbonPanel::before{
  content:"";
  position:absolute; inset:0;
  display:none; /* carbon motif removed from panels */
}

.carbonPanel::after{
  content:"";
  position:absolute;inset:0;
  background:radial-gradient(900px 500px at 25% 20%, rgba(231,220,198,0.10), rgba(0,0,0,0) 55%),
             linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.22));
  opacity:1;
  pointer-events:none;
  z-index:-1;
}

/* Ensure calendar popovers are not clipped by carbon panel on the form */
.carbonPanel.formCard{overflow:visible !important;}
/* Keep carbon overlay rounded even when overflow is visible */
.carbonPanel.formCard::before,
.carbonPanel.formCard::after{border-radius:var(--radius);}

.carbonPanelTight::before{opacity:0.18;background-size:220px 220px;}

.carbonDark::before{
  opacity:0.22;
  background-size:240px 240px;
  mix-blend-mode:overlay;
  filter:contrast(1.35) brightness(0.55);
}
.carbonDark::after{
  background:
    radial-gradient(900px 500px at 18% 18%, rgba(0,0,0,0.35), rgba(0,0,0,0) 58%),
    linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.34));
}
.pickupFrame{margin-bottom:1.25rem;padding:1.05rem;border-radius:18px;border:1px solid rgba(231,220,198,0.14);}
.pricingGrid{margin-top:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.2rem}
.pricingCard h3{margin:0 0 0.25rem;font-size:1.05rem}
.pricingPrice{display:flex;align-items:baseline;gap:0.2rem;margin:0.35rem 0 0.45rem}
.pricingPrice span:first-child{font-size:1.55rem;font-weight:900}
.pricingKm{font-size:0.82rem;color:var(--muted)}
.pricingTag{display:inline-block;margin-top:0.35rem;font-size:0.72rem;padding:0.2rem 0.6rem;border-radius:999px;background:var(--accentSoft);color:#ffb4b4}
@media (hover:hover) and (min-width: 980px){
  .pricingCard{cursor:pointer;transition:transform 0.18s, border-color 0.18s, box-shadow 0.18s, background 0.18s}
  .pricingCard:hover{
    transform:translateY(-6px) scale(1.03);
    border-color:rgba(229,9,20,0.55);
    box-shadow:0 22px 60px rgba(229,9,20,0.10), var(--shadow);
    background:radial-gradient(circle at top left, rgba(229,9,20,0.18), #050509 58%);
  }
  .pricingCard:hover .pricingTag{
    background:rgba(229,9,20,0.24);
    color:#ffd1d1;
  }
}

.pricingNote{font-size:0.8rem;color:var(--muted);margin-top:1.25rem}
.requestLayout{display:grid;grid-template-columns:1fr;gap:1.2rem;margin-top:2rem}
.ctaRow{display:flex;flex-wrap:wrap;gap:0.75rem;margin-top:0.75rem}
.ctaBtn{
  border-radius:14px;padding:0.75rem 1rem;border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.03);color:var(--text);cursor:pointer;font-weight:850;
  display:inline-flex;gap:0.5rem;align-items:center
}
.ctaBtnPrimary{background:rgba(229,9,20,0.14);border-color:rgba(229,9,20,0.30)}
.socialRow{display:flex;flex-wrap:wrap;gap:0.6rem;margin-top:0.85rem}
.socialBtn{
  border-radius:999px;padding:0.55rem 0.85rem;border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.03);color:var(--text);cursor:pointer;font-weight:850;
  display:inline-flex;gap:0.45rem;align-items:center;font-size:0.88rem
}
.socialBtn:hover{background:rgba(255,255,255,0.06)}
.socialBtn svg{width:18px;height:18px;display:block}
.bookingForm{display:grid;gap:0.75rem;font-size:0.9rem}
.fieldGroup{display:flex;flex-direction:column;gap:0.25rem}
label{font-size:0.8rem;color:var(--muted)}
input,select,textarea{
  border-radius:10px;border:1px solid var(--border);background:rgba(10,10,18,0.9);
  padding:0.55rem 0.7rem;color:var(--text);font-family:inherit;font-size:0.95rem;outline:none
}
input:focus,select:focus,textarea:focus{border-color:rgba(245,245,245,0.22);box-shadow:0 0 0 1px rgba(245,245,245,0.12)}
textarea{min-height:90px;resize:vertical}
.grid12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0.75rem}
.span-4{grid-column:span 4}
.span-6{grid-column:span 6}
.span-12{grid-column:span 12}
@media(max-width:980px){
  .heroGrid{grid-template-columns:1fr}
  .heroMediaCard{max-width:640px;margin:0 auto}
  .span-md-6{grid-column:span 6}
  .span-md-12{grid-column:span 12}
}
@media(max-width:760px){
  .navLinks{display:none}
  .hamburger{display:inline-flex}
  .container{padding:0 1rem}
}
@media(max-width:560px){
  .pricingGrid{grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);grid-template-columns:unset;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;padding-bottom:0.75rem}
  .pricingCard{scroll-snap-align:start}
  .span-sm-12{grid-column:span 12}
}
/* Calendar popover */
.calWrap{position:relative;z-index:50;}
.calPopup{
  position:fixed;top:0;left:0;z-index: 2147483647;
  width:min(320px, 92vw);
  padding:0.85rem;border-radius:16px;
  background:#050509;isolation:isolate;
  border:1px solid rgba(255,255,255,0.10);
  box-shadow:var(--shadow);
  display:none;
  pointer-events:auto;
}
.calPopup.open{display:block}
.calHeader{display:flex;align-items:center;justify-content:space-between;gap:0.6rem;margin-bottom:0.65rem}
.calHeaderTitle{font-weight:900;text-transform:capitalize}
.calNavGroup{display:flex;gap:0.35rem;align-items:center}
.calNavBtn{
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.03);
  color:var(--text);
  border-radius:10px;
  padding:0.35rem 0.55rem;
  cursor:pointer;
  font-weight:900
}
.calWeekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:0.35rem;font-size:0.72rem;color:var(--muted);margin-bottom:0.35rem}
.calGrid{display:grid;grid-template-columns:repeat(7,1fr);gap:0.35rem}
.calDay{
  width:100%;
  aspect-ratio:1/1;
  border-radius:12px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  color:var(--text);
  cursor:pointer;
  font-weight:850;
  font-size:0.85rem
}
.calDay:hover{border-color:rgba(255,255,255,0.18);background:rgba(255,255,255,0.05)}
.calDayOff{opacity:0;pointer-events:none;border-color:transparent;background:transparent}
.calDayDisabled{opacity:0.35;cursor:not-allowed}
.calDaySelected{
  border-color:rgba(229,9,20,0.65);
  box-shadow:0 0 0 1px rgba(229,9,20,0.25);
  background:rgba(229,9,20,0.14)
}
/* Contact map */
.contactGrid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr);gap:1.2rem;margin-top:1.2rem;align-items:stretch}

@media(max-width:1100px){
  .contactGrid{grid-template-columns:1fr}
  .mapFrame{min-height:320px}
}
.mapCard{padding:0.85rem}
.mapFrame{width:100%;height:100%;min-height:340px;border:0;border-radius:14px}
.contactList{list-style:none;padding:0;margin:0.75rem 0 0;display:grid;gap:0.5rem}
.contactList li{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;padding:0.55rem 0.65rem;border-radius:12px;background:rgba(0,0,0,0.22);border:1px solid rgba(255,255,255,0.07)}
.contactList li span{color:var(--muted);font-size:0.82rem}
footer{border-top:1px solid rgba(255,255,255,0.08);padding:1.5rem 0;font-size:0.78rem;color:var(--muted)}
.footerInner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}


/* ===== Luxury refresh ===== */
:root{
  --bg:#07070a;
  --surface:rgba(12,12,16,0.78);
  --surface2:rgba(12,12,16,0.92);
  --text:#f3f1ee;
  --muted:rgba(243,241,238,0.70);
  --border:rgba(243,241,238,0.12);
  --radius:16px;
  --shadow:0 14px 42px rgba(0,0,0,0.40);
  --accent:#b1121d;      /* champagne */
  --accent2:#8b0f14;     /* deep red */
  font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body{
  background:
    radial-gradient(1000px 600px at 20% -10%, rgba(200,183,155,0.12), transparent 55%),
    radial-gradient(900px 520px at 85% 0%, rgba(139,15,20,0.10), transparent 55%),
    var(--bg);
  color:var(--text);
}
header{
  background:linear-gradient(to bottom, rgba(7,7,10,0.92), rgba(7,7,10,0.74), transparent);
  border-bottom:1px solid rgba(243,241,238,0.06);
}
.navInner{padding:0.55rem 0;}
.navLinks a{color:rgba(243,241,238,0.86);font-weight:500;letter-spacing:0.01em}
.navLinks a:hover{color:var(--text)}
.navCta{
  background:transparent;
  border:1px solid rgba(200,183,155,0.75);
  color:rgba(243,241,238,0.92);
  box-shadow:none;
  font-weight:600;
}
.navCta:hover{background:rgba(200,183,155,0.12)}

.langPicker, .flagBtn{display:none !important;} /* replaced by langSelect */

.langSelect{position:relative;display:inline-flex;align-items:center}
.langToggle{
  display:inline-flex;align-items:center;gap:0.45rem;
  padding:0.5rem 0.75rem;border-radius:999px;
  border:1px solid rgba(243,241,238,0.16);
  background:rgba(243,241,238,0.03);
  color:rgba(243,241,238,0.86);
  cursor:pointer;font-size:0.85rem;letter-spacing:0.08em;
}
.langToggle:hover{background:rgba(243,241,238,0.06)}
.langChevron{font-size:0.9rem;opacity:0.8}
.langMenu{
  position:absolute;right:0;top:calc(100% + 0.55rem);
  min-width:190px;
  background:rgba(7,7,10,0.92);
  border:1px solid rgba(243,241,238,0.14);
  border-radius:16px;
  box-shadow:var(--shadow);
  padding:0.4rem;
  backdrop-filter:blur(10px);
}
.langOption{
  width:100%;
  display:flex;align-items:center;justify-content:space-between;
  padding:0.65rem 0.75rem;border-radius:12px;
  background:transparent;border:none;
  color:rgba(243,241,238,0.92);
  cursor:pointer;font-size:0.92rem;
}
.langOption:hover{background:rgba(243,241,238,0.06)}
.langOption[aria-current="true"]{background:rgba(200,183,155,0.10);border:1px solid rgba(200,183,155,0.22)}

.hamburger{border:1px solid rgba(243,241,238,0.16);background:rgba(243,241,238,0.03)}
.hamburger:hover{background:rgba(243,241,238,0.06)}
.hamburgerLines span{background:rgba(243,241,238,0.88)}

h1,h2,h3,.sectionTitle,.heroTitle{font-family:"Cormorant Garamond",serif;letter-spacing:0.02em}
.heroTitle{font-weight:600}
.heroHighlight{background:linear-gradient(to right, rgba(231,220,198,0.96), rgba(252,252,253,0.92));-webkit-background-clip:text;background-clip:text;color:transparent}
.heroSubtitle{max-width:54ch;color:var(--muted);font-size:1.05rem;line-height:1.7}
.heroPills{gap:0.6rem;margin-top:1.25rem}
.heroPill{
  border-radius:999px;
  border:1px solid rgba(243,241,238,0.12);
  background:rgba(243,241,238,0.02);
  color:rgba(243,241,238,0.78);
  font-weight:500;
  letter-spacing:0.02em;
}
.heroActions{gap:0.85rem;margin-top:1.35rem}

.btn{
  border-radius:999px;
  padding:0.9rem 1.35rem;
  font-weight:600;
  letter-spacing:0.04em;
}
.btnPrimary{
  background:var(--accent);
  color:#0b0b0c;
  box-shadow:none;
}
.btnPrimary:hover{filter:brightness(1.04)}
.btnSecondary{
  background:transparent;
  border:1px solid rgba(243,241,238,0.18);
  color:rgba(243,241,238,0.88);
}
.btnSecondary:hover{background:rgba(243,241,238,0.05)}
.heroNote{color:rgba(243,241,238,0.60)}
.card{
  background:rgba(12,12,16,0.62);
  border:1px solid rgba(243,241,238,0.10);
  box-shadow:none;
}
.pricingCard:hover{
  transform:none;
  border-color:rgba(200,183,155,0.28);
}
.pricingCard::before{display:none}
.pricingCardPrice{color:var(--accent)}
.pricingNote{color:rgba(243,241,238,0.62)}

.sectionTitle{font-size:2.25rem;font-weight:600}
.sectionSubtitle{max-width:70ch;color:var(--muted);line-height:1.8}

.ctaRow{gap:0.6rem}
.ctaBtn{
  background:transparent;
  border:1px solid rgba(243,241,238,0.16);
  color:rgba(243,241,238,0.86);
  font-weight:500;
}
.ctaBtn:hover{background:rgba(243,241,238,0.05)}
/* remove emoji spacing if present */
.ctaBtn svg{display:block}

.contactList li{border-bottom:1px solid rgba(243,241,238,0.08)}
footer{border-top:1px solid rgba(243,241,238,0.06)}


/* --- Luxury refresh: supercar accents + full-bleed imagery --- */
.heroHighlight{background:linear-gradient(to right, rgba(231,220,198,0.96), rgba(252,252,253,0.92));-webkit-background-clip:text;background-clip:text;color:transparent}
header{
  border-bottom:1px solid rgba(255,255,255,0.06);
}
.titaniumDivider{
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(252,252,253,0.12),rgba(231,220,198,0.24),rgba(252,252,253,0.10),transparent);
}
.carbon{position:relative;isolation:isolate;}
/* Carbon accents (supercar touch) */
:root{ --carbonScale: 420px; }

header{position:sticky}
header{isolation:isolate;}
header::before{
  content:"";
  position:absolute; inset:0;
  background-image: var(--carbonImage);
  background-size: var(--carbonScale) var(--carbonScale);
  background-position: center;
  opacity:0.10;
  mix-blend-mode:overlay;
  pointer-events:none;
  z-index:0;
}
header > .container{position:relative; z-index:1;}

@supports not (mix-blend-mode: overlay){
  header::before{opacity:0.06;}
}

.card{
  position:relative;
  overflow:hidden;
}
.card::before{
  content:"";
  position:absolute; inset:0;
  display:none; /* carbon motif removed from panels */
}

.card > *{position:relative; z-index:1;}
@supports not (mix-blend-mode: overlay){
  .card::before{opacity:0.09;}
}

/* Titanium divider refinement */
.sectionTitle::after{
  content:"";
  display:block;
  width:72px;height:1px;
  margin-top:0.9rem;
  background:linear-gradient(90deg, rgba(231,220,198,0.75), rgba(176,176,186,0.55), rgba(231,220,198,0.05));
}


/* Full-bleed showcase */
.showcase{padding:0;margin:0;}
.mediaFull{position:relative;min-height:92vh;overflow:hidden;}
.mediaFull::after{content:"";position:absolute;inset:0;background:none;opacity:0;pointer-events:none;z-index:1}
.mediaOverlay{
  position:absolute;inset:0;
  display:flex;align-items:flex-end;
  background:none;
  padding:3.2rem 0;
}

.mediaFull > img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;
  border-radius:0;border:none;box-shadow:none;
  filter:none;
;
  z-index:0
}
.mediaOverlay{
  position:absolute;inset:0;
  display:flex;align-items:flex-end;
  background:linear-gradient(180deg, rgba(0,0,0,0.00) 0%, rgba(0,0,0,0.00) 45%, rgba(0,0,0,0.48) 70%, rgba(0,0,0,0.90) 100%);
  padding:3.2rem 0;
}
.mediaCaption{max-width:46rem;}
.mediaTitle{
  font-family:"Cormorant Garamond", serif;
  font-weight:600;
  font-size:clamp(1.9rem,2.2vw + 1rem,2.6rem);
  line-height:1.05;
  margin:0.35rem 0 0.85rem;
  letter-spacing:0.02em;
}
.mediaBody{color:rgba(255,255,255,0.80);max-width:40rem;margin:0 0 1.2rem;}
@media (max-width: 820px){
  .mediaFull{min-height:82vh;}
  .mediaOverlay{padding:2.4rem 0;}
  .mediaTitle{letter-spacing:0.01em;}
}
@media (max-width: 560px){
  .mediaFull{min-height:88vh;}
  .mediaBody{font-size:0.98rem;}
}
@media (max-width: 760px){
  /* Mobile colour tuning: keep primary readable on champagne */
  .btnPrimary{background:linear-gradient(135deg, rgba(231,220,198,0.96), rgba(231,220,198,0.82));color:#07070b;border:1px solid rgba(0,0,0,0.18)}
  .btnPrimary:hover{filter:brightness(1.02)}
  .heroBadge{background:rgba(231,220,198,0.06);border-color:rgba(231,220,198,0.18)}
  .heroPill{background:rgba(231,220,198,0.06);border-color:rgba(231,220,198,0.14)}
  .langMenu{background:rgba(7,7,10,0.96)}
}


/* Buttons: titanium primary, discreet secondary */
.btnPrimary{
  background:linear-gradient(135deg, rgba(252,252,253,0.92), rgba(194,194,204,0.80));
  color:#0a0a0b;
  border:1px solid rgba(255,255,255,0.10);
  box-shadow:0 10px 30px rgba(0,0,0,0.25);
}
.btnPrimary:hover{filter:brightness(1.02);}
.btnGhost{
  background:transparent;
  color:rgba(255,255,255,0.88);
  border:1px solid rgba(231,220,198,0.22);
}
.btnGhost:hover{border-color:rgba(231,220,198,0.35);}

/* Cards: less frame-y, more precision */
.card{
  border:1px solid rgba(231,220,198,0.12);
  box-shadow:0 14px 40px rgba(0,0,0,0.30);
}
.pricingCard{
  border:1px solid rgba(231,220,198,0.12);
}
@media (hover:hover) and (min-width: 980px){
  .pricingCard:hover{transform:translateY(-2px);box-shadow:0 18px 46px rgba(0,0,0,0.36);}
}


.btnSecondary{background:transparent;color:rgba(255,255,255,0.88);border:1px solid rgba(231,220,198,0.22);} .btnSecondary:hover{border-color:rgba(231,220,198,0.35);} 

body{position:relative;}
body::before{
  content:"";
  position:fixed; inset:0;
  background-image:
    radial-gradient(circle at 20% 10%, rgba(231,220,198,0.06), transparent 55%),
    radial-gradient(circle at 80% 30%, rgba(177,18,29,0.04), transparent 60%),
    radial-gradient(circle at 40% 90%, rgba(255,255,255,0.03), transparent 55%);
  pointer-events:none;
  z-index:-10;
}


.requestCardHeader{
  display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;
  padding-bottom:0.9rem;margin-bottom:0.9rem;
  border-bottom:1px solid rgba(252,252,253,0.08);
}

/* === Luxury Supercar Override v3 === */
.heroMediaCard{display:none;}
@media (min-width: 980px){
  .heroMediaCard{display:block;}
}
/*.heroMediaCard { height: 600px; }*/
.heroPhoto img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 60% 55%;
  display: block;
  border-radius: 16px;
}
@media (min-width: 980px){
  .heroGrid{grid-template-columns:1.15fr 0.85fr !important;}
}

.heroPills{gap:0.5rem !important;}

/* Typography */
:root{
  --font-sans:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-serif:"Cormorant Garamond", serif;
  font-family: var(--font-sans) !important;
  --accent: var(--champagne) !important; /* use champagne as primary accent */
  --scarlet:#b1121d; /* keep red only as micro-accent */
}
body{font-family:var(--font-sans) !important;}
h1,h2,h3,.heroTitle,.sectionTitle,.mediaTitle{font-family:var(--font-serif) !important; letter-spacing:0.01em;}
.heroHighlight{background:none !important; color:var(--champagne) !important; text-shadow:none !important;}

/* Buttons and CTAs */
.btnPrimary, .navCta, .mobileMenuCta{
  background:linear-gradient(135deg, rgba(231,220,198,0.95), rgba(252,252,253,0.92)) !important;
  color:#0b0b10 !important;
  box-shadow:0 18px 55px rgba(0,0,0,0.40) !important;
  border:1px solid rgba(231,220,198,0.28) !important;
}
.btnPrimary:hover, .navCta:hover, .mobileMenuCta:hover{
  filter:brightness(1.02) contrast(1.02);
}
.btnSecondary{
  border:1px solid rgba(231,220,198,0.18) !important;
  background:rgba(7,7,10,0.25) !important;
  color:rgba(243,241,238,0.88) !important;
}
.ctaBtnPrimary{
  background:linear-gradient(135deg, rgba(231,220,198,0.95), rgba(252,252,253,0.92)) !important;
  color:#0b0b10 !important;
  border:1px solid rgba(231,220,198,0.26) !important;
  box-shadow:0 16px 45px rgba(0,0,0,0.35) !important;
}
.ctaBtn{
  border:1px solid rgba(231,220,198,0.16) !important;
}

/* Remove “startup hover” feel */
@media (hover:hover){
  .pricingCard:hover{
    transform:none !important;
    border-color:rgba(231,220,198,0.22) !important;
    box-shadow:var(--shadow) !important;
    background:rgba(7,7,10,0.35) !important;
  }
}

/* Carbon fiber visibility fix */
.mediaFull{position:relative;}
.mediaFull::after{
  opacity:0.34 !important;
  mix-blend-mode:multiply !important; /* more visible than overlay */
  background-size:360px 360px, 18px 18px, 18px 18px !important;
  filter:contrast(1.25) saturate(0.90) !important;
}
.mediaOverlay{
  background:linear-gradient(180deg,
    rgba(0,0,0,0.00) 0%,
    rgba(0,0,0,0.00) 52%,
    rgba(0,0,0,0.42) 68%,
    rgba(0,0,0,0.88) 100%) !important;
}

/* Make the car section unmistakably first impression */
.showcase .mediaTitle{font-size:clamp(2.4rem, 4.8vw, 4.2rem) !important;}
.showcase .mediaBody{font-size:1.05rem !important; max-width:46rem;}
.showcase .mediaCaption{padding-bottom:0.25rem;}
.mediaFull{min-height:96vh !important;}

/* Header and hamburger refinement */
.hamburger{
  width:44px;height:44px !important;
  border-radius:999px !important;
  border:1px solid rgba(231,220,198,0.18) !important;
  background:rgba(7,7,10,0.35) !important;
}
.hamburgerLines span{
  background:rgba(243,241,238,0.92) !important;
  height:2px !important; width:18px !important;
}
.mobileMenu{
  margin:0.85rem 0 1.2rem !important;
  padding:0.85rem !important;
  border-radius:20px !important;
  background:rgba(7,7,10,0.78) !important;
  border:1px solid rgba(231,220,198,0.14) !important;
  backdrop-filter:blur(12px) !important;
}
.mobileMenu a:not(.mobileMenuCta){
  color:rgba(243,241,238,0.92) !important;
}
.mobileMenu a span{opacity:0.55 !important;}


/* Carbon visibility boost (user feedback) */
.mediaFull::after{
  opacity:0.48 !important;
  mix-blend-mode:soft-light !important;
  background-size:280px 280px, 18px 18px, 18px 18px !important;
}

/* Mobile color tuning (more important) */
@media (max-width: 640px){
  :root{
    --bg:#050509;
    --text:#f3f1ee;
    --muted:rgba(243,241,238,0.72);
    --border:rgba(231,220,198,0.14);
  }
  .navInner{padding:0.85rem 0 !important;}
  .navCta{padding:0.48rem 0.82rem !important; font-weight:600 !important;}
  .btn{padding:0.82rem 1.0rem !important;}
  .mediaOverlay{padding:2.6rem 0 2.2rem !important;}
  .mediaFull{min-height:100vh !important;}
  .hero{padding-top:1.2rem !important;}
}



/* Mobile navigation – luxury treatment */
.hamburger{
  border:1px solid rgba(231,220,198,0.18);
  background:linear-gradient(180deg, rgba(231,220,198,0.06), rgba(255,255,255,0.02));
}
.hamburgerLines span{background:rgba(231,220,198,0.92);}

.mobileMenu{
  background:rgba(5,5,9,0.94);
  border:1px solid rgba(231,220,198,0.14);
  box-shadow:0 18px 55px rgba(0,0,0,0.55);
}
.mobileMenu a{
  font-family:var(--font-sans);
  letter-spacing:0.02em;
}
.mobileMenuDivider{background:rgba(231,220,198,0.10);}

.mobileMenuCta{
  background:linear-gradient(180deg, rgba(231,220,198,0.20), rgba(231,220,198,0.10));
  border:1px solid rgba(231,220,198,0.22);
  color:rgba(245,245,245,0.96);
  box-shadow:none;
  font-weight:600;
}
@media (hover:hover){
  .mobileMenuCta:hover{
    transform:translateY(-1px);
    border-color:rgba(231,220,198,0.35);
    background:linear-gradient(180deg, rgba(231,220,198,0.24), rgba(231,220,198,0.12));
  }
}


@media (max-width: 820px){
  /* On small viewports: no empty bands. Image starts at the top, copy follows immediately. */
  .mediaFull{min-height:0 !important;height:auto !important;}
  .mediaFull > img{
    position:relative !important;
    inset:auto !important;
    width:100%;
    height:auto;
    max-height:72vh;
    display:block;
    object-fit:cover;
    object-position:top center;
  }
  .mediaOverlay{
    position:relative !important;
    inset:auto !important;
    align-items:flex-start;
    padding:1.0rem 0 0 !important;
    background:none !important;
  }
  .mediaCaption{max-width:100%;}
  .mediaCaptionBox{max-width:92vw;}
  section.hero{padding-top:1.2rem !important; padding-bottom:1.6rem !important;}
}

@media (max-width: 460px){
  .mediaFull{min-height:0 !important;height:auto !important;}
  .mediaFull > img{max-height:78vh;}
}

/* Short height (landscape windows): avoid empty gaps, keep content flowing */
@media (max-height: 560px){
  .mediaFull{min-height:0 !important;height:auto !important;}
  .mediaFull > img{
    position:relative !important;
    inset:auto !important;
    width:100%;
    height:auto;
    max-height:84vh;
    display:block;
    object-fit:cover;
    object-position:top center;
  }
  .mediaOverlay{
    position:relative !important;
    inset:auto !important;
    padding:0.95rem 0 0 !important;
    background:none !important;
  }
  section.hero{padding-top:1.0rem !important; padding-bottom:1.2rem !important;}
}

/* Mobile menu CTA: always readable */
.mobileMenuCta{
  background:linear-gradient(135deg, rgba(231,220,198,0.95), rgba(252,252,253,0.92)) !important;
  color:#0b0b10 !important;
  border:1px solid rgba(231,220,198,0.28) !important;
}
.mobileMenuCta:hover{color:#0b0b10 !important;}
.mobileMenuCta:link, .mobileMenuCta:visited, .mobileMenuCta:active, .mobileMenuCta:focus{color:#0b0b10 !important;}


/* Rates: mobile shows all in a single horizontal row with scrollbar */
@media (max-width: 760px){
  .pricingGrid{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
    scroll-snap-type:x mandatory !important;
    gap:1rem !important;
    padding-bottom:0.85rem !important;
  }
  .pricingCard{
    flex:0 0 clamp(120px, 10vw, 280px) !important; 
    scroll-snap-align:start !important;
  }
}

/* footer links */
.footerInner{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center}
.footerRight{display:flex;justify-content:flex-end;gap:16px;flex-wrap:wrap}
.footerRight a{color:var(--muted);text-decoration:none}
.footerRight a:hover{color:var(--text)}
@media (max-width: 760px){
  .footerInner{grid-template-columns:1fr;gap:10px;text-align:center}
  .footerRight{justify-content:center}
}

/* SHOWCASE FULLSCREEN OVERRIDE: image or video always fills viewport */
.mediaFull{
  height: 100vh !important;
  min-height: 100vh !important;

  height: 100svh !important;
  min-height: 100svh !important;

  overflow: hidden !important;
}

.mediaFull > img,
.mediaFull > video{
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;

  object-fit: cover !important;
  object-position: center center !important;

  max-height: none !important;
  display: block !important;
}

/* Journal page */
.blogHero{padding-top:2.2rem}
.blogGrid{margin-top:2rem;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1.2rem}
.blogCard{grid-column:span 6;display:grid;grid-template-columns:170px 1fr;gap:1rem;align-items:stretch;cursor:pointer}
.blogThumb{width:100%;height:100%;min-height:150px;border-radius:16px;object-fit:cover;border:1px solid rgba(231,220,198,0.14)}
.blogMeta{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center;color:var(--muted);font-size:0.82rem}
.blogPill{display:inline-flex;align-items:center;gap:0.35rem;border-radius:999px;padding:0.18rem 0.6rem;background:rgba(231,220,198,0.06);border:1px solid rgba(231,220,198,0.12);color:rgba(243,241,238,0.78)}
.blogTitle{margin:0.35rem 0 0.35rem;font-size:1.15rem;line-height:1.25}
.blogExcerpt{margin:0;color:var(--muted);font-size:0.95rem;line-height:1.65}
.blogRead{margin-top:0.85rem;display:inline-flex;align-items:center;gap:0.45rem;font-weight:800;color:rgba(243,241,238,0.92)}
.blogRead span{color:var(--champagne)}
.blogCard:focus{outline:none;box-shadow:0 0 0 2px rgba(231,220,198,0.28)}
.blogCardInner{display:flex;flex-direction:column;justify-content:space-between}
.blogCTA{margin-top:2rem;display:flex;flex-wrap:wrap;gap:0.9rem;align-items:center}
.pricingNote{margin-top:1.25rem;font-size:0.85rem;color:rgba(243,241,238,0.62);line-height:1.7}

@media(max-width:980px){
  .blogCard{grid-column:span 12}
}

/* Mobile readability: photo + overlapping glass text panel */
@media(max-width:560px){
  .blogCard{grid-template-columns:1fr;padding:0;overflow:hidden}
  .blogThumb{min-height:230px;border-radius:0;border:none;filter:brightness(0.72) contrast(1.03) saturate(1.02)}
  .blogCardInner{
    margin-top:-3.2rem;
    position:relative;
    padding:1.05rem 1.1rem 1.1rem;
    background:rgba(5,5,9,0.90);
    border-top:1px solid rgba(231,220,198,0.12);
    border-radius:22px 22px 16px 16px;
    box-shadow:0 -10px 40px rgba(0,0,0,0.55)
  }
  .blogMeta{color:rgba(243,241,238,0.70)}
  .blogExcerpt{color:rgba(243,241,238,0.74)}
}



/* ===== Shared components added for philosophy, experiences, locations, pricing gallery ===== */
.footerLeft{align-self:center}
.footerCenter{align-self:center;justify-self:center}

.cardTop{display:flex;flex-direction:column;gap:0.35rem}
.cardTitle{font-family:"Cormorant Garamond",serif;font-size:1.4rem;letter-spacing:0.02em}
.cardDesc{color:var(--muted);line-height:1.65;font-size:0.98rem}
.mediaSubtitle{color:var(--muted);max-width:70ch;line-height:1.75;font-size:1.05rem;margin:0.55rem 0 0}

.pageHero{padding-top:2.2rem}
.pageIntro{max-width:52rem}
.pageProse p{margin:0 0 1rem;line-height:1.75}
.pageProse p:last-child{margin-bottom:0}
.inlineMedia{border-radius:18px;overflow:hidden;border:1px solid rgba(231,220,194,0.16)}
.inlineMedia img{display:block;width:100%;height:auto}
.figureCaption{color:var(--muted);font-size:0.9rem;margin-top:0.55rem}
.bulletList{margin:0;padding-left:1.1rem;color:var(--text)}
.bulletList li{margin:0.35rem 0}
.quotePanel{padding:1.2rem 1.25rem;border-radius:18px;border:1px solid rgba(231,220,194,0.16);background:rgba(16,16,16,0.62)}
.quotePanel p{margin:0;color:var(--text);font-style:italic;line-height:1.7}
.quotePanel .byline{margin-top:0.6rem;color:var(--muted);font-style:normal;font-size:0.92rem}
.heroQuote{margin:1.2rem 0 0;max-width:54rem;color:rgba(243,241,238,0.86);font-style:italic;line-height:1.7;font-size:1.1rem}

/* Locations */
.locTitleRow{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:baseline}
.locPill{display:inline-flex;align-items:center;gap:0.4rem;border-radius:999px;padding:0.22rem 0.65rem;background:rgba(243,241,238,0.02);border:1px solid rgba(243,241,238,0.12);color:rgba(243,241,238,0.78);font-size:0.82rem;font-weight:500}
.locNote{margin:0.65rem 0 0;color:var(--muted);line-height:1.55}
.locList{margin:0.75rem 0 0;padding-left:1.05rem;color:rgba(243,241,238,0.92)}
.locList li{margin:0.35rem 0}
.locLink{text-decoration:underline;text-decoration-color:rgba(243,241,238,0.22);text-underline-offset:3px}
.locLink:hover{text-decoration-color:rgba(231,220,198,0.78)}
.btnRow{display:flex;gap:0.6rem;flex-wrap:wrap;margin-top:1rem}

/* Pricing: gallery and table wrapper */
.price{font-weight:900}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;margin-top:1.2rem}
@media (max-width: 860px){ .grid2{grid-template-columns:1fr} }
.carRow{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;padding:0.9rem 0;border-top:1px solid rgba(231,220,198,0.12)}
.carRow:first-of-type{border-top:0}
.carName{font-weight:900}
.pill{display:inline-flex;align-items:center;gap:0.4rem;padding:0.28rem 0.65rem;border-radius:999px;border:1px solid rgba(231,220,198,0.18);background:rgba(255,255,255,0.03);color:var(--text);font-size:0.8rem;letter-spacing:0.06em;text-transform:uppercase}
.model{width:100%;height:100%;min-height:260px;object-fit:cover;border-radius:22px;border:1px solid rgba(255,255,255,0.10)}

.gallery{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0.85rem}
.gItem{padding:0;border:none;background:transparent;cursor:pointer}
.gItem img{width:100%;height:170px;object-fit:cover;border-radius:16px;border:1px solid rgba(255,255,255,0.10);transition:transform .18s ease, border-color .18s ease}
.gItem:hover img{transform:translateY(-2px);border-color:rgba(255,255,255,0.18)}
@media (max-width: 760px){ .gItem img{height:210px} }

.tableWrap{overflow:auto;border-radius:16px;border:1px solid rgba(231,220,198,0.12);position:relative;-webkit-overflow-scrolling:touch}
.tableWrap table{min-width:720px;border-collapse:separate;border-spacing:0}
.tableWrap thead th{position:sticky;top:0;background:rgba(7,7,10,0.92);backdrop-filter:blur(10px);z-index:3}
.tableWrap th:first-child,.tableWrap td:first-child{position:sticky;left:0;background:rgba(7,7,10,0.92);z-index:2}
.tableWrap thead th:first-child{z-index:4}
.tableWrap td:first-child{border-right:1px solid rgba(231,220,198,0.12)}
@media (max-width: 760px){ .tableWrap th, .tableWrap td{padding:0.65rem 0.55rem} .tableWrap table{font-size:0.90rem} }
.tableWrap::after{content:"";position:absolute;top:0;right:0;width:36px;height:100%;pointer-events:none;background:linear-gradient(90deg, transparent, rgba(7,7,10,0.85));opacity:0.9}

.lightbox{position:fixed;inset:0;display:none;z-index:200}
.lightbox.open{display:block}
.lbBackdrop{position:absolute;inset:0;background:rgba(0,0,0,0.72);backdrop-filter:blur(6px)}
.lbPanel{position:absolute;inset:0;display:grid;place-items:center;padding:1rem}
.lbFigure{margin:0;max-width:min(980px,92vw);width:100%}
.lbFigure img{width:100%;height:auto;border-radius:18px;border:1px solid rgba(255,255,255,0.12)}
.lbCap{margin-top:0.75rem;color:var(--muted);font-size:0.9rem;text-align:center}
.lbClose{position:absolute;top:1rem;right:1rem;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,0.16);background:rgba(255,255,255,0.06);color:#fff;font-size:18px;cursor:pointer}
.lbNav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:999px;border:1px solid rgba(255,255,255,0.16);background:rgba(255,255,255,0.06);color:#fff;font-size:20px;cursor:pointer}
.lbPrev{left:1rem}
.lbNext{right:1rem}
@media (max-width:560px){ .lbPrev{left:0.55rem} .lbNext{right:0.55rem} .lbNav{width:46px;height:46px} }


/* ===== Header priority navigation patch =====
   Ensures links never overlap the brand.
   Driven by lo.js via:
   - data-lo-hidden on individual items
   - header[data-burger] and header[data-brand-wrap]
*/

.navInner{min-width:0;justify-content:flex-start;overflow:visible}
.brand{flex:0 0 auto;min-width:0}
.navRight{margin-left:auto;flex:0 0 auto;min-width:0;overflow:visible}

/* Critical: do not allow the nav cluster to shrink and let its children spill over the brand.
   If it does not fit, lo.js will hide low priority items instead. */
.navLinks{flex:0 0 auto;width:max-content;white-space:nowrap;overflow:hidden}
.navLinks a{white-space:nowrap}

.navLinks a[data-lo-hidden="1"]{display:none !important}
.langSelect[data-lo-hidden="1"]{display:none !important}

.brandGold{min-width:0;display:inline-flex;align-items:baseline;gap:0.35em}
.brandGold .brandWord{display:inline-block}

@media (min-width: 761px){
  header[data-burger="1"] .hamburger{display:inline-flex !important}
  header[data-burger="0"] .hamburger{display:none !important}
}

header[data-brand-wrap="1"] .brandGold{
  flex-direction:column;
  align-items:flex-start;
  gap:0.10em;
  white-space:normal;
  line-height:1.05;
  letter-spacing:0.16em;
  font-size:clamp(0.96rem, 0.95vw + 0.70rem, 1.14rem);
}
header[data-brand-wrap="1"] .brandGold .brandWord1,
header[data-brand-wrap="1"] .brandGold .brandWord2{display:block}

@media (min-width: 761px){
  header[data-brand-wrap="1"] .brandIcon{width:52px;height:52px}
}

@media (max-width: 760px){
  /* On mobile, language stays in the hamburger menu */
  .langSelect{display:none !important}
}

/* Mobile header override: always show Request and language */
@media (max-width: 760px){
  .navLinks{display:flex !important;}
  .navLinks a{display:none !important;}
  #navRequest{display:inline-flex !important;}
  #navRequest[data-lo-hidden="1"]{display:inline-flex !important;}
  .langSelect{display:inline-flex !important;}
  .langSelect[data-lo-hidden="1"]{display:inline-flex !important;}
  .hamburger{display:inline-flex !important;}
  .navRight{gap:0.5rem;}
  .navCta{padding:0.46rem 0.78rem;font-size:0.82rem;}
  .langToggle{padding:0.46rem 0.62rem;font-size:0.82rem;}
}

/* Ultra-small screens: keep Request, language, and hamburger visible without horizontal scrolling */
@media (max-width: 360px){
  header .container{padding:0 1rem;}
  .navInner{gap:0.6rem;padding:0.35rem 0;}

  /* Let brand shrink and ellipsize so the right controls never get pushed off-screen */
  .brand{flex:1 1 auto;min-width:0;gap:0.5rem;}
  .brandGold{
    display:inline-block;
    max-width:34vw;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .navRight{gap:0.35rem;}
  .navCta{padding:0.40rem 0.62rem;font-size:0.78rem;}
  .langToggle{padding:0.40rem 0.50rem;font-size:0.78rem;}
  .hamburger{width:40px;height:40px !important;}
}

/* Extreme narrow devices: show icon only to preserve controls */
@media (max-width: 320px){
  .brandGold{display:none;}
}
