@charset "UTF-8";
/**
 * main.css – KANONISCHER CSS-MASTER
 * Stand: 19.08.2026
 *
 * EINZIGER CSS-EINSTIEGSPUNKT der gesamten Website.
 * TYPO3 lädt ausschließlich diese Datei.
 *
 * Verantwortung:
 * - lokale Vendor-Basis
 * - Fonts
 * - globale Tokens / Base / Layout
 * - Responsive Home
 * - Unterseiten
 * - Touch-Overrides
 * - Print
 *
 * Nicht aktive Bibliotheksdateien werden bewusst NICHT geladen:
 * - vendor/open-props.min.css
 * - vendor/swiper-bundle.min.css
 * - vendor/tippy-light-border.css
 *
 * Diese Dateien liegen nur noch als Bestand im Projekt und gehören nicht zum
 * aktuellen Runtime-Vertrag.
 */

@layer reset, vendor, fonts, tokens, base, ui, layout, components, responsive, theme, sections, contract, overrides;

/* ========================================================================== 
   1) Fonts – zentral über den Master
   ========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700&family=Roboto:wght@400;500;600;700;800&display=swap") layer(fonts);

/* ========================================================================== 
   2) Aktive Vendor-CSS – keine separaten TypoScript-Includes mehr
   ========================================================================== */
@import "vendor/modern-normalize.min.css" layer(reset);
@import "vendor/shoelace-light.css" layer(vendor);
@import "vendor/tippy.css" layer(vendor);

/* ========================================================================== 
   3) Globale Design-/Runtime-Basis
   ========================================================================== */
@import "base/_variables.css" layer(tokens);
@import "base/_runtime.css" layer(tokens);

@import "base/_global.css" layer(base);
@import "base/_cookie-consent-safety.css" layer(base);
@import "base/_tooltips.css" layer(base);
@import "base/_shoelace-overrides.css" layer(base);

/* Wiederverwendbare UI-Sprache der Startseite und Unterseiten. */
@import "responsive-home-v1-ui-contract.css" layer(ui);

/* ========================================================================== 
   4) Gemeinsamer Dokument-/Header-/Footer-Vertrag
   ========================================================================== */
@import "layout/_frame.css" layer(layout);
@import "layout/_header.css" layer(layout);
@import "layout/_footer.css" layer(layout);
@import "layout/_overlay.css" layer(layout);

/* ========================================================================== 
   5) Gemeinsame / Unterseiten-Komponenten
   ========================================================================== */
@import "components/_registration.css?v=20260831-161404" layer(components);
@import "components/_bottom.css" layer(components);
@import "components/_team.css" layer(components);
@import "components/_locations.css" layer(components);
@import "components/_cars.css" layer(components);
@import "components/_theory.css" layer(components);
@import "components/_practice.css" layer(components);
@import "components/_aktuelles.css" layer(components);

/* ========================================================================== 
   6) Startseite – nur noch internes Modul, KEIN TYPO3-Entry-Point mehr
   ========================================================================== */
@import "responsive-home-v1.css";

/* ========================================================================== 
   7) Letzte gemeinsame Design-Wahrheit normaler Unterseiten
   ========================================================================== */
@import "layout/_subpage-contract.css" layer(contract);

/* ========================================================================== 
   8) Hardware-/Touch-Kompatibilität zuletzt
   ========================================================================== */
@import "overrides/_mobile-touch.css" layer(overrides);

/* ========================================================================== 
   9) Druck
   ========================================================================== */
@import "print.css" print;

/* RESPONSIVE_HOME_DOCUMENT_FOOTER_CLEARANCE_V3_BEGIN */
/*
 * Der Footer der Responsive-Home-Seite liegt fixed AUSSERHALB von .site-main.
 * Deshalb wird der notwendige Scroll-/Abschlussraum am echten Dokument-Owner
 * reserviert und nicht innerhalb der Registration-Section.
 *
 * Diese Regel ist bewusst ungelayert und steht im kanonischen main.css,
 * damit ältere component/section/contract-Regeln sie nicht neutralisieren.
 */
body.responsive-home-page .site-main::after {
  content: "";
  display: block;
  inline-size: 100%;
  block-size:
    max(
      calc(
        var(--footer-h, 0px)
        + var(--safe-bottom, 0px)
        + clamp(2rem, 3dvh, 4rem)
      ),
      8rem
    );
  pointer-events: none;
}
/* RESPONSIVE_HOME_DOCUMENT_FOOTER_CLEARANCE_V3_END */
