﻿
:root {
  --ld-bg: #070a0f;
  --ld-bg-soft: #0c1118;
  --ld-surface: #111821;
  --ld-surface-2: #151d27;
  --ld-card: #101721;
  --ld-card-hover: #141d29;
  --ld-text: #f4f7fb;
  --ld-text-soft: #d7dde6;
  --ld-muted: #9aa6b5;
  --ld-line: rgba(255,255,255,.105);
  --ld-line-strong: rgba(255,255,255,.16);
  --ld-accent: #7d8794;
  --ld-accent-2: #606a76;
  --ld-accent-soft: rgba(150,160,172,.13);
  --ld-success: #2fb475;
  --ld-radius: 22px;
  --ld-radius-sm: 14px;
  --ld-shadow: 0 24px 72px rgba(0,0,0,.36);
  --ld-shadow-soft: 0 14px 40px rgba(0,0,0,.22);
  --ld-max: 1220px;
  --ld-header: 88px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.lautz-premium-theme {
  margin: 0;
  color: var(--ld-text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  line-height: 1.65;
  background:
    linear-gradient(180deg, #06080c 0%, #0a0e14 42%, #070a0f 100%);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.lautz-premium-theme::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.5), transparent 70%);
}

a { color: inherit; }
a:focus-visible, button:focus-visible { outline: 3px solid rgba(150,160,172,.48); outline-offset: 3px; }
img { max-width: 100%; height: auto; }
.ld-container { width: min(var(--ld-max), calc(100% - 44px)); margin-inline: auto; }
.ld-skip-link { position:absolute; left:-999px; top:12px; background:#fff; color:#000; padding:10px 14px; border-radius:10px; z-index:999; }
.ld-skip-link:focus { left:12px; }

/* Header */
.ld-site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(7,10,15,.92);
  backdrop-filter: saturate(1.1) blur(16px);
  border-bottom: 1px solid var(--ld-line);
}
.admin-bar .ld-site-header { top: 32px; }
.ld-topbar { border-bottom: 1px solid rgba(255,255,255,.07); color: var(--ld-muted); font-size: 13px; }
.ld-topbar__inner, .ld-navbar { display:flex; align-items:center; justify-content:space-between; gap:22px; }
.ld-topbar__inner { min-height: 36px; }
.ld-topbar nav { display:flex; gap:18px; }
.ld-topbar a { color: var(--ld-text-soft); text-decoration:none; }
.ld-topbar a:hover { color: #fff; }
.ld-navbar { min-height: 82px; }
.ld-brand { display:flex; align-items:center; min-width: 216px; text-decoration:none; }
.ld-brand img { width: 236px; max-width: 34vw; display:block; filter: drop-shadow(0 10px 24px rgba(0,0,0,.38)); }
.ld-main-nav { display:flex; align-items:center; gap:2px; }
.ld-main-nav > a,
.ld-nav-dropdown > button {
  appearance:none;
  border:0;
  background:transparent;
  color: var(--ld-text-soft);
  font: 750 14px/1 Inter, ui-sans-serif, system-ui, sans-serif;
  text-decoration:none;
  padding: 12px 11px;
  border-radius: 12px;
  cursor:pointer;
  transition: color .18s ease, background .18s ease;
}
.ld-main-nav > a:hover,
.ld-nav-dropdown:hover > button,
.ld-nav-dropdown > button:focus-visible { color:#fff; background:rgba(255,255,255,.065); }
.ld-nav-dropdown { position:relative; }
.ld-nav-dropdown > button::after { content:""; display:inline-block; width:7px; height:7px; margin-left:8px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg) translateY(-2px); opacity:.65; }
.ld-nav-dropdown > div {
  position:absolute;
  top:calc(100% + 12px);
  left:0;
  min-width:270px;
  padding:8px;
  border:1px solid var(--ld-line);
  background:rgba(12,17,24,.98);
  box-shadow: var(--ld-shadow);
  border-radius:18px;
  opacity:0;
  transform:translateY(8px);
  pointer-events:none;
  transition:.18s ease;
}
.ld-nav-dropdown:hover > div,
.ld-nav-dropdown:focus-within > div { opacity:1; transform:translateY(0); pointer-events:auto; }
.ld-nav-dropdown a { display:block; text-decoration:none; color:var(--ld-text-soft); padding:12px 13px; border-radius:12px; font-weight:750; }
.ld-nav-dropdown a:hover { color:#fff; background: var(--ld-accent-soft); }
.ld-nav-cta, .ld-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border-radius: 12px;
  text-decoration:none;
  font-weight:850;
  letter-spacing:.01em;
  transition: transform .16s ease, background .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.ld-nav-cta { padding: 13px 17px; color:#fff; background:var(--ld-accent); box-shadow: 0 12px 26px rgba(150,160,172,.16); }
.ld-nav-cta:hover, .ld-btn:hover { transform: translateY(-1px); }
.ld-menu-toggle { display:none; background:rgba(255,255,255,.06); border:1px solid var(--ld-line); width:46px; height:46px; border-radius:14px; align-items:center; justify-content:center; flex-direction:column; gap:5px; }
.ld-menu-toggle span { width:20px; height:2px; background:#fff; border-radius:4px; }
.ld-mobile-panel, .ld-mobile-backdrop { display:none; }

/* Core layout */
.ld-site-main { min-height:65vh; }
.ld-page { padding: 42px 0 84px; }
.ld-section { padding: 48px 0; }
.ld-section-head { max-width: 780px; margin: 0 0 28px; }
.ld-section-head h2, .ld-cta-band h2 { margin: 8px 0 0; font-size: clamp(30px, 4vw, 46px); line-height:1.1; letter-spacing:-.035em; }
.ld-section-head p, .ld-cta-band p { margin: 14px 0 0; color: var(--ld-muted); font-size: 18px; }
.ld-eyebrow {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#fff;
  background:rgba(255,255,255,.055);
  border:1px solid var(--ld-line);
  border-left:3px solid var(--ld-accent);
  border-radius:10px;
  padding:7px 10px;
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* Hero */
.ld-hero {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0, 1.02fr) minmax(360px, .78fr);
  gap:42px;
  align-items:center;
  padding:60px;
  border:1px solid var(--ld-line);
  background:
    linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.025)),
    var(--ld-surface);
  border-radius: 26px;
  overflow:hidden;
  box-shadow: var(--ld-shadow-soft);
}
.ld-hero::after {
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:4px;
  background: linear-gradient(90deg, var(--ld-accent), transparent 65%);
  opacity:.9;
}
.ld-hero--compact { padding:48px; }
.ld-hero h1 { margin:16px 0 0; font-size:clamp(42px, 6vw, 72px); line-height:.98; letter-spacing:-.055em; }
.ld-hero p { margin:22px 0 0; color:var(--ld-text-soft); font-size: clamp(17px, 1.7vw, 21px); max-width: 760px; }
.ld-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.ld-btn { min-height:48px; padding: 13px 18px; border:1px solid transparent; }
.ld-btn--primary { color:#fff; background:var(--ld-accent); border-color:rgba(255,255,255,.08); box-shadow: 0 14px 28px rgba(150,160,172,.15); }
.ld-btn--primary:hover { background:var(--ld-accent-2); }
.ld-btn--ghost { color:#fff; background:rgba(255,255,255,.045); border-color:var(--ld-line-strong); }
.ld-btn--ghost:hover { background:rgba(255,255,255,.08); }
.ld-hero__media { min-height: 430px; position:relative; }
.ld-hero__image-wrap { position:absolute; inset:0; border-radius:22px; overflow:hidden; border:1px solid var(--ld-line); background:#0b0f15; }
.ld-hero__image-wrap img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(.95) contrast(1.03); }
.ld-glow { display:none !important; }

/* Contact + Stats */
.ld-contact-strip {
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:14px;
  margin:18px 0 22px;
}
.ld-contact-strip a,
.ld-stats article,
.ld-card,
.ld-info-card,
.ld-service-card,
.ld-timebox,
.ld-timetable-card,
.ld-license-card,
.ld-location-card,
.ld-download,
.ld-pricing-card,
.ld-note {
  background: rgba(255,255,255,.045);
  border:1px solid var(--ld-line);
  border-radius: var(--ld-radius-sm);
  box-shadow: none;
}
.ld-contact-strip a { display:flex; justify-content:space-between; gap:16px; align-items:center; text-decoration:none; padding:18px; }
.ld-contact-strip span { color:var(--ld-muted); font-weight:700; }
.ld-contact-strip strong { color:#fff; font-size:16px; text-align:right; }
.ld-contact-strip a:hover { background:var(--ld-card-hover); border-color:rgba(150,160,172,.34); }
.ld-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin: 22px 0 18px; }
.ld-stats article { padding:24px; }
.ld-stats strong { display:block; font-size:42px; line-height:1; letter-spacing:-.05em; color:#fff; }
.ld-stats span { display:block; margin-top:8px; color:var(--ld-muted); font-weight:700; }

/* Cards / content */
.ld-split { display:grid; grid-template-columns:1.1fr .9fr; gap:28px; align-items:start; }
.ld-richtext p:first-child { margin-top:0; }
.ld-richtext p:last-child { margin-bottom:0; }
.ld-richtext h1, .ld-richtext h2, .ld-richtext h3 { letter-spacing:-.025em; }
.ld-richtext, .ld-card { padding:30px; }
.ld-card h2, .ld-card h3, .ld-service-card h3, .ld-info-card h3, .ld-person-card h3, .ld-vehicle-card h3, .ld-license-card h3, .ld-location-card h3 { margin:0 0 10px; line-height:1.18; letter-spacing:-.025em; }
.ld-card p, .ld-service-card p, .ld-info-card p, .ld-license-card p, .ld-location-card p, .ld-note p, .ld-pricing-card p { color:var(--ld-muted); margin:0; }
.ld-card-grid { display:grid; gap:18px; }
.ld-card-grid--2 { grid-template-columns:repeat(2,1fr); }
.ld-card-grid--3 { grid-template-columns:repeat(3,1fr); }
.ld-card-grid--4 { grid-template-columns:repeat(4,1fr); }
.ld-service-card { display:block; padding:26px; text-decoration:none; transition:.18s ease; min-height: 215px; }
.ld-service-card span { display:inline-flex; margin-bottom:18px; color:#fff; background:var(--ld-accent-soft); border:1px solid rgba(150,160,172,.26); border-radius:10px; padding:6px 9px; font-size:12px; font-weight:850; text-transform:uppercase; letter-spacing:.06em; }
.ld-service-card:hover { transform: translateY(-3px); background:var(--ld-card-hover); border-color:rgba(150,160,172,.34); }
.ld-feature-stack { display:grid; gap:14px; }
.ld-feature-stack article { padding:24px; background:rgba(255,255,255,.045); border:1px solid var(--ld-line); border-radius:var(--ld-radius-sm); }
.ld-icon { display:inline-grid; place-items:center; width:40px; height:40px; border-radius:12px; background:var(--ld-accent-soft); color:#fff; font-weight:900; margin-bottom:14px; }

/* People */
.ld-team-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:18px; }
.ld-person-card { overflow:hidden; border:1px solid var(--ld-line); background:rgba(255,255,255,.045); border-radius:18px; }
.ld-person-card__image { aspect-ratio: 4 / 3.2; background:#0b0f15; overflow:hidden; }
.ld-person-card__image img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(.96) contrast(1.02); }
.ld-person-card__body { padding:22px; }
.ld-person-card ul { list-style:none; padding:0; margin:12px 0 0; display:grid; gap:7px; color:var(--ld-muted); }
.ld-person-card li { position:relative; padding-left:16px; }
.ld-person-card li::before { content:""; position:absolute; left:0; top:.72em; width:6px; height:6px; border-radius:2px; background:var(--ld-accent); }

/* Vehicles / galleries */
.ld-filterbar { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:24px; }
.ld-filterbar button { border:1px solid var(--ld-line); background:rgba(255,255,255,.045); color:#fff; padding:11px 14px; border-radius:12px; font-weight:850; cursor:pointer; }
.ld-filterbar button.is-active, .ld-filterbar button:hover { background:var(--ld-accent); border-color:var(--ld-accent); }
.ld-vehicle-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.ld-vehicle-card { overflow:hidden; border:1px solid var(--ld-line); background:rgba(255,255,255,.045); border-radius:18px; transition:.18s ease; }
.ld-vehicle-card.is-hidden { display:none; }
.ld-vehicle-card__image { aspect-ratio: 4 / 3; overflow:hidden; background:#0b0f15; }
.ld-vehicle-card__image img { width:100%; height:100%; object-fit:cover; display:block; }
.ld-vehicle-card__body { padding:20px; }
.ld-gallery { display:grid; gap:12px; }
.ld-gallery--masonry { grid-template-columns:repeat(6,1fr); grid-auto-flow:dense; }
.ld-gallery--vehicles { grid-template-columns:repeat(4,1fr); }
.ld-gallery__item { position:relative; min-height:190px; border-radius:16px; overflow:hidden; background:#0b0f15; border:1px solid var(--ld-line); }
.ld-gallery__item img { width:100%; height:100%; object-fit:cover; display:block; transition: transform .35s ease, filter .25s ease; }
.ld-gallery__item:hover img { transform:scale(1.045); filter:brightness(1.05); }
.ld-gallery--masonry .ld-gallery__item:nth-child(1),
.ld-gallery--masonry .ld-gallery__item:nth-child(8),
.ld-gallery--masonry .ld-gallery__item:nth-child(16) { grid-column:span 2; grid-row:span 2; }
.ld-gallery--masonry .ld-gallery__item:nth-child(5),
.ld-gallery--masonry .ld-gallery__item:nth-child(11) { grid-column:span 2; }

/* Locations / timetable / info */
.ld-location-grid, .ld-timetable-grid, .ld-license-grid, .ld-process--wide { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.ld-location-card, .ld-timetable-card, .ld-license-card, .ld-info-card, .ld-pricing-card, .ld-note { padding:26px; }
.ld-checklist { list-style:none; padding:0; margin:18px 0 0; display:grid; gap:10px; }
.ld-checklist li { position:relative; padding-left:28px; color:var(--ld-text-soft); }
.ld-checklist li::before { content:"✓"; position:absolute; left:0; top:0; color:var(--ld-success); font-weight:900; }
.ld-download-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.ld-download { display:block; text-decoration:none; padding:22px; }
.ld-download strong { display:block; margin-bottom:6px; }
.ld-table-wrap { overflow:auto; border:1px solid var(--ld-line); border-radius:16px; }
.ld-table-wrap table { width:100%; border-collapse:collapse; }
.ld-table-wrap th, .ld-table-wrap td { padding:14px 16px; text-align:left; border-bottom:1px solid var(--ld-line); }
.ld-table-wrap tr:last-child td { border-bottom:0; }
.ld-table-wrap th { color:#fff; background:rgba(255,255,255,.05); }
.ld-process { counter-reset: step; display:grid; gap:16px; }
.ld-process article { position:relative; padding:26px 26px 26px 72px; background:rgba(255,255,255,.045); border:1px solid var(--ld-line); border-radius:18px; }
.ld-process article::before { counter-increment:step; content:counter(step, decimal-leading-zero); position:absolute; left:24px; top:26px; color:#fff; background:var(--ld-accent); border-radius:10px; width:34px; height:34px; display:grid; place-items:center; font-weight:900; font-size:13px; }
.ld-contact-layout { display:grid; grid-template-columns:.95fr 1.05fr; gap:20px; }
.ld-hours { display:grid; gap:10px; margin-top:16px; }
.ld-hours div { display:flex; justify-content:space-between; gap:16px; padding:14px 0; border-bottom:1px solid var(--ld-line); }
.ld-hours div:last-child { border-bottom:0; }
.ld-hours span { color:var(--ld-muted); }
.ld-news-grid { display:grid; gap:18px; }
.ld-news-card { display:grid; grid-template-columns:320px 1fr; gap:0; overflow:hidden; border:1px solid var(--ld-line); border-radius:18px; background:rgba(255,255,255,.045); }
.ld-news-card img { width:100%; height:100%; min-height:230px; object-fit:cover; }
.ld-news-card > div { padding:26px; }
.ld-info-box { padding:20px; border-left:4px solid var(--ld-accent); background:rgba(255,255,255,.045); border-radius:12px; }

/* CTA */
.ld-cta-band { display:flex; align-items:center; justify-content:space-between; gap:28px; margin:54px 0 0; padding:34px; border:1px solid rgba(150,160,172,.26); border-radius:22px; background:linear-gradient(135deg, rgba(150,160,172,.12), rgba(255,255,255,.035)); }
.ld-cta-band .ld-actions { margin-top:0; flex-shrink:0; }

/* Lightbox */
.ld-lightbox { position:fixed; inset:0; z-index:1000; background:rgba(0,0,0,.92); display:none; align-items:center; justify-content:center; padding:22px; }
.ld-lightbox.is-open { display:flex; }
.ld-lightbox img { max-width:min(1180px,92vw); max-height:84vh; border-radius:14px; box-shadow:0 28px 84px rgba(0,0,0,.65); }
.ld-lightbox button { position:absolute; border:1px solid rgba(255,255,255,.22); background:rgba(17,24,33,.82); color:#fff; border-radius:12px; width:46px; height:46px; font-size:26px; cursor:pointer; }
.ld-lightbox__close { top:22px; right:22px; }
.ld-lightbox__prev { left:22px; }
.ld-lightbox__next { right:22px; }

/* Footer */
.ld-site-footer { border-top:1px solid var(--ld-line); background:#070a0f; padding-top:54px; }
.ld-footer-grid { display:grid; grid-template-columns:1.35fr 1fr 1fr 1fr; gap:34px; }
.ld-footer-logo { width:260px; max-width:100%; display:block; margin-bottom:14px; }
.ld-site-footer h2 { font-size:17px; margin:0 0 12px; }
.ld-site-footer p, .ld-site-footer a, .ld-site-footer li { color:var(--ld-muted); text-decoration:none; }
.ld-site-footer a:hover { color:#fff; }
.ld-site-footer ul { list-style:none; padding:0; margin:0; display:grid; gap:7px; }
.ld-footer-bottom { margin-top:42px; border-top:1px solid var(--ld-line); padding:18px 0; color:var(--ld-muted); font-size:14px; }
.ld-footer-bottom .ld-container { display:flex; justify-content:space-between; gap:18px; }
.ld-legal { max-width:980px; margin-inline:auto; }
.ld-legal .ld-card { padding:42px; }
.ld-legal h1 { font-size:48px; margin:0 0 18px; }

@media (max-width: 1180px) {
  .ld-main-nav, .ld-nav-cta { display:none; }
  .ld-menu-toggle { display:flex; }
  .ld-hero { grid-template-columns:1fr; padding:46px; }
  .ld-hero__media { min-height:360px; }
  .ld-card-grid--4, .ld-team-grid, .ld-vehicle-grid { grid-template-columns:repeat(2,1fr); }
  .ld-gallery--masonry { grid-template-columns:repeat(4,1fr); }
  .ld-mobile-panel { display:block; position:fixed; inset:0 0 0 auto; width:min(430px,92vw); background:#080c12; z-index:200; transform:translateX(105%); transition:transform .25s ease; border-left:1px solid var(--ld-line); padding:22px; overflow:auto; }
  .ld-mobile-panel.is-open { transform:translateX(0); }
  .ld-mobile-panel__head { display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; }
  .ld-mobile-panel__head img { width:220px; max-width:72%; }
  .ld-mobile-panel__head button { font-size:34px; line-height:1; background:rgba(255,255,255,.06); color:#fff; border:1px solid var(--ld-line); width:46px; height:46px; border-radius:14px; }
  .ld-mobile-panel nav { display:grid; gap:8px; }
  .ld-mobile-panel nav a { text-decoration:none; padding:15px 16px; border-radius:14px; background:rgba(255,255,255,.045); border:1px solid var(--ld-line); font-weight:850; }
  .ld-mobile-panel nav a:hover { background:var(--ld-accent-soft); }
  .ld-mobile-backdrop { display:block; position:fixed; inset:0; background:rgba(0,0,0,.64); z-index:180; opacity:0; pointer-events:none; transition:opacity .2s ease; }
  .ld-mobile-backdrop.is-open { opacity:1; pointer-events:auto; }
  body.ld-menu-open { overflow:hidden; }
}

@media (max-width: 760px) {
  .ld-container { width:min(100% - 28px, var(--ld-max)); }
  .admin-bar .ld-site-header { top:0; }
  .ld-topbar { display:none; }
  .ld-navbar { min-height:72px; }
  .ld-brand img { width:190px; max-width:68vw; }
  .ld-page { padding:18px 0 58px; }
  .ld-section { padding:34px 0; }
  .ld-hero, .ld-hero--compact { padding:28px 22px; border-radius:22px; }
  .ld-hero h1 { font-size:clamp(34px, 11vw, 50px); letter-spacing:-.045em; }
  .ld-hero p { font-size:16px; }
  .ld-hero__media { min-height:250px; }
  .ld-actions { align-items:stretch; }
  .ld-btn { width:100%; }
  .ld-contact-strip, .ld-stats, .ld-split, .ld-card-grid, .ld-card-grid--2, .ld-card-grid--3, .ld-card-grid--4, .ld-team-grid, .ld-vehicle-grid, .ld-location-grid, .ld-timetable-grid, .ld-contact-layout, .ld-process--wide, .ld-footer-grid, .ld-download-grid, .ld-license-grid { grid-template-columns:1fr; }
  .ld-contact-strip a { align-items:flex-start; }
  .ld-contact-strip strong { text-align:left; }
  .ld-stats strong { font-size:34px; }
  .ld-richtext, .ld-card { padding:23px; }
  .ld-gallery--masonry, .ld-gallery--vehicles { grid-template-columns:repeat(2,1fr); }
  .ld-gallery__item, .ld-gallery--vehicles .ld-gallery__item { min-height:150px; }
  .ld-gallery__item:nth-child(n) { grid-column:auto; grid-row:auto; }
  .ld-news-card { grid-template-columns:1fr; }
  .ld-news-card img { min-height:220px; }
  .ld-cta-band { display:grid; padding:25px; }
  .ld-cta-band .ld-actions { margin-top:14px; }
  .ld-hours div { display:grid; }
  .ld-footer-bottom .ld-container { display:grid; }
  .ld-lightbox__prev, .ld-lightbox__next { top:auto; bottom:22px; }
  .ld-lightbox img { max-height:76vh; }
  .ld-legal .ld-card { padding:26px; }
  .ld-legal h1 { font-size:38px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}


/* v4 professional refinement: neutral, compact, structured */
body.lautz-premium-theme::before {
  background:
    linear-gradient(rgba(255,255,255,.012) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.012) 1px, transparent 1px);
  background-size: 96px 96px;
  opacity: .75;
}
.ld-site-header { background: rgba(6,8,12,.95); }
.ld-eyebrow { border-left-color: rgba(255,255,255,.28); background:rgba(255,255,255,.045); color:var(--ld-text-soft); }
.ld-hero::after { height: 1px; background: linear-gradient(90deg, rgba(255,255,255,.35), transparent 72%); opacity:.85; }
.ld-btn--primary, .ld-nav-cta { background: linear-gradient(180deg, #8d96a3, #626c78); color:#fff; border-color:rgba(255,255,255,.16); box-shadow: 0 14px 32px rgba(0,0,0,.22); }
.ld-btn--primary:hover, .ld-nav-cta:hover { background: linear-gradient(180deg, #9aa3ae, #6b7580); }
.ld-btn--ghost { background:rgba(255,255,255,.035); }
.ld-nav-dropdown a:hover, .ld-mobile-panel nav a:hover { background:rgba(255,255,255,.07); }

.ld-home-quicklook {
  display:grid;
  grid-template-columns:minmax(300px,.86fr) minmax(0,1.4fr);
  gap:18px;
  margin:20px 0 12px;
  align-items:stretch;
}
.ld-quick-contact,
.ld-quick-stat,
.ld-training-intro,
.ld-pathway-card,
.ld-news-aside {
  background:rgba(255,255,255,.045);
  border:1px solid var(--ld-line);
  border-radius:18px;
}
.ld-quick-contact { padding:22px; display:grid; gap:14px; }
.ld-quick-contact__head { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; padding-bottom:12px; border-bottom:1px solid var(--ld-line); }
.ld-quick-contact__head span { color:var(--ld-muted); font-weight:800; font-size:13px; text-transform:uppercase; letter-spacing:.08em; }
.ld-quick-contact__head strong { display:block; margin-top:2px; font-size:20px; letter-spacing:-.025em; }
.ld-contact-row { display:flex; justify-content:space-between; gap:18px; align-items:center; text-decoration:none; padding:12px 0; border-bottom:1px solid rgba(255,255,255,.065); min-width:0; }
.ld-contact-row:last-child { border-bottom:0; padding-bottom:0; }
.ld-contact-row span { color:var(--ld-muted); font-weight:760; }
.ld-contact-row strong { color:#fff; font-size:15px; text-align:right; word-break:break-word; }
.ld-contact-row:hover strong { text-decoration:underline; text-underline-offset:4px; }
.ld-quick-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.ld-quick-stat { padding:22px; display:flex; flex-direction:column; justify-content:space-between; min-height:148px; }
.ld-quick-stat strong { display:block; font-size:clamp(30px,4vw,44px); line-height:1; letter-spacing:-.055em; }
.ld-quick-stat span { display:block; margin-top:12px; color:var(--ld-muted); font-weight:780; line-height:1.35; }
.ld-contact-strip, .ld-stats { display:none; }

.ld-training-section { padding-top:54px; }
.ld-training-layout { display:grid; grid-template-columns:minmax(320px,.9fr) minmax(0,1.55fr); gap:20px; align-items:stretch; }
.ld-training-intro { padding:32px; position:relative; overflow:hidden; }
.ld-training-intro h2 { margin:12px 0 0; font-size:clamp(31px,4vw,48px); line-height:1.05; letter-spacing:-.04em; }
.ld-training-intro p { color:var(--ld-text-soft); font-size:18px; margin:16px 0 0; }
.ld-training-points { list-style:none; padding:0; margin:24px 0 0; display:grid; gap:11px; }
.ld-training-points li { display:flex; gap:10px; align-items:flex-start; color:var(--ld-muted); font-weight:720; }
.ld-training-points li::before { content:""; width:8px; height:8px; border-radius:50%; background:#a4adb8; margin-top:.65em; flex:0 0 auto; }
.ld-pathway-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.ld-pathway-card { position:relative; min-height:190px; padding:24px; text-decoration:none; display:flex; flex-direction:column; justify-content:space-between; transition: transform .16s ease, background .16s ease, border-color .16s ease; }
.ld-pathway-card strong { font-size:13px; color:var(--ld-muted); letter-spacing:.12em; text-transform:uppercase; }
.ld-pathway-card h3 { margin:18px 0 9px; font-size:23px; line-height:1.12; letter-spacing:-.03em; }
.ld-pathway-card p { color:var(--ld-muted); margin:0; }
.ld-pathway-card em { color:var(--ld-text-soft); font-style:normal; font-weight:850; margin-top:16px; display:inline-block; }
.ld-pathway-card:hover { transform:translateY(-2px); background:rgba(255,255,255,.065); border-color:rgba(255,255,255,.22); }
.ld-service-card span { background:rgba(255,255,255,.055); border-color:var(--ld-line-strong); color:var(--ld-text-soft); }
.ld-service-card:hover { border-color:rgba(255,255,255,.22); }
.ld-icon { background:rgba(255,255,255,.07); }
.ld-person-card li::before { background:#a4adb8; }
.ld-filterbar button.is-active, .ld-filterbar button:hover { background:#6e7884; border-color:#8a94a0; }
.ld-process article::before { background:#6e7884; }
.ld-info-box { border-left-color:#8a94a0; }
.ld-cta-band { border-color:rgba(255,255,255,.14); background:linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.03)); }

.ld-news-intro { max-width:900px; margin:0 auto 28px; text-align:left; }
.ld-news-layout { display:grid; grid-template-columns:minmax(0,1.42fr) minmax(280px,.58fr); gap:22px; align-items:start; }
.ld-news-list { display:grid; gap:18px; }
.ld-news-card { grid-template-columns:260px 1fr; background:rgba(255,255,255,.045); }
.ld-news-card img { min-height:240px; }
.ld-news-card > div { padding:30px; }
.ld-news-card span, .ld-news-aside span { display:inline-flex; color:var(--ld-text-soft); background:rgba(255,255,255,.055); border:1px solid var(--ld-line); padding:6px 10px; border-radius:999px; font-size:12px; font-weight:850; text-transform:uppercase; letter-spacing:.06em; margin-bottom:14px; }
.ld-news-card h2 { margin:0 0 12px; font-size:clamp(24px,3vw,34px); line-height:1.12; letter-spacing:-.035em; }
.ld-news-card p { color:var(--ld-muted); margin:10px 0 0; }
.ld-news-aside { padding:26px; position:sticky; top:118px; }
.ld-news-aside h2 { margin:0 0 12px; font-size:24px; line-height:1.15; }
.ld-news-aside p { color:var(--ld-muted); margin:0 0 16px; }
.ld-news-aside .ld-actions { margin-top:18px; }

@media (max-width: 1180px) {
  .ld-home-quicklook, .ld-training-layout, .ld-news-layout { grid-template-columns:1fr; }
  .ld-quick-stats { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .ld-news-aside { position:static; }
}
@media (max-width: 860px) {
  .ld-quick-stats, .ld-pathway-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ld-news-card { grid-template-columns:1fr; }
  .ld-news-card img { min-height:220px; aspect-ratio:16/9; }
}
@media (max-width: 560px) {
  .ld-home-quicklook { margin-top:14px; }
  .ld-quick-contact, .ld-training-intro, .ld-pathway-card, .ld-news-card > div, .ld-news-aside { padding:22px; }
  .ld-quick-contact__head { display:grid; }
  .ld-contact-row { display:grid; gap:4px; }
  .ld-contact-row strong { text-align:left; }
  .ld-quick-stats, .ld-pathway-grid { grid-template-columns:1fr; }
  .ld-quick-stat { min-height:auto; }
}

/* v5 precision polish: calm DarkUI, structured cards, subtle motion */
:root {
  --ld-accent: #77818d;
  --ld-accent-2: #5d6671;
  --ld-card-depth: rgba(255,255,255,.052);
}
body.lautz-premium-theme { background: linear-gradient(180deg, #06090d 0%, #090d13 48%, #06080c 100%); }
.ld-page { padding-top: 34px; }
.ld-section { padding: 56px 0; }
.ld-section-head { max-width: 860px; }
.ld-section-head h2 { font-size: clamp(30px, 3.45vw, 48px); }
.ld-card,
.ld-info-card,
.ld-service-card,
.ld-timebox,
.ld-timetable-card,
.ld-license-card,
.ld-location-card,
.ld-download,
.ld-pricing-card,
.ld-note,
.ld-person-card,
.ld-vehicle-card,
.ld-news-card,
.ld-quick-contact,
.ld-quick-stat,
.ld-training-intro,
.ld-pathway-card,
.ld-news-aside {
  background: linear-gradient(180deg, rgba(255,255,255,.056), rgba(255,255,255,.035));
  border-color: rgba(255,255,255,.11);
}
.ld-card,
.ld-service-card,
.ld-info-card,
.ld-person-card,
.ld-vehicle-card,
.ld-location-card,
.ld-license-card,
.ld-pathway-card,
.ld-quick-stat,
.ld-news-card {
  transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}
.ld-card:hover,
.ld-service-card:hover,
.ld-info-card:hover,
.ld-person-card:hover,
.ld-vehicle-card:hover,
.ld-location-card:hover,
.ld-license-card:hover,
.ld-pathway-card:hover,
.ld-quick-stat:hover,
.ld-news-card:hover {
  transform: translateY(-4px);
  border-color: rgba(210,218,228,.22);
  box-shadow: 0 18px 50px rgba(0,0,0,.24);
  background: linear-gradient(180deg, rgba(255,255,255,.072), rgba(255,255,255,.042));
}
.ld-mini-icon {
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  color: #dfe6ef;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 13px;
}
.ld-mini-icon svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.ld-quick-contact { padding: 24px; }
.ld-quick-contact__head { align-items: center; }
.ld-quick-contact__head > div { display:grid; grid-template-columns:42px 1fr; grid-template-areas:"icon label" "icon title"; column-gap:14px; align-items:center; }
.ld-quick-contact__head .ld-mini-icon { grid-area:icon; }
.ld-quick-contact__head span { grid-area:label; }
.ld-quick-contact__head strong { grid-area:title; }
.ld-quick-contact__head p { max-width: 230px; margin: 0; color: var(--ld-text-soft); line-height: 1.55; text-align: left; }
.ld-contact-row { display:grid; grid-template-columns:42px 92px minmax(0,1fr); justify-content:initial; padding:13px 0; }
.ld-contact-row .ld-mini-icon { width:34px; height:34px; border-radius:11px; }
.ld-contact-row .ld-mini-icon svg { width:18px; height:18px; }
.ld-contact-row strong { text-align:right; }
.ld-quick-stats { gap:14px; }
.ld-quick-stat { min-height:172px; padding:24px; justify-content:flex-start; }
.ld-quick-stat .ld-mini-icon { margin-bottom: 22px; }
.ld-quick-stat strong { font-size: clamp(34px, 3.65vw, 48px); }
.ld-quick-stat span { max-width: 14ch; }
.ld-training-section { padding-top: 66px; }
.ld-training-head { max-width: 920px; margin-bottom: 24px; }
.ld-training-head h2 { max-width: 780px; }
.ld-training-head p { max-width: 780px; }
.ld-training-board { display:grid; grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr); gap:18px; align-items:stretch; }
.ld-training-intro { padding:30px; display:flex; flex-direction:column; justify-content:space-between; min-height:100%; }
.ld-training-intro__top { display:flex; gap:16px; align-items:center; }
.ld-training-intro__top strong { display:block; font-size:22px; line-height:1.15; letter-spacing:-.025em; }
.ld-training-intro__top span { display:block; margin-top:4px; color:var(--ld-muted); font-weight:760; }
.ld-training-intro p { margin:24px 0 0; color:var(--ld-text-soft); font-size:17px; line-height:1.68; }
.ld-training-tags { display:flex; flex-wrap:wrap; gap:9px; margin-top:24px; }
.ld-training-tags span { display:inline-flex; padding:8px 10px; border:1px solid rgba(255,255,255,.105); border-radius:999px; color:var(--ld-text-soft); background:rgba(255,255,255,.04); font-size:13px; font-weight:800; }
.ld-training-intro .ld-actions { margin-top:26px; }
.ld-pathway-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.ld-pathway-card { min-height:214px; padding:24px; }
.ld-pathway-card .ld-mini-icon { margin-bottom:18px; }
.ld-pathway-card strong { display:block; margin-bottom:14px; }
.ld-pathway-card h3 { margin:0 0 9px; }
.ld-pathway-card em { position:relative; padding-right:18px; }
.ld-pathway-card em::after { content:"→"; position:absolute; right:0; top:0; transition:transform .18s ease; }
.ld-pathway-card:hover em::after { transform:translateX(3px); }
.ld-team-grid { gap:20px; }
.ld-person-card { position:relative; overflow:hidden; }
.ld-person-card::after { content:""; position:absolute; inset:auto 0 0 0; height:1px; background:linear-gradient(90deg, transparent, rgba(255,255,255,.26), transparent); opacity:0; transition:opacity .22s ease; }
.ld-person-card:hover::after { opacity:1; }
.ld-person-card__image img { transition: transform .45s ease, filter .3s ease; }
.ld-person-card:hover .ld-person-card__image img { transform: scale(1.035); filter:saturate(1) contrast(1.05); }
.ld-person-card__body { padding:24px; }
.ld-person-card li::before { border-radius:999px; background:#b3bdc8; }
.ld-news-section { padding-top:62px; }
.ld-news-intro { margin:0 0 30px; max-width:920px; text-align:left!important; }
.ld-news-layout { grid-template-columns:minmax(0,1.45fr) minmax(285px,.55fr); gap:24px; }
.ld-news-list { gap:20px; }
.ld-news-card { grid-template-columns:300px minmax(0,1fr); align-items:stretch; text-align:left!important; }
.ld-news-card *, .ld-news-aside * { text-align:left; }
.ld-news-card img { min-height:270px; }
.ld-news-card > div { padding:32px; display:flex; flex-direction:column; align-items:flex-start; }
.ld-news-card > div > .ld-mini-icon,
.ld-news-aside > .ld-mini-icon { margin-bottom:16px; }
.ld-news-card span,
.ld-news-aside span { margin-bottom:14px; }
.ld-news-card h2 { margin:0 0 14px; font-size:clamp(25px,2.7vw,36px); max-width:720px; }
.ld-news-card p { margin:0; max-width:68ch; color:#b6c0cc; line-height:1.72; }
.ld-news-card p + p { margin-top:13px; }
.ld-news-contact { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.ld-news-contact a { display:inline-flex; align-items:center; min-height:40px; padding:9px 12px; border:1px solid rgba(255,255,255,.11); border-radius:12px; background:rgba(255,255,255,.045); color:#fff; text-decoration:none; font-weight:820; }
.ld-news-contact a:hover { border-color:rgba(255,255,255,.24); background:rgba(255,255,255,.072); }
.ld-news-aside { padding:28px; }
.ld-news-aside h2 { font-size:26px; }
.ld-news-aside p { line-height:1.68; }
.ld-reveal { opacity: 0; transform: translateY(16px); }
.ld-reveal.is-visible { opacity: 1; transform: translateY(0); transition: opacity .55s ease, transform .55s ease; }
.ld-reveal:nth-child(2) { transition-delay: .05s; }
.ld-reveal:nth-child(3) { transition-delay: .1s; }
.ld-reveal:nth-child(4) { transition-delay: .15s; }
@media (max-width: 1180px) {
  .ld-training-board, .ld-news-layout { grid-template-columns:1fr; }
  .ld-news-aside { position:static; }
}
@media (max-width: 980px) {
  .ld-home-quicklook { grid-template-columns:1fr; }
  .ld-quick-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ld-news-card { grid-template-columns:1fr; }
  .ld-news-card img { min-height:230px; aspect-ratio:16/9; }
}
@media (max-width: 680px) {
  .ld-section { padding:42px 0; }
  .ld-quick-contact__head { display:grid; }
  .ld-quick-contact__head > div { grid-template-columns:38px 1fr; }
  .ld-quick-contact__head p { max-width:none; }
  .ld-contact-row { grid-template-columns:36px 1fr; grid-template-areas:"icon label" "icon value"; gap:2px 12px; }
  .ld-contact-row .ld-mini-icon { grid-area:icon; }
  .ld-contact-row span { grid-area:label; }
  .ld-contact-row strong { grid-area:value; text-align:left; }
  .ld-quick-stats, .ld-pathway-grid { grid-template-columns:1fr; }
  .ld-quick-stat { min-height:auto; }
  .ld-training-intro, .ld-pathway-card, .ld-news-card > div, .ld-news-aside { padding:24px; }
  .ld-news-contact { display:grid; width:100%; }
  .ld-news-contact a { width:100%; justify-content:center; }
}
@media (prefers-reduced-motion: reduce) {
  .ld-reveal { opacity:1!important; transform:none!important; }
}

/* v6 milestone: compact premium layout, quieter icons, stronger information architecture */
:root {
  --ld-steel: #aeb7c2;
  --ld-steel-soft: rgba(174,183,194,.14);
  --ld-panel: rgba(255,255,255,.048);
  --ld-panel-strong: rgba(255,255,255,.072);
}

.ld-home-command {
  display:grid;
  grid-template-columns:minmax(320px,.92fr) minmax(0,1.55fr);
  gap:18px;
  margin:20px 0 10px;
  align-items:stretch;
}
.ld-command-card,
.ld-command-metric,
.ld-journey-shell,
.ld-news-pro-card,
.ld-news-pro-aside {
  border:1px solid rgba(255,255,255,.115);
  background:linear-gradient(180deg, rgba(255,255,255,.058), rgba(255,255,255,.032));
  border-radius:20px;
  box-shadow:0 18px 42px rgba(0,0,0,.16);
}
.ld-command-card--contact {
  padding:26px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:252px;
}
.ld-command-kicker,
.ld-news-meta span,
.ld-news-meta time,
.ld-route-step > span,
.ld-journey-links span {
  color:var(--ld-steel);
  font-size:12px;
  font-weight:900;
  letter-spacing:.105em;
  text-transform:uppercase;
}
.ld-command-card h2 {
  margin:10px 0 0;
  font-size:clamp(24px,2.25vw,34px);
  line-height:1.06;
  letter-spacing:-.04em;
  max-width:13ch;
}
.ld-command-card p {
  margin:12px 0 0;
  color:#c8d0da;
  line-height:1.65;
  max-width:46ch;
}
.ld-command-actions {
  display:grid;
  gap:8px;
  margin-top:22px;
}
.ld-command-actions a,
.ld-journey-links a,
.ld-news-aside-lines a {
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:12px;
  align-items:center;
  min-width:0;
  color:inherit;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.034);
  border-radius:14px;
  padding:12px 14px;
  transition:background .18s ease, border-color .18s ease, transform .18s ease;
}
.ld-command-actions a:hover,
.ld-journey-links a:hover,
.ld-news-aside-lines a:hover {
  transform:translateY(-1px);
  border-color:rgba(218,225,234,.22);
  background:rgba(255,255,255,.06);
}
.ld-command-actions span,
.ld-news-aside-lines span { color:var(--ld-muted); font-weight:820; }
.ld-command-actions strong,
.ld-news-aside-lines strong {
  color:#fff;
  font-weight:900;
  text-align:right;
  overflow-wrap:anywhere;
}
.ld-command-metrics {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.ld-command-metric {
  position:relative;
  min-height:252px;
  padding:26px 22px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:transform .22s ease, background .22s ease, border-color .22s ease;
}
.ld-command-metric::before {
  content:"";
  position:absolute;
  left:22px;
  right:22px;
  top:56px;
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,.24), transparent);
}
.ld-command-metric:hover {
  transform:translateY(-4px);
  border-color:rgba(218,225,234,.22);
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.04));
}
.ld-command-metric small {
  color:var(--ld-steel);
  font-size:12px;
  letter-spacing:.105em;
  text-transform:uppercase;
  font-weight:900;
}
.ld-command-metric strong {
  display:block;
  margin-top:auto;
  color:#fff;
  font-size:clamp(38px,4.1vw,56px);
  line-height:.9;
  letter-spacing:-.06em;
}
.ld-command-metric span {
  display:block;
  margin-top:14px;
  color:#aeb8c4;
  font-weight:790;
  line-height:1.35;
  max-width:15ch;
}

.ld-journey-section { padding-top:58px; }
.ld-journey-shell {
  position:relative;
  overflow:hidden;
  padding:30px;
  display:grid;
  grid-template-columns:minmax(285px,.78fr) minmax(0,1.22fr);
  gap:28px;
}
.ld-journey-shell::before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(255,255,255,.075), transparent 48%);
  pointer-events:none;
  opacity:.75;
}
.ld-journey-heading,
.ld-route,
.ld-journey-links { position:relative; z-index:1; }
.ld-journey-heading h2 {
  margin:14px 0 0;
  font-size:clamp(30px,3.45vw,50px);
  line-height:1.04;
  letter-spacing:-.045em;
}
.ld-journey-heading p {
  margin:16px 0 0;
  color:#c7d0db;
  max-width:50ch;
  font-size:17px;
}
.ld-journey-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.ld-journey-actions .ld-btn { min-height:46px; }
.ld-route {
  display:grid;
  gap:10px;
  align-content:start;
}
.ld-route-step {
  position:relative;
  display:grid;
  grid-template-columns:54px minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  padding:16px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(5,8,12,.33);
  border-radius:16px;
  transition:transform .18s ease, background .18s ease, border-color .18s ease;
}
.ld-route-step:hover {
  transform:translateX(3px);
  border-color:rgba(218,225,234,.2);
  background:rgba(255,255,255,.052);
}
.ld-route-step > span {
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:14px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
}
.ld-route-step h3 {
  margin:0 0 4px;
  font-size:19px;
  line-height:1.18;
  letter-spacing:-.025em;
}
.ld-route-step p {
  margin:0;
  color:#aeb8c4;
  line-height:1.48;
}
.ld-route-step a {
  justify-self:end;
  color:#fff;
  text-decoration:none;
  font-weight:900;
  border:1px solid rgba(255,255,255,.1);
  border-radius:999px;
  padding:8px 12px;
  background:rgba(255,255,255,.04);
}
.ld-route-step a:hover { background:rgba(255,255,255,.08); }
.ld-journey-links {
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  padding-top:8px;
}
.ld-journey-links a {
  grid-template-columns:1fr;
  gap:3px;
  min-height:72px;
}
.ld-journey-links strong { color:#fff; font-size:16px; letter-spacing:-.015em; }

.ld-news-pro-section { padding-top:62px; }
.ld-news-pro-intro { max-width:920px; margin:0 0 30px; text-align:left!important; }
.ld-news-pro-intro * { text-align:left!important; }
.ld-news-pro-layout {
  display:grid;
  grid-template-columns:minmax(0,1.48fr) minmax(300px,.52fr);
  gap:24px;
  align-items:start;
}
.ld-news-pro-list { display:grid; gap:20px; }
.ld-news-pro-card {
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  overflow:hidden;
  transition:transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}
.ld-news-pro-card:hover {
  transform:translateY(-4px);
  border-color:rgba(218,225,234,.22);
  box-shadow:0 18px 50px rgba(0,0,0,.23);
}
.ld-news-pro-card figure {
  position:relative;
  margin:0;
  min-height:270px;
  overflow:hidden;
  background:#0b0f15;
}
.ld-news-pro-card img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .45s ease, filter .25s ease; }
.ld-news-pro-card:hover img { transform:scale(1.035); filter:brightness(1.04); }
.ld-news-pro-card figcaption {
  position:absolute;
  left:14px;
  bottom:14px;
  padding:7px 10px;
  border-radius:999px;
  color:#fff;
  background:rgba(6,9,13,.82);
  border:1px solid rgba(255,255,255,.14);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ld-news-pro-body {
  padding:32px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  text-align:left!important;
}
.ld-news-pro-body * { text-align:left!important; }
.ld-news-meta {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:14px;
}
.ld-news-meta span,
.ld-news-meta time {
  display:inline-flex;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);
  border-radius:999px;
  padding:6px 10px;
}
.ld-news-pro-body h2 {
  margin:0 0 12px;
  font-size:clamp(25px,2.6vw,36px);
  line-height:1.12;
  letter-spacing:-.035em;
  max-width:720px;
}
.ld-news-pro-body p {
  margin:0;
  max-width:68ch;
  color:#b8c2ce;
  line-height:1.72;
}
.ld-news-pro-aside {
  position:sticky;
  top:118px;
  padding:28px;
}
.ld-news-pro-aside h2 {
  margin:14px 0 10px;
  font-size:26px;
  line-height:1.12;
  letter-spacing:-.03em;
}
.ld-news-pro-aside p { margin:0; color:#b8c2ce; line-height:1.68; }
.ld-news-aside-lines { display:grid; gap:9px; margin-top:22px; }
.ld-news-aside-lines a { grid-template-columns:90px minmax(0,1fr); }

.ld-person-card,
.ld-service-card,
.ld-info-card,
.ld-location-card,
.ld-vehicle-card {
  will-change:transform;
}
.ld-person-card::before,
.ld-service-card::before,
.ld-info-card::before,
.ld-location-card::before {
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,.045), transparent);
  opacity:0;
  transform:translateX(-22%);
  transition:opacity .25s ease, transform .45s ease;
  pointer-events:none;
}
.ld-person-card:hover::before,
.ld-service-card:hover::before,
.ld-info-card:hover::before,
.ld-location-card:hover::before { opacity:1; transform:translateX(0); }

@media (max-width: 1180px) {
  .ld-home-command,
  .ld-journey-shell,
  .ld-news-pro-layout { grid-template-columns:1fr; }
  .ld-command-metrics { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .ld-command-card--contact,
  .ld-command-metric { min-height:auto; }
  .ld-news-pro-aside { position:static; }
}
@media (max-width: 900px) {
  .ld-command-metrics,
  .ld-journey-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ld-command-metric { min-height:170px; }
  .ld-news-pro-card { grid-template-columns:1fr; }
  .ld-news-pro-card figure { min-height:230px; aspect-ratio:16/9; }
}
@media (max-width: 680px) {
  .ld-home-command { margin-top:14px; }
  .ld-command-card--contact,
  .ld-journey-shell,
  .ld-news-pro-body,
  .ld-news-pro-aside { padding:23px; }
  .ld-command-actions a,
  .ld-news-aside-lines a { grid-template-columns:1fr; gap:2px; }
  .ld-command-actions strong,
  .ld-news-aside-lines strong { text-align:left; }
  .ld-command-metrics,
  .ld-journey-links { grid-template-columns:1fr; }
  .ld-route-step { grid-template-columns:44px minmax(0,1fr); align-items:start; }
  .ld-route-step > span { width:40px; height:40px; border-radius:12px; }
  .ld-route-step a { grid-column:2; justify-self:start; margin-top:4px; }
  .ld-journey-actions { display:grid; }
  .ld-journey-actions .ld-btn { width:100%; }
}


/* stable fix: original online widget and download anchors */
.ld-section--widget{padding-top:0}
.ld-online-widget{background:linear-gradient(180deg,rgba(20,24,29,.96),rgba(13,16,20,.98));border:1px solid var(--ld-border);border-radius:26px;padding:28px;box-shadow:0 18px 50px rgba(0,0,0,.22);overflow:hidden}
.ld-online-widget__head{max-width:780px;margin-bottom:20px}
.ld-online-widget__head h2{margin:8px 0 10px;font-size:clamp(1.6rem,3vw,2.35rem)}
.ld-online-widget__head p{color:var(--ld-muted);line-height:1.75;margin:0}
.ld-online-widget__frame{min-height:92px;border:1px dashed rgba(156,166,178,.25);border-radius:20px;padding:18px;background:rgba(255,255,255,.025)}
.ld-online-widget__fallback{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.ld-download-grid{align-items:stretch}
.ld-download{min-height:84px}
.ld-download strong{line-height:1.35}
.ld-muted{color:var(--ld-muted);line-height:1.7;margin:0 0 18px}
@media (max-width:760px){.ld-online-widget{padding:20px;border-radius:20px}.ld-online-widget__fallback .ld-btn{width:100%;justify-content:center}}

/* v12 production UI: sharper hierarchy, designer-grade homepage, stable responsive rules */
:root {
  --ld-bg: #090a0c;
  --ld-bg-soft: #111317;
  --ld-surface: #17191e;
  --ld-surface-2: #202329;
  --ld-card: #15171b;
  --ld-card-hover: #1e2127;
  --ld-text: #f4f5f7;
  --ld-text-soft: #d8dbe0;
  --ld-muted: #a7adb5;
  --ld-line: rgba(229,232,236,.14);
  --ld-line-strong: rgba(229,232,236,.24);
  --ld-border: rgba(229,232,236,.14);
  --ld-accent: #b6bcc5;
  --ld-accent-2: #b83237;
  --ld-accent-3: #777f8a;
  --ld-accent-soft: rgba(182,188,197,.13);
  --ld-success: #b6bcc5;
  --ld-radius: 8px;
  --ld-radius-sm: 8px;
  --ld-shadow: 0 28px 78px rgba(0,0,0,.36);
  --ld-shadow-soft: 0 18px 46px rgba(0,0,0,.28);
  --ld-max: 1248px;
}

body.lautz-premium-theme {
  color: var(--ld-text);
  background:
    linear-gradient(180deg, #090a0c 0%, #14161a 46%, #0a0b0d 100%);
}

/* NOTE: this pass belonged to the home-v12 template, which is no longer wired up
   (front-page.php only renders template-parts/home-v14.php). Everything above still
   applies site-wide by design choice (kept as-is / no aesthetic change requested).
   The one line removed here was a universal `letter-spacing: 0 !important` reset that
   had no corresponding design rationale anywhere else in the stylesheet and was silently
   cancelling dozens of intentional, more specific letter-spacing rules on every heading
   site-wide (hero titles, section heads, cards) purely because it happened to load after
   them with !important. That's the one change kept from this otherwise-inert pass. */

body.lautz-premium-theme::before {
  background:
    linear-gradient(rgba(182,188,197,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(229,232,236,.026) 1px, transparent 1px);
  background-size: 96px 96px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.36), transparent 74%);
}

.ld-site-header {
  background: rgba(9,10,12,.9);
  border-bottom-color: rgba(229,232,236,.12);
  backdrop-filter: saturate(1.25) blur(18px);
}

.ld-topbar {
  color: #c9ced5;
  background: rgba(184,50,55,.075);
}

.ld-navbar { min-height: 78px; }
.ld-brand img { width: 228px; filter: drop-shadow(0 14px 22px rgba(0,0,0,.42)); }

.ld-main-nav > a,
.ld-nav-dropdown > button {
  color: #eee7d9;
  border-radius: 8px;
  font-size: 14px;
}

.ld-main-nav > a:hover,
.ld-nav-dropdown:hover > button,
.ld-nav-dropdown > button:focus-visible {
  color: #0b0b0a;
  background: var(--ld-accent);
}

.ld-nav-dropdown > div {
  border-radius: 8px;
  background: rgba(17,19,23,.98);
}

.ld-nav-dropdown a { border-radius: 6px; }

.ld-nav-cta,
.ld-btn {
  border-radius: 8px;
  min-height: 48px;
}

.ld-nav-cta,
.ld-btn--primary {
  color: #111317;
  background: var(--ld-accent);
  border-color: rgba(229,232,236,.4);
  box-shadow: 0 16px 34px rgba(0,0,0,.22);
}

.ld-nav-cta:hover,
.ld-btn--primary:hover {
  color: #0f1114;
  background: #d0d4da;
}

.ld-btn--ghost {
  color: #f4f5f7;
  background: rgba(229,232,236,.055);
  border-color: rgba(229,232,236,.2);
}

.ld-btn--ghost:hover {
  background: rgba(229,232,236,.1);
  border-color: rgba(229,232,236,.34);
}

.ld-page { padding: 34px 0 84px; }
.ld-page--home-v12 { padding-top: 26px; }
.ld-section { padding: 62px 0; }
.ld-section-head { max-width: 820px; margin-bottom: 30px; }
.ld-section-head h2,
.ld-cta-band h2,
.ld-journey-heading h2,
.ld-news-pro-body h2 {
  font-size: 48px !important;
  line-height: 1.05;
}
.ld-section-head p,
.ld-cta-band p {
  color: var(--ld-text-soft);
  font-size: 18px;
}

.ld-eyebrow {
  color: #f4f5f7;
  background: rgba(184,50,55,.16);
  border: 1px solid rgba(184,50,55,.34);
  border-radius: 8px;
  padding: 8px 10px;
  font-size: 12px;
}

.ld-card,
.ld-info-card,
.ld-service-card,
.ld-timebox,
.ld-timetable-card,
.ld-license-card,
.ld-location-card,
.ld-download,
.ld-pricing-card,
.ld-note,
.ld-person-card,
.ld-vehicle-card,
.ld-news-card,
.ld-command-card,
.ld-command-metric,
.ld-journey-shell,
.ld-news-pro-card,
.ld-news-pro-aside,
.ld-online-widget {
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(229,232,236,.068), rgba(229,232,236,.032));
  border-color: rgba(229,232,236,.14);
}

.ld-hero {
  border-radius: 8px;
  border-color: rgba(229,232,236,.14);
  background:
    linear-gradient(135deg, rgba(229,232,236,.075), rgba(229,232,236,.025)),
    var(--ld-surface);
}

.ld-hero::after {
  height: 3px;
  background: linear-gradient(90deg, var(--ld-accent), var(--ld-accent-2), var(--ld-accent-3));
  opacity: 1;
}

.ld-hero h1 {
  font-size: 64px !important;
  line-height: .98;
}

.ld-hero p { color: #eee7d9; }
.ld-hero__image-wrap,
.ld-gallery__item,
.ld-person-card__image,
.ld-vehicle-card__image {
  border-radius: 8px;
}

.ld-hero--v12 {
  grid-template-columns: minmax(0, .94fr) minmax(390px, .86fr);
  min-height: 620px;
  padding: 58px;
  background:
    linear-gradient(135deg, rgba(182,188,197,.16), transparent 38%),
    linear-gradient(145deg, rgba(184,50,55,.12), transparent 58%),
    #121418;
}

.ld-hero--v12 .ld-hero__content { position: relative; z-index: 2; }
.ld-hero--v12 h1 { max-width: 10.5ch; }
.ld-hero--v12 p { max-width: 650px; }

.ld-hero-trust {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 34px;
}

.ld-hero-trust span {
  display: grid;
  gap: 6px;
  min-height: 86px;
  padding: 16px;
  border: 1px solid rgba(229,232,236,.13);
  border-radius: 8px;
  background: rgba(229,232,236,.045);
  color: var(--ld-muted);
  font-weight: 760;
}

.ld-hero-trust strong {
  color: var(--ld-text);
  font-size: 26px;
  line-height: 1;
}

.ld-hero--v12 .ld-hero__media { min-height: 500px; }
.ld-hero--v12 .ld-hero__image-wrap { box-shadow: 0 30px 90px rgba(0,0,0,.42); }
.ld-hero--v12 .ld-hero__image-wrap img {
  filter: saturate(1.05) contrast(1.06);
}

.ld-hero-badge {
  position: absolute;
  right: 18px;
  bottom: 18px;
  width: min(300px, calc(100% - 36px));
  padding: 16px;
  border: 1px solid rgba(229,232,236,.18);
  border-radius: 8px;
  color: #f4f5f7;
  background: rgba(9,10,12,.86);
  backdrop-filter: blur(12px);
  box-shadow: 0 18px 46px rgba(0,0,0,.28);
}

.ld-hero-badge span {
  display: block;
  color: #e05258;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.ld-hero-badge strong {
  display: block;
  margin-top: 6px;
  line-height: 1.25;
}

.ld-v12-contactbar {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.ld-v12-contactbar a {
  display: grid;
  gap: 7px;
  min-width: 0;
  min-height: 92px;
  padding: 18px;
  color: inherit;
  text-decoration: none;
  border: 1px solid rgba(229,232,236,.13);
  border-radius: 8px;
  background: rgba(229,232,236,.045);
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.ld-v12-contactbar a:hover {
  transform: translateY(-2px);
  border-color: rgba(184,50,55,.42);
  background: rgba(184,50,55,.09);
}

.ld-v12-contactbar span {
  color: var(--ld-muted);
  font-size: 13px;
  font-weight: 850;
  text-transform: uppercase;
}

.ld-v12-contactbar strong {
  color: #f4f5f7;
  overflow-wrap: anywhere;
}

.ld-v12-feature-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.ld-v12-feature {
  position: relative;
  display: flex;
  min-height: 280px;
  flex-direction: column;
  padding: 24px;
  color: inherit;
  text-decoration: none;
  border: 1px solid rgba(229,232,236,.13);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(229,232,236,.068), rgba(229,232,236,.032));
  overflow: hidden;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.ld-v12-feature::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg, var(--ld-accent), var(--ld-accent-3), var(--ld-accent-2));
}

.ld-v12-feature:hover {
  transform: translateY(-4px);
  border-color: rgba(229,232,236,.28);
  background: linear-gradient(180deg, rgba(229,232,236,.092), rgba(229,232,236,.042));
}

.ld-v12-feature span {
  color: #e05258;
  font-size: 13px;
  font-weight: 900;
}

.ld-v12-feature h3 {
  margin: 34px 0 10px;
  font-size: 24px;
  line-height: 1.12;
}

.ld-v12-feature p {
  margin: 0;
  color: var(--ld-text-soft);
}

.ld-v12-feature em {
  margin-top: auto;
  color: #111317;
  background: var(--ld-accent);
  border-radius: 8px;
  padding: 10px 12px;
  font-style: normal;
  font-weight: 900;
  text-align: center;
}

.ld-v12-split {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr);
  gap: 16px;
  align-items: stretch;
}

.ld-v12-panel,
.ld-v12-proof-grid article,
.ld-v12-roadmap article {
  border: 1px solid rgba(229,232,236,.13);
  border-radius: 8px;
  background: rgba(229,232,236,.045);
}

.ld-v12-panel { padding: 34px; }
.ld-v12-panel h2,
.ld-v12-roadmap-head h2 {
  margin: 14px 0 0;
  font-size: 48px;
  line-height: 1.05;
}
.ld-v12-panel p {
  color: var(--ld-text-soft);
  font-size: 17px;
  max-width: 72ch;
}

.ld-v12-proof-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.ld-v12-proof-grid article {
  display: flex;
  min-height: 160px;
  flex-direction: column;
  justify-content: space-between;
  padding: 22px;
}

.ld-v12-proof-grid strong {
  color: #e05258;
  font-size: 20px;
}

.ld-v12-proof-grid span {
  color: var(--ld-text-soft);
}

.ld-v12-roadmap-section {
  display: grid;
  grid-template-columns: minmax(280px, .54fr) minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}

.ld-v12-roadmap-head p {
  color: var(--ld-text-soft);
  font-size: 18px;
}

.ld-v12-roadmap {
  display: grid;
  gap: 10px;
}

.ld-v12-roadmap article {
  display: grid;
  grid-template-columns: 58px minmax(0, .38fr) minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 18px;
}

.ld-v12-roadmap span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  color: #10100d;
  background: var(--ld-accent);
  border-radius: 8px;
  font-weight: 950;
}

.ld-v12-roadmap h3 {
  margin: 0;
  font-size: 22px;
}

.ld-v12-roadmap p {
  margin: 0;
  color: var(--ld-text-soft);
}

.ld-v12-gallery-section .ld-gallery {
  padding: 10px;
  border: 1px solid rgba(229,232,236,.1);
  border-radius: 8px;
  background: rgba(229,232,236,.035);
}

.ld-gallery__item {
  min-height: 210px;
  border-color: rgba(229,232,236,.12);
}

.ld-cta-band--v12 {
  border-color: rgba(184,50,55,.28);
  background:
    linear-gradient(135deg, rgba(182,188,197,.13), rgba(184,50,55,.075)),
    rgba(229,232,236,.045);
}

@media (max-width: 1180px) {
  .ld-section-head h2,
  .ld-cta-band h2,
  .ld-journey-heading h2,
  .ld-news-pro-body h2,
  .ld-v12-panel h2,
  .ld-v12-roadmap-head h2 {
    font-size: 40px !important;
  }
  .ld-hero h1 { font-size: 54px !important; }
  .ld-hero--v12,
  .ld-v12-split,
  .ld-v12-roadmap-section {
    grid-template-columns: 1fr;
  }
  .ld-v12-feature-grid,
  .ld-v12-contactbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .ld-container { width: min(100% - 28px, var(--ld-max)); }
  .ld-navbar { min-height: 70px; }
  .ld-brand img { width: 188px; }
  .ld-page--home-v12 { padding-top: 16px; }
  .ld-section { padding: 44px 0; }
  .ld-section-head h2,
  .ld-cta-band h2,
  .ld-journey-heading h2,
  .ld-news-pro-body h2,
  .ld-v12-panel h2,
  .ld-v12-roadmap-head h2 {
    font-size: 31px !important;
  }
  .ld-hero,
  .ld-hero--compact,
  .ld-hero--v12 {
    padding: 24px 18px;
  }
  .ld-hero h1 { font-size: 38px !important; }
  .ld-hero--v12 .ld-hero__media { min-height: 300px; }
  .ld-hero-trust,
  .ld-v12-feature-grid,
  .ld-v12-contactbar,
  .ld-v12-proof-grid {
    grid-template-columns: 1fr;
  }
  .ld-v12-feature { min-height: auto; }
  .ld-v12-panel { padding: 24px; }
  .ld-v12-roadmap article {
    grid-template-columns: 46px minmax(0, 1fr);
    align-items: start;
  }
  .ld-v12-roadmap article p {
    grid-column: 2;
  }
  .ld-v12-roadmap span {
    width: 38px;
    height: 38px;
  }
  .ld-hero-badge {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    margin-top: 12px;
  }
}

/* v12 stable polish: graphite/silver brand system with restrained red detail */
:root {
  --ld-bg: #08090b;
  --ld-bg-soft: #101216;
  --ld-surface: #15171c;
  --ld-surface-2: #1d2026;
  --ld-card: #14171c;
  --ld-card-hover: #20242b;
  --ld-text: #f2f3f5;
  --ld-text-soft: #d4d8de;
  --ld-muted: #9ca3ad;
  --ld-line: rgba(215,220,226,.15);
  --ld-line-strong: rgba(215,220,226,.26);
  --ld-border: rgba(215,220,226,.15);
  --ld-accent: #b8bec7;
  --ld-accent-2: #9f262d;
  --ld-accent-3: #6f7782;
  --ld-accent-soft: rgba(184,190,199,.12);
  --ld-red-soft: rgba(159,38,45,.14);
  --ld-red-line: rgba(159,38,45,.42);
}

body.lautz-premium-theme {
  background:
    linear-gradient(180deg, #08090b 0%, #121418 42%, #090a0c 100%);
}

body.lautz-premium-theme::before {
  background:
    linear-gradient(rgba(215,220,226,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(215,220,226,.024) 1px, transparent 1px);
  background-size: 112px 112px;
}

.ld-site-header {
  background: rgba(8,9,11,.88);
  box-shadow: 0 14px 42px rgba(0,0,0,.28);
}

.ld-topbar {
  color: #bec4cc;
  background: linear-gradient(90deg, rgba(159,38,45,.12), rgba(215,220,226,.035));
}

.ld-main-nav > a,
.ld-nav-dropdown > button {
  color: #d7dbe1;
}

.ld-main-nav > a:hover,
.ld-nav-dropdown:hover > button,
.ld-nav-dropdown > button:focus-visible {
  color: #f5f6f8;
  background: rgba(215,220,226,.095);
  box-shadow: inset 0 -2px 0 var(--ld-accent-2);
}

.ld-nav-cta,
.ld-btn--primary {
  color: #111317;
  background: linear-gradient(180deg, #d8dce2, #aeb5bf);
  border-color: rgba(246,247,248,.45);
  box-shadow: 0 16px 34px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.42);
}

.ld-nav-cta:hover,
.ld-btn--primary:hover {
  background: linear-gradient(180deg, #eef0f3, #bdc3cc);
}

.ld-btn--ghost {
  background: rgba(215,220,226,.052);
  border-color: rgba(215,220,226,.2);
}

.ld-btn--ghost:hover {
  background: rgba(159,38,45,.12);
  border-color: var(--ld-red-line);
}

.ld-eyebrow {
  color: #eef0f3;
  background: rgba(159,38,45,.15);
  border-color: rgba(159,38,45,.34);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07);
}

.ld-hero--v12 {
  min-height: 640px;
  padding: 64px;
  border-color: rgba(215,220,226,.17);
  background:
    linear-gradient(135deg, rgba(215,220,226,.11), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.012)),
    #12151a;
  box-shadow: 0 28px 78px rgba(0,0,0,.34);
}

.ld-hero--v12::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(159,38,45,.26), transparent 1px) left top / 1px 100% no-repeat;
}

.ld-hero::after {
  height: 2px;
  background: linear-gradient(90deg, transparent, #c7ccd3 12%, var(--ld-accent-2) 50%, #7a828d 88%, transparent);
}

.ld-hero h1 {
  color: #f6f7f8;
  text-wrap: balance;
}

.ld-hero p {
  color: #d7dbe1;
}

.ld-hero--v12 .ld-hero__image-wrap {
  border-color: rgba(215,220,226,.18);
  background: #0b0d10;
  box-shadow: 0 34px 90px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,255,255,.08);
}

.ld-hero--v12 .ld-hero__image-wrap img {
  filter: grayscale(.12) saturate(.88) contrast(1.08) brightness(.94);
}

.ld-hero-trust span,
.ld-v12-contactbar a,
.ld-v12-feature,
.ld-v12-panel,
.ld-v12-proof-grid article,
.ld-v12-roadmap article,
.ld-v12-gallery-section .ld-gallery,
.ld-cta-band--v12,
.ld-card,
.ld-info-card,
.ld-service-card,
.ld-person-card,
.ld-vehicle-card,
.ld-license-card,
.ld-location-card,
.ld-news-pro-card,
.ld-news-pro-aside,
.ld-online-widget {
  background: linear-gradient(180deg, rgba(215,220,226,.065), rgba(215,220,226,.028));
  border-color: rgba(215,220,226,.145);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055);
}

.ld-hero-trust strong,
.ld-v12-contactbar strong,
.ld-v12-feature h3,
.ld-v12-panel h2,
.ld-v12-roadmap-head h2,
.ld-v12-roadmap h3 {
  color: #f5f6f8;
}

.ld-hero-badge {
  border-color: rgba(215,220,226,.22);
  background: rgba(12,14,17,.88);
  box-shadow: 0 20px 54px rgba(0,0,0,.34), inset 3px 0 0 var(--ld-accent-2);
}

.ld-hero-badge span,
.ld-v12-feature span,
.ld-v12-proof-grid strong {
  color: #d8464d;
}

.ld-v12-contactbar a:hover,
.ld-v12-feature:hover,
.ld-v12-proof-grid article:hover,
.ld-v12-roadmap article:hover {
  border-color: rgba(215,220,226,.28);
  background:
    linear-gradient(180deg, rgba(215,220,226,.088), rgba(215,220,226,.04)),
    linear-gradient(90deg, rgba(159,38,45,.12), transparent 46%);
}

.ld-v12-feature {
  min-height: 292px;
}

.ld-v12-feature::before {
  height: 2px;
  background: linear-gradient(90deg, #c0c5cd, #737c87 52%, var(--ld-accent-2));
}

.ld-v12-feature em {
  color: #f5f6f8;
  background: rgba(159,38,45,.16);
  border: 1px solid rgba(159,38,45,.35);
}

.ld-v12-feature:hover em {
  background: rgba(159,38,45,.24);
}

.ld-v12-roadmap span {
  color: #f5f6f8;
  background: linear-gradient(180deg, #b1b7c0, #757e89);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.3);
}

.ld-v12-roadmap article:nth-child(2n) span {
  background: linear-gradient(180deg, #b94a50, #8d2229);
}

.ld-cta-band--v12 {
  border-color: rgba(159,38,45,.28);
  background:
    linear-gradient(90deg, rgba(159,38,45,.16), transparent 46%),
    linear-gradient(180deg, rgba(215,220,226,.07), rgba(215,220,226,.032));
}

.ld-gallery__item img {
  filter: grayscale(.08) saturate(.92) contrast(1.05);
}

.ld-gallery__item:hover img {
  filter: grayscale(0) saturate(.98) contrast(1.07);
}

@media (max-width: 760px) {
  .ld-hero--v12 {
    min-height: auto;
    padding: 26px 20px;
  }
}

/* v12.1 final home: reference-inspired, Lautz-branded, production-ready */
.ld-home-final {
  overflow: hidden;
}

.ld-home-final .ld-container {
  display: grid;
  gap: 26px;
}

.ld-home-final .ld-section {
  padding: 44px 0;
}

.ld-home-final .ld-section-head {
  max-width: 880px;
  margin-bottom: 34px;
}

.ld-home-final .ld-section-head h2,
.ld-final-story__copy h2,
.ld-final-cta h2 {
  letter-spacing: 0;
  text-wrap: balance;
}

.ld-final-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(380px, .94fr);
  gap: 42px;
  min-height: 720px;
  padding: 72px 56px 34px;
  border: 1px solid rgba(216,222,230,.17);
  border-radius: 8px;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(159,38,45,.18), rgba(159,38,45,0) 34%),
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.014)),
    #11151b;
  box-shadow: 0 34px 92px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.07);
}

.ld-final-hero::before {
  content: "";
  position: absolute;
  inset: auto 56px 152px 56px;
  height: 1px;
  background: linear-gradient(90deg, rgba(216,222,230,.78), rgba(159,38,45,.72), rgba(216,222,230,0));
  opacity: .55;
  pointer-events: none;
}

.ld-final-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.03) 1px, transparent 1px);
  background-size: 128px 128px;
  mask-image: linear-gradient(135deg, rgba(0,0,0,.55), transparent 62%);
}

.ld-final-hero__copy,
.ld-final-hero__media,
.ld-final-hero__stats {
  position: relative;
  z-index: 1;
}

.ld-final-hero__copy {
  align-self: center;
  max-width: 720px;
}

.ld-final-hero__copy h1 {
  max-width: 10.5ch;
  margin: 20px 0 0;
  color: #f8f9fb;
  font-size: 76px;
  line-height: .95;
  letter-spacing: 0;
  text-wrap: balance;
}

.ld-final-hero__copy p {
  max-width: 650px;
  margin: 26px 0 0;
  color: #d7dce4;
  font-size: 19px;
}

.ld-final-hero .ld-actions {
  margin-top: 34px;
}

.ld-final-hero__media {
  align-self: stretch;
  min-height: 520px;
  border: 1px solid rgba(216,222,230,.17);
  border-radius: 8px;
  overflow: hidden;
  background: #090b0f;
  box-shadow: 0 28px 72px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.08);
}

.ld-final-hero__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: grayscale(.12) saturate(.88) contrast(1.08) brightness(.94);
  transform: scale(1.02);
}

.ld-final-hero__note {
  position: absolute;
  right: 18px;
  bottom: 18px;
  width: min(320px, calc(100% - 36px));
  padding: 16px 18px;
  border: 1px solid rgba(216,222,230,.2);
  border-radius: 8px;
  background: rgba(10,12,16,.88);
  backdrop-filter: blur(14px);
  box-shadow: inset 3px 0 0 rgba(159,38,45,.82);
}

.ld-final-hero__note span,
.ld-final-hero__stats span,
.ld-final-course span,
.ld-final-info span,
.ld-final-step-grid span {
  display: block;
  color: #c6ccd4;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.ld-final-hero__note strong {
  display: block;
  margin-top: 7px;
  color: #fff;
  font-size: 17px;
  line-height: 1.35;
}

.ld-final-hero__stats {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.ld-final-hero__stats a {
  min-height: 98px;
  padding: 18px;
  border: 1px solid rgba(216,222,230,.15);
  border-radius: 8px;
  color: inherit;
  text-decoration: none;
  background: linear-gradient(180deg, rgba(216,222,230,.07), rgba(216,222,230,.025));
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.ld-final-hero__stats a:hover {
  transform: translateY(-2px);
  border-color: rgba(159,38,45,.42);
  background:
    linear-gradient(90deg, rgba(159,38,45,.16), rgba(159,38,45,0) 58%),
    linear-gradient(180deg, rgba(216,222,230,.09), rgba(216,222,230,.032));
}

.ld-final-hero__stats strong {
  display: block;
  margin-top: 8px;
  color: #f8f9fb;
  font-size: 18px;
  line-height: 1.28;
}

.ld-final-course-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.ld-final-course {
  min-height: 468px;
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(216,222,230,.145);
  border-radius: 8px;
  overflow: hidden;
  color: inherit;
  text-decoration: none;
  background: linear-gradient(180deg, rgba(216,222,230,.064), rgba(216,222,230,.026));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055);
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.ld-final-course:hover {
  transform: translateY(-4px);
  border-color: rgba(216,222,230,.32);
  background:
    linear-gradient(180deg, rgba(216,222,230,.09), rgba(216,222,230,.035)),
    linear-gradient(90deg, rgba(159,38,45,.14), rgba(159,38,45,0) 62%);
}

.ld-final-course img {
  width: 100%;
  height: 238px;
  display: block;
  object-fit: cover;
  filter: grayscale(.12) saturate(.9) contrast(1.06);
  transition: transform .3s ease, filter .3s ease;
}

.ld-final-course:hover img {
  transform: scale(1.045);
  filter: grayscale(0) saturate(.98) contrast(1.07);
}

.ld-final-course span {
  margin: 22px 22px 0;
  color: #d94b52;
}

.ld-final-course h3 {
  margin: 10px 22px 0;
  color: #f7f8fa;
  font-size: 24px;
  line-height: 1.15;
  letter-spacing: 0;
}

.ld-final-course p {
  margin: 12px 22px 24px;
  color: #aeb6c1;
}

.ld-final-story {
  display: grid;
  grid-template-columns: minmax(340px, .86fr) minmax(0, 1.14fr);
  gap: 34px;
  align-items: center;
}

.ld-final-story__media {
  min-height: 560px;
  border: 1px solid rgba(216,222,230,.16);
  border-radius: 8px;
  overflow: hidden;
  background: #0a0d11;
  box-shadow: 0 28px 72px rgba(0,0,0,.34);
}

.ld-final-story__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: grayscale(.08) saturate(.92) contrast(1.07);
}

.ld-final-story__copy {
  padding: 44px;
  border: 1px solid rgba(216,222,230,.145);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(159,38,45,.13), rgba(159,38,45,0) 42%),
    linear-gradient(180deg, rgba(216,222,230,.07), rgba(216,222,230,.027));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055);
}

.ld-final-story__copy h2 {
  margin: 18px 0 0;
  color: #f7f8fa;
  font-size: 48px;
  line-height: 1.08;
}

.ld-final-story__copy p {
  margin: 20px 0 0;
  color: #b9c0ca;
  font-size: 18px;
}

.ld-final-proof {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 30px;
}

.ld-final-proof article,
.ld-final-step-grid article,
.ld-final-info article {
  border: 1px solid rgba(216,222,230,.145);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(216,222,230,.06), rgba(216,222,230,.024));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
}

.ld-final-proof article {
  padding: 18px;
}

.ld-final-proof strong {
  display: block;
  color: #fff;
  font-size: 30px;
  line-height: 1;
}

.ld-final-proof span {
  display: block;
  margin-top: 10px;
  color: #aeb6c1;
  font-size: 14px;
  line-height: 1.45;
}

.ld-final-steps {
  position: relative;
}

.ld-final-step-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  counter-reset: lautz-step;
}

.ld-final-step-grid article {
  min-height: 260px;
  padding: 24px;
  position: relative;
  overflow: hidden;
}

.ld-final-step-grid article::after {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 0;
  height: 2px;
  background: linear-gradient(90deg, rgba(216,222,230,.82), rgba(159,38,45,.8), rgba(216,222,230,0));
}

.ld-final-step-grid span {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(216,222,230,.2);
  border-radius: 8px;
  color: #fff;
  background: linear-gradient(180deg, #aeb5bf, #69727d);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22);
}

.ld-final-step-grid article:nth-child(2n) span {
  background: linear-gradient(180deg, #c44a52, #8d2229);
}

.ld-final-step-grid h3 {
  margin: 22px 0 0;
  color: #f8f9fb;
  font-size: 24px;
  line-height: 1.12;
  letter-spacing: 0;
}

.ld-final-step-grid p {
  margin: 14px 0 0;
  color: #adb6c1;
}

.ld-final-info {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.ld-final-info article {
  padding: 28px;
}

.ld-final-info span {
  color: #d94b52;
}

.ld-final-info h3 {
  margin: 12px 0 0;
  color: #fff;
  font-size: 25px;
  line-height: 1.15;
  letter-spacing: 0;
}

.ld-final-info p {
  margin: 14px 0 0;
  color: #aeb6c1;
}

.ld-final-gallery .ld-gallery {
  border-radius: 8px;
}

.ld-final-gallery .ld-gallery__item {
  border-radius: 8px;
  border-color: rgba(216,222,230,.145);
}

.ld-final-cta {
  display: grid;
  justify-items: start;
  gap: 0;
  padding: 58px;
  border: 1px solid rgba(159,38,45,.28);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(159,38,45,.17), rgba(159,38,45,0) 48%),
    linear-gradient(180deg, rgba(216,222,230,.075), rgba(216,222,230,.03));
  box-shadow: 0 24px 70px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.055);
}

.ld-final-cta h2 {
  max-width: 800px;
  margin: 18px 0 0;
  color: #f8f9fb;
  font-size: 52px;
  line-height: 1.06;
}

.ld-final-cta p {
  max-width: 680px;
  margin: 20px 0 0;
  color: #bcc3cd;
  font-size: 18px;
}

.ld-final-cta .ld-actions {
  margin-top: 30px;
}

@media (max-width: 1180px) {
  .ld-final-hero {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .ld-final-hero__copy h1 {
    max-width: 12ch;
    font-size: 62px;
  }

  .ld-final-hero__media {
    min-height: 460px;
  }

  .ld-final-course-grid,
  .ld-final-step-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ld-final-story {
    grid-template-columns: 1fr;
  }

  .ld-final-story__media {
    min-height: 420px;
  }
}

@media (max-width: 860px) {
  .ld-home-final .ld-container {
    gap: 16px;
  }

  .ld-final-hero {
    padding: 34px 22px 22px;
    gap: 26px;
  }

  .ld-final-hero::before {
    inset: auto 22px 128px 22px;
  }

  .ld-final-hero__copy h1 {
    font-size: 46px;
    line-height: 1;
  }

  .ld-final-hero__copy p,
  .ld-final-story__copy p,
  .ld-final-cta p {
    font-size: 16px;
  }

  .ld-final-hero__media {
    min-height: 360px;
  }

  .ld-final-hero__stats,
  .ld-final-course-grid,
  .ld-final-step-grid,
  .ld-final-info,
  .ld-final-proof {
    grid-template-columns: 1fr;
  }

  .ld-final-story__copy,
  .ld-final-cta {
    padding: 28px 22px;
  }

  .ld-final-story__copy h2,
  .ld-final-cta h2 {
    font-size: 36px;
  }
}

@media (max-width: 560px) {
  .ld-final-hero__copy h1 {
    font-size: 38px;
  }

  .ld-final-hero__media {
    min-height: 300px;
  }

  .ld-final-course {
    min-height: auto;
  }

  .ld-final-course img {
    height: 210px;
  }

  .ld-final-step-grid article {
    min-height: auto;
  }
}

/* v12.2 final: Webflow-like motion system and stronger page rhythm */
.ld-home-final--v122 {
  padding-top: 0;
}

.ld-home-final--v122 .ld-final-shell {
  width: min(1400px, calc(100% - 44px));
  margin-inline: auto;
  display: grid;
  gap: 22px;
}

.ld-home-final--v122 .ld-section {
  padding: 74px 0;
}

.ld-home-final--v122 .ld-section-head {
  margin-bottom: 36px;
}

.ld-home-final--v122 .ld-section-head h2 {
  max-width: 970px;
  font-size: 54px;
  line-height: 1.02;
  letter-spacing: 0;
}

.ld-home-final--v122 .ld-section-head p {
  max-width: 720px;
  color: #aeb6c1;
}

.ld-home-final--v122 .ld-final-hero {
  isolation: isolate;
  grid-template-columns: minmax(0, .96fr) minmax(460px, 1.04fr);
  gap: 58px;
  min-height: 720px;
  margin-top: 28px;
  padding: 66px 66px 30px;
  background:
    linear-gradient(120deg, rgba(159,38,45,.2), rgba(159,38,45,0) 31%),
    linear-gradient(100deg, rgba(216,222,230,.09), rgba(216,222,230,0) 58%),
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.016)),
    #10151c;
}

.ld-home-final--v122 .ld-final-hero::before {
  inset: auto 66px 132px 66px;
  height: 2px;
  opacity: .72;
  background: linear-gradient(90deg, rgba(216,222,230,.9), rgba(159,38,45,.9) 34%, rgba(216,222,230,.2) 72%, transparent);
}

.ld-home-final--v122 .ld-final-hero::after {
  z-index: -1;
  opacity: .7;
  animation: ldGridDrift 16s linear infinite;
}

.ld-home-final--v122 .ld-final-hero__copy h1 {
  max-width: 11ch;
  margin-top: 22px;
  color: #fff;
  font-size: 78px;
  line-height: .92;
}

.ld-home-final--v122 .ld-final-hero__copy h1 span {
  display: block;
  opacity: 0;
  transform: translateY(26px);
  animation: ldHeroLine .72s cubic-bezier(.2,.8,.2,1) forwards;
}

.ld-home-final--v122 .ld-final-hero__copy h1 span:nth-child(2) {
  animation-delay: .11s;
}

.ld-home-final--v122 .ld-final-hero__copy h1 span:nth-child(3) {
  animation-delay: .22s;
}

.ld-home-final--v122 .ld-final-hero__copy p,
.ld-home-final--v122 .ld-final-hero .ld-actions,
.ld-final-hero__mini {
  opacity: 0;
  transform: translateY(18px);
  animation: ldFadeUp .7s cubic-bezier(.2,.8,.2,1) forwards;
}

.ld-home-final--v122 .ld-final-hero__copy p {
  animation-delay: .34s;
}

.ld-home-final--v122 .ld-final-hero .ld-actions {
  animation-delay: .46s;
}

.ld-final-hero__mini {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
  animation-delay: .56s;
}

.ld-final-hero__mini span {
  padding: 9px 12px;
  border: 1px solid rgba(216,222,230,.15);
  border-radius: 8px;
  color: #c7ced7;
  font-size: 13px;
  font-weight: 800;
  background: rgba(216,222,230,.045);
}

.ld-final-hero__stage {
  position: relative;
  min-height: 520px;
  align-self: stretch;
  transform-style: preserve-3d;
  opacity: 0;
  transform: translateX(28px) scale(.985);
  animation: ldStageIn .86s cubic-bezier(.2,.8,.2,1) .2s forwards;
}

.ld-final-hero__main-img {
  position: absolute;
  inset: 14px 0 84px 72px;
  width: calc(100% - 72px);
  height: calc(100% - 116px);
  display: block;
  object-fit: cover;
  border: 1px solid rgba(216,222,230,.18);
  border-radius: 8px;
  filter: grayscale(.1) saturate(.94) contrast(1.08);
  box-shadow: 0 38px 92px rgba(0,0,0,.42);
}

.ld-final-hero__vehicle {
  position: absolute;
  left: 0;
  bottom: 26px;
  width: min(460px, 64%);
  height: 215px;
  object-fit: cover;
  border: 1px solid rgba(216,222,230,.2);
  border-radius: 8px;
  filter: grayscale(.1) saturate(.95) contrast(1.08);
  box-shadow: 0 28px 72px rgba(0,0,0,.48);
  animation: ldSoftFloat 5.8s ease-in-out infinite;
}

.ld-final-route {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.ld-final-route::before {
  content: "";
  position: absolute;
  left: 48px;
  right: 42px;
  bottom: 82px;
  height: 3px;
  background: linear-gradient(90deg, transparent, rgba(216,222,230,.65), rgba(159,38,45,.9), transparent);
}

.ld-final-route span {
  position: absolute;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #e0444d;
  box-shadow: 0 0 0 7px rgba(159,38,45,.18);
  animation: ldRoadPulse 1.8s ease-in-out infinite;
}

.ld-final-route span:nth-child(1) {
  left: 20%;
  bottom: 78px;
}

.ld-final-route span:nth-child(2) {
  left: 48%;
  bottom: 78px;
  animation-delay: .25s;
}

.ld-final-route span:nth-child(3) {
  right: 11%;
  bottom: 78px;
  animation-delay: .5s;
}

.ld-final-floating {
  position: absolute;
  max-width: 260px;
  padding: 15px 17px;
  border: 1px solid rgba(216,222,230,.18);
  border-radius: 8px;
  background: rgba(10,12,16,.86);
  backdrop-filter: blur(14px);
  box-shadow: 0 22px 54px rgba(0,0,0,.36), inset 3px 0 0 rgba(159,38,45,.86);
  animation: ldSoftFloat 6.2s ease-in-out infinite;
}

.ld-final-floating--top {
  top: 2px;
  right: 26px;
}

.ld-final-floating--bottom {
  right: 0;
  bottom: 22px;
  animation-delay: .8s;
}

.ld-final-floating span,
.ld-final-marquee span {
  display: block;
  color: #c6ccd4;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.ld-final-floating strong {
  display: block;
  margin-top: 6px;
  color: #fff;
  font-size: 17px;
  line-height: 1.28;
}

.ld-home-final--v122 .ld-final-hero__stats {
  gap: 14px;
}

.ld-home-final--v122 .ld-final-hero__stats a {
  position: relative;
  overflow: hidden;
}

.ld-home-final--v122 .ld-final-hero__stats a::after,
.ld-final-course::after,
.ld-final-info article::after,
.ld-final-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(110deg, transparent 22%, rgba(255,255,255,.12) 45%, transparent 68%);
  transform: translateX(-120%);
  transition: opacity .2s ease;
}

.ld-home-final--v122 .ld-final-hero__stats a:hover::after,
.ld-final-course:hover::after,
.ld-final-info article:hover::after,
.ld-final-cta:hover::after {
  opacity: 1;
  animation: ldShine .82s ease;
}

.ld-final-marquee {
  display: flex;
  gap: 28px;
  overflow: hidden;
  border-block: 1px solid rgba(216,222,230,.12);
  background: rgba(216,222,230,.035);
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.ld-final-marquee div {
  display: flex;
  min-width: max-content;
  gap: 28px;
  padding: 18px 0;
  animation: ldMarquee 26s linear infinite;
}

.ld-final-marquee span {
  position: relative;
  color: #d4d9e0;
  white-space: nowrap;
}

.ld-final-marquee span::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 13px;
  border-radius: 50%;
  background: #c93540;
  box-shadow: 0 0 0 5px rgba(159,38,45,.16);
}

.ld-final-course-stage {
  display: grid;
  grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr);
  gap: 18px;
}

.ld-final-course-stage .ld-final-course {
  position: relative;
  min-height: 0;
  transform-style: preserve-3d;
}

.ld-final-course--featured {
  min-height: 460px;
}

.ld-final-course--featured img {
  height: 280px;
}

.ld-final-course--featured h3 {
  font-size: 27px;
}

.ld-final-course-stack {
  display: grid;
  gap: 14px;
}

.ld-final-course-stack .ld-final-course {
  min-height: 140px;
  display: grid;
  grid-template-columns: 156px minmax(0, 1fr);
  grid-template-rows: auto auto 1fr;
  align-content: start;
}

.ld-final-course-stack .ld-final-course img {
  grid-row: 1 / 4;
  width: 100%;
  height: 100%;
  min-height: 140px;
}

.ld-final-course-stack .ld-final-course span,
.ld-final-course-stack .ld-final-course h3,
.ld-final-course-stack .ld-final-course p {
  margin-left: 16px;
  margin-right: 16px;
}

.ld-final-course-stack .ld-final-course span {
  margin-top: 12px;
  font-size: 11.5px;
}

.ld-final-course-stack .ld-final-course h3 {
  margin-top: 4px;
  font-size: 17px;
}

.ld-final-course-stack .ld-final-course p {
  margin-top: 4px;
  margin-bottom: 12px;
  font-size: 13px;
  line-height: 1.35;
}

.ld-final-road {
  position: relative;
  overflow: hidden;
}

.ld-final-roadline {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.ld-final-roadline::before {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  top: 46px;
  height: 2px;
  background: linear-gradient(90deg, rgba(216,222,230,.25), rgba(159,38,45,.8), rgba(216,222,230,.2));
}

.ld-final-roadline article {
  position: relative;
  min-height: 270px;
  padding: 26px 24px 24px;
  border: 1px solid rgba(216,222,230,.145);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(216,222,230,.065), rgba(216,222,230,.024)),
    #11161d;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
}

.ld-final-roadline span {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(216,222,230,.22);
  border-radius: 50%;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  background: linear-gradient(180deg, #b5bbc4, #6c7480);
  box-shadow: 0 0 0 9px #11161d, inset 0 1px 0 rgba(255,255,255,.24);
}

.ld-final-roadline article:nth-child(2n) span {
  background: linear-gradient(180deg, #c84a52, #8c2229);
}

.ld-final-roadline h3 {
  margin: 34px 0 0;
  color: #f7f8fa;
  font-size: 25px;
  line-height: 1.12;
  letter-spacing: 0;
}

.ld-final-roadline p {
  margin: 14px 0 0;
  color: #aeb6c1;
}

.ld-final-cinema {
  position: relative;
  min-height: 560px;
  display: grid;
  align-items: end;
  overflow: hidden;
  border: 1px solid rgba(216,222,230,.15);
  border-radius: 8px;
  background: #0a0d11;
  box-shadow: 0 34px 90px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.05);
}

.ld-final-cinema > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: grayscale(.14) saturate(.88) contrast(1.12) brightness(.78);
  transform: scale(1.04);
}

.ld-final-cinema::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(8,10,13,.92), rgba(8,10,13,.42) 46%, rgba(8,10,13,.12)),
    linear-gradient(180deg, rgba(8,10,13,.08), rgba(8,10,13,.72));
}

.ld-final-cinema__overlay {
  position: relative;
  z-index: 1;
  max-width: 720px;
  padding: 62px;
}

.ld-final-cinema__overlay h2 {
  margin: 18px 0 0;
  color: #fff;
  font-size: 58px;
  line-height: 1.02;
  letter-spacing: 0;
  text-wrap: balance;
}

.ld-final-cinema__overlay p {
  max-width: 590px;
  margin: 20px 0 0;
  color: #d4d9e0;
  font-size: 18px;
}

.ld-final-cinema__rail {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  border-top: 1px solid rgba(216,222,230,.14);
  background: rgba(216,222,230,.12);
}

.ld-final-cinema__rail article {
  min-height: 104px;
  padding: 22px;
  background: rgba(10,13,17,.78);
  backdrop-filter: blur(12px);
}

.ld-final-cinema__rail span,
.ld-final-reason-grid span {
  color: #d94b52;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .06em;
}

.ld-final-cinema__rail strong {
  display: block;
  margin-top: 10px;
  color: #fff;
  font-size: 21px;
  line-height: 1.1;
}

.ld-final-showcase {
  display: grid;
  grid-template-columns: minmax(420px, .92fr) minmax(0, 1.08fr);
  gap: 28px;
  align-items: stretch;
}

.ld-final-showcase__media {
  min-height: 640px;
  border: 1px solid rgba(216,222,230,.16);
  border-radius: 8px;
  overflow: hidden;
  background: #0a0d11;
  box-shadow: 0 28px 72px rgba(0,0,0,.34);
}

.ld-final-showcase__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: grayscale(.06) saturate(.95) contrast(1.07);
  transform: scale(1.02);
}

.ld-final-showcase__copy {
  display: grid;
  align-content: center;
  padding: 54px;
  border: 1px solid rgba(216,222,230,.145);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(159,38,45,.13), rgba(159,38,45,0) 42%),
    linear-gradient(180deg, rgba(216,222,230,.07), rgba(216,222,230,.027));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055);
}

.ld-final-showcase__copy h2 {
  margin: 18px 0 0;
  color: #f8f9fb;
  font-size: 54px;
  line-height: 1.02;
  letter-spacing: 0;
}

.ld-final-showcase__copy p {
  max-width: 680px;
  margin: 22px 0 0;
  color: #b9c0ca;
  font-size: 18px;
}

.ld-final-reason-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.ld-final-reason-grid article {
  position: relative;
  min-height: 288px;
  padding: 25px 22px;
  overflow: hidden;
  border: 1px solid rgba(216,222,230,.145);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(216,222,230,.06), rgba(216,222,230,.022)),
    #11161d;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.ld-final-reason-grid article::before {
  content: "";
  position: absolute;
  inset: auto 22px 0 22px;
  height: 2px;
  background: linear-gradient(90deg, rgba(216,222,230,.82), rgba(159,38,45,.82), transparent);
}

.ld-final-reason-grid article:hover {
  transform: translateY(-4px);
  border-color: rgba(159,38,45,.34);
  background:
    linear-gradient(90deg, rgba(159,38,45,.12), transparent 62%),
    linear-gradient(180deg, rgba(216,222,230,.08), rgba(216,222,230,.028)),
    #11161d;
}

.ld-final-reason-grid h3 {
  margin: 38px 0 0;
  color: #fff;
  font-size: 25px;
  line-height: 1.1;
  letter-spacing: 0;
}

.ld-final-reason-grid p {
  margin: 14px 0 0;
  color: #aeb6c1;
}

.ld-final-info article {
  position: relative;
  overflow: hidden;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.ld-final-info article:hover {
  transform: translateY(-4px);
  border-color: rgba(159,38,45,.34);
}

.ld-final-gallery .ld-gallery {
  gap: 14px;
}

.ld-final-gallery .ld-gallery__item {
  transform: translateZ(0);
}

.ld-final-gallery .ld-gallery__item:nth-child(3n) {
  transform: translateY(22px);
}

.ld-home-final--v122 .ld-final-cta {
  position: relative;
  overflow: hidden;
  min-height: 390px;
  align-content: center;
  background:
    linear-gradient(90deg, rgba(159,38,45,.22), rgba(159,38,45,0) 54%),
    linear-gradient(180deg, rgba(216,222,230,.085), rgba(216,222,230,.028)),
    #11161d;
}

.ld-home-final--v122 .ld-final-cta h2 {
  max-width: 960px;
  font-size: 62px;
}

.ld-final-reveal {
  opacity: 0;
  transform: translateY(34px);
}

.ld-final-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
  transition: opacity .76s ease, transform .76s cubic-bezier(.2,.8,.2,1);
}

.ld-final-reveal.is-visible .ld-final-course,
.ld-final-reveal.is-visible .ld-final-roadline article,
.ld-final-reveal.is-visible .ld-final-reason-grid article,
.ld-final-reveal.is-visible .ld-final-info article,
.ld-final-reveal.is-visible .ld-gallery__item {
  animation: ldFadeUp .72s cubic-bezier(.2,.8,.2,1) both;
}

.ld-final-reveal.is-visible .ld-final-course:nth-child(2),
.ld-final-reveal.is-visible .ld-final-roadline article:nth-child(2),
.ld-final-reveal.is-visible .ld-final-reason-grid article:nth-child(2),
.ld-final-reveal.is-visible .ld-final-info article:nth-child(2),
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(2) {
  animation-delay: .08s;
}

.ld-final-reveal.is-visible .ld-final-course:nth-child(3),
.ld-final-reveal.is-visible .ld-final-roadline article:nth-child(3),
.ld-final-reveal.is-visible .ld-final-reason-grid article:nth-child(3),
.ld-final-reveal.is-visible .ld-final-info article:nth-child(3),
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(3) {
  animation-delay: .16s;
}

.ld-final-reveal.is-visible .ld-final-roadline article:nth-child(4),
.ld-final-reveal.is-visible .ld-final-reason-grid article:nth-child(4),
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(4) {
  animation-delay: .24s;
}

.ld-final-reveal.is-visible .ld-final-reason-grid article:nth-child(5) {
  animation-delay: .32s;
}

@keyframes ldHeroLine {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes ldFadeUp {
  from {
    opacity: 0;
    transform: translateY(22px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes ldStageIn {
  to {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}

@keyframes ldSoftFloat {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-12px);
  }
}

@keyframes ldRoadPulse {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 7px rgba(159,38,45,.16);
  }
  50% {
    transform: scale(1.18);
    box-shadow: 0 0 0 13px rgba(159,38,45,.06);
  }
}

@keyframes ldMarquee {
  to {
    transform: translateX(calc(-100% - 28px));
  }
}

@keyframes ldGridDrift {
  to {
    background-position: 128px 128px;
  }
}

@keyframes ldShine {
  to {
    transform: translateX(120%);
  }
}

@media (max-width: 1180px) {
  .ld-home-final--v122 .ld-final-hero {
    grid-template-columns: 1fr;
    padding: 54px 34px 28px;
  }

  .ld-final-hero__stage {
    min-height: 560px;
  }

  .ld-final-course-stage,
  .ld-final-showcase {
    grid-template-columns: 1fr;
  }

  .ld-final-course--featured {
    min-height: auto;
  }

  .ld-final-roadline {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ld-final-roadline::before {
    display: none;
  }

  .ld-final-reason-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .ld-home-final--v122 .ld-final-shell {
    width: min(100% - 28px, 1400px);
  }

  .ld-home-final--v122 .ld-section {
    padding: 46px 0;
  }

  .ld-home-final--v122 .ld-section-head h2,
  .ld-final-showcase__copy h2,
  .ld-home-final--v122 .ld-final-cta h2 {
    font-size: 38px;
    line-height: 1.07;
  }

  .ld-home-final--v122 .ld-final-hero {
    gap: 26px;
    padding: 28px 22px 22px;
  }

  .ld-home-final--v122 .ld-final-hero__copy h1 {
    font-size: 40px;
    line-height: 1;
  }

  .ld-home-final--v122 .ld-final-hero__copy p {
    margin-top: 20px;
  }

  .ld-final-hero__mini {
    margin-top: 18px;
  }

  .ld-final-hero__stage {
    min-height: 420px;
  }

  .ld-final-hero__main-img {
    inset: 0 0 86px 0;
    width: 100%;
    height: calc(100% - 86px);
  }

  .ld-final-hero__vehicle {
    width: 72%;
    height: 154px;
  }

  .ld-final-floating {
    display: none;
  }

  .ld-final-course-stack .ld-final-course {
    grid-template-columns: 1fr;
  }

  .ld-final-course-stack .ld-final-course img,
  .ld-final-course--featured img {
    height: 240px;
    min-height: 0;
  }

  .ld-final-roadline,
  .ld-final-info,
  .ld-final-reason-grid,
  .ld-final-proof {
    grid-template-columns: 1fr;
  }

  .ld-final-cinema {
    min-height: 620px;
  }

  .ld-final-cinema__overlay {
    padding: 32px 22px;
  }

  .ld-final-cinema__overlay h2 {
    font-size: 38px;
    line-height: 1.07;
  }

  .ld-final-cinema__rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ld-final-showcase__media {
    min-height: 360px;
  }

  .ld-final-showcase__copy {
    padding: 28px 22px;
  }
}

@media (max-width: 560px) {
  .ld-home-final--v122 .ld-final-hero__copy h1 {
    font-size: 38px;
  }

  .ld-final-hero__stage {
    min-height: 340px;
  }

  .ld-final-hero__vehicle {
    height: 128px;
  }

  .ld-final-marquee div {
    animation-duration: 18s;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ld-home-final--v122 *,
  .ld-home-final--v122 *::before,
  .ld-home-final--v122 *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }

  .ld-final-reveal,
  .ld-final-hero__copy h1 span,
  .ld-final-hero__copy p,
  .ld-final-hero .ld-actions,
  .ld-final-hero__mini,
  .ld-final-hero__stage {
    opacity: 1;
    transform: none;
  }
}

/* v14 Cockpit Edition */
:root {
  --ld-v14-red: #e0202c;
  --ld-v14-red-dark: #8b1119;
  --ld-v14-black: #030405;
  --ld-v14-panel: #101214;
  --ld-v14-metal: #bfc5cc;
}

body.lautz-premium-theme {
  background:
    linear-gradient(180deg, #020304 0%, #090b0e 46%, #030405 100%);
}

.ld-site-header--v14 {
  position: sticky;
  top: 0;
  z-index: 100;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.admin-bar .ld-site-header--v14 {
  top: 32px;
}

.ld-v14-nav-shell {
  width: min(1680px, calc(100% - 20px));
  margin: 14px auto 0;
  position: relative;
}

.ld-v14-nav-panel {
  position: relative;
  min-height: 104px;
  display: grid;
  grid-template-columns: 1fr 250px 1fr;
  align-items: center;
  gap: 18px;
  padding: 0 34px;
  border: 1px solid rgba(255,255,255,.17);
  border-bottom-color: rgba(224,32,44,.34);
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.018)),
    linear-gradient(90deg, rgba(224,32,44,.12), transparent 22%, transparent 78%, rgba(224,32,44,.12)),
    rgba(6,7,8,.94);
  clip-path: polygon(2.8% 0, 44% 0, 47% 100%, 53% 100%, 56% 0, 97.2% 0, 100% 50%, 97.2% 100%, 64% 100%, 60% 100%, 56% 100%, 53% 100%, 47% 100%, 44% 100%, 40% 100%, 36% 100%, 2.8% 100%, 0 50%);
  box-shadow: 0 20px 58px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.1);
}

.ld-v14-nav-panel::before {
  content: "";
  position: absolute;
  inset: 8px;
  pointer-events: none;
  border: 1px solid rgba(255,255,255,.09);
  border-bottom-color: rgba(224,32,44,.24);
  clip-path: inherit;
}

.ld-v14-nav {
  display: flex;
  align-items: center;
  gap: 28px;
  position: relative;
  z-index: 2;
}

.ld-v14-nav--left {
  justify-content: flex-start;
  padding-left: 52px;
}

.ld-v14-nav--right {
  justify-content: flex-end;
  padding-right: 20px;
}

.ld-v14-nav > a,
.ld-v14-dropdown > button {
  appearance: none;
  border: 0;
  background: transparent;
  color: #f4f5f6;
  font: 950 14px/1 Inter, ui-sans-serif, system-ui, sans-serif;
  text-transform: uppercase;
  letter-spacing: .02em;
  text-decoration: none;
  padding: 18px 0;
  border-radius: 0;
  cursor: pointer;
  transition: color .16s ease, text-shadow .16s ease;
}

.ld-v14-nav > a:hover,
.ld-v14-nav > a.is-active,
.ld-v14-dropdown:hover > button {
  color: var(--ld-v14-red);
  text-shadow: 0 0 18px rgba(224,32,44,.32);
}

.ld-v14-nav > a.is-active::after {
  content: "";
  display: block;
  height: 2px;
  margin-top: 18px;
  background: linear-gradient(90deg, transparent, var(--ld-v14-red), transparent);
}

.ld-v14-dropdown > div {
  top: calc(100% + 6px);
  background: rgba(7,8,10,.98);
  border-color: rgba(224,32,44,.32);
  border-radius: 8px;
}

.ld-v14-brand {
  align-self: stretch;
  position: relative;
  z-index: 3;
  display: grid;
  justify-items: center;
  align-content: start;
  text-decoration: none;
  pointer-events: auto;
}

.ld-v14-wheel {
  width: 122px;
  height: 122px;
  display: grid;
  place-items: center;
  margin-top: -42px;
  border: 2px solid rgba(224,32,44,.5);
  border-radius: 50%;
  background:
    linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.02)),
    #050607;
  box-shadow: 0 18px 42px rgba(0,0,0,.62), 0 0 0 7px rgba(0,0,0,.72), inset 0 0 24px rgba(255,255,255,.07);
  overflow: hidden;
}

.ld-v14-wheel img {
  width: 112%;
  height: 112%;
  object-fit: cover;
  mix-blend-mode: multiply;
  filter: contrast(1.24) brightness(.9);
  opacity: .92;
}

.ld-v14-wheel::after {
  content: "ML";
  position: absolute;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.34);
  border-radius: 50%;
  color: #fff;
  font-weight: 950;
  background: #111;
  box-shadow: inset 0 0 18px rgba(255,255,255,.08);
}

.ld-v14-brand-text {
  width: 250px;
  margin-top: 8px;
  display: grid;
  justify-items: center;
  filter: drop-shadow(0 12px 28px rgba(0,0,0,.75));
}

.ld-v14-brand-text img {
  width: 238px;
  display: block;
}

.ld-v14-cta {
  min-width: 218px;
  justify-content: center;
  padding: 18px 28px !important;
  color: #fff !important;
  background: linear-gradient(180deg, #f03540, #a70f18) !important;
  clip-path: polygon(9% 0, 100% 0, 91% 100%, 0 100%);
  box-shadow: 0 0 28px rgba(224,32,44,.28), inset 0 1px 0 rgba(255,255,255,.24);
}

.ld-v14-cta::after {
  content: "›";
  margin-left: 18px;
  font-size: 24px;
  line-height: 0;
}

.ld-v14-menu-toggle {
  display: none;
  position: relative;
  z-index: 4;
}

.ld-home-final--v14 {
  padding-top: 0;
}

.ld-home-final--v14 .ld-final-shell {
  width: min(1680px, calc(100% - 24px));
  margin-inline: auto;
}

.ld-home-final--v14 .ld-final-hero {
  position: relative;
  isolation: isolate;
  min-height: 760px;
  margin-top: 18px;
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(560px, 1.12fr);
  align-items: center;
  gap: 18px;
  padding: 76px 78px 142px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 8px;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(3,4,5,.98) 0%, rgba(7,8,10,.92) 43%, rgba(7,8,10,.58) 64%, rgba(3,4,5,.94) 100%),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.012)),
    #030405;
  box-shadow: 0 28px 80px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,255,255,.08);
}

.ld-home-final--v14 .ld-final-hero::before {
  content: "";
  position: absolute;
  right: -130px;
  top: 92px;
  width: 560px;
  height: 560px;
  opacity: .34;
  pointer-events: none;
  border-radius: 50%;
  background:
    repeating-conic-gradient(from -24deg, rgba(224,32,44,.52) 0 2deg, transparent 2deg 8deg),
    radial-gradient(circle, transparent 0 47%, rgba(255,255,255,.14) 48% 49%, transparent 50%);
  mask-image: linear-gradient(90deg, transparent, #000 25%, #000 88%, transparent);
}

.ld-home-final--v14 .ld-final-hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 116px;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(224,32,44,.3), rgba(255,255,255,.62), rgba(224,32,44,.9), transparent);
  animation: ldV14Scan 2.8s linear infinite;
}

.ld-home-final--v14 .ld-final-hero__copy {
  position: relative;
  z-index: 4;
  max-width: 710px;
}

.ld-home-final--v14 .ld-eyebrow {
  border-color: rgba(224,32,44,.42);
  border-left-width: 0;
  color: #ff343f;
  background: rgba(224,32,44,.105);
  border-radius: 8px;
  transform: skewX(-10deg);
}

.ld-home-final--v14 .ld-final-hero__copy h1 {
  max-width: 820px;
  margin: 24px 0 0;
  font-size: 82px;
  line-height: .93;
  letter-spacing: 0;
  text-transform: uppercase;
  font-style: italic;
}

.ld-home-final--v14 .ld-final-hero__copy h1 span {
  display: block;
  color: #fff;
  text-shadow: 0 18px 34px rgba(0,0,0,.66);
}

.ld-home-final--v14 .ld-final-hero__copy h1 span:nth-child(2) {
  color: #f02531;
  text-shadow: 0 0 24px rgba(224,32,44,.3), 0 18px 34px rgba(0,0,0,.66);
}

.ld-home-final--v14 .ld-final-hero__copy p {
  max-width: 650px;
  margin-top: 28px;
  color: #d4d8dd;
  font-size: 20px;
}

.ld-home-final--v14 .ld-final-hero .ld-actions {
  margin-top: 36px;
}

.ld-home-final--v14 .ld-btn {
  border-radius: 0;
  min-height: 58px;
  padding-inline: 34px;
  text-transform: uppercase;
  clip-path: polygon(7% 0, 100% 0, 93% 100%, 0 100%);
}

.ld-home-final--v14 .ld-btn--primary {
  background: linear-gradient(180deg, #f03540, #a70f18);
  border-color: rgba(255,255,255,.18);
  box-shadow: 0 0 30px rgba(224,32,44,.32), inset 0 1px 0 rgba(255,255,255,.2);
}

.ld-home-final--v14 .ld-final-hero__mini {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: 38px;
  max-width: 760px;
}

.ld-home-final--v14 .ld-final-hero__mini span {
  min-height: 76px;
  display: grid;
  align-content: center;
  padding: 14px 22px;
  border: 0;
  border-right: 1px solid rgba(224,32,44,.42);
  border-radius: 0;
  color: #fff;
  background: transparent;
}

.ld-home-final--v14 .ld-final-hero__mini span::before {
  content: "";
  width: 32px;
  height: 32px;
  margin-bottom: 8px;
  border: 2px solid var(--ld-v14-red);
  border-radius: 50%;
  box-shadow: 0 0 16px rgba(224,32,44,.24);
}

.ld-home-final--v14 .ld-final-hero__stage {
  position: relative;
  z-index: 2;
  min-height: 570px;
  align-self: stretch;
}

.ld-home-final--v14 .ld-final-hero__main-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .23;
  filter: grayscale(1) contrast(1.24) brightness(.58);
  border: 0;
  box-shadow: none;
}

.ld-final-car-wrap {
  position: absolute;
  z-index: 5;
  right: -5%;
  bottom: 46px;
  width: min(920px, 112%);
  pointer-events: none;
  animation: ldV14CarEnter 1.18s cubic-bezier(.16,.84,.2,1) both, ldV14CarIdle 5.8s ease-in-out 1.18s infinite;
}

.ld-final-hero__drivecar {
  position: relative;
  z-index: 2;
  width: 100%;
  display: block;
  filter: drop-shadow(0 32px 44px rgba(0,0,0,.72)) contrast(1.05) saturate(.96);
  clip-path: polygon(5% 45%, 13% 36%, 31% 25%, 45% 15%, 80% 15%, 95% 30%, 98% 53%, 95% 72%, 84% 81%, 70% 76%, 31% 76%, 18% 82%, 8% 72%);
}

.ld-final-car-shadow {
  position: absolute;
  z-index: 1;
  left: 12%;
  right: 9%;
  bottom: 7%;
  height: 24px;
  border-radius: 50%;
  background: rgba(0,0,0,.72);
  filter: blur(16px);
}

.ld-final-speedlines {
  position: absolute;
  z-index: 1;
  right: 10%;
  left: 4%;
  bottom: 145px;
  display: grid;
  gap: 20px;
  pointer-events: none;
}

.ld-final-speedlines span {
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(224,32,44,.86), rgba(255,255,255,.62), transparent);
  transform: skewX(-18deg);
  animation: ldV14Speed 1.1s linear infinite;
}

.ld-final-speedlines span:nth-child(2) {
  width: 76%;
  animation-delay: .16s;
}

.ld-final-speedlines span:nth-child(3) {
  width: 54%;
  animation-delay: .32s;
}

.ld-home-final--v14 .ld-final-floating {
  z-index: 7;
  border-color: rgba(224,32,44,.42);
  background: rgba(6,7,9,.86);
}

.ld-home-final--v14 .ld-final-floating--top {
  top: 36px;
  right: 44px;
}

.ld-home-final--v14 .ld-final-floating--bottom {
  right: 52px;
  bottom: 92px;
}

.ld-home-final--v14 .ld-final-route {
  display: none;
}

.ld-home-final--v14 .ld-final-hero__stats {
  position: absolute;
  z-index: 8;
  left: 10%;
  right: 10%;
  bottom: -1px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  padding: 26px 42px;
  border: 1px solid rgba(255,255,255,.14);
  border-bottom: 0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.018)),
    rgba(5,6,7,.95);
  clip-path: polygon(7% 0, 93% 0, 100% 100%, 0 100%);
  box-shadow: 0 -24px 60px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,255,255,.08);
}

.ld-home-final--v14 .ld-final-hero__stats a {
  min-height: 78px;
  display: grid;
  align-content: center;
  padding: 0 26px;
  border: 0;
  border-right: 1px solid rgba(255,255,255,.18);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.ld-home-final--v14 .ld-final-hero__stats a:last-child {
  border-right: 0;
}

.ld-home-final--v14 .ld-final-hero__stats span {
  color: #9da3aa;
}

.ld-home-final--v14 .ld-final-hero__stats strong {
  color: #fff;
  font-size: 21px;
  text-transform: uppercase;
}

.ld-home-final--v14 .ld-section-head {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, 780px) minmax(240px, 1fr);
  align-items: end;
  gap: 34px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,.12);
}

.ld-home-final--v14 .ld-section-head h2 {
  max-width: 820px;
  font-size: 50px;
  line-height: 1.04;
  text-transform: uppercase;
}

.ld-home-final--v14 .ld-section-head p {
  max-width: 520px;
  justify-self: end;
}

.ld-home-final--v14 .ld-final-course,
.ld-home-final--v14 .ld-final-roadline article,
.ld-home-final--v14 .ld-final-reason-grid article,
.ld-home-final--v14 .ld-final-info article,
.ld-home-final--v14 .ld-final-proof article {
  border-radius: 8px;
  border-color: rgba(255,255,255,.14);
  background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.018)),
    #101214;
}

body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero,
.ld-hero {
  grid-template-columns: minmax(0, .98fr) minmax(300px, .72fr);
  gap: 30px;
  align-items: center;
  border-radius: 8px;
  overflow: hidden;
}

.ld-hero__content {
  position: relative;
  z-index: 3;
  min-width: 0;
}

.ld-hero h1 {
  max-width: 850px;
  overflow-wrap: anywhere;
  hyphens: auto;
  letter-spacing: 0 !important;
  font-size: 58px !important;
  line-height: 1.02;
}

.ld-hero__media {
  z-index: 1;
  min-width: 0;
}

.ld-hero__image-wrap {
  border-radius: 8px !important;
}

.ld-contact-strip,
.ld-stats,
.ld-command-metrics,
.ld-journey-links {
  align-items: stretch;
}

.ld-contact-strip a,
.ld-stats article,
.ld-command-metric,
.ld-journey-links a {
  min-height: 104px;
  display: grid;
  align-content: center;
  border-radius: 8px !important;
}

@keyframes ldV14CarEnter {
  from {
    opacity: 0;
    transform: translateX(44%) translateY(16px) scale(.96);
  }
  to {
    opacity: 1;
    transform: translateX(0) translateY(0) scale(1);
  }
}

@keyframes ldV14CarIdle {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-7px);
  }
}

@keyframes ldV14Speed {
  from {
    opacity: 0;
    transform: translateX(-22%) skewX(-18deg);
  }
  35% {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translateX(18%) skewX(-18deg);
  }
}

@keyframes ldV14Scan {
  0%, 100% {
    opacity: .25;
  }
  50% {
    opacity: .95;
  }
}

@media (max-width: 1220px) {
  .ld-v14-nav-panel {
    grid-template-columns: 1fr auto;
    min-height: 88px;
  }

  .ld-v14-nav {
    display: none;
  }

  .ld-v14-brand {
    justify-items: start;
    align-content: center;
  }

  .ld-v14-wheel {
    width: 78px;
    height: 78px;
    margin-top: 0;
  }

  .ld-v14-brand-text {
    display: none;
  }

  .ld-v14-menu-toggle {
    display: flex;
    justify-self: end;
  }

  .ld-home-final--v14 .ld-final-hero {
    grid-template-columns: 1fr;
    padding: 54px 34px 132px;
  }

  .ld-final-car-wrap {
    width: min(860px, 98%);
    right: 0;
  }

  .ld-home-final--v14 .ld-section-head {
    grid-template-columns: 1fr;
  }

  .ld-home-final--v14 .ld-section-head p {
    justify-self: start;
  }
}

@media (max-width: 760px) {
  .ld-v14-nav-shell {
    width: min(100% - 16px, 1680px);
    margin-top: 8px;
  }

  .ld-v14-nav-panel {
    min-height: 74px;
    padding: 0 18px;
    clip-path: polygon(5% 0, 95% 0, 100% 50%, 95% 100%, 5% 100%, 0 50%);
  }

  .ld-home-final--v14 .ld-final-hero {
    min-height: auto;
    margin-top: 8px;
    padding: 34px 22px 420px;
  }

  .ld-home-final--v14 .ld-final-hero__copy h1 {
    font-size: 46px;
  }

  .ld-home-final--v14 .ld-final-hero__copy p {
    font-size: 16px;
  }

  .ld-home-final--v14 .ld-final-hero__mini {
    grid-template-columns: 1fr;
  }

  .ld-home-final--v14 .ld-final-hero__mini span {
    min-height: 58px;
    border-right: 0;
    border-bottom: 1px solid rgba(224,32,44,.26);
  }

  .ld-final-car-wrap {
    width: 720px;
    right: -280px;
    bottom: 118px;
  }

  .ld-home-final--v14 .ld-final-floating {
    display: none;
  }

  .ld-home-final--v14 .ld-final-hero__stats {
    left: 0;
    right: 0;
    grid-template-columns: 1fr;
    padding: 16px 22px;
    clip-path: none;
  }

  .ld-home-final--v14 .ld-final-hero__stats a {
    min-height: 60px;
    padding: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.12);
  }

  .ld-home-final--v14 .ld-section-head h2,
  .ld-hero h1 {
    font-size: 36px !important;
  }

  .ld-hero {
    grid-template-columns: 1fr;
    padding: 28px 22px !important;
  }
}

/* v14 asset pass: local SVG cockpit details */
.ld-v14-wheel img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: normal;
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.55));
  opacity: 1;
}

.ld-home-final--v14 .ld-final-hero::before {
  background: url("../img/v14/speedometer.svg") center / contain no-repeat;
}

.ld-home-final--v14 .ld-final-hero__mini span::before {
  border: 0;
  border-radius: 0;
  background: center / contain no-repeat;
  box-shadow: none;
  filter: drop-shadow(0 0 14px rgba(224,32,44,.34));
}

.ld-home-final--v14 .ld-final-hero__mini span:nth-child(1)::before { background-image: url("../img/v14/icons/speedometer.svg"); }
.ld-home-final--v14 .ld-final-hero__mini span:nth-child(2)::before { background-image: url("../img/v14/icons/shield.svg"); }
.ld-home-final--v14 .ld-final-hero__mini span:nth-child(3)::before { background-image: url("../img/v14/icons/flag.svg"); }

.ld-final-speedlines {
  min-height: 190px;
  display: block;
  background: url("../img/v14/speed-lines.svg") center / 100% auto no-repeat;
  opacity: .78;
  animation: ldV14SpeedBg 1.4s linear infinite;
}

.ld-final-speedlines span {
  display: none;
}

.ld-home-final--v14 .ld-final-hero__stats a::before {
  content: "";
  width: 38px;
  height: 38px;
  margin-bottom: 8px;
  background: center / contain no-repeat;
  filter: drop-shadow(0 0 12px rgba(224,32,44,.28));
}

.ld-home-final--v14 .ld-final-hero__stats a:nth-child(1)::before { background-image: url("../img/v14/icons/award.svg"); }
.ld-home-final--v14 .ld-final-hero__stats a:nth-child(2)::before { background-image: url("../img/v14/icons/users.svg"); }
.ld-home-final--v14 .ld-final-hero__stats a:nth-child(3)::before { background-image: url("../img/v14/icons/location.svg"); }
.ld-home-final--v14 .ld-final-hero__stats a:nth-child(4)::before { background-image: url("../img/v14/icons/star.svg"); }

@keyframes ldV14SpeedBg {
  0%, 100% { transform: translateX(-12px); }
  50% { transform: translateX(12px); }
}

/* v14 cockpit finishing layer */
body.lautz-premium-theme::before {
  background:
    radial-gradient(circle at 78% 18%, rgba(224,32,44,.18), transparent 28%),
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.07), transparent 30%),
    url("../img/v14/carbon-pattern.svg") 0 0 / 82px 82px,
    linear-gradient(135deg, #030405 0%, #0c0e11 48%, #050607 100%);
  opacity: .96;
}

.ld-home-final--v14 .ld-final-hero {
  background-image:
    linear-gradient(110deg, rgba(8,9,11,.96) 0%, rgba(8,9,11,.87) 45%, rgba(8,9,11,.52) 100%),
    radial-gradient(circle at 76% 36%, rgba(224,32,44,.2), transparent 28%),
    url("../img/v14/carbon-pattern.svg");
  background-size: auto, auto, 78px 78px;
}

.ld-v14-nav-panel::after {
  background:
    linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent),
    linear-gradient(180deg, rgba(224,32,44,.34), transparent 42%, rgba(224,32,44,.2));
}

.ld-home-final--v14 .ld-final-hero__copy h1 span:first-child {
  text-shadow: 0 12px 34px rgba(0,0,0,.72), 0 0 1px rgba(255,255,255,.8);
}

.ld-home-final--v14 .ld-final-hero__copy h1 span:last-child {
  color: #f23139;
  text-shadow: 0 12px 34px rgba(0,0,0,.8), 0 0 24px rgba(224,32,44,.24);
}

.ld-home-final--v14 .ld-final-hero__stats a {
  gap: 2px;
}

.ld-home-final--v14 .ld-final-hero__stats strong {
  max-width: 170px;
  line-height: 1.08;
}

@media (max-width: 760px) {
  .ld-home-final--v14 .ld-final-hero__stats a::before {
    margin-bottom: 0;
  }
}

/* v14 visual QA corrections */
.ld-v14-nav-panel {
  overflow: visible;
  clip-path: none;
  border-radius: 8px;
}

.ld-v14-nav-panel::before {
  clip-path: polygon(2.8% 0, 44% 0, 47% 100%, 53% 100%, 56% 0, 97.2% 0, 100% 50%, 97.2% 100%, 56% 100%, 53% 100%, 47% 100%, 44% 100%, 2.8% 100%, 0 50%);
  inset: 6px;
}

.ld-v14-brand {
  align-content: center;
  margin-top: -34px;
}

.ld-v14-wheel {
  margin-top: 0;
  width: 136px;
  height: 136px;
  background:
    radial-gradient(circle at 50% 44%, rgba(255,255,255,.16), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.02)),
    #050607;
}

.ld-v14-brand-text {
  margin-top: -2px;
  padding: 8px 22px 11px;
  border: 1px solid rgba(255,255,255,.11);
  border-top: 0;
  background: linear-gradient(180deg, rgba(7,8,10,.94), rgba(7,8,10,.68));
  clip-path: polygon(8% 0, 92% 0, 100% 100%, 0 100%);
}

.ld-final-car-wrap {
  right: -2%;
  bottom: 92px;
  width: min(820px, 104%);
}

.ld-final-hero__drivecar {
  clip-path: none;
  filter: drop-shadow(0 32px 44px rgba(0,0,0,.74)) contrast(1.07) saturate(.98);
}

@media (max-width: 1220px) {
  .ld-v14-brand {
    margin-top: 0;
  }

  .ld-v14-wheel {
    width: 78px;
    height: 78px;
  }

  .ld-final-car-wrap {
    right: -6%;
    bottom: 88px;
    width: min(820px, 112%);
  }
}

@media (max-width: 760px) {
  .ld-final-car-wrap {
    right: -230px;
    bottom: 124px;
    width: 680px;
  }
}

/* v14 mobile stability pass */
html,
body {
  overflow-x: hidden;
}

@media (max-width: 1220px) {
  .ld-v14-brand-text {
    display: none !important;
  }
}

@media (max-width: 760px) {
  .ld-v14-nav-panel {
    overflow: hidden;
  }

  .ld-v14-brand {
    justify-items: start;
  }

  .ld-mobile-panel {
    max-width: 92vw;
  }
}

/* v14 compact fit pass */
.ld-v14-nav-shell {
  width: min(1500px, calc(100% - 28px));
  margin-top: 10px;
}

.ld-v14-nav-panel {
  min-height: 88px;
  grid-template-columns: minmax(0, 1fr) 190px minmax(0, 1fr);
  gap: clamp(10px, 1.2vw, 18px);
  padding: 0 clamp(18px, 2vw, 28px);
}

.ld-v14-nav {
  gap: clamp(16px, 2vw, 28px);
}

.ld-v14-nav--left {
  padding-left: clamp(12px, 2.4vw, 42px);
}

.ld-v14-nav--right {
  padding-right: clamp(8px, 1.4vw, 18px);
}

.ld-v14-nav > a,
.ld-v14-dropdown > button {
  font-size: 13px;
  padding: 13px 0;
}

.ld-v14-cta {
  min-width: 184px;
  padding: 15px 22px !important;
}

.ld-v14-brand {
  margin-top: -20px;
  align-content: center;
}

.ld-v14-wheel {
  width: 104px;
  height: 104px;
  box-shadow: 0 14px 34px rgba(0,0,0,.58), 0 0 0 5px rgba(0,0,0,.7), inset 0 0 22px rgba(255,255,255,.06);
}

.ld-v14-wheel::after {
  width: 34px;
  height: 34px;
  font-size: 13px;
}

.ld-v14-brand-text {
  width: 190px;
  margin-top: -4px;
  padding: 5px 18px 8px;
}

.ld-v14-brand-text img {
  width: 176px;
}

.ld-home-final--v14 .ld-final-hero {
  width: min(1500px, calc(100vw - 28px));
  min-height: clamp(720px, 78vh, 840px);
  margin-inline: auto;
  padding: clamp(46px, 5vw, 70px) clamp(34px, 5vw, 72px) clamp(118px, 10vw, 138px);
  grid-template-columns: minmax(420px, .92fr) minmax(460px, 1.08fr);
}

.ld-home-final--v14 .ld-final-hero__stage {
  min-height: clamp(500px, 54vw, 570px);
}

.ld-final-car-wrap {
  right: clamp(12px, 3.4vw, 56px);
  bottom: clamp(76px, 9vw, 108px);
  width: clamp(560px, 50vw, 810px);
  animation: ldV14CarEnter 1.8s cubic-bezier(.19, .82, .22, 1) .18s both, ldV14CarIdle 8s ease-in-out 2.15s infinite;
}

.ld-final-hero__drivecar {
  clip-path: none;
  filter: drop-shadow(0 30px 42px rgba(0,0,0,.7)) contrast(1.03) saturate(.98);
}

@keyframes ldV14CarEnter {
  from {
    opacity: 0;
    transform: translate3d(18%, 10px, 0) scale(.985);
  }
  58% {
    opacity: 1;
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}

@keyframes ldV14CarIdle {
  0%, 100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -4px, 0);
  }
}

@media (max-width: 1220px) {
  .ld-v14-nav-panel {
    min-height: 76px;
    grid-template-columns: 1fr auto;
  }

  .ld-v14-brand {
    margin-top: 0;
  }

  .ld-v14-wheel {
    width: 68px;
    height: 68px;
  }

  .ld-home-final--v14 .ld-final-hero {
    grid-template-columns: 1fr;
    width: min(100% - 22px, 1060px);
    min-height: auto;
    padding: 44px clamp(24px, 5vw, 42px) 126px;
  }

  .ld-final-car-wrap {
    right: clamp(-42px, -2vw, 18px);
    bottom: 92px;
    width: min(780px, 96vw);
  }
}

@media (max-width: 760px) {
  .ld-v14-nav-shell {
    width: min(100% - 16px, 1500px);
    margin-top: 8px;
  }

  .ld-v14-nav-panel {
    min-height: 72px;
    padding: 0 16px;
  }

  .ld-home-final--v14 .ld-final-hero {
    width: min(100% - 24px, 560px);
    padding: 32px 22px 430px;
  }

  .ld-final-car-wrap {
    width: 620px;
    right: -205px;
    bottom: 132px;
  }
}

/* v14 compact header refinement */
.ld-v14-nav-panel {
  min-height: 82px;
}

.ld-v14-brand {
  height: 82px;
  align-self: center;
  align-content: center;
  margin-top: 0;
}

.ld-v14-wheel {
  position: absolute;
  top: -18px;
  width: 92px;
  height: 92px;
}

.ld-v14-brand-text {
  position: absolute;
  top: 58px;
  width: 168px;
  margin-top: 0;
  padding: 4px 14px 6px;
}

.ld-v14-brand-text img {
  width: 150px;
}

.ld-final-car-wrap {
  right: clamp(26px, 4.8vw, 82px);
  bottom: clamp(82px, 9vw, 112px);
  width: clamp(520px, 47vw, 730px);
}

@media (max-width: 1220px) {
  .ld-v14-brand {
    height: 68px;
  }

  .ld-v14-wheel {
    position: relative;
    top: auto;
    width: 64px;
    height: 64px;
  }

  .ld-final-car-wrap {
    right: clamp(-18px, 1vw, 24px);
    width: min(720px, 92vw);
  }
}

@media (max-width: 760px) {
  .ld-v14-brand {
    height: 62px;
  }

  .ld-v14-wheel {
    width: 58px;
    height: 58px;
  }

  .ld-final-car-wrap {
    width: 560px;
    right: -175px;
    bottom: 140px;
  }
}

.ld-home-final--v14 .ld-final-hero__copy {
  max-width: min(560px, 100%);
}

.ld-home-final--v14 .ld-final-hero__copy p {
  max-width: 540px;
}

/* v14 unified page width and compact navigation pass */
:root {
  --ld-v14-page-width: 1480px;
  --ld-v14-page-gutter: clamp(18px, 3.2vw, 56px);
  --ld-max: var(--ld-v14-page-width);
}

.ld-v14-nav-shell,
.ld-container,
.ld-home-final .ld-container,
.ld-home-final--v122,
.ld-home-final--v14 .ld-final-hero,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-contact-strip,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-stats,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-card-grid,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-license-grid,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-team-grid,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-location-grid,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-download-grid,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-timetable-grid {
  width: min(var(--ld-v14-page-width), calc(100vw - var(--ld-v14-page-gutter) * 2)) !important;
  max-width: none;
  margin-left: auto;
  margin-right: auto;
}

.ld-v14-nav-shell {
  margin-top: 8px;
}

.ld-v14-nav-panel {
  min-height: 66px;
  grid-template-columns: minmax(0, 1fr) 154px minmax(0, 1fr);
  gap: 12px;
  padding: 0 clamp(18px, 2.1vw, 32px);
}

.ld-v14-nav {
  gap: clamp(14px, 1.65vw, 24px);
}

.ld-v14-nav--left {
  padding-left: clamp(10px, 1.8vw, 30px);
}

.ld-v14-nav--right {
  padding-right: clamp(8px, 1.2vw, 18px);
}

.ld-v14-nav > a,
.ld-v14-dropdown > button {
  font-size: 12px;
  padding: 9px 0;
}

.ld-v14-nav > a.is-active::after {
  margin-top: 10px;
}

.ld-v14-cta {
  min-width: 164px;
  padding: 12px 18px !important;
}

.ld-v14-cta::after {
  margin-left: 12px;
  font-size: 20px;
}

.ld-v14-brand {
  width: 154px;
  height: 66px;
}

.ld-v14-wheel {
  top: -16px;
  width: 76px;
  height: 76px;
  border-width: 1px;
  box-shadow: 0 10px 26px rgba(0,0,0,.58), 0 0 0 4px rgba(0,0,0,.68), inset 0 0 18px rgba(255,255,255,.06);
}

.ld-v14-wheel::after {
  width: 28px;
  height: 28px;
  font-size: 11px;
}

.ld-v14-brand-text {
  top: 44px;
  width: 132px;
  padding: 3px 10px 5px;
}

.ld-v14-brand-text img {
  width: 116px;
}

body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) {
  padding-top: 18px;
}

body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero {
  padding: clamp(48px, 5vw, 72px);
  min-height: clamp(430px, 35vw, 560px);
}

@media (max-width: 1220px) {
  :root {
    --ld-v14-page-gutter: clamp(12px, 2.7vw, 28px);
  }

  .ld-v14-nav-panel {
    min-height: 66px;
    grid-template-columns: 1fr auto;
  }

  .ld-v14-brand {
    width: auto;
    height: 58px;
  }

  .ld-v14-wheel {
    position: relative;
    top: auto;
    width: 56px;
    height: 56px;
  }
}

@media (max-width: 760px) {
  :root {
    --ld-v14-page-gutter: 12px;
  }

  .ld-v14-nav-panel {
    min-height: 62px;
    padding: 0 14px;
  }

  .ld-v14-brand {
    height: 54px;
  }

  .ld-v14-wheel {
    width: 52px;
    height: 52px;
  }

  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero {
    padding: 26px 20px;
    min-height: auto;
  }
}

/* v14 polish pass: real logo mark, correct mobile heroes, unified surfaces */
.ld-v14-brand {
  isolation: isolate;
}

.ld-v14-logo-mark {
  position: absolute;
  left: 50%;
  top: 30px;
  z-index: 1;
  width: 230px;
  height: 54px;
  transform: translateX(-50%);
  pointer-events: none;
  opacity: .96;
  filter: drop-shadow(0 12px 22px rgba(0,0,0,.78));
  overflow: hidden;
}

.ld-v14-logo-mark img {
  width: 230px;
  height: 54px;
  display: block;
  object-fit: contain;
}

.ld-v14-wheel {
  z-index: 3;
}

.ld-v14-brand-text {
  z-index: 2;
  opacity: 0;
  pointer-events: none;
}

.ld-v14-nav-panel {
  min-height: 68px;
}

.ld-v14-nav > a.is-active,
.ld-v14-dropdown > button.is-active {
  color: var(--ld-v14-red);
  text-shadow: 0 0 18px rgba(224,32,44,.32);
}

body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero {
  background:
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
    #1d2025;
}

body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section {
  width: 100%;
}

body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-cta-band,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-info-box,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-split,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-contact-layout,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-news-pro-layout {
  width: min(var(--ld-v14-page-width), calc(100vw - var(--ld-v14-page-gutter) * 2)) !important;
  max-width: none;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 1220px) {
  .ld-v14-logo-mark {
    display: none;
  }

  .ld-v14-brand-text {
    display: none !important;
  }
}

@media (max-width: 760px) {
  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero,
  .ld-hero,
  .ld-hero--compact {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px;
    align-items: start;
    padding: 28px 22px !important;
  }

  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero__content,
  .ld-hero__content {
    min-width: 0;
    width: 100%;
  }

  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero h1,
  .ld-hero h1 {
    max-width: none;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: manual;
    font-size: clamp(38px, 12vw, 52px) !important;
    line-height: 1.02;
  }

  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero p,
  .ld-hero p {
    max-width: none;
    font-size: 16px;
  }

  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero__media,
  .ld-hero__media {
    min-height: 230px;
    width: 100%;
  }

  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-hero__image-wrap,
  .ld-hero__image-wrap {
    position: absolute;
    inset: 0;
  }

  .ld-section-head h2,
  .ld-cta-band h2,
  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section-head h2 {
    max-width: 100%;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: manual;
    font-size: clamp(30px, 9.4vw, 40px) !important;
    line-height: 1.08;
  }

  .ld-section-head p,
  .ld-cta-band p {
    max-width: 100%;
    font-size: 16px;
  }
}

/* v14 final logo reset: standard Lautz logo, no steering wheel */
.ld-v14-logo-mark,
.ld-v14-wheel {
  display: none !important;
}

.ld-v14-nav-panel {
  grid-template-columns: minmax(0, 1fr) clamp(210px, 18vw, 310px) minmax(0, 1fr);
  min-height: 74px;
}

.ld-v14-brand {
  width: clamp(210px, 18vw, 310px);
  height: 74px;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
}

.ld-v14-brand-text {
  position: static !important;
  top: auto;
  width: clamp(210px, 18vw, 310px);
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  clip-path: none;
  opacity: 1 !important;
  pointer-events: auto;
  display: flex !important;
  align-items: center;
  justify-content: center;
  filter: drop-shadow(0 10px 22px rgba(0,0,0,.62));
}

.ld-v14-brand-text img {
  width: min(300px, 100%);
  height: auto;
  display: block;
}

@media (max-width: 1220px) {
  .ld-v14-nav-panel {
    grid-template-columns: auto auto;
  }

  .ld-v14-brand {
    width: min(240px, 58vw);
    height: 62px;
    justify-self: start;
  }

  .ld-v14-brand-text {
    width: min(240px, 58vw);
    display: flex !important;
  }

  .ld-v14-brand-text img {
    width: min(230px, 58vw);
  }
}

@media (max-width: 760px) {
  .ld-v14-brand {
    width: min(210px, 58vw);
    height: 58px;
  }

  .ld-v14-brand-text,
  .ld-v14-brand-text img {
    width: min(200px, 58vw);
  }
}

/* v14 final visual QA: hero spacing, cinematic rail, team aura cards */
.ld-home-final--v14 .ld-final-hero {
  padding-bottom: clamp(118px, 8vw, 154px);
}

.ld-home-final--v14 .ld-final-hero__mini {
  display: none !important;
}

.ld-home-final--v14 .ld-final-hero__stats {
  left: 13%;
  right: 13%;
  bottom: -54px;
  z-index: 12;
  padding: 30px 46px;
  transform: translateZ(0);
}

.ld-home-final--v14 .ld-final-hero__stats a {
  min-height: 96px;
  padding: 0 32px;
  justify-items: start;
}

.ld-home-final--v14 .ld-final-marquee {
  margin-top: clamp(78px, 6vw, 112px);
}

.ld-final-cinema {
  overflow: hidden;
}

.ld-final-cinema__rail {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  background: rgba(255,255,255,.1);
}

.ld-final-cinema__rail article {
  min-width: 0;
  min-height: 116px;
  padding: 30px clamp(22px, 2.3vw, 36px);
  display: grid;
  align-content: center;
  border-right: 1px solid rgba(255,255,255,.18);
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.018)),
    rgba(13,16,20,.86);
}

.ld-final-cinema__rail article:last-child {
  border-right: 0;
}

.ld-final-cinema__rail span,
.ld-final-cinema__rail strong {
  display: block;
}

.ld-final-cinema__rail strong {
  margin-top: 14px;
}

.ld-team-grid {
  grid-template-columns: repeat(auto-fit, minmax(285px, 1fr));
  gap: clamp(20px, 2vw, 28px);
  align-items: stretch;
}

.ld-person-card {
  position: relative;
  isolation: isolate;
  overflow: visible;
  border-radius: 12px;
  border-color: rgba(255,255,255,.18);
  background:
    linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.022)),
    rgba(12,15,19,.9);
  box-shadow: 0 22px 58px rgba(0,0,0,.34);
  transition: transform .32s ease, border-color .32s ease, box-shadow .32s ease;
}

.ld-person-card::before {
  content: "";
  position: absolute;
  inset: -3px;
  z-index: 0;
  border-radius: 15px;
  border: 1px solid rgba(255,255,255,.42);
  opacity: .34;
  box-shadow:
    0 0 0 1px rgba(224,32,44,.08),
    0 0 26px rgba(255,255,255,.12);
  animation: ldTeamAura 4.8s ease-in-out infinite;
  pointer-events: none;
}

.ld-person-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  border-radius: 12px;
  background:
    radial-gradient(circle at 50% 0, rgba(255,255,255,.18), transparent 34%),
    linear-gradient(120deg, transparent 12%, rgba(255,255,255,.08), transparent 42%);
  opacity: .18;
  pointer-events: none;
  transition: opacity .32s ease;
}

.ld-person-card:hover {
  transform: translateY(-7px);
  border-color: rgba(255,255,255,.34);
  box-shadow: 0 34px 78px rgba(0,0,0,.42), 0 0 34px rgba(255,255,255,.08);
}

.ld-person-card:hover::before {
  opacity: .82;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.28),
    0 0 34px rgba(255,255,255,.24),
    0 0 42px rgba(224,32,44,.16);
}

.ld-person-card:hover::after {
  opacity: .28;
}

.ld-person-card__image {
  position: relative;
  z-index: 1;
  aspect-ratio: 4 / 3.55;
  border-radius: 12px 12px 0 0;
  background: #080a0d;
}

.ld-person-card__image img {
  object-fit: cover;
  object-position: 50% 16%;
  transform: none;
  filter: saturate(.98) contrast(1.03) brightness(.98);
}

.ld-person-card:hover .ld-person-card__image img {
  transform: scale(1.012);
  filter: saturate(1.03) contrast(1.05) brightness(1.04);
}

.ld-person-card__body {
  position: relative;
  z-index: 3;
  padding: 24px 24px 28px;
  min-height: 142px;
}

.ld-person-card h3 {
  font-size: 20px;
}

.ld-person-card li {
  color: #c4cad2;
}

@keyframes ldTeamAura {
  0%, 100% {
    opacity: .3;
    filter: blur(0);
  }
  50% {
    opacity: .62;
    filter: blur(.2px);
  }
}

@media (max-width: 1180px) {
  .ld-home-final--v14 .ld-final-hero {
    padding-bottom: clamp(136px, 13vw, 178px);
  }

  .ld-home-final--v14 .ld-final-hero__stats {
    left: 6%;
    right: 6%;
    bottom: -68px;
    padding: 24px 26px;
  }

  .ld-home-final--v14 .ld-final-hero__stats a {
    min-height: 90px;
    padding: 0 18px;
  }
}

@media (max-width: 760px) {
  .ld-home-final--v14 .ld-final-hero {
    padding-bottom: 0;
  }

  .ld-home-final--v14 .ld-final-hero__stats {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    width: 100%;
    margin: 22px 0 0;
    padding: 0;
    grid-template-columns: 1fr;
    clip-path: none;
    border: 1px solid rgba(255,255,255,.14);
  }

  .ld-home-final--v14 .ld-final-hero__stats a {
    min-height: 76px;
    padding: 18px 20px 18px 58px;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.12);
  }

  .ld-home-final--v14 .ld-final-hero__stats a:last-child {
    border-bottom: 0;
  }

  .ld-home-final--v14 .ld-final-marquee {
    margin-top: 28px;
  }

  .ld-final-cinema__rail {
    grid-template-columns: 1fr 1fr;
  }

  .ld-final-cinema__rail article {
    min-height: 94px;
    padding: 22px;
  }

  .ld-final-cinema__rail article:nth-child(2n) {
    border-right: 0;
  }

  .ld-team-grid {
    grid-template-columns: 1fr;
  }

  .ld-person-card__image {
    aspect-ratio: 3 / 4;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ld-person-card,
  .ld-person-card::before,
  .ld-person-card__image img {
    animation: none !important;
    transition: none !important;
  }
}

/* v14 final correction: compact readable hero, even rail, subtle team press */
.ld-home-final--v14 .ld-final-hero {
  padding-bottom: 0 !important;
}

.ld-home-final--v14 .ld-final-hero__mini {
  display: none !important;
}

.ld-home-final--v14 .ld-final-hero__stats {
  left: 10% !important;
  right: 10% !important;
  bottom: 0 !important;
  padding: 20px 40px !important;
  overflow: visible;
}

.ld-home-final--v14 .ld-final-hero__stats a {
  min-height: 74px !important;
  padding: 0 26px !important;
  gap: 2px;
  overflow: visible;
}

.ld-home-final--v14 .ld-final-hero__stats a::before {
  width: 31px;
  height: 31px;
  margin-bottom: 6px;
}

.ld-home-final--v14 .ld-final-hero__stats strong {
  max-width: 210px;
  font-size: 19px;
  line-height: 1.06;
}

.ld-home-final--v14 .ld-final-marquee {
  margin-top: 32px !important;
}

.ld-final-cinema__rail {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  background: rgba(255,255,255,.08) !important;
}

.ld-final-cinema__rail article {
  box-sizing: border-box;
  min-width: 0;
  min-height: 98px !important;
  padding: 22px 34px !important;
  border-right: 1px solid rgba(255,255,255,.18);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.ld-final-cinema__rail article:last-child {
  border-right: 0;
}

.ld-final-cinema__rail span {
  margin: 0 0 12px;
}

.ld-final-cinema__rail strong {
  margin: 0 !important;
}

.ld-person-card {
  isolation: auto;
  overflow: hidden !important;
  border-color: rgba(255,255,255,.15);
  background:
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
    rgba(12,15,19,.88);
  box-shadow: 0 18px 42px rgba(0,0,0,.28);
  transform: translateY(0) scale(1);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.ld-person-card::before,
.ld-person-card::after {
  content: none !important;
  display: none !important;
  animation: none !important;
}

.ld-person-card:hover {
  transform: translateY(2px) scale(.994);
  border-color: rgba(255,255,255,.23);
  background:
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.014)),
    rgba(9,11,14,.94);
  box-shadow:
    inset 0 2px 18px rgba(0,0,0,.38),
    inset 0 0 0 1px rgba(255,255,255,.045),
    0 10px 28px rgba(0,0,0,.22);
}

.ld-person-card__image {
  z-index: auto;
  /* Source photos are portrait (~0.67-0.81 width/height); a landscape
     crop box here cropped off heads/shoulders. Portrait 3/4 matches the
     real photos and keeps people fully, sensibly framed. */
  aspect-ratio: 3 / 4;
  border-radius: 0;
}

.ld-person-card__image img {
  object-position: 50% 18%;
}

.ld-person-card:hover .ld-person-card__image img {
  transform: scale(.996);
  filter: saturate(.98) contrast(1.02) brightness(.94);
}

@media (max-width: 1180px) {
  .ld-home-final--v14 .ld-final-hero__stats {
    left: 5% !important;
    right: 5% !important;
    bottom: 0 !important;
    padding: 18px 22px !important;
  }

  .ld-home-final--v14 .ld-final-hero__stats a {
    min-height: 72px !important;
    padding: 0 16px !important;
  }
}

@media (max-width: 760px) {
  .ld-home-final--v14 .ld-final-hero__stats {
    position: relative;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    margin-top: 20px;
    padding: 0 !important;
  }

  .ld-final-cinema__rail {
    grid-template-columns: 1fr 1fr !important;
  }

  .ld-final-cinema__rail article {
    min-height: 88px !important;
    padding: 20px !important;
  }

  .ld-final-cinema__rail article:nth-child(2n) {
    border-right: 0;
  }
}

/* v14 hero info bar position: keep buttons clear, lower cards slightly */
.ld-home-final--v14 .ld-final-hero {
  overflow: visible !important;
  padding-bottom: clamp(64px, 5vw, 86px) !important;
}

.ld-home-final--v14 .ld-final-hero .ld-actions {
  position: relative;
  z-index: 20;
}

.ld-home-final--v14 .ld-final-hero__stats {
  bottom: -58px !important;
  z-index: 9;
}

.ld-home-final--v14 .ld-final-marquee {
  margin-top: clamp(78px, 6vw, 102px) !important;
}

@media (max-width: 1180px) {
  .ld-home-final--v14 .ld-final-hero {
    padding-bottom: clamp(72px, 7vw, 96px) !important;
  }

  .ld-home-final--v14 .ld-final-hero__stats {
    bottom: -54px !important;
  }
}

@media (max-width: 760px) {
  .ld-home-final--v14 .ld-final-hero {
    padding-bottom: 0 !important;
  }

  .ld-home-final--v14 .ld-final-hero__stats {
    bottom: auto !important;
  }

  .ld-home-final--v14 .ld-final-marquee {
    margin-top: 28px !important;
  }
}

/* v14 compact real-life gallery */
.ld-home-final--v14 .ld-final-gallery {
  padding-top: clamp(52px, 5vw, 76px);
  padding-bottom: clamp(52px, 5vw, 76px);
}

.ld-home-final--v14 .ld-final-gallery .ld-section-head {
  margin-bottom: 24px;
  gap: 18px;
}

.ld-home-final--v14 .ld-final-gallery .ld-section-head h2 {
  max-width: 760px;
  font-size: clamp(34px, 3.2vw, 46px);
}

.ld-home-final--v14 .ld-final-gallery .ld-section-head p {
  max-width: 620px;
}

.ld-home-final--v14 .ld-final-gallery .ld-gallery {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.ld-home-final--v14 .ld-final-gallery .ld-gallery__item,
.ld-home-final--v14 .ld-final-gallery .ld-gallery__item:nth-child(n) {
  grid-column: auto !important;
  grid-row: auto !important;
  min-height: 148px;
  aspect-ratio: 4 / 3;
  border-radius: 6px;
}

@media (max-width: 980px) {
  .ld-home-final--v14 .ld-final-gallery .ld-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .ld-home-final--v14 .ld-final-gallery {
    padding-top: 40px;
    padding-bottom: 44px;
  }

  .ld-home-final--v14 .ld-final-gallery .ld-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .ld-home-final--v14 .ld-final-gallery .ld-gallery__item,
  .ld-home-final--v14 .ld-final-gallery .ld-gallery__item:nth-child(n) {
    min-height: 118px;
  }
}

/* v14 online registration page: stable desktop/mobile layout */
.ld-online-start {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(310px, 420px);
  gap: clamp(18px, 2.2vw, 32px);
  align-items: stretch;
}

body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-online-start,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-online-widget-section {
  width: min(var(--ld-v14-page-width), calc(100vw - var(--ld-v14-page-gutter) * 2)) !important;
  max-width: none;
  margin-left: auto;
  margin-right: auto;
}

.ld-online-start .ld-card {
  min-height: 0;
  padding: clamp(28px, 3vw, 44px);
}

.ld-online-start .ld-card h2 {
  margin-top: 12px;
  font-size: clamp(32px, 3.3vw, 48px);
  letter-spacing: 0;
}

.ld-online-start .ld-card p {
  max-width: 900px;
  font-size: 16px;
  line-height: 1.75;
}

.ld-online-steps {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  min-width: 0;
}

.ld-online-steps article {
  min-width: 0;
  min-height: 132px;
  padding: 24px 24px 24px 76px;
  border-radius: 10px;
  overflow: hidden;
}

.ld-online-steps article::before {
  left: 24px;
  top: 24px;
  background: #8f98a4;
}

.ld-online-steps article span {
  display: none;
}

.ld-online-steps h3 {
  margin-bottom: 10px;
  font-size: 20px;
}

.ld-online-steps p {
  margin: 0;
  color: #c5cbd3;
  line-height: 1.55;
}

.ld-online-widget-section {
  padding-top: 0;
}

.ld-online-widget {
  border-radius: 10px;
  padding: clamp(28px, 3vw, 42px);
}

.ld-online-widget__head {
  max-width: 880px;
}

.ld-online-widget__head h2 {
  font-size: clamp(32px, 3.4vw, 48px);
}

.ld-online-widget__frame {
  min-height: 128px;
  border-radius: 10px;
}

.ld-online-widget__fallback .ld-btn {
  min-height: 52px;
}

@media (max-width: 1080px) {
  .ld-online-start {
    grid-template-columns: 1fr;
  }

  .ld-online-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .ld-online-steps article {
    padding: 72px 20px 22px;
  }

  .ld-online-steps article::before {
    left: 20px;
    top: 20px;
  }
}

@media (max-width: 760px) {
  .ld-online-start,
  .ld-online-steps {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .ld-online-start .ld-card,
  .ld-online-widget {
    padding: 22px;
    border-radius: 10px;
  }

  .ld-online-start .ld-card h2,
  .ld-online-widget__head h2 {
    font-size: 30px;
    line-height: 1.08;
  }

  .ld-online-steps article {
    min-height: auto;
    padding: 20px 20px 20px 68px;
  }

  .ld-online-steps article::before {
    left: 20px;
    top: 20px;
  }

  .ld-online-widget__fallback {
    display: grid;
    grid-template-columns: 1fr;
  }

  .ld-contact-strip a {
    min-height: 76px;
  }
}

/* v14 hard fix for existing imported Online-Anmeldung content */
.ld-page--online-anmeldung .ld-container {
  overflow: visible;
}

.ld-page--online-anmeldung .ld-section.ld-split,
.ld-page--online-anmeldung .ld-online-start {
  width: min(var(--ld-v14-page-width), calc(100vw - var(--ld-v14-page-gutter) * 2)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 420px) !important;
  gap: clamp(18px, 2.2vw, 32px) !important;
  align-items: start !important;
}

.ld-page--online-anmeldung .ld-section.ld-split > *,
.ld-page--online-anmeldung .ld-online-start > *,
.ld-page--online-anmeldung .ld-process {
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.ld-page--online-anmeldung .ld-section.ld-split > .ld-card,
.ld-page--online-anmeldung .ld-online-start > .ld-card {
  min-height: 0;
  padding: clamp(28px, 3vw, 44px);
}

.ld-page--online-anmeldung .ld-process {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
}

.ld-page--online-anmeldung .ld-process article {
  width: auto !important;
  max-width: 100% !important;
  min-height: 124px;
  border-radius: 10px;
  padding: 24px 24px 24px 76px;
  overflow: hidden;
}

.ld-page--online-anmeldung .ld-section--widget,
.ld-page--online-anmeldung .ld-online-widget-section,
.ld-page--online-anmeldung .ld-contact-strip {
  width: min(var(--ld-v14-page-width), calc(100vw - var(--ld-v14-page-gutter) * 2)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.ld-page--online-anmeldung .ld-online-widget {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
}

@media (max-width: 1080px) {
  .ld-page--online-anmeldung .ld-section.ld-split,
  .ld-page--online-anmeldung .ld-online-start {
    grid-template-columns: 1fr !important;
  }

  .ld-page--online-anmeldung .ld-process {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .ld-page--online-anmeldung .ld-process article {
    min-height: 142px;
    padding: 70px 20px 22px;
  }
}

@media (max-width: 760px) {
  .ld-page--online-anmeldung .ld-section.ld-split,
  .ld-page--online-anmeldung .ld-online-start,
  .ld-page--online-anmeldung .ld-process {
    grid-template-columns: 1fr !important;
  }

  .ld-page--online-anmeldung .ld-section.ld-split > .ld-card,
  .ld-page--online-anmeldung .ld-online-start > .ld-card,
  .ld-page--online-anmeldung .ld-online-widget {
    padding: 22px !important;
    border-radius: 10px;
  }

  .ld-page--online-anmeldung .ld-process article {
    min-height: auto;
    padding: 20px 20px 20px 68px;
  }
}

/* v14 root-cause fix: global width rules must not break split layouts */
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split {
  width: min(var(--ld-v14-page-width), calc(100vw - var(--ld-v14-page-gutter) * 2)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.12fr) minmax(300px, .88fr) !important;
  gap: clamp(18px, 2.2vw, 32px) !important;
  align-items: start !important;
}

body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split > *,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split > .ld-card,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split > .ld-richtext,
body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split > .ld-process {
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split > .ld-process {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
}

body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split > .ld-process article {
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box;
}

@media (max-width: 1080px) {
  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split {
    grid-template-columns: 1fr !important;
  }

  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split > .ld-process {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split,
  body.lautz-premium-theme .ld-page:not(.ld-page--home-v14):not(.ld-page--home-v12) .ld-section.ld-split > .ld-process {
    grid-template-columns: 1fr !important;
  }
}

/* v14 failsafe: split children must never inherit full-page centering widths */
html body.lautz-premium-theme .ld-page .ld-section.ld-split > * {
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

html body.lautz-premium-theme .ld-page .ld-section.ld-split > .ld-process {
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
}


/* ============================================================
   v14 PRO MAX UPGRADE — Next Level Professional Polish
   Enhanced animations, micro-interactions, motion system,
   typography refinements, accessibility & performance
   ============================================================ */

/* --- Selection & Scrollbar --- */
::selection {
  background: rgba(224,32,44,.32);
  color: #fff;
}
::-webkit-scrollbar { width: 5px; }
::-webkit-scrollbar-track { background: #020304; }
::-webkit-scrollbar-thumb { background: rgba(224,32,44,.48); border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: rgba(224,32,44,.78); }

/* --- Cursor pointer fixes --- */
.ld-v14-nav > a,
.ld-v14-dropdown > button,
.ld-v14-cta,
.ld-btn,
.ld-final-course,
.ld-final-hero__stats a,
.ld-gallery__item,
.ld-filterbar button,
.ld-final-reason-grid article,
.ld-final-roadline article,
.ld-final-info article,
.ld-final-proof article { cursor: pointer; }

/* --- Focus states (branded) --- */
:focus-visible {
  outline: 2px solid rgba(224,32,44,.68) !important;
  outline-offset: 3px !important;
  border-radius: 4px !important;
}
button:focus-visible,
a:focus-visible { box-shadow: none !important; }

/* --- Header: scroll-shrink behaviour (triggered via JS class) --- */
.ld-v14-nav-panel {
  transition: min-height .3s cubic-bezier(.2,.8,.2,1),
              background .3s ease,
              box-shadow .3s ease !important;
}
.ld-v14-nav-panel.ld-scrolled {
  min-height: 54px !important;
  background: rgba(2,3,4,.98) !important;
  box-shadow: 0 12px 42px rgba(0,0,0,.68), 0 0 0 1px rgba(255,255,255,.09) !important;
}
.ld-v14-nav-panel.ld-scrolled .ld-v14-wheel {
  width: 54px !important;
  height: 54px !important;
  top: -10px !important;
}
.ld-v14-nav-panel.ld-scrolled .ld-v14-brand-text {
  top: 36px !important;
}

/* --- Nav link hover underline animation --- */
.ld-v14-nav > a {
  position: relative;
  overflow: visible;
}
.ld-v14-nav > a::after {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 0;
  right: 0;
  height: 1px;
  background: var(--ld-v14-red);
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: opacity .2s ease, transform .24s cubic-bezier(.2,.8,.2,1);
}
.ld-v14-nav > a:hover::after,
.ld-v14-nav > a.is-active::after {
  opacity: 1;
  transform: scaleX(1);
}
/* Remove old is-active::after (inline height 2px margin-top) */
.ld-v14-nav > a.is-active {
  color: var(--ld-v14-red) !important;
}

/* --- CTA button shine sweep --- */
.ld-v14-cta {
  position: relative;
  overflow: hidden;
  transition: box-shadow .22s ease, transform .16s cubic-bezier(.2,.8,.2,1) !important;
}
.ld-v14-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 18%, rgba(255,255,255,.22) 44%, transparent 70%);
  opacity: 0;
  pointer-events: none;
}
.ld-v14-cta:hover {
  transform: translateY(-1px);
  box-shadow: 0 0 38px rgba(224,32,44,.38), inset 0 1px 0 rgba(255,255,255,.28) !important;
}
.ld-v14-cta:hover::before {
  opacity: 1;
  animation: ldCtaShine .54s ease forwards;
}
@keyframes ldCtaShine {
  from { transform: translateX(-100%); }
  to   { transform: translateX(120%); }
}

/* --- Steering wheel idle rotation --- */
.ld-v14-wheel {
  animation: ldWheelSpin 14s linear infinite;
  transition: box-shadow .24s ease, width .3s ease, height .3s ease !important;
}
.ld-v14-brand:hover .ld-v14-wheel {
  animation-duration: 4s;
  box-shadow: 0 10px 28px rgba(0,0,0,.6), 0 0 0 4px rgba(224,32,44,.32), inset 0 0 20px rgba(255,255,255,.07) !important;
}
@keyframes ldWheelSpin {
  to { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
  .ld-v14-wheel { animation: none !important; }
}

/* --- Hero scan line: smoother pulse --- */
.ld-home-final--v14 .ld-final-hero::after {
  height: 1px;
  background: linear-gradient(90deg,
    transparent,
    rgba(224,32,44,.24),
    rgba(255,255,255,.88),
    rgba(224,32,44,.9),
    rgba(255,255,255,.6),
    rgba(224,32,44,.18),
    transparent
  );
  animation: ldScanPulse 3.6s ease-in-out infinite !important;
}
@keyframes ldScanPulse {
  0%        { opacity: 0; transform: scaleX(.18); }
  14%       { opacity: 1; transform: scaleX(1); }
  86%       { opacity: .9; transform: scaleX(1); }
  100%      { opacity: 0; transform: scaleX(.18); }
}

/* --- Speedometer background glow --- */
.ld-home-final--v14 .ld-final-hero::before {
  filter: drop-shadow(0 0 28px rgba(224,32,44,.2));
}

/* --- Car animation: smoother idle + faster enter --- */
.ld-final-car-wrap {
  animation:
    ldV14CarEnter 1.6s cubic-bezier(.16,.88,.22,1) .1s both,
    ldV14CarIdle  9s ease-in-out 1.8s infinite !important;
}
@keyframes ldV14CarIdle {
  0%, 100% { transform: translate3d(0, 0, 0); }
  50%       { transform: translate3d(0, -5px, 0); }
}

/* --- Car shadow pulsing --- */
.ld-final-car-shadow {
  background: radial-gradient(ellipse, rgba(0,0,0,.84) 28%, rgba(224,32,44,.1) 68%, transparent);
  filter: blur(14px);
  height: 26px;
  animation: ldShadowPulse 4.8s ease-in-out infinite;
}
@keyframes ldShadowPulse {
  0%, 100% { opacity: .82; transform: scaleX(1); }
  50%       { opacity: .62; transform: scaleX(.9); }
}
@media (prefers-reduced-motion: reduce) {
  .ld-final-car-shadow { animation: none !important; }
}

/* --- Speed lines: enhanced SVG pulse --- */
.ld-final-speedlines {
  opacity: .86;
  animation: ldSpeedlinePulse 1.6s ease-in-out infinite !important;
}
@keyframes ldSpeedlinePulse {
  0%, 100% { opacity: .86; transform: translateX(-8px); }
  50%       { opacity: .96; transform: translateX(8px); }
}
@media (prefers-reduced-motion: reduce) {
  .ld-final-speedlines { animation: none !important; }
}

/* --- Floating badges: physics-based float --- */
.ld-final-floating {
  animation: ldFloatA 7.2s cubic-bezier(.45,.05,.55,.95) infinite !important;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.ld-final-floating--bottom {
  animation: ldFloatB 6.6s cubic-bezier(.45,.05,.55,.95) .6s infinite !important;
}
.ld-final-floating:hover {
  border-color: rgba(224,32,44,.58) !important;
  box-shadow: 0 24px 56px rgba(0,0,0,.44), inset 3px 0 0 var(--ld-v14-red) !important;
}
@keyframes ldFloatA {
  0%, 100% { transform: translateY(0px); }
  50%       { transform: translateY(-9px); }
}
@keyframes ldFloatB {
  0%, 100% { transform: translateY(0px); }
  50%       { transform: translateY(-11px); }
}
@media (prefers-reduced-motion: reduce) {
  .ld-final-floating, .ld-final-floating--bottom { animation: none !important; }
}

/* --- Eyebrow pulse (hero) --- */
.ld-home-final--v14 .ld-eyebrow {
  animation: ldEyebrowPulse 5s ease-in-out infinite;
}
@keyframes ldEyebrowPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(224,32,44,0); }
  50%       { box-shadow: 0 0 0 7px rgba(224,32,44,.08); }
}
@media (prefers-reduced-motion: reduce) {
  .ld-home-final--v14 .ld-eyebrow { animation: none !important; }
}

/* --- Route dots: stronger glow --- */
.ld-final-route span {
  box-shadow: 0 0 0 7px rgba(159,38,45,.18), 0 0 20px rgba(224,32,44,.28);
}

/* --- Hero stats bar enhanced hover --- */
.ld-home-final--v14 .ld-final-hero__stats a {
  transition: background .2s ease;
  position: relative;
  overflow: hidden;
}
.ld-home-final--v14 .ld-final-hero__stats a::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 20%, rgba(255,255,255,.09) 45%, transparent 70%);
  opacity: 0;
  pointer-events: none;
}
.ld-home-final--v14 .ld-final-hero__stats a:hover {
  background: rgba(224,32,44,.09) !important;
}
.ld-home-final--v14 .ld-final-hero__stats a:hover::after {
  opacity: 1;
  animation: ldStatsShine .52s ease forwards;
}
.ld-home-final--v14 .ld-final-hero__stats a:hover span {
  color: rgba(224,32,44,.88);
}
.ld-home-final--v14 .ld-final-hero__stats a:hover strong {
  color: #fff;
  text-shadow: 0 0 16px rgba(255,255,255,.16);
}
@keyframes ldStatsShine {
  to { transform: translateX(140%); }
}

/* --- Primary button: glow + lift --- */
.ld-home-final--v14 .ld-btn--primary {
  position: relative;
  overflow: hidden;
  transition: transform .16s cubic-bezier(.2,.8,.2,1), box-shadow .22s ease !important;
}
.ld-home-final--v14 .ld-btn--primary:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 0 36px rgba(224,32,44,.42), inset 0 1px 0 rgba(255,255,255,.3) !important;
}
.ld-home-final--v14 .ld-btn--ghost:hover {
  background: rgba(255,255,255,.08) !important;
  border-color: rgba(255,255,255,.26) !important;
  transform: translateY(-2px) !important;
}

/* --- Marquee: richer styling --- */
.ld-final-marquee {
  background: linear-gradient(90deg, rgba(6,7,9,.96), rgba(8,10,12,.92)) !important;
  border-block-color: rgba(224,32,44,.22) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.32), 0 -1px 0 rgba(255,255,255,.04) !important;
}
.ld-final-marquee div {
  animation-duration: 20s !important;
}
.ld-final-marquee span {
  font-size: 13px;
  font-weight: 900;
  color: #d7dce4;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.ld-final-marquee span::before {
  width: 7px;
  height: 7px;
  background: #e0202c !important;
  box-shadow: 0 0 8px rgba(224,32,44,.52), 0 0 0 4px rgba(224,32,44,.12) !important;
}

/* --- Course cards: lift + top accent + zoom image --- */
.ld-final-course {
  transition: transform .26s cubic-bezier(.2,.8,.2,1),
              border-color .26s ease,
              box-shadow .26s ease !important;
  will-change: transform;
  position: relative;
  overflow: hidden;
}
.ld-final-course::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 2px;
  background: linear-gradient(90deg, var(--ld-v14-red), rgba(255,255,255,.42), var(--ld-v14-red));
  opacity: 0;
  transition: opacity .26s ease;
  z-index: 2;
}
.ld-final-course:hover::before { opacity: 1; }
.ld-final-course:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(224,32,44,.28) !important;
  box-shadow: 0 28px 68px rgba(0,0,0,.48), 0 0 0 1px rgba(224,32,44,.18) !important;
}
.ld-final-course img {
  transition: transform .42s cubic-bezier(.2,.8,.2,1), filter .3s ease !important;
}
.ld-final-course:hover img {
  transform: scale(1.07) !important;
  filter: grayscale(0) saturate(1.04) contrast(1.1) !important;
}

/* --- Roadmap articles: card lift --- */
.ld-final-roadline article {
  transition: transform .24s cubic-bezier(.2,.8,.2,1),
              border-color .24s ease,
              box-shadow .24s ease !important;
  will-change: transform;
}
.ld-final-roadline article:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(224,32,44,.3) !important;
  box-shadow: 0 22px 58px rgba(0,0,0,.42), 0 0 0 1px rgba(224,32,44,.14) !important;
}
.ld-final-roadline span {
  transition: box-shadow .2s ease;
}
.ld-final-roadline article:hover span {
  box-shadow: 0 0 0 11px #11161d, 0 0 18px rgba(224,32,44,.22), inset 0 1px 0 rgba(255,255,255,.26) !important;
}

/* --- Cinema section: slow zoom on bg --- */
.ld-final-cinema > img {
  transition: transform 10s cubic-bezier(.25,.46,.45,.94) !important;
}
.ld-final-cinema:hover > img {
  transform: scale(1.07) !important;
}
.ld-final-cinema__rail article {
  transition: background .22s ease, backdrop-filter .22s ease;
  cursor: default;
}
.ld-final-cinema__rail article:hover {
  background: rgba(224,32,44,.14) !important;
}

/* --- Showcase media: parallax image zoom --- */
.ld-final-showcase__media img {
  transition: transform 10s cubic-bezier(.25,.46,.45,.94), filter .4s ease !important;
  transform: scale(1.02);
}
.ld-final-showcase:hover .ld-final-showcase__media img {
  transform: scale(1.06) !important;
  filter: grayscale(0) saturate(1.02) contrast(1.08) !important;
}

/* --- Reason grid: enhanced hover with number glow --- */
.ld-final-reason-grid article {
  transition: transform .26s cubic-bezier(.2,.8,.2,1),
              border-color .26s ease,
              box-shadow .26s ease !important;
  will-change: transform;
}
.ld-final-reason-grid article:hover {
  transform: translateY(-9px) !important;
  border-color: rgba(224,32,44,.3) !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.44), 0 0 0 1px rgba(224,32,44,.16) !important;
}
/* Styled number badge */
.ld-final-reason-grid span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border: 1px solid rgba(224,32,44,.36);
  border-radius: 50%;
  color: rgba(224,32,44,.9);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .04em;
  background: rgba(224,32,44,.08);
  transition: background .22s ease, box-shadow .22s ease;
}
.ld-final-reason-grid article:hover span {
  background: rgba(224,32,44,.18) !important;
  box-shadow: 0 0 20px rgba(224,32,44,.22);
}

/* --- Info cards: hover lift --- */
.ld-final-info article {
  transition: transform .22s cubic-bezier(.2,.8,.2,1),
              border-color .22s ease,
              box-shadow .22s ease !important;
  will-change: transform;
}
.ld-final-info article:hover {
  transform: translateY(-6px) !important;
  border-color: rgba(224,32,44,.28) !important;
  box-shadow: 0 20px 52px rgba(0,0,0,.4) !important;
}

/* --- Proof articles hover --- */
.ld-final-proof article {
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.ld-final-proof article:hover {
  transform: translateY(-4px);
  border-color: rgba(224,32,44,.28) !important;
  box-shadow: 0 16px 42px rgba(0,0,0,.36) !important;
}

/* --- Gallery: premium hover --- */
.ld-gallery__item {
  transition: transform .28s cubic-bezier(.2,.8,.2,1),
              box-shadow .28s ease !important;
  will-change: transform;
  position: relative;
  overflow: hidden;
}
.ld-gallery__item:hover {
  transform: translateY(-5px) scale(1.015) !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.5), 0 0 0 1px rgba(224,32,44,.16) !important;
  z-index: 2;
}
.ld-gallery__item img {
  transition: transform .42s cubic-bezier(.2,.8,.2,1), filter .32s ease !important;
}
.ld-gallery__item:hover img {
  transform: scale(1.07) !important;
  filter: saturate(1.05) contrast(1.07) brightness(1.02) !important;
}
/* Red shimmer on gallery hover */
.ld-gallery__item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(224,32,44,.16));
  opacity: 0;
  transition: opacity .28s ease;
  pointer-events: none;
}
.ld-gallery__item:hover::after { opacity: 1; }

/* --- CTA section: glow border on hover --- */
.ld-final-cta {
  transition: box-shadow .3s ease !important;
}
.ld-final-cta:hover {
  box-shadow: 0 36px 84px rgba(0,0,0,.36), 0 0 0 1px rgba(224,32,44,.24) !important;
}

/* --- Section head border: red tint --- */
.ld-home-final--v14 .ld-section-head {
  border-top-color: rgba(224,32,44,.24) !important;
}

/* --- Reveal: smoother spring easing --- */
.ld-final-reveal {
  opacity: 0;
  transform: translateY(32px);
  transition: none;
}
.ld-final-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
  transition: opacity .78s cubic-bezier(.16,1,.3,1),
              transform .78s cubic-bezier(.16,1,.3,1) !important;
}

/* --- Stagger delays for child elements --- */
.ld-final-reveal.is-visible .ld-final-course:nth-child(1),
.ld-final-reveal.is-visible .ld-final-roadline article:nth-child(1),
.ld-final-reveal.is-visible .ld-final-reason-grid article:nth-child(1),
.ld-final-reveal.is-visible .ld-final-info article:nth-child(1),
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(1) { animation-delay: 0s !important; }

.ld-final-reveal.is-visible .ld-final-course:nth-child(2),
.ld-final-reveal.is-visible .ld-final-roadline article:nth-child(2),
.ld-final-reveal.is-visible .ld-final-reason-grid article:nth-child(2),
.ld-final-reveal.is-visible .ld-final-info article:nth-child(2),
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(2) { animation-delay: .07s !important; }

.ld-final-reveal.is-visible .ld-final-course:nth-child(3),
.ld-final-reveal.is-visible .ld-final-roadline article:nth-child(3),
.ld-final-reveal.is-visible .ld-final-reason-grid article:nth-child(3),
.ld-final-reveal.is-visible .ld-final-info article:nth-child(3),
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(3) { animation-delay: .14s !important; }

.ld-final-reveal.is-visible .ld-final-roadline article:nth-child(4),
.ld-final-reveal.is-visible .ld-final-reason-grid article:nth-child(4),
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(4) { animation-delay: .21s !important; }

.ld-final-reveal.is-visible .ld-final-reason-grid article:nth-child(5),
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(5) { animation-delay: .28s !important; }

.ld-final-reveal.is-visible .ld-gallery__item:nth-child(6)  { animation-delay: .32s !important; }
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(7)  { animation-delay: .36s !important; }
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(8)  { animation-delay: .40s !important; }
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(9)  { animation-delay: .44s !important; }
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(10) { animation-delay: .48s !important; }
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(11) { animation-delay: .52s !important; }
.ld-final-reveal.is-visible .ld-gallery__item:nth-child(12) { animation-delay: .56s !important; }

/* --- Mobile panel: premium dark + slide hover --- */
.ld-mobile-panel {
  background: linear-gradient(180deg, #020304, #050709) !important;
  box-shadow: -24px 0 80px rgba(0,0,0,.72) !important;
}
.ld-mobile-panel nav a {
  border-color: rgba(255,255,255,.09) !important;
  transition: background .18s ease,
              border-color .18s ease,
              transform .18s cubic-bezier(.2,.8,.2,1) !important;
}
.ld-mobile-panel nav a:hover {
  background: rgba(224,32,44,.1) !important;
  border-color: rgba(224,32,44,.3) !important;
  transform: translateX(5px) !important;
}
.ld-mobile-backdrop {
  background: rgba(0,0,0,.72) !important;
  backdrop-filter: blur(4px) !important;
}

/* --- Footer: enhanced --- */
.ld-site-footer {
  background: linear-gradient(180deg, #020304, #030406) !important;
  border-top: 1px solid rgba(224,32,44,.2) !important;
}
.ld-site-footer p,
.ld-site-footer li { line-height: 1.7; }
.ld-site-footer a {
  transition: color .16s ease !important;
  text-underline-offset: 3px;
}
.ld-site-footer a:hover {
  color: #fff !important;
  text-decoration: underline;
  text-decoration-color: rgba(224,32,44,.5);
}
.ld-footer-bottom {
  border-top-color: rgba(255,255,255,.07) !important;
}
.ld-site-footer h2 {
  color: #f0f1f3;
  letter-spacing: .02em;
}

/* --- Lightbox: enhanced --- */
.ld-lightbox {
  backdrop-filter: blur(6px) !important;
  background: rgba(0,0,0,.88) !important;
}
.ld-lightbox img {
  box-shadow: 0 38px 96px rgba(0,0,0,.78), 0 0 0 1px rgba(255,255,255,.08) !important;
  animation: ldLightboxIn .32s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes ldLightboxIn {
  from { opacity: 0; transform: scale(.94); }
  to   { opacity: 1; transform: scale(1); }
}
.ld-lightbox button {
  transition: background .18s ease, border-color .18s ease !important;
}
.ld-lightbox button:hover {
  background: rgba(224,32,44,.2) !important;
  border-color: rgba(224,32,44,.42) !important;
}

/* --- Counter: count-up animation support --- */
.ld-final-hero__stats strong[data-count] {
  font-variant-numeric: tabular-nums;
}

/* --- Footer: brand column and contact links --- */
.ld-footer-brand { display: grid; gap: 14px; align-content: start; }
.ld-footer-contacts {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
}
.ld-footer-contacts a {
  display: inline-flex;
  align-items: center;
  padding: 9px 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  background: rgba(255,255,255,.045);
  color: #d7dce4 !important;
  font-size: 13px;
  font-weight: 850;
  text-decoration: none !important;
  transition: background .16s ease, border-color .16s ease, color .16s ease !important;
}
.ld-footer-contacts a:hover {
  background: rgba(224,32,44,.12) !important;
  border-color: rgba(224,32,44,.36) !important;
  color: #fff !important;
  text-decoration: none !important;
}
.ld-site-footer address a { color: var(--ld-muted); text-decoration: none; }
.ld-site-footer address a:hover { color: #fff !important; }

/* --- Reduced motion: full override --- */
@media (prefers-reduced-motion: reduce) {
  .ld-v14-wheel,
  .ld-final-floating,
  .ld-final-floating--bottom,
  .ld-home-final--v14 .ld-eyebrow,
  .ld-final-car-shadow,
  .ld-final-speedlines,
  .ld-home-final--v14 .ld-final-hero::after,
  .ld-final-marquee div {
    animation: none !important;
    transition: none !important;
  }
  .ld-final-reveal.is-visible {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* --- Responsive: mobile polish --- */
@media (max-width: 760px) {
  .ld-final-info { grid-template-columns: 1fr !important; }
  .ld-final-reason-grid { grid-template-columns: 1fr !important; }
  .ld-gallery--masonry { grid-template-columns: repeat(2, 1fr) !important; }
  .ld-final-cinema__rail { grid-template-columns: repeat(2, 1fr) !important; }
  .ld-v14-cta { font-size: 12px !important; }
  .ld-final-roadline { grid-template-columns: 1fr !important; }
  .ld-final-course-stage { grid-template-columns: 1fr !important; }
  .ld-final-course-stack .ld-final-course {
    grid-template-columns: 1fr !important;
  }
}

/* ════════════════════════════════════════════════════════════
   v14.2 – ANIMATED SPEEDOMETER + MOBILE MAX
   ════════════════════════════════════════════════════════════ */

/* ── Kill old static SVG background on ::before ── */
.ld-home-final--v14 .ld-final-hero::before {
  background: none !important;
}

/* ── Inline speedometer: links hinter dem Text, vollständig im Hero ── */
.ld-speedo-inline {
  position: absolute;
  left: 110px;
  top: 30px;
  width: 480px;
  height: 480px;
  pointer-events: none;
  z-index: 1;
  opacity: .26;
}
.ld-speedo-inline svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}
/* Hero copy sits above speedo */
.ld-home-final--v14 .ld-final-hero__copy {
  position: relative;
  z-index: 3;
}

/* ── Needle: default at 0 km/h (7:30 o'clock = rotate 225°) ── */
.ld-speedo-needle {
  transform-box: view-box;
  transform-origin: 150px 150px;
  transform: rotate(225deg);
}

/* ── Arc: hidden until active ── */
.ld-speedo-arc {
  stroke-dasharray: 518.4;
  stroke-dashoffset: 518.4;
}

/* ── Active state: trigger animations ── */
.ld-speedo-inline.is-active .ld-speedo-needle {
  animation: ldSpeedoNeedle 3.4s cubic-bezier(.16,.88,.22,1) forwards;
}
.ld-speedo-inline.is-active .ld-speedo-arc {
  animation: ldSpeedoArc 3.4s cubic-bezier(.16,.88,.22,1) forwards;
}

/* ── Keyframes: needle sweep 0→220→140 km/h ── */
@keyframes ldSpeedoNeedle {
  0%   { transform: rotate(225deg); }
  56%  { transform: rotate(472.5deg); }
  100% { transform: rotate(382.5deg); }
}

/* ── Keyframes: arc fill 0→220→140 km/h ── */
@keyframes ldSpeedoArc {
  0%   { stroke-dashoffset: 518.4; }
  56%  { stroke-dashoffset: 43; }
  100% { stroke-dashoffset: 216; }
}

/* ── Speed counter text ── */
.ld-speedo-val {
  font-variant-numeric: tabular-nums;
}

/* ── Reduced motion: snap to settled position ── */
@media (prefers-reduced-motion: reduce) {
  .ld-speedo-inline.is-active .ld-speedo-needle {
    animation: none !important;
    transform: rotate(382.5deg) !important;
  }
  .ld-speedo-inline.is-active .ld-speedo-arc {
    animation: none !important;
    stroke-dashoffset: 216 !important;
  }
}

/* ════════════════
   STICKY MOBILE CTA BAR
   ════════════════ */
.ld-mobile-cta-bar {
  display: none;
}
@media (max-width: 860px) {
  .ld-mobile-cta-bar {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 900;
    gap: 10px;
    padding: 10px 16px;
    padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    background: linear-gradient(180deg, rgba(4,5,7,.97) 0%, #030405 100%);
    border-top: 1px solid rgba(224,32,44,.26);
    box-shadow: 0 -10px 36px rgba(0,0,0,.56), 0 -1px 0 rgba(255,255,255,.04);
    backdrop-filter: blur(8px);
  }
  .ld-mobile-cta-bar a {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    text-decoration: none !important;
    transition: background .16s ease, transform .14s ease;
  }
  .ld-mobile-cta-bar a:active { transform: scale(.97); }
  .ld-mobile-cta-bar__call {
    background: rgba(224,32,44,.12);
    border: 1px solid rgba(224,32,44,.34);
    color: #fff !important;
  }
  .ld-mobile-cta-bar__call:hover { background: rgba(224,32,44,.22) !important; }
  .ld-mobile-cta-bar__signup {
    background: linear-gradient(180deg, #f03540, #a70f18);
    border: 1px solid rgba(255,255,255,.16);
    color: #fff !important;
    box-shadow: 0 0 18px rgba(224,32,44,.3);
  }
  .ld-mobile-cta-bar__signup:hover { filter: brightness(1.1); }
  /* Push body content above the bar */
  body.lautz-premium-theme {
    padding-bottom: calc(74px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* ════════════════
   MOBILE MAX – comprehensive mobile improvements
   ════════════════ */
@media (max-width: 760px) {

  /* -- Speedometer: smaller, repositioned -- */
  .ld-speedo-inline {
    right: -50px;
    top: auto;
    bottom: 190px;
    width: 260px;
    height: 260px;
    opacity: .38;
  }

  /* -- Hero copy -- */
  .ld-home-final--v14 .ld-final-hero__copy h1 {
    font-size: 40px !important;
    line-height: 1.06;
  }
  .ld-home-final--v14 .ld-final-hero__copy .ld-eyebrow {
    font-size: 11px;
    letter-spacing: .12em;
  }
  .ld-home-final--v14 .ld-final-hero__copy p {
    font-size: 15px !important;
    line-height: 1.65;
  }

  /* -- CTA buttons: full-width touch targets -- */
  .ld-home-final--v14 .ld-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .ld-home-final--v14 .ld-actions .ld-btn {
    min-height: 52px !important;
    width: 100% !important;
    font-size: 14px !important;
    padding: 14px 22px !important;
    justify-content: center;
  }

  /* -- Mini badges: 1-col -- */
  .ld-home-final--v14 .ld-final-hero__mini {
    grid-template-columns: 1fr;
    margin-top: 20px;
    gap: 0;
  }
  .ld-home-final--v14 .ld-final-hero__mini span {
    min-height: 54px !important;
    padding: 12px 18px;
  }

  /* -- Stats bar: 2-column grid on mobile -- */
  .ld-home-final--v14 .ld-final-hero__stats {
    grid-template-columns: repeat(2, 1fr) !important;
    padding: 14px 16px !important;
    clip-path: none !important;
  }
  .ld-home-final--v14 .ld-final-hero__stats a {
    min-height: 70px !important;
    padding: 12px 14px !important;
    border-right: 1px solid rgba(255,255,255,.1) !important;
    border-bottom: 1px solid rgba(255,255,255,.1) !important;
  }
  .ld-home-final--v14 .ld-final-hero__stats a:nth-child(2n) {
    border-right: none !important;
  }
  .ld-home-final--v14 .ld-final-hero__stats a:nth-last-child(-n+2) {
    border-bottom: none !important;
  }
  .ld-home-final--v14 .ld-final-hero__stats strong {
    font-size: 16px !important;
    letter-spacing: .01em;
  }
  .ld-home-final--v14 .ld-final-hero__stats span {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .05em;
  }

  /* -- Section headings -- */
  .ld-home-final--v14 .ld-section-head {
    grid-template-columns: 1fr;
    gap: 8px;
    padding-top: 16px;
  }
  .ld-home-final--v14 .ld-section-head h2 {
    font-size: 28px !important;
    line-height: 1.12;
  }
  .ld-home-final--v14 .ld-section-head p {
    font-size: 15px;
    justify-self: start !important;
  }

  /* -- Course cards -- */
  .ld-final-course {
    min-height: auto !important;
  }

  /* -- Gallery: 2-col compact -- */
  .ld-gallery--masonry {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }

  /* -- Marquee: faster scroll on mobile -- */
  .ld-final-marquee div {
    animation-duration: 14s !important;
  }

  /* -- Nav panel: pill shape replaced with rounded rect -- */
  .ld-v14-nav-panel {
    clip-path: none !important;
    border-radius: 14px !important;
  }

  /* -- Mobile menu: larger touch targets -- */
  .ld-mobile-panel nav a {
    min-height: 54px !important;
    padding: 0 22px !important;
    font-size: 16px !important;
    display: flex !important;
    align-items: center !important;
  }

  /* -- Footer: single-col, branded separator -- */
  .ld-footer-grid {
    grid-template-columns: 1fr !important;
    gap: 26px !important;
  }
  .ld-footer-brand {
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
  .ld-footer-bottom .ld-container {
    gap: 6px;
    font-size: 13px;
  }

  /* -- CTA section -- */
  .ld-final-cta {
    padding: 30px 20px !important;
    text-align: center !important;
  }
  .ld-final-cta h2 {
    font-size: 28px !important;
  }
  .ld-final-cta .ld-actions {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }
  .ld-final-cta .ld-btn {
    min-height: 52px !important;
    font-size: 14px !important;
  }

  /* -- Proof: 2-col on mobile -- */
  .ld-final-proof {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }

  /* -- Cinema: 1-col on mobile -- */
  .ld-final-cinema__rail {
    grid-template-columns: 1fr !important;
  }

  /* -- Reason grid: 1-col -- */
  .ld-final-reason-grid {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  /* -- Roadline: 1-col -- */
  .ld-final-roadline {
    grid-template-columns: 1fr !important;
  }

  /* -- Info grid: 1-col -- */
  .ld-final-info {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
}

/* ── Extra small: hide speedo, tighten headings ── */
@media (max-width: 420px) {
  .ld-speedo-inline { display: none; }
  .ld-home-final--v14 .ld-final-hero__copy h1 { font-size: 34px !important; }
  .ld-home-final--v14 .ld-final-hero__stats {
    grid-template-columns: 1fr !important;
  }
  .ld-home-final--v14 .ld-final-hero__stats a {
    border-right: none !important;
  }
}

/* ════════════════════════════════════════════════════════════
   MEGA DROPDOWN – Ausbildung Navigation
   ════════════════════════════════════════════════════════════ */

/* Override base dropdown panel for mega style */
.ld-v14-dropdown > .ld-v14-megadrop {
  display: grid;
  grid-template-columns: 1fr 1px 1fr;
  min-width: 560px;
  padding: 22px 20px 18px;
  gap: 0;
  left: 0;
  top: calc(100% + 8px);
  background: rgba(6,7,9,.98);
  border: 1px solid rgba(224,32,44,.28);
  border-radius: 12px;
  box-shadow: 0 24px 64px rgba(0,0,0,.56), 0 0 0 1px rgba(255,255,255,.04);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* Column labels */
.ld-megadrop-label {
  display: block;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--ld-v14-red);
  padding: 0 10px 9px;
  border-bottom: 1px solid rgba(224,32,44,.18);
  margin-bottom: 6px;
}

/* Column divider */
.ld-megadrop-divider {
  display: block;
  background: rgba(255,255,255,.07);
  margin: 0 18px;
}

/* Individual links */
.ld-v14-megadrop a {
  display: block;
  padding: 9px 10px;
  border-radius: 7px;
  text-decoration: none;
  transition: background .14s ease;
  margin-bottom: 2px;
}
.ld-v14-megadrop a strong {
  display: block;
  color: #eef0f3;
  font-size: 13px;
  font-weight: 750;
  letter-spacing: .008em;
  transition: color .14s ease;
}
.ld-v14-megadrop a em {
  display: block;
  font-style: normal;
  color: rgba(255,255,255,.38);
  font-size: 11px;
  margin-top: 2px;
  line-height: 1.4;
}
.ld-v14-megadrop a:hover {
  background: rgba(224,32,44,.1) !important;
}
.ld-v14-megadrop a:hover strong {
  color: #fff;
}
.ld-v14-megadrop a:hover em {
  color: rgba(255,255,255,.54);
}

/* ════════════════════════════════════════════════════════════
   GLASS MORPHISM CARDS
   ════════════════════════════════════════════════════════════ */
.ld-home-final--v14 .ld-final-course,
.ld-home-final--v14 .ld-final-roadline article,
.ld-home-final--v14 .ld-final-reason-grid article,
.ld-home-final--v14 .ld-final-info article,
.ld-home-final--v14 .ld-final-proof article,
.ld-home-final--v14 .ld-final-cinema__rail article {
  background: rgba(255,255,255,.038) !important;
  backdrop-filter: blur(18px) saturate(1.3) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.3) !important;
  border-color: rgba(255,255,255,.1) !important;
  box-shadow: 0 8px 28px rgba(0,0,0,.22),
              inset 0 1px 0 rgba(255,255,255,.07),
              inset 0 -1px 0 rgba(0,0,0,.18) !important;
}
/* Hover keeps glass but adds red accent */
.ld-home-final--v14 .ld-final-course:hover,
.ld-home-final--v14 .ld-final-roadline article:hover,
.ld-home-final--v14 .ld-final-reason-grid article:hover,
.ld-home-final--v14 .ld-final-info article:hover,
.ld-home-final--v14 .ld-final-proof article:hover {
  background: rgba(224,32,44,.055) !important;
  border-color: rgba(224,32,44,.22) !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.38),
              0 0 0 1px rgba(224,32,44,.14),
              inset 0 1px 0 rgba(255,255,255,.09) !important;
}

/* ════════════════════════════════════════════════════════════
   MOBILE: HERO REDESIGN – Golf versteckt, Tacho als BG-Deko
   ════════════════════════════════════════════════════════════ */
@media (max-width: 760px) {
  /* Golf komplett ausblenden – passt nicht auf Mobile */
  .ld-final-car-wrap { display: none !important; }

  /* Tacho: groß zentriert als Hintergrund-Deko */
  .ld-speedo-inline {
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 340px !important;
    height: 340px !important;
    opacity: .13 !important;
    z-index: 1 !important;
  }

  /* Hero höhe auf Mobile kompakter */
  .ld-home-final--v14 .ld-final-hero {
    min-height: 580px !important;
    padding-bottom: 60px !important;
  }

  /* Copy: volle Breite, zentriert */
  .ld-home-final--v14 .ld-final-hero__stage {
    grid-column: 1 / -1 !important;
    text-align: center !important;
    padding: 60px 24px 32px !important;
    align-items: center !important;
  }

  .ld-home-final--v14 .ld-final-hero__copy {
    max-width: 100% !important;
    align-items: center !important;
    text-align: center !important;
  }

  .ld-home-final--v14 .ld-final-hero__actions {
    justify-content: center !important;
  }
}

@media (max-width: 480px) {
  .ld-speedo-inline {
    width: 280px !important;
    height: 280px !important;
  }
  .ld-home-final--v14 .ld-final-hero {
    min-height: 520px !important;
  }
}

/* ════════════════════════════════════════════════════════════
   INNER-PAGE UPGRADE PASS
   Fixes for components that never received real styling:
   license accordion, location cards, timetable/pricing/info card
   headings + eyebrows, timebox padding, info-box/note, card shine.
   Applies across all ld-page subpages (Kontakt included, since it
   shares .ld-card / .ld-hours / .ld-contact-layout with this pass).
   ════════════════════════════════════════════════════════════ */

/* Card hover "shine" was defined but never fired — no positioned ancestor */
.ld-person-card,
.ld-service-card,
.ld-info-card,
.ld-location-card {
  position: relative;
  overflow: hidden;
}

/* Consolidated card heading rule: covers h2 (as actually used in markup)
   as well as h3, and adds the previously-missing timetable/pricing cards */
.ld-card h2, .ld-card h3,
.ld-service-card h2, .ld-service-card h3,
.ld-info-card h2, .ld-info-card h3,
.ld-person-card h2, .ld-person-card h3,
.ld-vehicle-card h2, .ld-vehicle-card h3,
.ld-license-card h2, .ld-license-card h3,
.ld-location-card h2, .ld-location-card h3,
.ld-timetable-card h2, .ld-timetable-card h3,
.ld-pricing-card h2, .ld-pricing-card h3,
.ld-pathway-card h2, .ld-pathway-card h3 {
  margin: 0 0 10px;
  line-height: 1.18;
  letter-spacing: -.025em;
  font-size: clamp(20px, 2.1vw, 25px);
  color: #fff;
}

/* Eyebrow labels: several card types used a bare <span> with no styling
   at all. Bring them in line with the badge already used on service cards */
.ld-info-card > span,
.ld-pricing-card > span,
.ld-timetable-card > span,
.ld-location-card > div > span {
  display: inline-flex;
  margin-bottom: 14px;
  color: #fff;
  background: var(--ld-accent-soft);
  border: 1px solid rgba(150,160,172,.26);
  border-radius: 10px;
  padding: 6px 9px;
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .06em;
}

/* Timebox: had background/border but no padding, so text sat flush
   against its own edge everywhere it was used (Standorte, Theorie) */
.ld-timebox {
  padding: 18px 20px;
  display: grid;
  gap: 6px;
}
.ld-timebox strong { color: #fff; font-size: 14px; letter-spacing: .01em; }
.ld-timebox p { margin: 0; color: var(--ld-muted); }

/* Standorte: location cards rendered as a raw <img> + <div> with no
   layout at all. Give them the same edge-to-edge media treatment the
   team/vehicle cards already have. */
.ld-location-card {
  padding: 0;
  display: flex;
  flex-direction: column;
}
.ld-location-card > img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block;
}
.ld-location-card > div {
  padding: 26px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.ld-location-card h2 { margin-top: 2px; }
.ld-location-card .ld-timebox { width: 100%; margin: 4px 0 18px; }
.ld-location-card .ld-btn { margin-top: 4px; }

/* Info box + note: basic left-border box upgraded with a proper icon
   chip and tighter type instead of a flat strip of text */
.ld-info-box {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 20px 22px;
  border-left: none;
  border-radius: var(--ld-radius-sm);
  background: linear-gradient(135deg, rgba(150,160,172,.12), rgba(255,255,255,.03));
  color: var(--ld-text-soft);
  line-height: 1.6;
}
.ld-info-box::before {
  content: "i";
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  margin-top: 1px;
  border-radius: 50%;
  background: var(--ld-accent);
  color: #fff;
  font-style: italic;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 14px;
  font-weight: 700;
  display: grid;
  place-items: center;
}
.ld-note {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 22px;
  padding: 18px 22px;
  color: var(--ld-muted);
}
.ld-note a { color: #fff; font-weight: 800; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.35); transition: border-color .16s ease; }
.ld-note a:hover { border-color: #fff; }

/* ── Inline icon set (mask-based, currentColor-tintable, zero requests) ── */
:root {
  --ld-i-pin:   url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C7.6 2 4 5.6 4 10c0 6 8 12 8 12s8-6 8-12c0-4.4-3.6-8-8-8zm0 11a3 3 0 110-6 3 3 0 010 6z'/%3E%3C/svg%3E");
  --ld-i-clock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 100 20 10 10 0 000-20zm1 10.41l4.29 4.3-1.42 1.41L11 13V6h2v6.41z'/%3E%3C/svg%3E");
  --ld-i-mail:  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4a2 2 0 00-2 2v12a2 2 0 002 2h16a2 2 0 002-2V6a2 2 0 00-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E");
  --ld-i-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.9 15.9 0 006.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.3 1.2.4 2.5.6 3.9.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.6 21 3 13.4 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.4.2 2.7.6 3.9.1.4 0 .8-.3 1.1L6.6 10.8z'/%3E%3C/svg%3E");
  --ld-i-chat:  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h16a1 1 0 011 1v11a1 1 0 01-1 1H8l-4 4V5a1 1 0 011-1z'/%3E%3C/svg%3E");
  --ld-i-car:   url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 11l1.5-4.5A2 2 0 018.4 5h7.2a2 2 0 011.9 1.5L19 11h1a1 1 0 011 1v5a1 1 0 01-1 1h-1a2 2 0 01-4 0H9a2 2 0 01-4 0H4a1 1 0 01-1-1v-5a1 1 0 011-1h1zm2.2-4l-1.3 4h12.2l-1.3-4H7.2zM7 16a1 1 0 100 2 1 1 0 000-2zm10 0a1 1 0 100 2 1 1 0 000-2z'/%3E%3C/svg%3E");
  --ld-i-moto:  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 17l4-8h4l2 4h3M10 9L8 6H5' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='6' cy='17' r='3'/%3E%3Ccircle cx='18' cy='17' r='3'/%3E%3C/svg%3E");
  --ld-i-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2L4.8 12l-1.4 1.4L9 19 20.6 7.4 19.2 6z'/%3E%3C/svg%3E");
  --ld-i-doc:   url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2h9l5 5v13a2 2 0 01-2 2H6a2 2 0 01-2-2V4a2 2 0 012-2zm8 1.5V8h4.5L14 3.5z'/%3E%3C/svg%3E");
}
.ld-i {
  display: inline-block;
  flex: 0 0 auto;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

/* Contact links: phone / mail / whatsapp get a real icon instead of plain text,
   wherever they occur (Kontakt richtext, contact strip, home command card) */
.ld-richtext a[href^="tel:"],
.ld-richtext a[href^="mailto:"],
.ld-command-actions a,
.ld-news-contact a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.ld-richtext a[href^="tel:"]::before,
.ld-contact-strip a[href^="tel:"] span::before,
.ld-command-actions a[href^="tel:"]::before,
.ld-news-contact a[href^="tel:"]::before {
  content: ""; width: 15px; height: 15px; -webkit-mask-image: var(--ld-i-phone); mask-image: var(--ld-i-phone);
  background-color: currentColor; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  display: inline-block; flex: 0 0 auto;
}
.ld-richtext a[href^="mailto:"]::before,
.ld-contact-strip a[href^="mailto:"] span::before,
.ld-command-actions a[href^="mailto:"]::before {
  content: ""; width: 15px; height: 15px; -webkit-mask-image: var(--ld-i-mail); mask-image: var(--ld-i-mail);
  background-color: currentColor; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  display: inline-block; flex: 0 0 auto;
}
.ld-richtext a[href*="wa.me"]::before,
.ld-contact-strip a[href*="wa.me"] span::before,
.ld-command-actions a[href*="wa.me"]::before {
  content: ""; width: 15px; height: 15px; -webkit-mask-image: var(--ld-i-chat); mask-image: var(--ld-i-chat);
  background-color: currentColor; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  display: inline-block; flex: 0 0 auto;
}

/* Timebox / hours: small clock mark ahead of the headline */
.ld-timebox strong,
.ld-hours strong {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.ld-timebox strong::before,
.ld-card .ld-hours > div > span::before {
  content: ""; width: 13px; height: 13px; -webkit-mask-image: var(--ld-i-clock); mask-image: var(--ld-i-clock);
  background-color: currentColor; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  display: inline-block; flex: 0 0 auto; opacity: .8;
}
.ld-hours > div > span { display: inline-flex; align-items: center; gap: 7px; }

/* Downloads: document mark ahead of every PDF link */
.ld-download {
  display: flex;
  align-items: center;
  gap: 14px;
}
.ld-download::before {
  content: ""; width: 22px; height: 22px; -webkit-mask-image: var(--ld-i-doc); mask-image: var(--ld-i-doc);
  background-color: var(--ld-muted); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  display: inline-block; flex: 0 0 auto; transition: background-color .16s ease;
}
.ld-download:hover::before { background-color: #fff; }
.ld-download > span { display: none; }

/* Führerscheinklassen: the license accordion used bare <details>/<summary>
   with no styling anywhere — native disclosure triangle, no transitions.
   Rebuilt as a single-column list with real category icons (car/moto),
   a colour-coded accent edge and a JS-driven smooth expand (see theme.js);
   this CSS also degrades gracefully to an instant native toggle without JS. */
.ld-license-grid {
  grid-template-columns: 1fr;
  max-width: 900px;
  margin-inline: auto;
  gap: 12px;
}
.ld-license-card {
  position: relative;
  padding: 0;
  isolation: isolate;
  overflow: hidden;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.ld-license-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: var(--ld-accent-2);
  opacity: .35;
  transition: opacity .2s ease;
}
.ld-license-card[data-vtype="moto"]::before { background: var(--ld-accent); }
.ld-license-card:hover::before,
.ld-license-card[open]::before { opacity: 1; }
.ld-license-card:hover,
.ld-license-card[open] {
  border-color: rgba(255,255,255,.22);
  box-shadow: 0 16px 40px rgba(0,0,0,.24);
}
.ld-license-card[open] {
  background: linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.03));
}

.ld-license-card > summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 16px 22px 16px 26px;
}
.ld-license-card > summary::-webkit-details-marker { display: none; }
.ld-license-card > summary::marker { content: ""; }

/* Icon + code chip */
.ld-license-card > summary > span {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  width: 58px;
  height: 58px;
  border-radius: var(--ld-radius-sm);
  background: linear-gradient(160deg, rgba(255,255,255,.1), rgba(255,255,255,.03));
  border: 1px solid var(--ld-line-strong);
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .01em;
  transition: border-color .2s ease, background .2s ease;
}
.ld-license-card > summary > span::before {
  content: "";
  width: 20px;
  height: 20px;
  background-color: var(--ld-muted);
  -webkit-mask-image: var(--ld-i-car);
  mask-image: var(--ld-i-car);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  transition: background-color .2s ease;
}
.ld-license-card[data-vtype="moto"] > summary > span::before {
  -webkit-mask-image: var(--ld-i-moto);
  mask-image: var(--ld-i-moto);
}
.ld-license-card:hover > summary > span,
.ld-license-card[open] > summary > span {
  border-color: rgba(255,255,255,.32);
  background: linear-gradient(160deg, rgba(255,255,255,.16), rgba(255,255,255,.05));
}
.ld-license-card:hover > summary > span::before,
.ld-license-card[open] > summary > span::before {
  background-color: var(--ld-accent-2);
}
.ld-license-card[data-vtype="moto"]:hover > summary > span::before,
.ld-license-card[data-vtype="moto"][open] > summary > span::before {
  background-color: var(--ld-accent);
}

/* Requirement text */
.ld-license-card > summary > strong {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  color: var(--ld-text-soft);
  font-size: 14.5px;
  font-weight: 700;
  letter-spacing: .01em;
  text-align: left;
}
.ld-license-card > summary > strong::before {
  content: "Voraussetzung";
  font-size: 10.5px;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--ld-muted);
  opacity: .7;
}

/* Chevron */
.ld-license-card > summary::after {
  content: "";
  flex: 0 0 auto;
  margin-left: auto;
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--ld-muted);
  border-bottom: 2px solid var(--ld-muted);
  transform: rotate(45deg);
  transition: transform .3s cubic-bezier(.16,1,.3,1), border-color .2s ease;
}
.ld-license-card > summary:focus-visible {
  outline: 2px solid rgba(150,160,172,.55);
  outline-offset: -2px;
  border-radius: var(--ld-radius-sm);
}
.ld-license-card[open] > summary::after {
  transform: rotate(225deg);
  border-color: #fff;
}

.ld-license-card > div {
  padding: 0 22px 22px 26px;
  animation: ldAccordionIn .22s ease;
}
.ld-license-card > div::before {
  content: "";
  display: block;
  height: 1px;
  margin: 0 0 16px;
  background: var(--ld-line);
}
.ld-license-card > div p { margin: 0 0 10px; }
.ld-license-card > div p:last-child { margin-bottom: 0; }
.ld-license-card > div strong { color: #fff; }
@keyframes ldAccordionIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .ld-license-card > div { animation: none; }
}

/* ════════════════════════════════════════════════════════════
   HOMEPAGE: Willkommen / Philosophie panel
   A single centred paragraph looked like an afterthought floating in
   space. Rebuilt as a proper editorial panel matching the visual
   language already used for the CTA band (accent gradient, border,
   shadow) but with its own identity: a large decorative quote mark
   and a compact fact strip that backs up the claim with numbers.
   ════════════════════════════════════════════════════════════ */
.ld-final-intro { padding: 8px 0 0; }
.ld-final-intro__panel {
  position: relative;
  overflow: hidden;
  padding: 52px 56px;
  border: 1px solid rgba(216,222,230,.16);
  border-radius: 8px;
  background:
    linear-gradient(120deg, rgba(159,38,45,.14), rgba(159,38,45,0) 55%),
    linear-gradient(180deg, rgba(216,222,230,.06), rgba(216,222,230,.024));
  box-shadow: 0 24px 70px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.05);
}
.ld-final-intro__mark {
  position: absolute;
  top: -38px;
  left: 34px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 260px;
  line-height: 1;
  color: rgba(159,38,45,.16);
  pointer-events: none;
  user-select: none;
}
.ld-final-intro__content {
  position: relative;
  max-width: 760px;
}
.ld-final-intro__content h2 {
  margin: 14px 0 0;
  font-size: clamp(28px, 3.4vw, 42px);
  line-height: 1.12;
  letter-spacing: -.02em;
  color: #f8f9fb;
}
.ld-final-intro__content p {
  margin: 18px 0 0;
  color: #bcc3cd;
  font-size: 17px;
  line-height: 1.65;
}
.ld-final-intro__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}
.ld-final-intro__facts span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 9px 14px;
  border: 1px solid rgba(216,222,230,.2);
  border-radius: 999px;
  background: rgba(255,255,255,.045);
  color: #c7cdd5;
  font-size: 13px;
  font-weight: 700;
}
.ld-final-intro__facts strong {
  color: #fff;
  font-size: 14px;
  font-weight: 900;
}

@media (max-width: 760px) {
  .ld-final-intro__panel { padding: 34px 24px; }
  .ld-final-intro__mark { font-size: 160px; top: -22px; left: 14px; }
}

/* ════════════════════════════════════════════════════════════
   FAHRZEUGE: categorised, swipeable, compact vehicle rails
   Photos are portrait (~0.75 width/height) — the old grid forced them
   into a landscape 4/3 box, cropping the sides heavily. Rebuilt as
   horizontally scrollable rows (native touch/trackpad swipe via
   scroll-snap, no JS) with smaller cards at the real aspect ratio,
   split into Autos / Zweiräder, plus one large feature shot for the
   Anhängergespann (the one genuinely landscape photo in the set).
   ════════════════════════════════════════════════════════════ */
.ld-vehicle-category { margin: 0 0 40px; }
.ld-vehicle-category:last-child { margin-bottom: 0; }
.ld-vehicle-category__title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  font-size: 15px;
  font-weight: 850;
  letter-spacing: .01em;
  color: #fff;
}
.ld-vehicle-category__title::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  background: var(--ld-line);
}

.ld-vehicle-rail {
  display: flex;
  gap: 14px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  scroll-padding-left: 2px;
  padding: 2px 2px 14px;
  margin: 0 -2px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: rgba(150,160,172,.4) transparent;
}
.ld-vehicle-rail::-webkit-scrollbar { height: 7px; }
.ld-vehicle-rail::-webkit-scrollbar-thumb { background: rgba(150,160,172,.35); border-radius: 99px; }

.ld-vehicle-rail-card {
  flex: 0 0 auto;
  width: 190px;
  scroll-snap-align: start;
  overflow: hidden;
  border: 1px solid var(--ld-line);
  background: rgba(255,255,255,.045);
  border-radius: var(--ld-radius-sm);
  transition: transform .18s ease, border-color .18s ease;
}
.ld-vehicle-rail-card:hover {
  transform: translateY(-3px);
  border-color: rgba(150,160,172,.34);
}
.ld-vehicle-rail-card__image {
  display: block;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: #0b0f15;
}
.ld-vehicle-rail-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}
.ld-vehicle-rail-card:hover .ld-vehicle-rail-card__image img { transform: scale(1.04); }
.ld-vehicle-rail-card__body { padding: 14px 15px 16px; }
.ld-vehicle-rail-card__body span {
  display: inline-block;
  margin-bottom: 6px;
  color: var(--ld-muted);
  font-size: 10.5px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.ld-vehicle-rail-card__body h3 {
  margin: 0 0 4px;
  font-size: 14.5px;
  line-height: 1.2;
  letter-spacing: -.01em;
  color: #fff;
}
.ld-vehicle-rail-card__body p {
  margin: 0;
  color: var(--ld-muted);
  font-size: 12.5px;
  line-height: 1.4;
}

.ld-vehicle-feature {
  position: relative;
  display: block;
  overflow: hidden;
  border: 1px solid var(--ld-line);
  border-radius: var(--ld-radius);
  text-decoration: none;
  background: #0b0f15;
}
.ld-vehicle-feature img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
  transition: transform .4s ease;
}
.ld-vehicle-feature:hover img { transform: scale(1.02); }
.ld-vehicle-feature__caption {
  position: absolute;
  inset: auto 0 0 0;
  padding: 28px 30px;
  background: linear-gradient(0deg, rgba(4,5,7,.86) 0%, rgba(4,5,7,.35) 65%, transparent 100%);
}
.ld-vehicle-feature__caption span {
  display: inline-block;
  margin-bottom: 8px;
  color: #fff;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 10px;
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.ld-vehicle-feature__caption h3 {
  margin: 0 0 4px;
  font-size: clamp(20px, 2.6vw, 28px);
  color: #fff;
  letter-spacing: -.02em;
}
.ld-vehicle-feature__caption p {
  margin: 0;
  color: var(--ld-text-soft);
  font-size: 14px;
}

@media (max-width: 640px) {
  .ld-vehicle-rail-card { width: 156px; }
  .ld-vehicle-feature__caption { padding: 20px 20px 22px; }
}

@media (prefers-reduced-motion: reduce) {
  .ld-vehicle-rail { scroll-behavior: auto; }
}

@media (max-width: 640px) {
  .ld-location-card > div { padding: 20px; }
  .ld-license-card > summary { padding: 14px 16px 14px 20px; gap: 12px; }
  .ld-license-card > summary > span { width: 48px; height: 48px; }
  .ld-license-card > summary > strong { font-size: 13.5px; }
  .ld-license-card > div { padding: 0 16px 18px 20px; }
}
