.elementor-kit-6{--e-global-color-primary:#0B121D;--e-global-color-secondary:#474D58;--e-global-color-text:#0B121D;--e-global-color-accent:#05ABEB;--e-global-color-surface:#F8F3EB;--e-global-color-ink50:#F8F5EF;--e-global-color-accent50:#E6F7FE;--e-global-color-accent700:#036FA0;--e-global-color-card:#FEFAF3;--e-global-color-line:#DAD7D2;--e-global-color-muted:#747B85;--e-global-color-ink100:#E9E4DC;--e-global-color-ink200:#CFCAC1;--e-global-color-ink300:#989FAA;--e-global-color-ink400:#6B727E;--e-global-color-ink700:#18202B;--e-global-color-ink800:#0F1621;--e-global-color-ink900:#050912;--e-global-color-accent400:#1AB5EE;--e-global-color-accent600:#0490C8;--e-global-typography-primary-font-family:"Manrope static";--e-global-typography-primary-font-size:48px;--e-global-typography-primary-font-weight:800;--e-global-typography-primary-line-height:1.08em;--e-global-typography-primary-letter-spacing:-0.018em;--e-global-typography-secondary-font-family:"Manrope static";--e-global-typography-secondary-font-size:18px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.08em;--e-global-typography-secondary-letter-spacing:-0.018em;--e-global-typography-text-font-family:"Inter static";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-text-letter-spacing:0em;--e-global-typography-accent-font-family:"Inter static";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.4em;--e-global-typography-accent-letter-spacing:0.025em;color:var( --e-global-color-text );font-family:"Inter static", Sans-serif;font-size:16px;font-weight:400;line-height:1.6em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:var( --e-global-color-accent );font-family:"Inter static", Sans-serif;font-size:14px;font-weight:600;line-height:20px;letter-spacing:0.025em;color:var( --e-global-color-ink900 );border-radius:999px 999px 999px 999px;padding:14px 28px 14px 28px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:var( --e-global-color-primary );}.elementor-kit-6 a:hover{color:var( --e-global-color-primary );}.elementor-kit-6 h1{color:var( --e-global-color-primary );font-family:"Manrope static", Sans-serif;font-size:56px;font-weight:800;line-height:1.08em;letter-spacing:-0.018em;}.elementor-kit-6 h2{color:var( --e-global-color-primary );font-family:"Manrope static", Sans-serif;font-size:48px;font-weight:800;line-height:1.08em;letter-spacing:-0.018em;}.elementor-kit-6 h3{color:var( --e-global-color-primary );font-family:"Manrope static", Sans-serif;font-size:18px;font-weight:700;line-height:1.08em;letter-spacing:-0.018em;}.elementor-kit-6 h4{color:var( --e-global-color-primary );font-family:"Manrope static", Sans-serif;font-size:16px;font-weight:700;line-height:1.08em;letter-spacing:-0.018em;}.elementor-kit-6 h5{color:var( --e-global-color-primary );font-family:"Manrope static", Sans-serif;font-size:15px;font-weight:700;line-height:1.08em;letter-spacing:-0.018em;}.elementor-kit-6 h6{color:var( --e-global-color-primary );font-family:"Manrope static", Sans-serif;font-size:14px;font-weight:700;line-height:1.08em;letter-spacing:-0.018em;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{color:var( --e-global-color-ink900 );}.elementor-kit-6 label{color:var( --e-global-color-primary );font-family:"Inter static", Sans-serif;font-size:14px;font-weight:600;}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-family:"Inter static", Sans-serif;font-size:14px;font-weight:400;line-height:20px;color:var( --e-global-color-primary );background-color:var( --e-global-color-surface );border-radius:10px 10px 10px 10px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1023px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ══ hiwa Kit-CSS ══ Nur was Elementor NICHT nativ kann. Siehe wp-clone/DESIGN.md §5 ══ */

/* Inter läuft im Original mit Stylistic Sets (ss01 = einstöckiges a/g, cv11).
   Ohne diese Zeile sehen die Glyphen anders aus UND laufen anders breit —
   dieselbe Fehlerklasse, die bei fix-und-frei jeden Button danebenlegte.
   Elementor hat dafür kein Feld. */
body, button, input, select, textarea {
  font-feature-settings: "ss01", "cv11";
}

/* ⚠️ Hier standen sechs Regeln aus der Planungsphase (.hw-ls, .hw-ls--ink,
   .hw-ls--white, .hw-plakat, .hw-plakat2, .hw-numeral). Der Bau ist einen
   anderen Weg gegangen: Strich-Icons kommen über das icon-Widget mit
   .hw-stroke statt über icon-list, die fluiden Größen heißen .hw-hero-h1,
   .hw-lp-h1, .hw-stat-num und .hw-price-num. Die alten Regeln standen mit
   NULL Verwendungen im Kit und wurden trotzdem in DESIGN.md dokumentiert —
   die Agentur hätte nach Klassen gesucht, die es nicht gibt.
   Gegenprobe vor dem Löschen: Verwendungszähler über alle Beiträge = 0. */

/* Rechtstexte (/impressum, /datenschutz). Ein Text-Editor-Widget hat kein Feld
   je Tag — ungestylte Tags erben sonst Elementors Default (24px/500/#7A7A7A). */
/* Zentrierung einer Schmalspalte. Die BREITE kommt nativ (width-Feld) —
   nur margin:auto ignorieren Elementor-Container, das steht hier.
   ⚠️ max-width gehört NICHT hierher: .e-con-full setzt max-width:100% mit
   höherer Spezifität, die Klasse wäre wirkungslos (gemessen). */
.hw-narrow { margin-inline: auto !important; }

/* Verlinkte Überschrift als BLOCK (Original: <a class="block">). Elementors
   Heading-Link ist inline — die Box wäre nur textbreit. */
.hw-ablock .elementor-heading-title a { display: block; }

.elementor-widget.hw-prose { font-size: 15px; line-height: 1.625; color: var(--e-global-color-secondary); }
.elementor-widget.hw-prose p,
.elementor-widget.hw-prose li { font-size: 15px; line-height: 1.625; }
.elementor-widget.hw-prose p { margin: 0 0 16px; }
.elementor-widget.hw-prose h2 { font-family: "Manrope static", sans-serif; font-weight: 700; font-size: 24px; line-height: 32px; margin: 48px 0 12px; color: var(--e-global-color-primary); letter-spacing: -.015em; }
.elementor-widget.hw-prose h3 { font-family: "Manrope static", sans-serif; font-weight: 700; font-size: 18px; line-height: 28px; margin: 32px 0 8px; color: var(--e-global-color-primary); }
.elementor-widget.hw-prose p  { margin: 0 0 16px; }
.elementor-widget.hw-prose ul { margin: 0 0 16px; padding-left: 20px; list-style: disc; }
.elementor-widget.hw-prose li { margin: 0 0 6px; }
.elementor-widget.hw-prose a  { color: var(--e-global-color-ink700); text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.elementor-widget.hw-prose a:hover { color: var(--e-global-color-primary); }
.elementor-widget.hw-prose strong  { font-weight: 600; color: var(--e-global-color-primary); }

/* Theme-<p>-Margin im Text-Editor (Playbook §3, Falle Nr. 1 der Tabelle):
   Das Original resettet ALLE Margins global (globals.css: *{margin:0}) —
   Abstände kommen ausschließlich von den Elementen selbst. Elementor-Text-
   Editoren erben sonst ~1em pro Absatz, und weil Spalten per stretch auf die
   höchste Spalte wachsen, verschiebt EIN vergessener p-Margin alle vier.
   Gemessen: Footer-Spalten 265 statt 244, Bottom-Bar 79 statt 65. */
.elementor-widget-text-editor p { margin-block: 0; }

/* ── Header-Template (post 56) ─────────────────────────────────────────────
   Vier Dinge, die Elementor am Nav-/Sticky-System nicht nativ kann: */

/* 1) Row-Kinder nicht strecken (Playbook §3): Elementors .e-con>.e-con-Regel
   hat 4 Klassen und schlägt alles — deshalb !important. */
.hw-auto { width: auto !important; flex: 0 0 auto !important; }

/* 2) Scroll-Zustand: Original schaltet die untere Haarlinie erst ab scrollY>8
   ein. Elementor Pro setzt dafür die Klasse elementor-sticky--effects
   (sticky_effects_offset: 8) — nur die Randfarbe ist CSS. */
.hw-header.elementor-sticky--effects { border-bottom-color: #DAD7D2 !important; }

/* 3) CTA-Menüpunkte (§3k.6): Elementors Mobile-Panel rendert NUR Menüpunkte,
   deshalb sind "Anrufen"/"Besichtigung" WP-Menüeinträge (IDs 54/55). Im
   Desktop-Menü ausblenden, im Panel als Buttons. */
.hw-header .elementor-nav-menu--main .menu-item-54,
.hw-header .elementor-nav-menu--main .menu-item-55 { display: none; }
.hw-header .elementor-nav-menu--dropdown .menu-item-54 a,
.hw-header .elementor-nav-menu--dropdown .menu-item-55 a {
  display: flex; justify-content: center; margin: 8px 20px;
  border-radius: 999px; font-family: "Inter static", sans-serif;
  font-size: 14px; font-weight: 600; letter-spacing: .025em; line-height: 20px;
  padding: 14px 28px;
}
.hw-header .elementor-nav-menu--dropdown .menu-item-54 { border-bottom: none; }
.hw-header .elementor-nav-menu--dropdown .menu-item-54 a {
  margin-top: 24px; border: 1.5px solid var(--e-global-color-primary);
  color: var(--e-global-color-primary) !important; background: transparent;
}
.hw-header .elementor-nav-menu--dropdown .menu-item-55 a {
  margin-bottom: 24px; background: var(--e-global-color-accent) !important;
  color: var(--e-global-color-ink900) !important;
}

/* 3b) Elementors Nav-PANEL liegt GESCHLOSSEN als display:block im Fluss und
   bläht das Widget auf — das Logo daneben wurde von 97 auf 79px gequetscht.
   Erst beim Öffnen positioniert Pros JS das Panel. Vorab herausnehmen;
   position:static am Widget macht den Header (sticky ⇒ positioniert) zum
   Bezug, damit das Panel die volle Breite bekommt. Muster aus dem
   fix-und-frei-Header (dort per Widget-custom_css gelöst). */
@media (max-width: 1023px) {
  .hw-header .elementor-widget-nav-menu { position: static; }
  .hw-header .elementor-nav-menu--dropdown {
    position: absolute; top: 100%; left: 0; right: 0; width: 100%; margin: 0;
  }
  /* Burger-Kasten 44x44 wie das Original (toggle_size steuert nur das Icon,
     für den Kasten gibt es kein natives Feld) */
  .hw-header .elementor-menu-toggle { width: 44px; height: 44px; justify-content: center; }
}

/* 4) Desktop-Untermenü und Mobile-Panel teilen sich die Dropdown-Klasse
   (§3k.5). Die nativen Dropdown-Controls stylen das PANEL (19px Manrope);
   das Desktop-Untermenü hier zurück auf kompakte Listenoptik. */
.hw-header .elementor-nav-menu--main .sub-menu { border-radius: 10px; width: 280px; }
.hw-header .elementor-nav-menu--main .sub-menu a {
  font-family: "Inter static", sans-serif; font-size: 14px; font-weight: 600;
  padding: 10px 16px;
}

/* ── Startseiten-Bausteine ─────────────────────────────────────────────────
   Nur was Elementor nicht nativ kann (§0b Stufe 3). */

/* Strich-Icons (Icon.tsx: fill=none, stroke=currentColor, 1.8) — Elementor
   malt fill (§2/§4c). Default-View setzt color: nativ (primary_color) →
   currentColor greift. Stacked-View (Kreis) setzt nur fill → Farbe über
   --hw-ic, Vorgabe accent-700; Kreis-BG bleibt NATIV (primary_color). */
.hw-stroke .elementor-icon-wrapper { line-height: 0; }               /* §2: sonst 6-8px Baseline-Lücke */
.hw-stroke .elementor-icon { display: inline-flex; }
.hw-stroke .elementor-icon svg, .hw-stroke .elementor-icon svg * { fill: none !important; stroke: currentColor !important; }
.hw-stroke.elementor-view-stacked .elementor-icon { color: var(--hw-ic, var(--e-global-color-accent700)); }
.hw-stroke--ink .elementor-icon { --hw-ic: var(--e-global-color-ink900); }
.hw-stroke--accent400 .elementor-icon { --hw-ic: var(--e-global-color-accent400); }

/* Button-Icon-Größe: kein natives Feld (SVG erbt 1em von der Schrift) */
.hw-bico-16 .elementor-button-icon svg { width: 16px; height: 16px; }
.hw-bico-18 .elementor-button-icon svg { width: 18px; height: 18px; }

/* Karteninhalt füllt die Resthöhe (flex-1 des Originals). Widgets haben
   _flex_size nativ, CONTAINER als Flex-Kind nicht. */
.hw-grow { flex: 1 1 auto; min-height: 0; }

/* Textspalte neben Icon: Original nutzt min-w-0 — die Spalte schrumpft auf
   Inhaltsbreite (kurze Titel ⇒ schmale Box), kann aber unter max-content
   umbrechen. Ohne das ist die Klon-Spalte stur 100% breit. */
.hw-shrinkcol { min-width: 0; width: auto; flex: 0 1 auto; }
/* aspect-[4/3] am CONTAINER (Hintergrundbild-Bauweise, §0c) */
.hw-ar-43box { aspect-ratio: 4 / 3; }
/* line-clamp-2 — kein natives Elementor-Feld */
.hw-clamp2 p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/* ⚠️ ch-Einheit VERWORFEN: max-w-[Nch] des Originals per ch nachzubauen klingt
   richtig (ch folgt der Schrift), macht es aber SCHLECHTER — Inter static hat
   eine andere Ziffernbreite als die Variable Font, alle Texte brachen früher
   um: 5 DIFFS wurden zu 19. Gemessene px-Werte gewinnen. */

/* Bewertungssterne: icon-list ohne Text — der leere Text-Span bekommt sonst
   5px padding-inline (§4d) */
.hw-stars .elementor-icon-list-text { display: none; }
.hw-stars .elementor-icon-list-icon { line-height: 0; width: auto; }

/* Seitenverhältnisse: kein natives Feld; feste Höhen brechen bei
   Zwischenbreiten (§3k.10) */
.hw-ar-45 { aspect-ratio: 4 / 5; }
@media (min-width: 1024px) { .hw-ar-56-lg { aspect-ratio: 5 / 6; } }
.hw-ar-45i img  { aspect-ratio: 4 / 5;  width: 100%; height: auto; object-fit: cover; display: block; }
.hw-ar-43 img   { aspect-ratio: 4 / 3;  width: 100%; height: auto; object-fit: cover; display: block; }
.hw-ar-1610 img { aspect-ratio: 16 / 10; width: 100%; height: auto; object-fit: cover; display: block; }

/* Fluide Größen (clamp — §5b): Startseite + Unterseiten */
.hw-hero-h1 .elementor-heading-title { font-size: clamp(2.25rem, 5.5vw, 4rem) !important; line-height: 1.05 !important; letter-spacing: -.025em !important; }
.hw-stat-num .elementor-heading-title { font-size: clamp(2rem, 3.5vw, 2.75rem) !important; line-height: 1 !important; letter-spacing: -.02em !important; font-variant-numeric: tabular-nums; }
.hw-lp-h1 .elementor-heading-title { font-size: clamp(2rem, 4.5vw, 3.5rem) !important; line-height: 1.05 !important; letter-spacing: -.025em !important; }
.hw-price-num .elementor-heading-title { font-size: clamp(1.75rem, 3vw, 2.25rem) !important; line-height: 1 !important; letter-spacing: -.02em !important; }

/* Formular (MockContactForm-Nachbau): Feld-Höhe 48 (h-12), Fokus-Rahmen ink,
   Checkbox-Akzent — dafür gibt es keine nativen Formular-Felder. Radius,
   Rahmen, Farben, Typografie sind NATIV am Widget gesetzt. */
.elementor-widget.hw-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.elementor-widget.hw-form select { height: 48px; }
.elementor-widget.hw-form input:focus, .elementor-widget.hw-form select:focus,
.elementor-widget.hw-form textarea:focus { border-color: var(--e-global-color-primary) !important; box-shadow: none !important; outline: none !important; }
.elementor-widget.hw-form input[type=checkbox] { width: 16px; height: 16px; accent-color: var(--e-global-color-ink900); }
.elementor-widget.hw-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.elementor-widget.hw-form select { padding: 0 12px; }        /* px-3, vertikal zentriert die Höhe */
.elementor-widget.hw-form textarea { padding: 12px; }        /* px-3 py-3 */
.elementor-widget.hw-form .select-caret-down-wrapper { display: none; } /* Browser-Pfeil wie im Original */
/* Acceptance: Elementors Widget-CSS (4 Klassen) schlägt jede Kit-Regel — !important
   nötig. Checkbox-Randfarbe folgt currentColor (§3f), löst sich damit mit. */
.elementor-widget.hw-form .elementor-field-type-acceptance,
.elementor-widget.hw-form .elementor-field-type-acceptance label { font-size: 12px !important; line-height: 16px !important; color: var(--e-global-color-secondary) !important; }
.elementor-widget.hw-form .elementor-field-type-acceptance input { font-size: 12px !important; color: var(--e-global-color-secondary) !important; }
/* Der Datenschutz-Link erbt sonst die globale Linkfarbe (Ink) — im Original
   läuft er in der Textfarbe des Einwilligungssatzes mit. */
.elementor-widget.hw-form .elementor-field-type-acceptance a { color: inherit; }

/* Nummern-Badge (36px-Kreis mit Ziffer) — kein natives Widget dafür.
   ⚠️ Der Selektor MUSS .elementor-widget.hw-num heißen (§6o) und die
   TEXTFARBE gehört ans Widget (title_color), nicht hierher: Elementors
   Widget-CSS lädt später und hätte sie überschrieben — Ziffern waren
   schwarz auf schwarz, und keine Geometrie-QA sieht das (§6t). */
.elementor-widget.hw-num .elementor-heading-title { display: inline-flex; width: 36px; height: 36px; align-items: center; justify-content: center; border-radius: 999px; background: var(--e-global-color-ink900); font-variant-numeric: tabular-nums; }

/* FAQ (klassisches accordion-Widget): Karten mit 12px Lücke + Kreisrand ums
   Icon — beides ohne natives Feld. Erste Karte ist per Widget-Default offen. */
.elementor-widget.hw-faq .elementor-accordion-item { border-radius: 10px; overflow: hidden; background: var(--e-global-color-card); border: 1px solid var(--e-global-color-line) !important; }
.elementor-widget.hw-faq .elementor-accordion-item + .elementor-accordion-item { margin-top: 12px; }
.elementor-widget.hw-faq .elementor-tab-title { display: flex; flex-direction: row-reverse; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 20px 24px; font-weight: 400; }
.elementor-widget.hw-faq .elementor-tab-title a.elementor-accordion-title { flex: 1 1 auto; padding: 0; }
.elementor-widget.hw-faq .elementor-tab-content { padding: 0 48px 20px 24px !important; border-top: none !important; }
.elementor-widget.hw-faq .elementor-tab-content p { margin-block: 0; }  /* Browser-Default-1em — §6e gilt nur für text-editor */
/* Aufklapp-Zeichen: Elementors eingebaute Chevrons (unten/oben), gesetzt über
   die nativen Felder selected_icon / selected_active_icon in lib-hiwa.mjs.
   ⚠️ Vorher stand hier ein Häkchen, das per rotate(45deg) zum „×" werden
   sollte — dieselbe Verwechslung wie in der Next.js-Vorlage
   (components/FAQ.tsx nutzt das check-Icon mit rotate-45). Ein gedrehtes
   Häkchen ist nur ein schiefes Häkchen. Das ist eine BEWUSSTE Abweichung.
   ⚠️ Ein Zwischenstand hat das Zeichen per ::before/::after selbst gezeichnet.
   Ohne Zentrierung saß es sichtbar schief — und selbst gezeichnet wäre es im
   Elementor-Panel nicht mehr austauschbar gewesen. Native Felder schlagen
   gezeichnetes CSS.
   Chevrons sind FLÄCHIGE Icons: hier gilt fill, nicht stroke wie bei den
   Lucide-Strichicons unter .hw-stroke. */
/* Der KREIS um das Chevron — das ist alles, wofür hier noch CSS steht.
   Icon, Farbe, Aktiv-Farbe, Seite und Abstand kommen aus nativen Feldern des
   Akkordeon-Widgets; einen umrandeten Kreis kennt es dagegen nicht.

   ⚠️ SPEZIFITÄT (§6o). Elementors custom-widget-accordion.min.css lädt NACH
   dem Kit-CSS und bringt mit:
     .elementor-accordion .elementor-tab-title .elementor-accordion-icon
        { display: inline-block }   → (0,3,0)
   Ein Selektor mit gleich vielen Klassen verliert gegen die später geladene
   Datei. Der erste Versuch hier hatte (0,3,0) — der Kreis blieb dadurch
   inline-block statt Flex, die Zentrierung lief ins Leere und das Zeichen saß
   sichtbar schief. .elementor-tab-title steht deshalb MIT im Selektor: das
   hebt ihn auf (0,4,0). */
.elementor-widget.hw-faq .elementor-tab-title .elementor-accordion-icon { width: 28px; height: 28px; min-height: 28px; flex: 0 0 28px; border: 1px solid var(--e-global-color-line); border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; margin-top: 2px; line-height: 0; }
.elementor-widget.hw-faq .elementor-tab-title .elementor-accordion-icon svg { width: 13px; height: 13px; display: block; }

/* Barrierefreiheit: Fokusring, Textauswahl, Skip-Link, Reduced Motion.
   Alles aus app/globals.css, kein Elementor-Feld dafür. Beim Klonen geht das
   sonst still verloren. */
:focus-visible { outline: 2px solid var(--e-global-color-accent); outline-offset: 3px; border-radius: 1px; }
::selection    { background: var(--e-global-color-accent); color: var(--e-global-color-ink900); }

.skip-link { position: absolute; left: 1rem; top: -3rem; z-index: 100; background: var(--e-global-color-ink900); color: var(--e-global-color-accent); padding: .625rem 1rem; font-weight: 600; font-size: .875rem; transition: top .18s ease; }
.skip-link:focus { top: 1rem; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Manrope static';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://hiwa-dienstleistungen.de/wp-content/uploads/2026/08/Manrope-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Manrope static';
	font-style: normal;
	font-weight: bold;
	font-display: auto;
	src: url('https://hiwa-dienstleistungen.de/wp-content/uploads/2026/08/Manrope-Bold.ttf') format('truetype');
}
@font-face {
	font-family: 'Manrope static';
	font-style: normal;
	font-weight: 800;
	font-display: auto;
	src: url('https://hiwa-dienstleistungen.de/wp-content/uploads/2026/08/Manrope-ExtraBold.ttf') format('truetype');
}
@font-face {
	font-family: 'Manrope static';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://hiwa-dienstleistungen.de/wp-content/uploads/2026/08/Manrope-Medium.ttf') format('truetype');
}
@font-face {
	font-family: 'Manrope static';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://hiwa-dienstleistungen.de/wp-content/uploads/2026/08/Manrope-SemiBold.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Inter static';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://hiwa-dienstleistungen.de/wp-content/uploads/2026/08/Inter_18pt-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Inter static';
	font-style: normal;
	font-weight: 800;
	font-display: auto;
	src: url('https://hiwa-dienstleistungen.de/wp-content/uploads/2026/08/Inter_18pt-ExtraBold.ttf') format('truetype');
}
@font-face {
	font-family: 'Inter static';
	font-style: normal;
	font-weight: bold;
	font-display: auto;
	src: url('https://hiwa-dienstleistungen.de/wp-content/uploads/2026/08/Inter_18pt-Bold.ttf') format('truetype');
}
@font-face {
	font-family: 'Inter static';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://hiwa-dienstleistungen.de/wp-content/uploads/2026/08/Inter_18pt-Medium.ttf') format('truetype');
}
@font-face {
	font-family: 'Inter static';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://hiwa-dienstleistungen.de/wp-content/uploads/2026/08/Inter_18pt-SemiBold.ttf') format('truetype');
}
/* End Custom Fonts CSS */