/*
 * ShopDesign 1.8.0 – Footer im Design-System (body.le-ft-v31, Schalter footerDesign). Ohne die Körperklasse wirkt nichts.
 * Tokens = Design-System v2/V3 (--le-*). Unabhängig vom Mega-Menü (eigene Datei, eigener Schalter).
 */
/* F-06: Serif auch ohne Header-/PDP-Stylesheet (Seiten mit footerDesign, aber headerDesign aus) */
@font-face { font-family: 'LE Cormorant'; src: url('../fonts/cormorant-garamond-latin-600-normal.woff2') format('woff2'); font-weight: 600; font-style: normal; font-display: swap; }
.le-ft-v31 {
    --le-ink: #1b1b1b; --le-gold: #dab44a; --le-on-dark: #d9d4c8; --le-muted-dark: #a59f92; --le-line-dark: rgba(255, 255, 255, .12);
    --le-serif: 'LE Cormorant', 'Cormorant Garamond', Georgia, serif; --le-sans: 'Raleway', 'Open Sans', Arial, sans-serif;
}
/* ================================================================ Footer (alle Breiten) */
.le-ft-v31 .footer-main.le-ft { background: var(--le-ink); color: var(--le-on-dark); font: 400 15px/1.65 var(--le-sans); padding: 0; margin: 0; border: 0; max-width: none; width: 100%; }
.le-ft-v31 .le-ft *, .le-ft-v31 .le-ft *::before, .le-ft-v31 .le-ft *::after { box-sizing: border-box; }
.le-ft-v31 .le-ft a { color: inherit; text-decoration: none; }
.le-ft-v31 .le-ft a:hover { color: #fff; }
.le-ft-v31 .le-ft a:focus-visible { outline: 2px solid var(--le-gold); outline-offset: 3px; }
/* Flucht = Inhaltscontainer/Mega-Panel (1160 px, Kante 140 bei 1440 – QA D-02); Rand als margin → alle Linien gleich lang */
.le-ft-v31 .le-ft__inner { max-width: 1160px; margin: 0 auto; padding: 0; }
.le-ft-v31 .le-ft__main { padding: 60px 0 0; }
.le-ft-v31 .le-ft__grid { display: grid; grid-template-columns: 1.1fr 1.05fr .95fr 1.2fr; gap: 40px; padding-bottom: 48px; border-bottom: 1px solid var(--le-line-dark); }
.le-ft-v31 .le-ft__label { margin: 0 0 18px; font: 700 11px/1.45 var(--le-sans); letter-spacing: .26em; text-transform: uppercase; color: var(--le-gold); }
.le-ft-v31 .le-ft__label--inline { margin: 0 14px 0 0; }
.le-ft-v31 .le-ft__col { min-width: 0; }
/* Kontakt */
.le-ft-v31 .le-ft__phone { display: block; margin: 0 0 10px; font: 600 26px/1.15 var(--le-serif); color: #fff !important; letter-spacing: .01em; }
.le-ft-v31 .le-ft__phone:hover { color: var(--le-gold) !important; }
.le-ft-v31 .le-ft__link { display: inline-block; margin: 0 0 14px; line-height: 1.4; text-decoration: underline !important; text-decoration-color: rgba(218, 180, 74, .55) !important; text-underline-offset: 4px; }
.le-ft-v31 .le-ft__link--muted { color: var(--le-muted-dark) !important; text-decoration-color: transparent !important; font-size: 14px; margin: 14px 0 0; }
.le-ft-v31 .le-ft__address { display: block; line-height: 1.6; }
/* „Route planen“ als Link-Hinweis, nicht als Rubrik (QA D-11) */
.le-ft-v31 .le-ft__hint { display: table; margin-top: 8px; font-size: 14px; color: var(--le-gold); text-decoration: underline; text-decoration-color: rgba(218, 180, 74, .55); text-underline-offset: 4px; }
/* Marken: kein zweiter Rahmen, feste Kästen (kein Nachspringen beim Laden – QA D-05/P-01/U-07) */
.le-ft-v31 .le-ft__brands { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; padding: 0; list-style: none; }
.le-ft-v31 .le-ft__brands a { display: flex; align-items: center; justify-content: center; width: 72px; height: 76px; opacity: .88; transition: opacity .18s; }
.le-ft-v31 .le-ft__brands a:hover { opacity: 1; }
.le-ft-v31 .le-ft__brands picture { display: contents; }
.le-ft-v31 .le-ft__brands img { display: block; max-width: 72px; max-height: 76px; width: auto; height: auto; }
/* Rundgang */
.le-ft-v31 .le-ft__tour { display: flex; align-items: center; gap: 14px; }
.le-ft-v31 .le-ft__tour img { width: 72px; height: auto; flex: 0 0 72px; }
.le-ft-v31 .le-ft__tour span { line-height: 1.45; text-decoration: underline; text-decoration-color: rgba(218, 180, 74, .55); text-underline-offset: 4px; }
/* Rechtliches – Theme-Liste unverändert, nur gestaltet */
.le-ft-v31 .le-ft__col--legal .navigation--list { margin: 0; padding: 0; list-style: none; display: block; }
.le-ft-v31 .le-ft__col--legal .navigation--entry { display: block; margin: 0; padding: 0; border: 0; background: none; }
.le-ft-v31 .le-ft__col--legal .navigation--link { display: inline-block; padding: 3px 0; font: 400 15px/1.6 var(--le-sans); color: var(--le-on-dark) !important; background: none; }
.le-ft-v31 .le-ft__col--legal .navigation--link:hover { color: #fff !important; }
/* Service-Zeile */
.le-ft-v31 .le-ft__service { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 22px 40px; padding-top: 26px; padding-bottom: 30px; }
.le-ft-v31 .le-ft__social, .le-ft-v31 .le-ft__pay { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 0; }
.le-ft-v31 .le-ft__pay { flex-basis: 100%; padding-top: 22px; border-top: 1px solid var(--le-line-dark); }
.le-ft-v31 .le-ft__social ul, .le-ft-v31 .le-ft__pay ul { display: flex; flex-wrap: wrap; align-items: center; margin: 0; padding: 0; list-style: none; }
.le-ft-v31 .le-ft__social ul { gap: 10px; }
.le-ft-v31 .le-ft__social a { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid var(--le-line-dark); border-radius: 50%; color: var(--le-gold) !important; font-size: 17px; }
.le-ft-v31 .le-ft__social a:hover { border-color: var(--le-gold); color: #fff !important; }
.le-ft-v31 .le-ft__review { font-size: 14.5px; }
.le-ft-v31 .le-ft__review-cta { text-decoration: underline; text-decoration-color: rgba(218, 180, 74, .55); text-underline-offset: 4px; }
/* Zahlungsarten: Originallogos auf hellen Kärtchen gleicher Größe – Markenzeichen bleiben erkennbar, kein Filter, auch im
   Kontrastmodus sichtbar, feste Maße (QA D-04/U-01/P-01) */
.le-ft-v31 .le-ft__pay ul { gap: 10px; }
.le-ft-v31 .le-ft__pay li { display: flex; align-items: center; justify-content: center; width: 92px; height: 40px; padding: 0 10px; background: #fff; border-radius: 3px; }
.le-ft-v31 .le-ft__pay img { display: block; max-width: 72px; max-height: 20px; width: auto; height: auto; object-fit: contain; }
.le-ft-v31 .le-ft__pay img[alt="Mastercard"] { max-height: 24px; }
.le-ft-v31 .le-ft__pay img[alt="VISA"] { max-height: 18px; }
@media (forced-colors: active) {
    .le-ft-v31 .le-ft__pay li { forced-color-adjust: none; background: #fff; }
}
/* Fußleiste */
.le-ft-v31 .le-ft__bottom { background: #121212; color: var(--le-muted-dark); font-size: 13px; }
.le-ft-v31 .le-ft__bottom-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 24px; min-height: 56px; padding-top: 12px; padding-bottom: 12px; }
.le-ft-v31 .le-ft__bottom .meta-nav { display: flex; flex-wrap: wrap; gap: 4px 22px; margin: 0; padding: 0; list-style: none; float: none; }
.le-ft-v31 .le-ft__bottom .meta-nav .navigation--entry { margin: 0; padding: 0; border: 0 !important; background: none; float: none; }
.le-ft-v31 .le-ft__bottom .meta-nav .navigation--link { padding: 4px 0; font: 600 13px/1.4 var(--le-sans); color: var(--le-on-dark) !important; border: 0 !important; background: none; }
.le-ft-v31 .le-ft__bottom .meta-nav .navigation--link:hover { color: #fff !important; }

@media screen and (max-width: 78.74em) {
    .le-ft-v31 .le-ft__inner { margin: 0 30px; }
}
/* 768–1023 px: zwei Spalten (QA N-02) */
@media screen and (min-width: 48em) and (max-width: 63.99em) {
    .le-ft-v31 .le-ft__grid { grid-template-columns: 1fr 1fr; gap: 32px 40px; }
}
/* 1024–1259 px: drei Spalten, Marken + Rundgang übereinander (QA D-03) */
@media screen and (min-width: 64em) and (max-width: 78.74em) {
    .le-ft-v31 .le-ft__grid { grid-template-columns: 1.2fr 1fr 1fr; gap: 32px 40px; }
    .le-ft-v31 .le-ft__col--contact { grid-column: 1; grid-row: 1 / span 2; }
    .le-ft-v31 .le-ft__col--brands { grid-column: 2; grid-row: 1; }
    .le-ft-v31 .le-ft__col--tour { grid-column: 2; grid-row: 2; }
    .le-ft-v31 .le-ft__col--legal { grid-column: 3; grid-row: 1 / span 2; }
}
@media screen and (max-width: 47.99em) {
    .le-ft-v31 .le-ft__inner { margin: 0 20px; }
    .le-ft-v31 .le-ft__main { padding-top: 44px; }
    .le-ft-v31 .le-ft__grid { grid-template-columns: 1fr; gap: 32px; padding-bottom: 36px; }
    .le-ft-v31 .le-ft__col + .le-ft__col { border-top: 1px solid var(--le-line-dark); padding-top: 28px; }
    .le-ft-v31 .le-ft__phone { font-size: 28px; }
    .le-ft-v31 .le-ft__col--legal .navigation--link { padding: 8px 0; font-size: 14.5px; }
    .le-ft-v31 .le-ft__service { flex-direction: column; align-items: flex-start; }
    .le-ft-v31 .le-ft__bottom-row { flex-direction: column; align-items: flex-start; padding-top: 16px; padding-bottom: 18px; }
    .le-ft-v31 .le-ft__bottom .meta-nav .navigation--link { padding: 8px 0; }
}
/* Versalziffern überall im Footer (font-Kurzform setzt font-variant-numeric je Element zurück → am Ende) */
.le-ft-v31 .le-ft, .le-ft-v31 .le-ft * { font-variant-numeric: lining-nums; }
/* F-02: mobile Kaufleiste der Produktseite (76 px, fixiert) darf die Fußleiste mit „Vertrag widerrufen“ nicht verdecken */
.le-ft-v31.is--le-pdp.le-pdp--bar-visible .le-ft__bottom { padding-bottom: 76px; }
