
/* ------------------------------------------------------------------
   BILDQUELLEN
   Alle Bilder der Seite an einer Stelle.
   Echtes MK-VIP-Foto einsetzen: Datei in den Ordner images/ legen und
   den Wert ersetzen, z.B.  --img-hero: url("images/hero.jpg");
   Aktuell: Platzhalterfotos (Mercedes und Maybach) von einem fremden Server.
   Nur voruebergehend, bis echte MK-VIP-Aufnahmen vorliegen.
   ------------------------------------------------------------------ */
:root{
  --img-hero: url("https://images.unsplash.com/photo-1702543180823-9722d8f76cc3?auto=format&fit=crop&crop=entropy&w=1500&h=844&q=70");
  --img-journey-switzerland: url("https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=900&q=62");
  --img-journey-austria: url("https://images.unsplash.com/photo-1464278533981-50106e6176b1?auto=format&fit=crop&w=700&q=62");
  --img-journey-italy: url("https://images.unsplash.com/photo-1533104816931-20fa691ff6ca?auto=format&fit=crop&w=700&q=62");
  --img-experience: url("https://images.unsplash.com/photo-1652453822981-653a9a522a5b?auto=format&fit=crop&crop=entropy&w=1500&h=844&q=70");
  --img-maybach: url("https://images.unsplash.com/photo-1680451553374-09d8d6a1ca58?auto=format&fit=crop&crop=entropy&w=1500&h=844&q=70");
  --img-vehicle-maybach: url("https://images.unsplash.com/photo-1739545884216-634937b0e664?auto=format&fit=crop&crop=entropy&w=700&h=778&q=70");
  --img-vehicle-sclass: url("https://images.unsplash.com/photo-1610099610040-ab19f3a5ec35?auto=format&fit=crop&crop=entropy&w=700&h=778&q=70");
  --img-vehicle-vclass: url("https://images.unsplash.com/photo-1639890247445-8e2ca2c53255?auto=format&fit=crop&crop=entropy&w=700&h=778&q=70");
  --img-vehicle-eclass: url("https://images.unsplash.com/photo-1551836989-b4622a17a792?auto=format&fit=crop&crop=entropy&w=700&h=778&q=70");
  --img-why: url("https://images.unsplash.com/photo-1619221496652-7ee3d7406203?auto=format&fit=crop&crop=entropy&w=1500&h=844&q=70");
}
/* Handys und Tablets laden kleinere Bilddateien.
   Ein Telefon braucht kein 1700 Pixel breites Foto. */
@media(max-width:900px){
  :root{
    --img-hero: url("https://images.unsplash.com/photo-1702543180823-9722d8f76cc3?auto=format&fit=crop&crop=entropy&w=1000&h=1100&q=70");
    --img-maybach: url("https://images.unsplash.com/photo-1680451553374-09d8d6a1ca58?auto=format&fit=crop&crop=entropy&w=1000&h=900&q=70");
    --img-experience: url("https://images.unsplash.com/photo-1652453822981-653a9a522a5b?auto=format&fit=crop&crop=entropy&w=1000&h=900&q=70");
    --img-why: url("https://images.unsplash.com/photo-1619221496652-7ee3d7406203?auto=format&fit=crop&crop=entropy&w=1000&h=900&q=70");
    --img-vehicle-maybach: url("https://images.unsplash.com/photo-1739545884216-634937b0e664?auto=format&fit=crop&crop=entropy&w=640&h=700&q=70");
    --img-vehicle-sclass: url("https://images.unsplash.com/photo-1610099610040-ab19f3a5ec35?auto=format&fit=crop&crop=entropy&w=640&h=700&q=70");
    --img-vehicle-eclass: url("https://images.unsplash.com/photo-1551836989-b4622a17a792?auto=format&fit=crop&crop=entropy&w=640&h=700&q=70");
    --img-vehicle-vclass: url("https://images.unsplash.com/photo-1639890247445-8e2ca2c53255?auto=format&fit=crop&crop=entropy&w=640&h=700&q=70");
    --img-journey-switzerland: url("https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=900&q=70");
    --img-journey-austria: url("https://images.unsplash.com/photo-1464278533981-50106e6176b1?auto=format&fit=crop&w=760&q=70");
    --img-journey-italy: url("https://images.unsplash.com/photo-1533104816931-20fa691ff6ca?auto=format&fit=crop&w=760&q=70");
  }
}


:root{
  --ink:#101010;
  --black:#09090a;
  --paper:#f5f2ec;
  --paper2:#ece8e0;
  --white:#fff;
  --muted:#5c5850;
  --line:#d8d2c9;
  --gold:#bda16e;
  --gold2:#dfccb0;
  --gold-text:#7d6437;
  --gold-line:#bda16e;
  --gold-light:#d8c39a;
  --max:1240px;
  --serif:"Libre Caslon Display", Georgia, serif;
  --sans:"DM Sans", Arial, sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:var(--paper);
  font-family:var(--sans);
  font-size:16px;
  line-height:1.5;
}
body[dir="rtl"]{font-family:var(--sans)}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
svg{width:1em;height:1em;fill:currentColor}
.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}

/* header */
.header{
  /* Kopfzeile bleibt beim Scrollen sichtbar, damit der Buchungs-Button
     auf jeder Seitenhoehe erreichbar ist. Ueber dem Kopfbild ist sie
     transparent und bekommt erst beim Scrollen einen eigenen Grund. */
  position:sticky;
  top:0;left:0;right:0;
  z-index:50;
  background:#0a0a0b;
  border-bottom:1px solid rgba(255,255,255,.10);
  transition:box-shadow .3s ease;
}
.header.is-scrolled{
  box-shadow:0 10px 30px rgba(0,0,0,.45);
}
.nav{
  height:84px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  color:#fff;
}
.brand{display:flex;align-items:center;gap:13px}
.brand-monogram{
  width:38px;height:38px;
  border:1px solid rgba(255,255,255,.52);
  display:grid;place-items:center;
  font-family:var(--serif);
  font-size:19px;
}
.brand-copy{display:flex;flex-direction:column;line-height:1.15}
.brand-copy strong{font-size:12px;letter-spacing:.22em}
.brand-copy small{font-size:9px;letter-spacing:.10em;color:#bbb;margin-top:4px}
.nav-links{display:flex;gap:30px;margin-left:auto}
.nav-links a{
  font-size:13px;color:#d5d5d5;
  transition:color .2s ease
}
.nav-links a:hover{color:#fff}
.nav-actions{display:flex;align-items:center;gap:15px}
.language-switcher{
  display:flex;
  border:1px solid rgba(255,255,255,.15);
}
.lang-btn{
  background:transparent;border:0;
  color:#9d9d9d;
  font-size:11px;
  padding:9px 10px;
  cursor:pointer
}
.lang-btn.active{color:#fff;background:rgba(255,255,255,.08)}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid transparent;
  cursor:pointer;
  transition:.25s ease;
  white-space:nowrap;
}
.btn-small{padding:10px 15px;font-size:12px}
.btn-outline{border-color:rgba(255,255,255,.35)}
.btn-outline:hover{background:#fff;color:#111}

@media(min-width:901px){
  .hero{min-height:820px}
}

/* hero */
.hero{
  min-height:760px;
  position:relative;
  background-color:#0a0a0b;
  display:flex;
  align-items:flex-end;
  color:#fff;
  overflow:hidden;
}
.hero-media{
  position:absolute;inset:0;
  background:
    var(--img-hero)
    center 58%/cover no-repeat;
  transform:scale(1.015);
}
.hero-shade{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.56) 42%,rgba(0,0,0,.18) 76%),
    linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.05) 32%,rgba(0,0,0,.65) 100%);
}
.hero-inner{
  position:relative;
  z-index:2;
  padding-bottom:85px;
}
.hero-eyebrow{display:flex;align-items:center;gap:13px}
.hero-eyebrow span{display:block;width:42px;height:1px;background:var(--gold)}
.hero-eyebrow p{
  margin:0;
  color:#d7c4a3;
  letter-spacing:.24em;
  font-size:11px;
  font-weight:600;
}
.hero h1{
  max-width:840px;
  margin:22px 0 22px;
  font-family:var(--serif);
  font-size:clamp(34px,4.2vw,62px);
  line-height:1.06;
  font-weight:400;
  letter-spacing:-.02em;
  text-wrap:balance;
}
.hero h1 em{
  font-style:normal;
  color:var(--gold2);
}
.hero-text{
  max-width:680px;
  margin:0;
  font-size:18px;
  line-height:1.75;
  color:#d8d8d8;
}
.hero-cta{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:33px;
}
.btn-primary{
  min-height:54px;
  padding:0 24px;
  background:#fff;
  color:#101010;
  font-size:13px;
  font-weight:600;
}
.btn-primary:hover{background:var(--gold2)}
.btn-glass{
  min-height:54px;
  padding:0 20px;
  gap:9px;
  border-color:rgba(255,255,255,.36);
  background:rgba(255,255,255,.035);
  color:#fff;
  font-size:13px;
  backdrop-filter:blur(8px)
}
.btn-glass:hover{background:rgba(255,255,255,.12)}
.hero-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(130px,1fr));
  max-width:900px;
  margin-top:58px;
  border-top:1px solid rgba(255,255,255,.2);
  padding-top:24px;
}
.hero-facts div{display:flex;flex-direction:column;gap:3px}
.hero-facts strong{font-family:var(--serif);font-size:23px;font-weight:400}
.hero-facts span{font-size:11px;color:#a8a8a8}
.scroll-cue{
  position:absolute;
  z-index:3;
  right:40px;
  bottom:44px;
  width:46px;height:46px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  display:grid;place-items:center
}
.scroll-cue span{width:1px;height:14px;background:#fff;position:relative}
.scroll-cue span::after{
  content:"";position:absolute;
  bottom:0;left:-3px;
  width:6px;height:6px;
  border-right:1px solid #fff;border-bottom:1px solid #fff;
  transform:rotate(45deg)
}

/* positioning */
.positioning{background:var(--black);color:#fff;padding:95px 0}
.positioning-inner{max-width:1000px}
.positioning p{
  color:var(--gold);font-size:11px;font-weight:600;
  letter-spacing:.23em;margin:0 0 18px
}
.positioning h2{
  margin:0;
  font-family:var(--serif);
  font-size:clamp(42px,5vw,72px);
  line-height:1.04;font-weight:400
}
.positioning h2 em{font-style:normal;color:#878787}

/* shared section */
.section{padding:115px 0}
.section-title{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:50px;
  align-items:end;
  margin-bottom:52px
}
.kicker{
  font-size:12px;
  letter-spacing:.2em;
  font-weight:600;
  color:#5c4a28
}
.kicker.light{color:var(--gold-light)}
.section-title h2,.request-copy h2,.why-left h2{
  margin:12px 0 0;
  font-family:var(--serif);
  font-size:clamp(30px,3.4vw,50px);
  line-height:1.1;
  font-weight:400;
  letter-spacing:-.02em
}
.section-title p{
  max-width:460px;
  margin:0;
  color:var(--muted);
  line-height:1.75
}

/* journeys */
.journey-showcase{
  display:grid;
  grid-template-columns:1.35fr .65fr;
  gap:18px
}
.journey-column{display:grid;gap:18px}
.journey-card{
  position:relative;
  overflow:hidden;
  min-height:360px;
  color:#fff;
  background-color:#101012;
}
.journey-card-large{min-height:740px}
.journey-photo{position:absolute;inset:0;background-position:center;background-size:cover;transition:transform .8s ease}
.journey-card:hover .journey-photo{transform:scale(1.035)}
.photo-switzerland{
  background-image:var(--img-journey-switzerland)
}
.photo-austria{
  background-image:var(--img-journey-austria)
}
.photo-italy{
  background-image:var(--img-journey-italy)
}
.journey-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.68))
}
.journey-content{
  position:absolute;z-index:2;
  left:30px;right:30px;bottom:30px
}
.journey-content span{font-size:10px;letter-spacing:.2em;color:#dbc6a1}
.journey-content h3{
  margin:8px 0 7px;
  font-family:var(--serif);
  font-size:34px;font-weight:400
}
.journey-content p{margin:0;color:#d7d7d7;font-size:13px}

/* maybach */
.maybach-section{
  position:relative;
  min-height:780px;
  background-color:#0a0a0b;
  display:flex;
  align-items:center;
  color:#fff;
  overflow:hidden;
}
.maybach-media{
  position:absolute;inset:0;
  background:
    var(--img-experience)
    center/cover no-repeat
}
.maybach-shade{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.4),rgba(0,0,0,.08))
}
.maybach-content{position:relative;z-index:2;max-width:900px}
.maybach-content h2{
  margin:15px 0 22px;
  font-family:var(--serif);
  font-size:clamp(52px,6vw,88px);
  line-height:.98;font-weight:400
}
.maybach-content h2 em{font-style:normal;color:var(--gold2)}
.maybach-content p{
  max-width:590px;
  color:#d7d7d7;
  font-size:17px;line-height:1.7
}
.text-link{
  display:inline-flex;gap:40px;
  border-bottom:1px solid rgba(255,255,255,.5);
  padding-bottom:7px;margin-top:15px;
  font-size:13px
}

/* vehicles */
.vehicles-section{background:#f0ece5}
.vehicle-list{border-top:1px solid var(--line)}
.vehicle-row{
  display:grid;
  grid-template-columns:70px 1fr 180px;
  align-items:center;
  gap:25px;
  min-height:150px;
  border-bottom:1px solid var(--line)
}
.vehicle-index{font-size:11px;color:#8b857d}
.vehicle-row h3{
  font-family:var(--serif);
  font-size:34px;font-weight:400;
  margin:0 0 7px
}
.vehicle-row p{margin:0;color:var(--muted)}
.vehicle-tag{
  justify-self:end;
  border:1px solid #c7c0b7;
  padding:8px 12px;
  font-size:9px;letter-spacing:.14em
}

/* why */
.why-section{background:#111213;color:#fff;padding:115px 0}
.why-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}
.why-left h2{max-width:530px}
.why-points{border-top:1px solid #303133}
.why-point{
  display:grid;
  grid-template-columns:60px 1fr;
  gap:22px;
  padding:28px 0;
  border-bottom:1px solid #303133
}
.why-point>span{font-size:10px;color:#8f8f8f}
.why-point h3{margin:0 0 6px;font-size:18px;font-weight:500}
.why-point p{margin:0;color:#9fa0a2}

/* request */
.request-section{padding:115px 0;background:#f7f4ee}
.request-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px}
.request-copy h2 em{font-style:normal;color:var(--gold-text)}
.request-copy>p{max-width:480px;color:var(--muted);line-height:1.75}
.contact-options{margin-top:36px;display:grid;gap:9px}
.contact-option{
  display:grid;
  grid-template-columns:42px 1fr 20px;
  gap:13px;
  align-items:center;
  padding:15px 17px;
  background:#fff;
  border:1px solid var(--line);
  transition:.2s ease
}
.contact-option:hover{transform:translateX(3px)}
.contact-icon{
  width:38px;height:38px;border:1px solid #d8d0c5;
  display:grid;place-items:center
}
.contact-option span{display:block;font-size:11.5px;color:#615c55}
.contact-option strong{font-size:13px;font-weight:500}
.contact-option b{font-weight:400;color:#6b665e}
.request-form{
  background:#fff;
  border:1px solid #d9d2c9;
  padding:34px
}
.form-heading{
  display:flex;justify-content:space-between;gap:20px;
  align-items:end;
  border-bottom:1px solid var(--line);
  padding-bottom:20px;margin-bottom:25px
}
.form-heading span{font-size:11px;letter-spacing:.16em;color:var(--gold-text)}
.form-heading strong{font-family:var(--serif);font-weight:400;font-size:22px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:block;margin-bottom:16px}
label>span{display:block;font-size:11px;color:#4f4b45;margin-bottom:7px}
input,select,textarea{
  width:100%;
  border:1px solid #d8d1c8;
  background:#fff;
  min-height:48px;
  padding:12px 13px;
  color:#151515;
  outline:none;
  border-radius:0;
  font-family:inherit;
  font-size:16px
}
textarea{min-height:105px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:#5f594f}
input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--gold-line);
  outline-offset:1px
}
a:focus-visible,button:focus-visible{
  outline:2px solid var(--gold-line);
  outline-offset:3px
}
section[id]{scroll-margin-top:96px}
.btn-form{
  width:100%;min-height:52px;
  background:#111;color:#fff;
  font-size:13px;font-weight:600
}
.btn-form:hover{background:#292929}
.privacy-note{margin:13px 0 0;color:#6f6a63;font-size:11px;line-height:1.6}
.form-status{margin-top:12px;font-size:13px;line-height:1.5}
.form-status.success,.form-status.error{
  padding:12px 14px;
  border-left:3px solid currentColor
}
.form-status.success{color:#2f5d3d;background:#eef4ef}
.form-status.error{color:#8c3229;background:#fbeeec}

/* footer */
.footer{background:#080809;color:#fff;padding:70px 0 30px}
.footer-top{
  display:grid;
  grid-template-columns:1.1fr 1fr .7fr;
  gap:55px;padding-bottom:55px
}
.footer-col{display:flex;flex-direction:column;gap:7px}
.footer-col>span{font-size:10px;letter-spacing:.17em;color:#868686;margin-bottom:8px}
.footer-col strong{font-size:13px;font-weight:500}
.footer-col p,.footer-col a{font-size:13px;color:#9a9a9a;margin:0;line-height:1.6}
.footer-bottom{
  padding-top:22px;
  border-top:1px solid #242426;
  display:flex;justify-content:space-between;align-items:center;
  /* umbricht auf schmalen Geraeten, statt ueber den Rand hinauszulaufen */
  flex-wrap:wrap;
  gap:10px 18px;
}
.footer-bottom p,.footer-bottom a,.footer-bottom button{font-size:11px;color:#8a8a8a}
.footer-bottom div{display:flex;gap:18px;flex-wrap:wrap}

/* mobile bar */
.mobile-bar{display:none}

/* animation */
.reveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1)
}
.reveal.visible{opacity:1;transform:none}

/* RTL */
html[dir="rtl"] .nav-links{margin-left:0;margin-right:auto}
html[dir="rtl"] .hero-shade{
  background:
    linear-gradient(-90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.56) 42%,rgba(0,0,0,.18) 76%),
    linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.05) 32%,rgba(0,0,0,.65) 100%);
}
html[dir="rtl"] .contact-option:hover{transform:translateX(-3px)}
html[dir="rtl"] .maybach-shade{background:linear-gradient(-90deg,rgba(0,0,0,.82),rgba(0,0,0,.4),rgba(0,0,0,.08))}

/* responsive */
@media(max-width:1000px){
  .nav-links{display:none}
  .hero{min-height:820px}
  .journey-showcase{grid-template-columns:1fr}
  .journey-card-large{min-height:540px}
  .journey-column{grid-template-columns:1fr 1fr}
  .why-grid,.request-grid{grid-template-columns:1fr;gap:55px}
  .section-title{grid-template-columns:1fr;gap:18px}
  .footer-top{grid-template-columns:1fr 1fr}
  .footer-top>div:first-child{grid-column:1/-1}
}
@media(max-width:720px){
  .container{width:min(calc(100% - 28px),var(--max))}
  .nav{height:70px}
  .brand-copy small{display:none}
  .nav-actions .btn-small{display:none}
  .language-switcher{margin-left:auto}
  .hero{
    min-height:700px;
    align-items:flex-end
  }
  .hero-media{
    background-position:62% center;
  }
  .hero-inner{padding-bottom:80px}
  .hero h1{font-size:36px;line-height:1.1}
  .hero-text{font-size:15px}
  .hero-cta{
    display:grid;
    grid-template-columns:1fr 1fr
  }
  .hero-cta .btn-primary{grid-column:1/-1}
  .hero-facts{
    grid-template-columns:1fr 1fr;
    gap:18px 14px;
    margin-top:35px
  }
  .scroll-cue{display:none}
  .positioning{padding:75px 0}
  .section,.request-section,.why-section{padding:80px 0}
  .journey-column{grid-template-columns:1fr}
  .journey-card,.journey-card-large{min-height:430px}
  .maybach-section{min-height:680px}
  .maybach-media{background-position:62% center}
  .vehicle-row{
    grid-template-columns:45px 1fr;
    padding:24px 0;
    min-height:auto
  }
  .vehicle-tag{display:none}
  .vehicle-row h3{font-size:28px}
  .form-row{grid-template-columns:1fr}
  .form-heading{align-items:start;flex-direction:column}
  .request-form{padding:22px}
  .footer-top{grid-template-columns:1fr}
  .footer-top>div:first-child{grid-column:auto}
  .footer-bottom{padding-bottom:55px}
  .mobile-bar{
    position:fixed;
    left:0;right:0;bottom:0;
    z-index:80;
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:1fr;
    background:#0a0a0b;
    border-top:1px solid #28282a;
    padding-bottom:env(safe-area-inset-bottom);
  }
  .mobile-bar a{
    padding:13px 8px;
    color:#fff;
    font-size:11px;
    font-weight:600;
    text-align:center;
    border-right:1px solid #28282a
  }
  .mobile-bar a:last-child{border-right:0;background:#ece6dc;color:#111}
}


/* emotional experience section */
.experience-section{
  position:relative;
  min-height:820px;
  background-color:#0a0a0b;
  display:flex;
  align-items:center;
  color:#fff;
  overflow:hidden;
}
.experience-media{
  position:absolute;inset:0;
  background:
    var(--img-maybach)
    center/cover no-repeat;
  transform:scale(1.02);
}
.experience-shade{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(5,5,6,.88) 0%,rgba(5,5,6,.60) 45%,rgba(5,5,6,.22) 78%),
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.58));
}
.experience-inner{position:relative;z-index:2}
.experience-inner h2{
  max-width:900px;
  margin:15px 0 24px;
  font-family:var(--serif);
  font-size:clamp(52px,6vw,90px);
  line-height:.97;
  font-weight:400;
  letter-spacing:-.03em;
}
.experience-inner h2 em{font-style:normal;color:var(--gold2)}
.experience-inner>p{
  max-width:640px;
  color:#d3d3d3;
  font-size:17px;
  line-height:1.75;
}
.experience-points{
  margin-top:52px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(255,255,255,.22);
  max-width:1100px;
}
.experience-points>div{
  padding:22px 22px 0 0;
  min-height:110px;
}
.experience-points strong{
  display:block;
  font-family:var(--serif);
  font-size:22px;
  font-weight:400;
  margin-bottom:7px;
}
.experience-points span{
  display:block;
  color:#aaa;
  font-size:12px;
  line-height:1.55;
  max-width:190px;
}
@media(max-width:900px){
  .experience-points{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  .hero h1{font-size:30px;line-height:1.12}
  .hero-facts{gap:14px 12px}
  .hero-facts strong{font-size:20px}
  .footer-bottom{flex-direction:column;gap:12px;align-items:flex-start}
  .language-switcher .lang-btn{padding:6px 8px}
}
@media(max-width:640px){
  .experience-section{min-height:760px}
  .experience-inner h2{font-size:50px}
  .experience-points{grid-template-columns:1fr 1fr;gap:10px 15px}
  .experience-points>div{padding-top:18px}
  .experience-points strong{font-size:19px}
}


/* SALES-ORIENTED VEHICLES */
.vehicles-sales{
  background:#f3efe8;
}
.vehicle-sales-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.vehicle-sales-card{
  background:#fff;
  border:1px solid #d8d1c7;
  overflow:hidden;
}
.vehicle-featured{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:1.15fr .85fr;
}
.vehicle-sales-image{
  min-height:390px;
  position:relative;
  background-size:cover;
  background-position:center;
}
.vehicle-featured .vehicle-sales-image{min-height:590px}
.vehicle-sales-maybach{
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.22)),
    var(--img-vehicle-maybach);
}
.vehicle-sales-sclass{
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.01),rgba(0,0,0,.18)),
    var(--img-vehicle-sclass);
}
/* E-Klasse: Platzhalterfoto, bis eine echte MK-VIP-Aufnahme vorliegt */
.vehicle-sales-eclass{
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.01),rgba(0,0,0,.18)),
    var(--img-vehicle-eclass);
}
.vehicle-sales-vclass{
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.01),rgba(0,0,0,.15)),
    var(--img-vehicle-vclass);
}
.vehicle-sales-badge{
  position:absolute;top:22px;left:22px;
  padding:8px 11px;
  background:rgba(255,255,255,.92);
  color:#171717;
  font-size:9px;
  letter-spacing:.16em;
  font-weight:600;
}
html[dir="rtl"] .vehicle-sales-badge{left:auto;right:22px}
.vehicle-sales-body{padding:32px}
.vehicle-featured .vehicle-sales-body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:50px
}
.vehicle-sales-label{
  font-size:10px;
  letter-spacing:.19em;
  color:var(--gold-text);
  font-weight:600;
}
.vehicle-sales-body h3{
  margin:12px 0 15px;
  font-family:var(--serif);
  font-size:clamp(30px,3vw,48px);
  line-height:1.05;
  font-weight:400;
}
.vehicle-sales-body p{
  color:#706b64;
  line-height:1.7;
  max-width:560px;
}
.vehicle-sales-use{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin:20px 0 28px;
}
.vehicle-sales-use span{
  padding:7px 10px;
  border:1px solid #d8d1c7;
  font-size:9px;
  letter-spacing:.08em;
  color:#6d675f;
}
.sales-link{
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-top:1px solid #ddd6cd;
  padding-top:18px;
  font-size:12px;
  font-weight:600;
}
.sales-link b{font-weight:400}

/* PREMIUM WHY */
.why-premium{
  position:relative;
  min-height:900px;
  background-color:#0a0a0b;
  display:flex;
  align-items:center;
  color:#fff;
  overflow:hidden;
}
.why-premium-image{
  position:absolute;inset:0;
  background:
    var(--img-why)
    center/cover no-repeat;
}
.why-premium-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(8,8,9,.92) 0%,rgba(8,8,9,.72) 48%,rgba(8,8,9,.18) 83%),
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.3));
}
html[dir="rtl"] .why-premium-overlay{
  background:
    linear-gradient(-90deg,rgba(8,8,9,.92) 0%,rgba(8,8,9,.72) 48%,rgba(8,8,9,.18) 83%),
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.3));
}
.why-premium-inner{position:relative;z-index:2}
.why-premium-copy{max-width:760px}
.why-premium-copy h2{
  margin:14px 0 20px;
  font-family:var(--serif);
  font-size:clamp(48px,5.5vw,78px);
  line-height:.98;
  font-weight:400;
}
.why-premium-copy h2 em{
  font-style:normal;color:var(--gold2)
}
.why-premium-copy>p{
  max-width:570px;
  color:#c4c4c4;
  line-height:1.7;
  font-size:16px;
}
.why-premium-points{
  margin-top:40px;
  border-top:1px solid rgba(255,255,255,.2);
}
.why-premium-point{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:18px;
  padding:20px 0;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.why-premium-point>span{
  color:#898989;
  font-size:10px;
}
.why-premium-point h3{
  margin:0 0 5px;
  font-size:16px;
  font-weight:500;
}
.why-premium-point p{
  margin:0;
  color:#a9a9a9;
  font-size:13px;
  line-height:1.55;
}
.why-premium-cta{
  display:flex;
  align-items:center;
  gap:25px;
  margin-top:32px;
  flex-wrap:wrap;
}
.why-whatsapp{
  color:#fff;
  font-size:12px;
  border-bottom:1px solid rgba(255,255,255,.4);
  padding-bottom:4px;
}

/* CONVERSION STRIP */
.conversion-strip{
  padding:85px 0;
  background:#d9c5a3;
}
.conversion-strip-inner{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:end;
  gap:45px;
}
.conversion-strip h2{
  font-family:var(--serif);
  font-size:clamp(38px,4.5vw,64px);
  line-height:1;
  font-weight:400;
  margin:10px 0 0;
}
.conversion-strip h2 em{
  font-style:normal;
  color:#6f5935;
}
.conversion-actions{
  display:flex;
  gap:9px;
  flex-wrap:wrap;
}
.conversion-dark{
  min-height:50px;
  padding:0 20px;
  background:#111;
  color:#fff;
}
.conversion-light{
  min-height:50px;
  padding:0 18px;
  background:rgba(255,255,255,.42);
  border-color:rgba(17,17,17,.24);
  color:#111;
}

@media(max-width:1100px){
  .vehicle-sales-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .vehicle-sales-grid{grid-template-columns:1fr}
  .vehicle-featured{
    grid-column:auto;
    grid-template-columns:1fr;
  }
  .vehicle-featured .vehicle-sales-image{min-height:470px}
  .vehicle-featured .vehicle-sales-body{padding:32px}
  .conversion-strip-inner{grid-template-columns:1fr}
}
@media(max-width:640px){
  .vehicle-sales-image,.vehicle-featured .vehicle-sales-image{min-height:370px}
  .vehicle-sales-body,.vehicle-featured .vehicle-sales-body{padding:24px}
  .why-premium{min-height:980px}
  .why-premium-overlay{
    background:linear-gradient(180deg,rgba(8,8,9,.88),rgba(8,8,9,.82))
  }
  .conversion-actions{display:grid;grid-template-columns:1fr 1fr}
  .conversion-actions .conversion-dark{grid-column:1/-1}
}

/* Dienstleistungen */
.services-section{
  background:
    linear-gradient(180deg,#fff 0%,#fbf9f5 55%,#f7f3ec 100%);
}
.service-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:#e8e2d8;
  border:1px solid #e8e2d8;
}
.service-card{
  background:#fff;
  padding:34px 30px 32px;
  position:relative;
  transition:transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s ease;
}
.service-card::before{
  content:"";
  position:absolute;left:0;top:0;bottom:0;
  width:2px;
  background:var(--gold-line);
  transform:scaleY(0);
  transform-origin:top;
  transition:transform .45s cubic-bezier(.2,.7,.2,1);
}
.service-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px -24px rgba(20,18,14,.45);
  z-index:2;
}
.service-card:hover::before{transform:scaleY(1)}
.service-num{
  display:block;
  font-family:var(--serif);
  font-size:13px;
  letter-spacing:.14em;
  color:var(--gold-text);
  margin-bottom:18px;
}

/* Hervorgehobenes Angebot */
.service-card-highlight{
  background:#12120f;
  padding:46px 44px;
  color:#efe9df;
  grid-column:1 / -1;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.service-card-highlight .service-num{color:#bda16e}
.service-card-highlight h3{color:#fff;font-size:30px;margin-bottom:14px}
.service-card-highlight p{color:#c2bcb0;max-width:60ch;font-size:15px;line-height:1.8}
.service-card-highlight::before{background:#bda16e}
.service-flag{
  display:inline-block;
  align-self:flex-start;
  margin-bottom:12px;
  padding:5px 10px;
  border:1px solid rgba(189,161,110,.55);
  color:#d8c39a;
  font-size:9px;
  letter-spacing:.2em;
  font-weight:600;
}
.service-card h3{
  font-family:var(--serif);
  font-weight:400;
  font-size:22px;
  line-height:1.25;
  margin:0 0 12px;
  color:var(--ink);
}
.service-card p{
  margin:0;
  font-size:14.5px;
  line-height:1.75;
  color:#54504a;
}
@media(max-width:1000px){
  .service-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .service-grid{grid-template-columns:1fr}
  .service-card{padding:26px 22px 24px}
}


/* Fahrzeugkarten: Kapazitaet und Direktkontakt */
.vehicle-spec{
  display:flex;
  flex-wrap:wrap;
  gap:10px 22px;
  margin:18px 0 20px;
  padding-top:16px;
  border-top:1px solid #e3ddd3;
}
.vehicle-spec span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-size:14px;
  font-weight:600;
  color:#2b2825;
}
.vehicle-spec b{font-weight:400;color:#6f6a63}
.vehicle-spec svg{width:16px;height:16px;fill:var(--gold-text);flex:none}
.vehicle-actions{display:flex;flex-wrap:wrap;gap:9px}
.btn-vehicle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  padding:0 18px;
  font-size:13px;
  font-weight:600;
  letter-spacing:.01em;
  background:#bda16e;
  color:#141210;
  border:1px solid #bda16e;
  transition:background .3s ease,border-color .3s ease,color .3s ease;
}
.btn-vehicle:hover{background:#a98d5c;border-color:#a98d5c}
.btn-vehicle-wa{
  background:transparent;
  color:#2b2825;
  border-color:#cfc7ba;
}
.btn-vehicle-wa:hover{background:#141210;border-color:#141210;color:#fff}
.btn-vehicle-wa svg{width:15px;height:15px;fill:currentColor}
@media(max-width:640px){
  .service-card-highlight h3{font-size:21px}
  .vehicle-actions .btn-vehicle{flex:1 1 100%}
}

/* ------------------------------------------------------------------
   BUCHUNGSSTRECKE
   Drei Schritte statt einem langen Formular. Jeder Schritt passt
   ohne Scrollen auf einen Handybildschirm.
   ------------------------------------------------------------------ */
.booking-progress{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
  list-style:none;
  margin:0 0 26px;
  padding:0 0 20px;
  border-bottom:1px solid var(--line);
}
.booking-progress li{
  display:flex;
  align-items:center;
  gap:9px;
  font-size:12px;
  color:#645f58;
  transition:color .3s ease;
}
.booking-progress li span{
  display:grid;
  place-items:center;
  width:26px;height:26px;
  flex:none;
  border:1px solid var(--line);
  border-radius:50%;
  font-size:12px;
  font-weight:600;
  transition:background .3s ease,color .3s ease,border-color .3s ease;
}
.booking-progress li b{font-weight:500}
.booking-progress li.is-active{color:var(--ink)}
.booking-progress li.is-active span{
  background:var(--ink);
  border-color:var(--ink);
  color:#fff;
}
.booking-progress li.is-done span{
  background:var(--gold-line);
  border-color:var(--gold-line);
  color:#141210;
}
.booking-q{
  font-family:var(--serif);
  font-weight:400;
  font-size:25px;
  line-height:1.2;
  margin:0 0 22px;
  color:var(--ink);
}
.booking-step[hidden]{display:none}
.booking-step.is-active{animation:schrittEin .32s cubic-bezier(.2,.7,.2,1)}
@keyframes schrittEin{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:none}
}
.booking-nav{display:flex;gap:10px;margin-top:22px}
.btn-step{
  min-height:52px;
  padding:0 26px;
  font-size:14px;
  font-weight:600;
  border:1px solid var(--ink);
  background:var(--ink);
  color:#fff;
  flex:1;
  transition:background .3s ease;
}
.btn-step:hover{background:#2c2c2c}
.btn-step-back{
  background:transparent;
  color:var(--ink);
  border-color:var(--line);
  flex:0 0 auto;
  padding:0 20px;
}
.btn-step-back:hover{background:#efebe4}
.booking .btn-form{flex:1;margin:0}
.field-error{border-color:#b5443a !important}
.field-hint{
  display:block;
  margin-top:6px;
  font-size:12px;
  color:#b5443a;
}

/* Schnelleinstieg im Kopfbereich */
.quick-book{
  margin-top:34px;
  max-width:640px;
  padding:20px;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.6);
  box-shadow:0 22px 50px -28px rgba(0,0,0,.7);
}
.quick-title{
  margin:0 0 14px;
  font-size:12px;
  letter-spacing:.16em;
  font-weight:600;
  color:var(--gold-text);
  text-transform:uppercase;
}
.quick-fields{
  display:grid;
  grid-template-columns:1fr 1fr .8fr;
  gap:10px;
}
.quick-fields label{margin:0}
.quick-fields label>span{color:#4a4741;font-size:11px}
.btn-quick{
  width:100%;
  min-height:52px;
  margin-top:12px;
  background:var(--gold-line);
  color:#141210;
  border:1px solid var(--gold-line);
  font-size:14px;
  font-weight:600;
  transition:background .3s ease;
}
.btn-quick:hover{background:#a98d5c}

@media(max-width:900px){
  .quick-fields{grid-template-columns:1fr}
  .quick-book{margin-top:26px;padding:18px}
  .booking-progress li b{display:none}
  .booking-progress{grid-template-columns:repeat(3,auto);justify-content:start;gap:14px}
  .booking-q{font-size:22px}
  .booking-nav{flex-wrap:wrap}
  .btn-step,.booking .btn-form{flex:1 1 100%}
  .btn-step-back{order:2;flex:1 1 100%}
}


/* ------------------------------------------------------------------
   HANDY-ANSICHT
   Am echten Geraet geprueft (375 Pixel Breite), nicht aus Regeln abgeleitet.
   Behoben: Kopfzeile ueberlappte die Ueberschrift, WhatsApp und Telegram
   standen doppelt, Kopfbereich war ueberladen.
   ------------------------------------------------------------------ */
@media(max-width:720px){
  /* Kopfzeile bleibt oben stehen und bekommt einen eigenen Grund,
     damit sie nicht mehr in die Ueberschrift laeuft. */
  .header{
    position:sticky;
    background:rgba(10,10,11,.92);
    backdrop-filter:blur(10px);
    border-bottom:1px solid rgba(255,255,255,.1);
  }
  .nav{height:62px;gap:12px}
  .brand-monogram{width:34px;height:34px;font-size:12px}
  .brand-copy strong{font-size:13px;letter-spacing:.16em}
  .language-switcher{gap:0}
  .lang-btn{padding:7px 7px;font-size:10px}

  /* Der Kopfbereich beginnt jetzt unter der Kopfzeile statt darunter zu liegen. */
  .hero{
    min-height:0;
    align-items:stretch;
    padding-top:26px;
  }
  .hero-inner{padding-bottom:38px}
  .hero-eyebrow{gap:9px}
  .hero-eyebrow span{width:24px}
  .hero-eyebrow p{font-size:10px;letter-spacing:.16em}
  .hero h1{margin:14px 0 14px}
  .hero-text{font-size:15px;line-height:1.6;max-width:none;margin-bottom:4px}

  /* WhatsApp und Telegram stehen bereits in der unteren Leiste.
     Im Kopfbereich bleibt nur die eine wichtige Handlung. */
  .hero-cta{display:block;margin-top:20px}
  .hero-cta .btn-glass{display:none}
  .hero-cta .btn-primary{width:100%;min-height:54px}

  .quick-book{margin-top:20px}
  .hero-facts{
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-top:28px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.16);
  }
  .hero-facts strong{font-size:19px}
  .hero-facts span{font-size:10px;line-height:1.35}
}

@media(max-width:430px){
  .brand-copy small{display:none}
  .hero-facts strong{font-size:17px}
  .quick-book{padding:16px}
  .service-card{padding:24px 20px 22px}
  .service-card h3{font-size:20px}
  .service-card-highlight{padding:30px 22px}
  .service-card-highlight h3{font-size:22px}
  .vehicle-sales-body{padding:22px 20px}
  .request-form{padding:20px 18px}
}


/* ------------------------------------------------------------------
   HERVORGEHOBENES ANGEBOT — Textfarben
   Muss am Ende und mit hoeherer Gewichtung stehen: die allgemeinen
   Kartenregeln stehen weiter oben und wuerden sonst gewinnen.
   Folge waere schwarze Schrift auf schwarzem Grund.
   ------------------------------------------------------------------ */
.service-grid .service-card.service-card-highlight{
  background:#12120f;
  color:#e9e3d8;
}
.service-grid .service-card.service-card-highlight h3{
  color:#ffffff;
  font-size:30px;
  line-height:1.18;
  margin:0 0 14px;
}
.service-grid .service-card.service-card-highlight p{
  color:#c6c0b4;
  font-size:15px;
  line-height:1.8;
  max-width:60ch;
}
.service-grid .service-card.service-card-highlight .service-num{color:#bda16e}
.service-grid .service-card.service-card-highlight:hover{background:#171713}
@media(max-width:430px){
  .service-grid .service-card.service-card-highlight h3{font-size:22px}
}

/* ------------------------------------------------------------------
   EINWILLIGUNGSBANNER
   Erscheint unten, verdeckt die feste Buchungsleiste auf dem Handy
   nicht dauerhaft und verschwindet nach der Entscheidung.
   Beide Schaltflaechen sind bewusst gleich gross und gleich kraeftig.
   ------------------------------------------------------------------ */
.consent{
  position:fixed;
  left:0;right:0;bottom:0;
  z-index:120;
  background:#0a0a0b;
  border-top:1px solid rgba(255,255,255,.14);
  color:#fff;
  box-shadow:0 -18px 40px rgba(0,0,0,.45);
}
.consent-inner{
  width:min(calc(100% - 48px),var(--max));
  margin-inline:auto;
  padding:22px 0;
  display:grid;
  grid-template-columns:1fr auto;
  gap:26px;
  align-items:center;
}
.consent-copy strong{
  display:block;
  font-family:var(--serif);
  font-size:18px;
  font-weight:400;
  margin-bottom:7px;
}
.consent-copy p{
  margin:0 0 8px;
  font-size:13px;
  line-height:1.65;
  color:#cfcfcf;
  max-width:70ch;
}
.consent-copy a{
  font-size:12px;
  color:var(--gold-light);
  border-bottom:1px solid rgba(216,195,154,.45);
  padding-bottom:2px;
}
.consent-copy a:hover{color:#fff;border-bottom-color:#fff}
.consent-actions{
  display:flex;
  gap:11px;
  flex-shrink:0;
}
.consent-btn{
  min-height:48px;
  padding:0 22px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  white-space:nowrap;
}
.consent-deny{
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,.55);
}
.consent-deny:hover{background:rgba(255,255,255,.12)}
.consent-allow{
  background:#fff;
  color:#101010;
  border:1px solid #fff;
}
.consent-allow:hover{background:var(--gold-light);border-color:var(--gold-light)}

.footer-linkbtn{
  background:none;
  border:0;
  padding:0;
  font:inherit;
  color:inherit;
  cursor:pointer;
  text-decoration:none;
}
.footer-linkbtn:hover{color:#fff}

@media(max-width:900px){
  .consent-inner{
    width:min(calc(100% - 28px),var(--max));
    grid-template-columns:1fr;
    gap:16px;
    padding:18px 0;
  }
  .consent-actions{flex-direction:column}
  .consent-btn{width:100%}
  .consent-copy p{font-size:12.5px}
  /* Solange das Banner steht, ist die Buchungsleiste ausgeblendet.
     Zwei feste Leisten uebereinander verdecken sonst den halben Bildschirm. */
  body.consent-open .mobile-bar{display:none}
}
