/* =========================================================
   STAUFENRENT — BRAND-STYLESHEET FUER DIE WEBSITE
   Quelle der Tokens: brand-kit/tokens.css (kanonisch)
   Quelle der .sr-*-Komponenten: staufenrent-design-system/dist/styles.css
   Marke: Schwarz #0D0D0F / Gold #C9A84C · Archivo + Inter + Space Mono · KANTIG

   Regeln (memory/feedback_staufenrent_brand_look.md):
   - Logo IMMER das echte Zeichen (/marketing/logo-header.png), nie ein Monogramm
   - NIE Playfair Display / DM Sans
   - Kein runder Radius ausser --sr-radius-1/2 (2px/4px)
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800;900&family=Inter:wght@400;500;600&family=Space+Mono:wght@400;700&display=swap');

/* ---------------------------------------------------------
   1 · TOKENS  (1:1 aus brand-kit/tokens.css)
   --------------------------------------------------------- */
:root{
  --sr-black:#0D0D0F; --sr-ink:#121216; --sr-ink-2:#0A0A0C; --sr-ink-3:#16161A;
  --sr-gold:#C9A84C; --sr-gold-bright:#E2C66E; --sr-gold-deep:#8E7430;
  --sr-paper:#F4F1EA; --sr-paper-line:#E4DECF; --sr-muted:#8A8678; --sr-white:#FFFFFF;

  --sr-bg:var(--sr-black); --sr-surface:var(--sr-ink); --sr-surface-2:var(--sr-ink-3);
  --sr-text:var(--sr-paper); --sr-text-dim:var(--sr-muted);
  --sr-accent:var(--sr-gold); --sr-accent-bright:var(--sr-gold-bright); --sr-on-accent:var(--sr-black);
  --sr-border:rgba(244,241,234,.10); --sr-border-strong:rgba(201,168,76,.55);

  --sr-font-display:'Archivo',system-ui,sans-serif;
  --sr-font-body:'Inter',system-ui,sans-serif;
  --sr-font-mono:'Space Mono',ui-monospace,monospace;

  --sr-display:clamp(3.6rem,12vw,9rem);
  /* Untergrenze 2rem statt 2.6rem: bei 375px Viewport gewinnt sonst der
     min-Wert und lange Caps-Woerter ("AUTOVERMIETUNG") laufen aus dem Bild. */
  --sr-h1:clamp(2rem,7vw,5rem);
  --sr-h2:clamp(1.9rem,4.5vw,3rem);
  --sr-h3:clamp(1.25rem,2.4vw,1.65rem);
  --sr-text-lg:1.18rem; --sr-text-base:1rem; --sr-text-sm:.86rem; --sr-text-xs:.72rem;

  --sr-tracking-wide:.04em; --sr-tracking-label:.18em;
  --sr-leading-tight:1.02; --sr-leading-body:1.6;

  --sr-1:4px; --sr-2:8px; --sr-3:12px; --sr-4:16px; --sr-5:24px;
  --sr-6:32px; --sr-7:48px; --sr-8:64px; --sr-9:96px; --sr-10:128px;

  --sr-radius-0:0; --sr-radius-1:2px; --sr-radius-2:4px;

  --sr-shadow-gold:0 12px 30px -10px rgba(201,168,76,.55);
  --sr-shadow-card:0 18px 42px -18px rgba(0,0,0,.72);

  --sr-ease:cubic-bezier(.16,1,.3,1);
  --sr-dur-fast:.2s; --sr-dur:.35s; --sr-dur-slow:.6s;

  --sr-maxw:1200px;
  --sr-gutter:clamp(20px,5vw,64px);

  /* ---- Alias-Variablen der Alt-Seiten ----
     Standort- und Blog-Seiten definierten diese Namen frueher in ihrem
     eigenen <style>-Block und nutzen sie teilweise in Inline-Styles
     (z. B. style="color:var(--gold)"). Nach dem Ausbau des Blocks muessen
     sie hier weiterleben, sonst faerben sich Inline-Styles auf initial. */
  --gold:var(--sr-gold);
  --gold2:var(--sr-gold-deep);
  --gold-soft:var(--sr-gold-bright);
  --bg:var(--sr-black);
  --dark:var(--sr-ink-2);
  --dark2:var(--sr-ink-2);
  --mid:var(--sr-ink-3);
  --bg-soft:var(--sr-ink-3);
  --bg-card:var(--sr-ink);
  --card:var(--sr-ink);
  --card2:var(--sr-ink-3);
  --text:var(--sr-paper);
  --white:var(--sr-paper);
  --soft:var(--sr-muted);
  --muted:var(--sr-muted);
  --text-muted:var(--sr-muted);
  --border:var(--sr-border);
  --border2:rgba(244,241,234,.06);
}

/* ---------------------------------------------------------
   2 · BASIS
   --------------------------------------------------------- */
*{box-sizing:border-box;margin:0;padding:0;}

body{
  background:var(--sr-bg);
  color:var(--sr-text);
  font-family:var(--sr-font-body);
  line-height:var(--sr-leading-body);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

h1,h2,h3,h4{
  font-family:var(--sr-font-display);
  font-weight:900;
  color:var(--sr-paper);
  line-height:1.05;
  letter-spacing:-.01em;
  /* Lange Einzelwoerter wie "AUTOVERMIETUNG" sprengen in Archivo Black sonst
     den Viewport (gemessen: 438px Textbreite bei 371px Viewport).
     KEIN hyphens:auto — das trennte "EISLINGEN" zu "EIS-LINGEN", obwohl am
     Leerzeichen davor genug Platz war. break-word greift nur im Notfall. */
  overflow-wrap:break-word;
}

a{color:var(--sr-gold);text-decoration:none;transition:color var(--sr-dur-fast);}
a:hover{color:var(--sr-gold-bright);}

img{max-width:100%;}

.sr-container{max-width:var(--sr-maxw);margin:0 auto;padding:0 var(--sr-gutter);}

/* ---------------------------------------------------------
   3 · KOMPONENTEN AUS DEM DESIGN-SYSTEM  (dist/styles.css)
   --------------------------------------------------------- */
.sr-btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--sr-font-display);font-weight:700;letter-spacing:.02em;cursor:pointer;border:0;white-space:nowrap;font-size:14px;padding:13px 22px;transition:transform .2s var(--sr-ease),background .2s,color .2s,box-shadow .2s,border-color .2s;}
.sr-btn:hover{transform:translateY(-2px);}
.sr-btn--gold{background:var(--sr-gold);color:var(--sr-on-accent);}
.sr-btn--gold:hover{background:var(--sr-gold-bright);box-shadow:var(--sr-shadow-gold);color:var(--sr-on-accent);}
.sr-btn--ghost{background:transparent;color:var(--sr-paper);border:1px solid var(--sr-border-strong);}
.sr-btn--ghost:hover{border-color:var(--sr-gold);color:var(--sr-gold-bright);}
.sr-btn--dark{background:var(--sr-ink-3);color:var(--sr-white);}
.sr-btn--dark:hover{background:#1f1f25;color:var(--sr-white);}
.sr-btn--lg{font-size:15px;padding:16px 30px;}

.sr-badge{display:inline-flex;align-items:center;gap:7px;font-family:var(--sr-font-mono);font-weight:700;text-transform:uppercase;letter-spacing:.18em;font-size:10px;color:var(--sr-gold-bright);}
.sr-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--sr-gold);}

.sr-pill{display:inline-flex;align-items:center;font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.04em;color:var(--sr-black);background:var(--sr-gold);padding:5px 12px;font-weight:700;text-transform:uppercase;}

.sr-eyebrow{font-family:var(--sr-font-mono);font-weight:700;text-transform:uppercase;letter-spacing:var(--sr-tracking-label);font-size:var(--sr-text-xs);color:var(--sr-gold-bright);display:inline-flex;align-items:center;gap:10px;}
.sr-eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--sr-gold);}

.sr-section-heading{display:flex;flex-direction:column;gap:12px;}
.sr-section-heading__title{font-family:var(--sr-font-display);font-weight:900;font-size:var(--sr-h2);line-height:1.05;letter-spacing:-.01em;color:var(--sr-paper);margin:0;}
.sr-section-heading__lede{color:var(--sr-text-dim);max-width:62ch;font-size:var(--sr-text-lg);font-family:var(--sr-font-body);margin:0;line-height:var(--sr-leading-body);}

.sr-logo{display:inline-flex;align-items:center;gap:12px;}
.sr-logo__mark{display:block;height:38px;width:auto;}
.sr-logo__word{font-family:var(--sr-font-display);font-weight:900;text-transform:uppercase;letter-spacing:.05em;font-size:1.15rem;line-height:1;color:var(--sr-paper);}
.sr-logo__word span{color:var(--sr-gold);}

/* ---------------------------------------------------------
   4 · NAVIGATION
   --------------------------------------------------------- */
.sr-nav{
  position:sticky;top:0;z-index:50;
  background:rgba(13,13,15,.92);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--sr-border);
}
.sr-nav__inner{
  max-width:var(--sr-maxw);margin:0 auto;
  padding:var(--sr-3) var(--sr-gutter);
  display:flex;align-items:center;justify-content:space-between;gap:var(--sr-4);
}
.sr-nav__links{display:flex;align-items:center;gap:var(--sr-5);flex-wrap:wrap;justify-content:flex-end;}
.sr-nav__links a{
  font-family:var(--sr-font-mono);font-size:11px;text-transform:uppercase;
  letter-spacing:.14em;color:var(--sr-text-dim);
}
.sr-nav__links a:hover{color:var(--sr-gold);}
.sr-nav__cta{
  background:var(--sr-gold);color:var(--sr-black) !important;
  font-family:var(--sr-font-display);font-weight:800;font-size:13px;
  letter-spacing:.02em;padding:10px 18px;text-transform:none !important;
}
.sr-nav__cta:hover{background:var(--sr-gold-bright);color:var(--sr-black) !important;}

/* ---------------------------------------------------------
   5 · HERO (Textseiten, kein Vollbild-Foto)
   --------------------------------------------------------- */
.sr-page-hero{
  padding:var(--sr-9) 0 var(--sr-8);
  border-bottom:1px solid var(--sr-border);
  background:
    radial-gradient(circle at 78% 25%, rgba(201,168,76,.16), transparent 58%),
    radial-gradient(circle at 12% 85%, rgba(201,168,76,.07), transparent 52%),
    var(--sr-bg);
}
.sr-breadcrumbs{
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--sr-text-dim);margin-bottom:var(--sr-5);
}
.sr-breadcrumbs a{color:var(--sr-text-dim);}
.sr-breadcrumbs a:hover{color:var(--sr-gold);}
.sr-page-hero h1{
  font-size:var(--sr-h1);text-transform:uppercase;
  margin:var(--sr-4) 0 var(--sr-4);max-width:16ch;
}
.sr-page-hero h1 .sr-gold{color:var(--sr-gold);}
.sr-lead{
  font-size:var(--sr-text-lg);color:var(--sr-text-dim);
  max-width:64ch;margin-bottom:var(--sr-6);
}

/* Kantige Fakten-Chips (ersetzen die runden Pills) */
.sr-facts{display:flex;flex-wrap:wrap;gap:var(--sr-2);margin-bottom:var(--sr-6);}
.sr-fact{
  display:inline-flex;align-items:baseline;gap:8px;
  border:1px solid var(--sr-border);border-left:2px solid var(--sr-gold);
  background:var(--sr-surface);padding:9px 14px;
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--sr-text-dim);
}
.sr-fact strong{color:var(--sr-gold);font-weight:700;font-size:13px;letter-spacing:.02em;}

.sr-actions{display:flex;gap:var(--sr-3);flex-wrap:wrap;}

/* ---------------------------------------------------------
   6 · SECTIONS
   --------------------------------------------------------- */
.sr-section{padding:var(--sr-8) 0;}
.sr-section--alt{background:var(--sr-surface-2);}
.sr-section h2{font-size:var(--sr-h2);text-transform:uppercase;margin-bottom:var(--sr-4);}
.sr-section-lead{color:var(--sr-text-dim);font-size:1.05rem;max-width:64ch;margin-bottom:var(--sr-7);}

.sr-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--sr-7);align-items:start;}
.sr-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sr-5);}

/* ---------------------------------------------------------
   7 · TARIF-TABELLE
   --------------------------------------------------------- */
.sr-table-wrap{overflow-x:auto;border:1px solid var(--sr-border);background:var(--sr-surface);}
table.sr-table{width:100%;border-collapse:collapse;min-width:620px;}
table.sr-table th,table.sr-table td{padding:var(--sr-4) var(--sr-5);text-align:left;border-bottom:1px solid var(--sr-border);}
table.sr-table th{
  font-family:var(--sr-font-mono);font-size:10px;text-transform:uppercase;
  letter-spacing:var(--sr-tracking-label);color:var(--sr-gold-bright);font-weight:700;
  background:rgba(201,168,76,.05);
}
table.sr-table td{color:var(--sr-text-dim);font-size:14px;}
table.sr-table td.sr-t-key{color:var(--sr-paper);font-family:var(--sr-font-display);font-weight:700;font-size:14px;}
table.sr-table td.sr-t-price{
  font-family:var(--sr-font-display);font-weight:900;font-size:18px;
  color:var(--sr-paper);white-space:nowrap;
}
table.sr-table td.sr-t-price .sr-net{
  display:block;font-family:var(--sr-font-mono);font-weight:400;
  font-size:10px;letter-spacing:.06em;color:var(--sr-text-dim);margin-top:2px;
}
table.sr-table td.sr-t-price .sr-free{color:var(--sr-gold);font-size:15px;text-transform:uppercase;}
table.sr-table tr:last-child td{border-bottom:none;}
table.sr-table tr.sr-t-hl td{background:rgba(201,168,76,.06);}
.sr-note{
  color:var(--sr-text-dim);font-size:12.5px;margin-top:var(--sr-4);
  max-width:92ch;line-height:1.7;
}

/* ---------------------------------------------------------
   8 · KARTEN
   --------------------------------------------------------- */
.sr-card{
  background:var(--sr-surface);border:1px solid var(--sr-border);
  padding:var(--sr-6);position:relative;
  transition:border-color var(--sr-dur) var(--sr-ease),transform var(--sr-dur) var(--sr-ease);
}
.sr-card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--sr-gold);
  transform:scaleY(0);transform-origin:bottom;transition:transform var(--sr-dur) var(--sr-ease);
}
.sr-card:hover{border-color:var(--sr-border-strong);transform:translateY(-3px);}
.sr-card:hover::before{transform:scaleY(1);}
.sr-card h3{font-size:1.35rem;text-transform:uppercase;margin-bottom:var(--sr-2);}
.sr-card p{color:var(--sr-text-dim);font-size:14.5px;}
.sr-card__cls{
  display:inline-block;font-family:var(--sr-font-mono);font-size:10px;
  letter-spacing:var(--sr-tracking-label);text-transform:uppercase;
  color:var(--sr-gold-bright);margin-bottom:var(--sr-3);
}
.sr-card__spec{color:var(--sr-text-dim);font-size:13px;margin-bottom:var(--sr-5);font-family:var(--sr-font-mono);letter-spacing:.04em;}
.sr-card__price{
  font-family:var(--sr-font-display);font-weight:900;font-size:1.9rem;
  color:var(--sr-gold);margin-bottom:var(--sr-4);line-height:1;
}
.sr-card__price small{
  font-family:var(--sr-font-mono);font-size:11px;font-weight:400;
  color:var(--sr-text-dim);letter-spacing:.06em;display:block;margin-top:6px;
}
.sr-card ul{list-style:none;margin:var(--sr-5) 0;}
.sr-card ul li{
  padding:9px 0;color:var(--sr-text-dim);font-size:14px;
  border-bottom:1px solid rgba(244,241,234,.05);
}
.sr-card ul li::before{content:"—";color:var(--sr-gold);font-weight:700;margin-right:10px;}

/* Aufzaehlung mit Gold-Punkt */
.sr-dotlist{list-style:none;}
.sr-dotlist li{
  display:flex;align-items:flex-start;gap:14px;padding:var(--sr-4) 0;
  color:var(--sr-text);font-size:15.5px;border-bottom:1px solid var(--sr-border);
}
.sr-dotlist li::before{
  content:"";width:7px;height:7px;background:var(--sr-gold);
  transform:rotate(45deg);margin-top:9px;flex-shrink:0;
}

.sr-text-block{max-width:62ch;}
.sr-text-block p{color:var(--sr-text-dim);font-size:16px;margin-bottom:var(--sr-4);}

/* ---------------------------------------------------------
   9 · FAQ
   --------------------------------------------------------- */
.sr-faq details{
  border:1px solid var(--sr-border);background:var(--sr-surface);
  margin-bottom:var(--sr-2);padding:0 var(--sr-5);
  transition:border-color var(--sr-dur-fast);
}
.sr-faq details[open]{border-color:var(--sr-border-strong);}
.sr-faq summary{
  cursor:pointer;padding:var(--sr-4) 0;list-style:none;
  font-family:var(--sr-font-display);font-weight:700;font-size:15px;color:var(--sr-paper);
  display:flex;align-items:baseline;gap:12px;
}
.sr-faq summary::-webkit-details-marker{display:none;}
.sr-faq summary::before{content:"+";color:var(--sr-gold);font-weight:900;font-size:16px;flex:none;}
.sr-faq details[open] summary::before{content:"–";}
.sr-faq details p{color:var(--sr-text-dim);padding:0 0 var(--sr-4) 28px;font-size:14.5px;}

/* ---------------------------------------------------------
   10 · CTA-BAND
   --------------------------------------------------------- */
.sr-cta{
  background:linear-gradient(135deg,rgba(201,168,76,.10),rgba(201,168,76,.02));
  border-top:1px solid var(--sr-border);border-bottom:1px solid var(--sr-border);
  text-align:center;
}
.sr-cta h2{margin-bottom:var(--sr-4);}
.sr-cta p{color:var(--sr-text-dim);font-size:1.05rem;margin-bottom:var(--sr-6);}
.sr-cta .sr-actions{justify-content:center;}

/* ---------------------------------------------------------
   11 · FOOTER
   --------------------------------------------------------- */
.sr-footer{
  background:var(--sr-ink-2);padding:var(--sr-8) 0 var(--sr-5);
  border-top:1px solid var(--sr-border);
  color:var(--sr-text-dim);font-size:13.5px;
}
.sr-footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--sr-6);margin-bottom:var(--sr-6);}
.sr-footer h4{
  font-family:var(--sr-font-mono);font-size:10px;font-weight:700;
  text-transform:uppercase;letter-spacing:var(--sr-tracking-label);
  color:var(--sr-gold-bright);margin-bottom:var(--sr-4);
}
.sr-footer ul{list-style:none;}
.sr-footer ul li{margin-bottom:var(--sr-2);}
.sr-footer ul li a{color:var(--sr-text-dim);}
.sr-footer ul li a:hover{color:var(--sr-gold);}
.sr-footer__brand .sr-logo{margin-bottom:var(--sr-3);}
.sr-footer__bottom{
  border-top:1px solid var(--sr-border);padding-top:var(--sr-5);text-align:center;
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.06em;
}

/* ---------------------------------------------------------
   12 · KARTE (OpenStreetMap-Einbettung)
   --------------------------------------------------------- */
.sr-map{border:1px solid var(--sr-border);aspect-ratio:16/9;overflow:hidden;}
.sr-map iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(.6) contrast(1.05) brightness(.85);}

/* ---------------------------------------------------------
   13 · RESPONSIVE
   --------------------------------------------------------- */
@media (max-width:900px){
  .sr-grid-3{grid-template-columns:1fr 1fr;}
}
@media (max-width:768px){
  .sr-grid-2{grid-template-columns:1fr;gap:var(--sr-6);}
  .sr-footer__grid{grid-template-columns:1fr 1fr;}
  .sr-page-hero{padding:var(--sr-7) 0 var(--sr-6);}
  .sr-page-hero h1{max-width:none;}
}
@media (max-width:640px){
  .sr-grid-3{grid-template-columns:1fr;}
  .sr-nav__links a:not(.sr-nav__cta){display:none;}
  .sr-logo__word{display:none;}
  .sr-actions .sr-btn{width:100%;justify-content:center;}
}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms !important;transition-duration:.01ms !important;}
  .sr-btn:hover,.sr-card:hover{transform:none;}
}

/* =========================================================
   14 · KOMPATIBILITAET — STANDORT-SEITEN
   Die 12 standorte/autovermietung-*.html teilen eine Vorlage mit
   eigenen Klassennamen. Statt 12× das Markup umzubauen (Risiko fuer
   die bestehenden Rankings) werden die Alt-Klassen hier im Brand-Look
   gerendert. Neue Seiten nutzen die .sr-*-Klassen von oben.
   ========================================================= */
.container{max-width:var(--sr-maxw);margin:0 auto;padding:0 var(--sr-gutter);}

header.nav{
  position:sticky;top:0;z-index:50;
  background:rgba(13,13,15,.92);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--sr-border);
}
.nav-inner{
  max-width:var(--sr-maxw);margin:0 auto;
  padding:var(--sr-3) var(--sr-gutter);
  display:flex;align-items:center;justify-content:space-between;gap:var(--sr-4);
}
.logo{
  display:inline-flex;align-items:center;gap:12px;
  font-family:var(--sr-font-display);font-weight:900;text-transform:uppercase;
  letter-spacing:.05em;font-size:1.15rem;color:var(--sr-paper);
}
.logo span{color:var(--sr-gold);}
.logo img,.sr-brand-mark{display:block;height:38px;width:auto;}
.nav-links{display:flex;align-items:center;gap:var(--sr-5);flex-wrap:wrap;justify-content:flex-end;}
.nav-links a{
  font-family:var(--sr-font-mono);font-size:11px;text-transform:uppercase;
  letter-spacing:.14em;color:var(--sr-muted);
}
.nav-links a:hover{color:var(--sr-gold);}
.cta-call{
  background:var(--sr-gold);color:var(--sr-black) !important;
  font-family:var(--sr-font-display);font-weight:800;font-size:13px;
  letter-spacing:.02em;padding:10px 18px;text-transform:none !important;
}
.cta-call:hover{background:var(--sr-gold-bright);color:var(--sr-black) !important;}

.hero{
  padding:var(--sr-9) 0 var(--sr-8);
  border-bottom:1px solid var(--sr-border);
  background:
    radial-gradient(circle at 78% 25%, rgba(201,168,76,.16), transparent 58%),
    radial-gradient(circle at 12% 85%, rgba(201,168,76,.07), transparent 52%),
    var(--sr-bg);
}
.breadcrumbs{
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--sr-muted);margin-bottom:var(--sr-5);
}
.breadcrumbs a{color:var(--sr-muted);}
.breadcrumbs a:hover{color:var(--sr-gold);}
.hero h1{font-size:var(--sr-h1);text-transform:uppercase;margin-bottom:var(--sr-4);}
.hero h1 span{color:var(--sr-gold);}
.hero .lead{font-size:var(--sr-text-lg);color:var(--sr-muted);max-width:64ch;margin-bottom:var(--sr-6);}

.hero-meta{display:flex;flex-wrap:wrap;gap:var(--sr-2);margin-bottom:var(--sr-6);}
.meta-pill{
  display:inline-flex;align-items:baseline;gap:8px;
  border:1px solid var(--sr-border);border-left:2px solid var(--sr-gold);
  background:var(--sr-surface);padding:9px 14px;border-radius:0;
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--sr-muted);
}
.meta-pill strong{color:var(--sr-gold);font-weight:700;font-size:13px;letter-spacing:.02em;}

.hero-cta{display:flex;gap:var(--sr-3);flex-wrap:wrap;}
.btn-primary,.btn-gold{
  display:inline-flex;align-items:center;gap:9px;border:0;cursor:pointer;
  background:var(--sr-gold);color:var(--sr-black);border-radius:0;
  font-family:var(--sr-font-display);font-weight:800;font-size:15px;
  letter-spacing:.02em;padding:16px 30px;white-space:nowrap;
  transition:transform .2s var(--sr-ease),background .2s,box-shadow .2s;
}
.btn-primary:hover,.btn-gold:hover{background:var(--sr-gold-bright);color:var(--sr-black);transform:translateY(-2px);box-shadow:var(--sr-shadow-gold);}
.btn-secondary{
  display:inline-flex;align-items:center;gap:9px;cursor:pointer;
  background:transparent;color:var(--sr-paper);border-radius:0;
  border:1px solid var(--sr-border-strong);
  font-family:var(--sr-font-display);font-weight:700;font-size:15px;
  letter-spacing:.02em;padding:16px 30px;white-space:nowrap;
  transition:transform .2s var(--sr-ease),border-color .2s,color .2s;
}
.btn-secondary:hover{border-color:var(--sr-gold);color:var(--sr-gold-bright);transform:translateY(-2px);}

section{padding:var(--sr-8) 0;}
section h2{font-family:var(--sr-font-display);font-weight:900;font-size:var(--sr-h2);text-transform:uppercase;margin-bottom:var(--sr-4);}
.section-lead{color:var(--sr-muted);font-size:1.05rem;max-width:64ch;margin-bottom:var(--sr-7);}

/* auto-fit, weil die Standort-Seiten seit 2026-07-25 drei Fahrzeuge zeigen */
.vehicles{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:var(--sr-5);}
.vehicle-card{
  background:var(--sr-surface);border:1px solid var(--sr-border);border-radius:0;
  padding:var(--sr-6);position:relative;
  transition:border-color var(--sr-dur) var(--sr-ease),transform var(--sr-dur) var(--sr-ease);
}
.vehicle-card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--sr-gold);
  transform:scaleY(0);transform-origin:bottom;transition:transform var(--sr-dur) var(--sr-ease);
}
.vehicle-card:hover{border-color:var(--sr-border-strong);transform:translateY(-3px);}
.vehicle-card:hover::before{transform:scaleY(1);}
.vehicle-card .badge{
  display:inline-block;background:none;border-radius:0;padding:0;margin-bottom:var(--sr-3);
  font-family:var(--sr-font-mono);font-size:10px;letter-spacing:var(--sr-tracking-label);
  text-transform:uppercase;color:var(--sr-gold-bright);
}
.vehicle-card h3{font-family:var(--sr-font-display);font-weight:900;font-size:1.35rem;text-transform:uppercase;margin-bottom:var(--sr-2);}
.vehicle-card .sub{color:var(--sr-muted);font-size:13px;margin-bottom:var(--sr-5);font-family:var(--sr-font-mono);letter-spacing:.04em;}
.vehicle-card .price{
  font-family:var(--sr-font-display);font-weight:900;font-size:1.9rem;
  color:var(--sr-gold);margin-bottom:var(--sr-4);line-height:1;
}
.vehicle-card .price small{
  font-family:var(--sr-font-mono);font-size:11px;font-weight:400;
  color:var(--sr-muted);letter-spacing:.06em;display:block;margin-top:6px;
}
.vehicle-card ul{list-style:none;margin:var(--sr-5) 0;}
.vehicle-card ul li{padding:9px 0;color:var(--sr-muted);font-size:14px;border-bottom:1px solid rgba(244,241,234,.05);}
.vehicle-card ul li:before{content:"—";color:var(--sr-gold);font-weight:700;margin-right:10px;}

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--sr-7);align-items:start;}
.text-block{max-width:62ch;}
.text-block p{color:var(--sr-muted);font-size:16px;margin-bottom:var(--sr-4);}
.highlights{color:var(--sr-muted);font-size:13px;margin-top:var(--sr-2);font-family:var(--sr-font-mono);letter-spacing:.04em;}

.use-cases ul{list-style:none;}
.use-cases li{
  display:flex;align-items:flex-start;gap:14px;padding:var(--sr-4) 0;
  color:var(--sr-text);font-size:15.5px;border-bottom:1px solid var(--sr-border);
}
.use-cases .dot{
  width:7px;height:7px;background:var(--sr-gold);border-radius:0;
  transform:rotate(45deg);margin-top:9px;flex-shrink:0;
}

.map-wrap{border:1px solid var(--sr-border);border-radius:0;aspect-ratio:16/9;overflow:hidden;}
.map-wrap iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(.6) contrast(1.05) brightness(.85);}

.cta-section{
  background:linear-gradient(135deg,rgba(201,168,76,.10),rgba(201,168,76,.02));
  border-top:1px solid var(--sr-border);border-bottom:1px solid var(--sr-border);
  text-align:center;
}
.cta-section h2{margin-bottom:var(--sr-4);}
.cta-section p{color:var(--sr-muted);font-size:1.05rem;margin-bottom:var(--sr-6);}

footer{
  background:var(--sr-ink-2);padding:var(--sr-8) 0 var(--sr-5);
  border-top:1px solid var(--sr-border);color:var(--sr-muted);font-size:13.5px;
}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--sr-6);margin-bottom:var(--sr-6);}
footer h4{
  font-family:var(--sr-font-mono);font-size:10px;font-weight:700;text-transform:uppercase;
  letter-spacing:var(--sr-tracking-label);color:var(--sr-gold-bright);margin-bottom:var(--sr-4);
}
footer ul{list-style:none;}
footer ul li{margin-bottom:var(--sr-2);}
footer ul li a{color:var(--sr-muted);}
footer ul li a:hover{color:var(--sr-gold);}
.footer-bottom{
  border-top:1px solid var(--sr-border);padding-top:var(--sr-5);text-align:center;
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.06em;
}

/* =========================================================
   15 · KOMPATIBILITAET — BLOG
   ========================================================= */
body > nav{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:var(--sr-4);
  padding:var(--sr-3) var(--sr-gutter);
  background:rgba(13,13,15,.92);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--sr-border);
}
body > nav .nav-links{list-style:none;display:flex;gap:var(--sr-5);align-items:center;}
.nav-cta{
  background:var(--sr-gold);color:var(--sr-black) !important;border-radius:0;
  font-family:var(--sr-font-display);font-weight:800;font-size:13px;
  padding:10px 18px;white-space:nowrap;
}
.nav-cta:hover{background:var(--sr-gold-bright);color:var(--sr-black) !important;}

.breadcrumb{
  max-width:820px;margin:0 auto;padding:var(--sr-5) var(--sr-gutter) 0;
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--sr-muted);
}
.breadcrumb a{color:var(--sr-muted);}
.breadcrumb a:hover{color:var(--sr-gold);}

.article-header{max-width:820px;margin:0 auto;padding:var(--sr-6) var(--sr-gutter) var(--sr-4);}
.article-header .tag,.tag{
  display:inline-block;background:var(--sr-gold);color:var(--sr-black);border-radius:0;
  font-family:var(--sr-font-mono);font-weight:700;font-size:10px;
  letter-spacing:var(--sr-tracking-label);text-transform:uppercase;padding:5px 12px;
}
.article-header h1{
  font-family:var(--sr-font-display);font-weight:900;text-transform:uppercase;
  font-size:var(--sr-h1);margin:var(--sr-4) 0;line-height:1.02;
}
.gold,.article-header h1 .gold{color:var(--sr-gold);}
.article-meta{
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--sr-muted);
}
.article-hero-img{width:100%;max-width:1100px;margin:var(--sr-5) auto;display:block;border:1px solid var(--sr-border);border-radius:0;}

.article-body{max-width:820px;margin:0 auto;padding:0 var(--sr-gutter) var(--sr-8);font-size:16.5px;color:var(--sr-muted);}
.article-body h2{
  font-family:var(--sr-font-display);font-weight:900;text-transform:uppercase;
  font-size:var(--sr-h3);color:var(--sr-paper);margin:var(--sr-7) 0 var(--sr-4);
}
.article-body h3{font-family:var(--sr-font-display);font-weight:800;font-size:1.2rem;color:var(--sr-paper);margin:var(--sr-6) 0 var(--sr-3);}
.article-body p{margin-bottom:var(--sr-4);line-height:1.75;}
.article-body ul,.article-body ol{margin:var(--sr-4) 0 var(--sr-4) var(--sr-5);}
.article-body li{margin-bottom:var(--sr-2);line-height:1.7;}
.article-body strong{color:var(--sr-paper);font-weight:600;}

.highlight-box{
  background:var(--sr-surface);border:1px solid var(--sr-border);
  border-left:2px solid var(--sr-gold);border-radius:0;
  padding:var(--sr-5) var(--sr-6);margin:var(--sr-6) 0;
}
.highlight-box h3{margin-top:0;color:var(--sr-gold);}

/* display:block + overflow-x macht die Tabelle selbst scrollbar — die Blog-Artikel
   haben keinen Wrapper um <table>, und 3 Spalten passen nicht in 375px. */
.cost-table{width:100%;border-collapse:collapse;margin:var(--sr-5) 0;font-size:14px;border:1px solid var(--sr-border);display:block;overflow-x:auto;}
.cost-table th{
  text-align:left;padding:var(--sr-3) var(--sr-4);background:rgba(201,168,76,.05);
  font-family:var(--sr-font-mono);font-size:10px;letter-spacing:var(--sr-tracking-label);
  text-transform:uppercase;font-weight:700;color:var(--sr-gold-bright);
  border-bottom:1px solid var(--sr-border);
}
.cost-table td{padding:var(--sr-3) var(--sr-4);border-bottom:1px solid rgba(244,241,234,.06);color:var(--sr-muted);}
.cost-table tr:last-child td{border-bottom:none;}
.cost-table .total td{color:var(--sr-paper);font-family:var(--sr-font-display);font-weight:900;background:rgba(201,168,76,.06);}

.article-cta{
  background:linear-gradient(135deg,rgba(201,168,76,.10),rgba(201,168,76,.02));
  border-top:1px solid var(--sr-border);border-bottom:1px solid var(--sr-border);
  padding:var(--sr-8) var(--sr-gutter);text-align:center;
}
.article-cta .cta-box{max-width:720px;margin:0 auto;}
.article-cta h2{font-family:var(--sr-font-display);font-weight:900;text-transform:uppercase;font-size:var(--sr-h2);margin-bottom:var(--sr-4);}
.article-cta p{color:var(--sr-muted);margin-bottom:var(--sr-6);}

.blog-footer{
  background:var(--sr-ink-2);border-top:1px solid var(--sr-border);
  padding:var(--sr-7) var(--sr-gutter);text-align:center;
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.06em;color:var(--sr-muted);
}
.blog-footer a{color:var(--sr-muted);}
.blog-footer a:hover{color:var(--sr-gold);}

/* Blog-Uebersicht */
.blog-header{max-width:var(--sr-maxw);margin:0 auto;padding:var(--sr-8) var(--sr-gutter) var(--sr-6);}
.blog-header h1{font-family:var(--sr-font-display);font-weight:900;text-transform:uppercase;font-size:var(--sr-h1);}
.blog-grid{
  max-width:var(--sr-maxw);margin:0 auto;padding:0 var(--sr-gutter) var(--sr-8);
  display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--sr-5);
}
.blog-card{
  background:var(--sr-surface);border:1px solid var(--sr-border);border-radius:0;
  overflow:hidden;position:relative;display:block;
  transition:border-color var(--sr-dur) var(--sr-ease),transform var(--sr-dur) var(--sr-ease);
}
.blog-card:hover{border-color:var(--sr-border-strong);transform:translateY(-3px);}
.blog-card-img{width:100%;height:180px;object-fit:cover;display:block;border-bottom:1px solid var(--sr-border);}
.blog-card-body{padding:var(--sr-5);}
.blog-card-body h2,.blog-card-body h3{
  font-family:var(--sr-font-display);font-weight:900;text-transform:uppercase;
  font-size:1.15rem;color:var(--sr-paper);margin:var(--sr-3) 0;
}
.blog-card-meta,.blog-card-tag{
  font-family:var(--sr-font-mono);font-size:10px;letter-spacing:var(--sr-tracking-label);
  text-transform:uppercase;color:var(--sr-muted);
}
.blog-card-tag{color:var(--sr-gold-bright);}
.read-more{font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sr-gold);}

/* =========================================================
   16 · KOMPATIBILITAET — STANDORTE-UEBERSICHT + BLOG-SONDERFAELLE
   ========================================================= */
.section{padding:var(--sr-8) 0;}
.bg-soft{background:var(--sr-ink-3);}
.section-header{margin-bottom:var(--sr-6);}
.section-header h2{font-family:var(--sr-font-display);font-weight:900;font-size:var(--sr-h2);text-transform:uppercase;margin-bottom:var(--sr-3);}
.section-header p{color:var(--sr-muted);font-size:1.05rem;max-width:64ch;}

.hero-pills{display:flex;flex-wrap:wrap;gap:var(--sr-2);margin-bottom:var(--sr-6);}
.pill{
  display:inline-flex;align-items:baseline;gap:8px;
  border:1px solid var(--sr-border);border-left:2px solid var(--sr-gold);
  background:var(--sr-surface);padding:9px 14px;border-radius:0;
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--sr-muted);
}
.pill strong{color:var(--sr-gold);font-weight:700;font-size:13px;letter-spacing:.02em;}

.city-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--sr-4);}
.city-card{
  display:block;position:relative;background:var(--sr-surface);
  border:1px solid var(--sr-border);border-radius:0;padding:var(--sr-5);
  transition:border-color var(--sr-dur) var(--sr-ease),transform var(--sr-dur) var(--sr-ease);
}
.city-card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--sr-gold);
  transform:scaleY(0);transform-origin:bottom;transition:transform var(--sr-dur) var(--sr-ease);
}
.city-card:hover{border-color:var(--sr-border-strong);transform:translateY(-3px);}
.city-card:hover::before{transform:scaleY(1);}
.city-card h3{
  font-family:var(--sr-font-display);font-weight:900;font-size:1.15rem;
  text-transform:uppercase;color:var(--sr-paper);margin-bottom:var(--sr-3);
}
.city-meta{display:flex;flex-wrap:wrap;gap:var(--sr-2);}
.city-meta .tag,.city-meta .tag-cost{
  display:inline-block;border-radius:0;padding:4px 10px;
  font-family:var(--sr-font-mono);font-size:10px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
}
.city-meta .tag{background:transparent;border:1px solid var(--sr-border);color:var(--sr-muted);}
.city-meta .tag-cost{background:var(--sr-gold);color:var(--sr-black);}
.arrow{position:absolute;right:var(--sr-5);top:var(--sr-5);color:var(--sr-gold);font-size:18px;}

.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--sr-5);}
.step{background:var(--sr-surface);border:1px solid var(--sr-border);padding:var(--sr-5);position:relative;}
.step-num{
  font-family:var(--sr-font-display);font-weight:900;font-size:2.2rem;line-height:1;
  color:var(--sr-gold);display:block;margin-bottom:var(--sr-3);
}
.step h3{font-family:var(--sr-font-display);font-weight:800;font-size:1.05rem;text-transform:uppercase;margin-bottom:var(--sr-2);}
.step p{color:var(--sr-muted);font-size:14px;}

.base-box{
  background:var(--sr-surface);border:1px solid var(--sr-border);
  border-left:2px solid var(--sr-gold);padding:var(--sr-6);
}
.base-box h2{font-size:var(--sr-h3);margin-bottom:var(--sr-3);}
.base-box p,.base-box address{color:var(--sr-muted);font-style:normal;font-size:15px;line-height:1.8;}

.cta-strip{
  background:linear-gradient(135deg,rgba(201,168,76,.10),rgba(201,168,76,.02));
  border-top:1px solid var(--sr-border);border-bottom:1px solid var(--sr-border);
  text-align:center;padding:var(--sr-8) 0;
}
.cta-strip h2{font-family:var(--sr-font-display);font-weight:900;font-size:var(--sr-h2);text-transform:uppercase;margin-bottom:var(--sr-4);}
.cta-strip p{color:var(--sr-muted);font-size:1.05rem;margin-bottom:var(--sr-6);}

/* Blog-Sonderfaelle */
.winner{color:var(--sr-gold) !important;font-family:var(--sr-font-display);font-weight:900;}
.route-card{
  background:var(--sr-surface);border:1px solid var(--sr-border);
  border-left:2px solid var(--sr-gold);padding:var(--sr-5);margin:var(--sr-5) 0;
}
.route-meta{
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--sr-gold-bright);margin-bottom:var(--sr-3);
}

@media (max-width:768px){
  .vehicles,.grid-2,.footer-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .hero{padding:var(--sr-7) 0 var(--sr-6);}
  .city-grid{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .nav-links a:not(.cta-call):not(.nav-cta){display:none;}
  body > nav .nav-links{display:none;}
  .hero-cta .btn-primary,.hero-cta .btn-secondary{width:100%;justify-content:center;}
}
