/* ==================================================================
   AVK — Corporate Design
   Verbindliche Quelle: AVK_CI-MANUAL.md im Projektgehirn.
   Diese Datei wird NACH main.css geladen und ueberschreibt die
   Vorlagenwerte. Farbwerte stehen ausschliesslich hier.
   ================================================================== */

/* ---------- Schriften: selbst gehostet, kein fremdes CDN ----------
   Archivo         — Ueberschriften (SIL OFL)
   IBM Plex Sans   — Fliesstext (SIL OFL)
   IBM Plex Mono   — Zahlen, Artikelnummern (SIL OFL)
   ------------------------------------------------------------------ */
@font-face{font-family:'Archivo';src:url('../fonts/archivo-600-latin.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Archivo';src:url('../fonts/archivo-600-latin-ext.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;
  unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Archivo';src:url('../fonts/archivo-700-latin.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Archivo';src:url('../fonts/archivo-700-latin-ext.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;
  unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}

@font-face{font-family:'IBM Plex Sans';src:url('../fonts/plexsans-400-latin.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Sans';src:url('../fonts/plexsans-400-latin-ext.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;
  unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'IBM Plex Sans';src:url('../fonts/plexsans-500-latin.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Sans';src:url('../fonts/plexsans-500-latin-ext.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;
  unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'IBM Plex Sans';src:url('../fonts/plexsans-600-latin.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Sans';src:url('../fonts/plexsans-600-latin-ext.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;
  unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}

@font-face{font-family:'IBM Plex Mono';src:url('../fonts/plexmono-500-latin.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Mono';src:url('../fonts/plexmono-500-latin-ext.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;
  unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}

/* ---------- Farb- und Schriftvariablen ---------- */
:root{
  /* AVK-Palette, Quelle: AVK_CI-MANUAL.md */
  --avk-rot:        #8A2B2F;
  --avk-rot-hell:   #C4514B;
  --avk-anthrazit:  #1C1B19;
  --avk-text:       #4A4744;
  --avk-meta:       #8C857C;
  --avk-linie:      #DED7CB;
  --avk-papier:     #F6F2EA;

  /* Vorlagenvariablen umbiegen — 192 Verwendungen haengen daran */
  --tl-color-theme-primary: #8A2B2F;
  --tl-color-heading-primary: #1C1B19;
  --tl-color-text-body: #4A4744;
  --tl-color-grey-1: #6B655E;
  --tl-color-grey-2: #8C857C;
  --tl-color-border-1: #DED7CB;
  --tl-color-bg-1: #1C1B19;

  --tl-ff-heading: 'Archivo', system-ui, sans-serif;
  --tl-ff-body: 'IBM Plex Sans', system-ui, sans-serif;
  --tl-ff-p: 'IBM Plex Sans', system-ui, sans-serif;
}

/* Nie kuenstlich fetten oder kursivieren — nur echte Schnitte. */
html{font-synthesis:none;}

/* ---------- Grundflaeche: warmes Papierweiss ----------
   Der staerkste Unterschied zum kalten Katalog-Weiss des Wettbewerbs. */
body{background-color:var(--avk-papier);}
.tl-bg-color,.bg-white,.bg-grey{background-color:var(--avk-papier) !important;}

/* Reinweiss bleibt Reinweiss, wo Ware farbecht sein muss */
.service-item,.post-card,.avk-form-wrap,.faq-accordion .accordion-item,
.service-details-left-content,.service-item-2 .service-content{background-color:#fff;}

/* ---------- Typografie ---------- */
body,p,li,td,th,input,textarea,button,select{font-family:var(--tl-ff-body);}
h1,h2,h3,h4,h5,h6,.section-title,.details-title,.title{font-family:var(--tl-ff-heading);}

body,p,li{font-size:17px;line-height:1.65;color:var(--avk-text);}
p{max-width:75ch;}

/* Zahlen in Monospace: im Werkstattumfeld das Zeichen fuer
   gemessene, hinterlegte Daten — stuetzt das Kernversprechen. */
.counter-item .title,.counter-item .odometer,
.slider-element .element-title,
.header-contact .call-number,
.footer-address .number,
.avk-tabelle td:first-child{
  font-family:'IBM Plex Mono', ui-monospace, monospace;
  font-weight:500;
  letter-spacing:-0.02em;
}

/* ---------- Rot sparsam halten: max. 5 % der Flaeche ----------
   Auf dunklem Grund die aufgehellte Variante, sonst zu wenig Kontrast. */
.white-content .section-title span,
.slider-content .section-title span,
.cta-section-3 .section-title span,
.video-section .section-title span,
.request-section .section-title span,
.avk-abschluss h2 span,
.footer-section a:hover{
  color:var(--avk-rot-hell);
}

/* Linien und Raster warm statt kalt */
.avk-tabelle th,.avk-tabelle td,.avk-karte,.avk-form-row input,
.faq-accordion .accordion-item{border-color:var(--avk-linie);}

/* Sekundaertext */
.avk-form-row label,.avk-karte .nummer,.avk-achse-punkt .wann,
.post-meta,.footer-note,.avk-form-fuss{color:var(--avk-meta);}
