.elementor-kit-6{--e-global-color-primary:#FF6F07;--e-global-color-secondary:#0F0F10;--e-global-color-text:#111113;--e-global-color-accent:#FF6F07;--e-global-color-4146faf:#2B3235;--e-global-color-a3b5463e:#FF6F07;--e-global-color-f9e29fb1:#E86200;--e-global-color-ecf1a64d:#0F0F10;--e-global-color-6141cd63:#1A1A1C;--e-global-color-3c256da2:#232326;--e-global-color-d5c069e8:#FFFFFF;--e-global-color-2e0a3943:#F2F2F3;--e-global-color-0b03bc58:#E6E6E8;--e-global-color-dde74aa0:#111113;--e-global-color-4432e75d:#F7F7F8;--e-global-color-51cc872b:#1E8E3E;--e-global-color-331176d1:#C8202A;--e-global-typography-primary-font-family:"Barlow Condensed";--e-global-typography-primary-font-size:clamp(1.6rem, 1.56vw + 1.29rem, 3.16rem);--e-global-typography-primary-font-weight:700;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-line-height:1.05em;--e-global-typography-primary-letter-spacing:0.01em;--e-global-typography-secondary-font-family:"Barlow Condensed";--e-global-typography-secondary-font-size:clamp(1.27rem, 0.51vw + 1.16rem, 1.78rem);--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-line-height:1.15em;--e-global-typography-secondary-letter-spacing:0.01em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:1rem;--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-line-height:1.55em;--e-global-typography-text-letter-spacing:0em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:1rem;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:none;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0em;--e-global-typography-b089d55a-font-family:"Barlow Condensed";--e-global-typography-b089d55a-font-size:clamp(2.03rem, 3.58vw + 1.31rem, 5.61rem);--e-global-typography-b089d55a-font-weight:700;--e-global-typography-b089d55a-text-transform:uppercase;--e-global-typography-b089d55a-line-height:0.95em;--e-global-typography-b089d55a-letter-spacing:0.01em;--e-global-typography-16ea3edc-font-family:"Barlow Condensed";--e-global-typography-16ea3edc-font-size:clamp(1.6rem, 1.56vw + 1.29rem, 3.16rem);--e-global-typography-16ea3edc-font-weight:700;--e-global-typography-16ea3edc-text-transform:uppercase;--e-global-typography-16ea3edc-line-height:1.05em;--e-global-typography-16ea3edc-letter-spacing:0.01em;--e-global-typography-ccf5d872-font-family:"Barlow Condensed";--e-global-typography-ccf5d872-font-size:clamp(1.42rem, 0.94vw + 1.23rem, 2.37rem);--e-global-typography-ccf5d872-font-weight:700;--e-global-typography-ccf5d872-text-transform:uppercase;--e-global-typography-ccf5d872-line-height:1.1em;--e-global-typography-ccf5d872-letter-spacing:0.01em;--e-global-typography-fecd9c72-font-family:"Barlow Condensed";--e-global-typography-fecd9c72-font-size:clamp(1.27rem, 0.51vw + 1.16rem, 1.78rem);--e-global-typography-fecd9c72-font-weight:600;--e-global-typography-fecd9c72-text-transform:uppercase;--e-global-typography-fecd9c72-line-height:1.15em;--e-global-typography-fecd9c72-letter-spacing:0.01em;--e-global-typography-cf48412f-font-family:"Barlow Condensed";--e-global-typography-cf48412f-font-size:clamp(1.13rem, 0.21vw + 1.08rem, 1.33rem);--e-global-typography-cf48412f-font-weight:600;--e-global-typography-cf48412f-text-transform:uppercase;--e-global-typography-cf48412f-line-height:1.2em;--e-global-typography-cf48412f-letter-spacing:0.01em;--e-global-typography-0fb28735-font-family:"Inter";--e-global-typography-0fb28735-font-size:1rem;--e-global-typography-0fb28735-font-weight:400;--e-global-typography-0fb28735-text-transform:none;--e-global-typography-0fb28735-line-height:1.55em;--e-global-typography-0701aaa4-font-family:"Inter";--e-global-typography-0701aaa4-font-size:clamp(1.13rem, 0.21vw + 1.08rem, 1.33rem);--e-global-typography-0701aaa4-font-weight:400;--e-global-typography-0701aaa4-text-transform:none;--e-global-typography-0701aaa4-line-height:1.5em;--e-global-typography-e0caafbb-font-family:"Inter";--e-global-typography-e0caafbb-font-size:0.875rem;--e-global-typography-e0caafbb-font-weight:400;--e-global-typography-e0caafbb-text-transform:none;--e-global-typography-e0caafbb-line-height:1.5em;--e-global-typography-d1dc90e3-font-family:"Inter";--e-global-typography-d1dc90e3-font-size:0.8125rem;--e-global-typography-d1dc90e3-font-weight:600;--e-global-typography-d1dc90e3-text-transform:none;--e-global-typography-d1dc90e3-line-height:1.3em;--e-global-typography-d1dc90e3-letter-spacing:0.02em;--e-global-typography-6986673e-font-family:"Inter";--e-global-typography-6986673e-font-size:1rem;--e-global-typography-6986673e-font-weight:600;--e-global-typography-6986673e-text-transform:none;--e-global-typography-6986673e-line-height:1em;--e-global-typography-15f305f3-font-family:"Barlow Condensed";--e-global-typography-15f305f3-font-size:clamp(1.75rem, 1.5vw + 1.4rem, 3rem);--e-global-typography-15f305f3-font-weight:700;--e-global-typography-15f305f3-text-transform:none;--e-global-typography-15f305f3-line-height:1em;color:rgba(17,17,19,0.8);font-family:"Inter", Sans-serif;font-size:1rem;font-weight:400;text-transform:none;line-height:1.55em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#FF6F07;font-family:"Inter", Sans-serif;font-size:1rem;font-weight:600;text-transform:none;line-height:1em;color:#FFFFFF;border-style:none;border-radius:999px 999px 999px 999px;padding:16px 28px 16px 28px;}.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{background-color:#E86200;color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 p{margin-block-end:16px;}.elementor-kit-6 a{color:#111113;}.elementor-kit-6 a:hover{color:#FF6F07;}.elementor-kit-6 h1{color:#111113;font-family:"Barlow Condensed", Sans-serif;font-size:clamp(2.03rem, 3.58vw + 1.31rem, 5.61rem);font-weight:700;text-transform:uppercase;line-height:0.95em;letter-spacing:0.01em;}.elementor-kit-6 h2{color:#111113;font-family:"Barlow Condensed", Sans-serif;font-size:clamp(1.6rem, 1.56vw + 1.29rem, 3.16rem);font-weight:700;text-transform:uppercase;line-height:1.05em;letter-spacing:0.01em;}.elementor-kit-6 h3{color:#111113;font-family:"Barlow Condensed", Sans-serif;font-size:clamp(1.42rem, 0.94vw + 1.23rem, 2.37rem);font-weight:700;text-transform:uppercase;line-height:1.1em;letter-spacing:0.01em;}.elementor-kit-6 h4{color:#111113;font-family:"Barlow Condensed", Sans-serif;font-size:clamp(1.27rem, 0.51vw + 1.16rem, 1.78rem);font-weight:600;text-transform:uppercase;line-height:1.15em;letter-spacing:0.01em;}.elementor-kit-6 h5{color:#111113;font-family:"Barlow Condensed", Sans-serif;font-size:clamp(1.13rem, 0.21vw + 1.08rem, 1.33rem);font-weight:600;text-transform:uppercase;line-height:1.2em;letter-spacing:0.01em;}.elementor-kit-6 h6{color:#111113;font-family:"Barlow Condensed", Sans-serif;font-size:clamp(1.13rem, 0.21vw + 1.08rem, 1.33rem);font-weight:600;text-transform:uppercase;line-height:1.2em;letter-spacing:0.01em;}.elementor-kit-6 img{border-radius:0px 0px 0px 0px;}.elementor-kit-6 label{color:#111113;font-family:"Inter", Sans-serif;font-size:13px;font-weight:600;letter-spacing:0.02em;}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;color:#111113;accent-color:#FF6F07;background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:rgba(17,17,19,0.32);border-radius:4px 4px 4px 4px;padding:14px 16px 14px 16px;}.elementor-kit-6 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea:focus,.elementor-kit-6 .elementor-field-textual:focus{accent-color:#FF6F07;border-style:solid;border-width:2px 2px 2px 2px;border-color:#FF6F07;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;--container-default-padding-top:0;--container-default-padding-right:var(--ts-safe-zone);--container-default-padding-bottom:0;--container-default-padding-left:var(--ts-safe-zone);}.elementor-widget:not(:last-child){--kit-widget-spacing:1.5px;}.elementor-element{--widgets-spacing:1.5px 1.5px;--widgets-spacing-row:1.5px;--widgets-spacing-column:1.5px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.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 *//* ==========================================================================
   Trailershop.at – Site Custom CSS (Elementor Site Settings → Custom CSS)
   Quelle: DESIGN.md Abschnitt 9.3 (Variablen) und 9.4 (Klassen ts-*)
   Stand: 21.09.2026
   ========================================================================== */

/* ---------- 9.3 Variablen ---------- */
:root {
  --ts-brand: #FF6F07;
  --ts-brand-hover: #E86200;
  --ts-brand-soft: rgba(255,111,7,0.12);
  --ts-brand-soft-dark: rgba(255,111,7,0.18);

  --ts-success: #1E8E3E; --ts-warning: #B98600; --ts-error: #C8202A; --ts-info: #1C6FE0;
  --ts-success-soft: rgba(30,142,62,0.14); --ts-error-soft: rgba(200,32,42,0.14);

  --ts-space-xs: clamp(4px, 0.25vw + 3px, 8px);
  --ts-space-sm: clamp(8px, 0.5vw + 6px, 16px);
  --ts-space-md: clamp(16px, 1.25vw + 12px, 36px);
  --ts-space-lg: clamp(32px, 2.75vw + 23px, 76px);
  --ts-space-xl: clamp(48px, 3vw + 38px, 96px);
  --ts-space-2xl: clamp(80px, 7.5vw + 56px, 200px);
  --ts-sec-lg: clamp(3.75rem, 2.43rem + 5.634vw, 7.5rem);   /* Sektionsabstand gross: 60 px bei 375, 120 px ab 1440 */
  --ts-sec-sm: clamp(2.5rem, 2.06rem + 1.878vw, 3.75rem);   /* Sektionsabstand klein: 40 px bei 375, 60 px ab 1440, Kante zwischen Sektionen mit gleichem Hintergrund */

  --ts-safe-zone: max(22px, 10.625vw - 12px);
  --ts-container: 1320px;
  --ts-container-narrow: 800px;
  --ts-container-extended: 1600px;

  --ts-radius-full: 999px;
  --ts-radius-input: 4px;
  --ts-duration: 0.25s;
  --ts-duration-md: 0.4s;
  --ts-ease: cubic-bezier(0.25, 0.1, 0.25, 1);
  --ts-shadow-sm: 0 3px 8px rgba(0,0,0,0.16);

  --ts-font-display: "Barlow Condensed", "Arial Narrow", Impact, sans-serif;
  --ts-font-text: Inter, "Segoe UI", Roboto, Arial, sans-serif;
}
@media (min-width: 760px)  { :root { --ts-safe-zone: calc(5vw - 16px); } }
@media (min-width: 1920px) { :root { --ts-safe-zone: min(50vw - 880px, 400px); } }

/* ---------- Themes ---------- */
.ts-light {
  --ts-canvas: #FFFFFF; --ts-surface: #F2F2F3; --ts-surface-2: #E6E6E8;
  --ts-line: rgba(17,17,19,0.16); --ts-line-strong: rgba(17,17,19,0.32);
  --ts-text: #111113; --ts-text-high: rgba(17,17,19,0.80);
  --ts-text-medium: rgba(17,17,19,0.62); --ts-text-low: rgba(17,17,19,0.48);
  --ts-backdrop: rgba(15,15,16,0.6);
  --ts-brand-text: var(--ts-brand);
  background-color: var(--ts-canvas); color: var(--ts-text-high);
}
.ts-dark {
  --ts-canvas: #0F0F10; --ts-surface: #1A1A1C; --ts-surface-2: #232326;
  --ts-line: rgba(247,247,248,0.18); --ts-line-strong: rgba(247,247,248,0.32);
  --ts-text: #F7F7F8; --ts-text-high: rgba(247,247,248,0.80);
  --ts-text-medium: rgba(247,247,248,0.64); --ts-text-low: rgba(247,247,248,0.48);
  --ts-backdrop: rgba(15,15,16,0.7);
  --ts-brand-soft: var(--ts-brand-soft-dark);
  --ts-brand-text: var(--ts-brand);
  background-color: var(--ts-canvas); color: var(--ts-text-high);
}
/* Fläche einer Sektion umschalten */
.ts-on-surface   { background-color: var(--ts-surface); }
.ts-on-surface-2 { background-color: var(--ts-surface-2); }

/* Texte in Sektionen erben die Theme-Farben */
.ts-light h1, .ts-light h2, .ts-light h3, .ts-light h4, .ts-light h5, .ts-light h6,
.ts-dark h1, .ts-dark h2, .ts-dark h3, .ts-dark h4, .ts-dark h5, .ts-dark h6 { color: var(--ts-text); }
.ts-light .elementor-heading-title, .ts-dark .elementor-heading-title { color: var(--ts-text); }
.ts-light .elementor-widget-text-editor, .ts-dark .elementor-widget-text-editor { color: var(--ts-text-high); }
.ts-light a, .ts-dark a { color: inherit; }

/* ---------- Basis ---------- */
/* Heading-Widgets: kein Theme-Außenabstand am Titel (Hello gibt p und h1-h6 16px margin-bottom) */
.elementor-widget-heading .elementor-heading-title { margin: 0; }
body { font-family: var(--ts-font-text); font-feature-settings: "cv11", "ss01"; -webkit-font-smoothing: antialiased; }
/* iOS-Safari legt beim Antippen von Links, Buttons, Labels und Akkordeons ein graues Highlight ueber die Flaeche; siteweit aus (05.11.2026, zuerst nur Konfigurator, dann Michael: "Ja, siteweit"). Vererbt sich, * zur Sicherheit. */
body, body * { -webkit-tap-highlight-color: transparent; }
h1, h2, h3, h4, h5, h6, .ts-display { font-family: var(--ts-font-display); text-transform: uppercase; letter-spacing: 0.01em; font-weight: 700; }
.ts-tabular, .ts-kennzahl, table.ts-specs td, table.ts-vergleich td { font-variant-numeric: tabular-nums; }
.ts-text-medium { color: var(--ts-text-medium); }
.ts-text-high   { color: var(--ts-text-high); }
.ts-text        { color: var(--ts-text); }
.ts-brand-text  { color: var(--ts-brand); }          /* nur ab 24 px oder Icons */
.ts-narrow { max-width: 640px; }
.ts-measure { max-width: 520px; }

/* Sektionsabstände */
.ts-section        { padding-top: var(--ts-space-xl); padding-bottom: var(--ts-space-xl); }
.ts-section-hero   { padding-top: var(--ts-space-2xl); padding-bottom: var(--ts-space-2xl); }
.ts-section-flush  { padding-top: 0; padding-bottom: 0; }

/* Orange Linie (Markengeste): oben an Kennzahlen-Leiste, Footer, Kacheln bei Hover */
.ts-line-top    { border-top: 4px solid var(--ts-brand); }
.ts-line-bottom { border-bottom: 4px solid var(--ts-brand); }
.ts-hr { border: 0; border-top: 1px solid var(--ts-line); margin: 0; }

/* Rechtstexte (Impressum, Datenschutz): 800 px Lesebreite, Absaetze 12 px, Links dunkel mit oranger Unterstreichung */
.ts-legal-text p { margin: 0 0 12px; }
.ts-legal-text p:last-child { margin-bottom: 0; }
.ts-legal-text a { color: var(--ts-text); text-decoration: underline; text-decoration-color: var(--ts-brand); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.ts-legal-text strong { color: var(--ts-text); font-weight: 600; }

/* ---------- 6.1 Buttons ---------- */
.elementor-widget.ts-btn-primary .elementor-button, .elementor-widget.ts-btn-outline .elementor-button, .elementor-widget.ts-btn-dark .elementor-button, .elementor-widget.ts-btn-white .elementor-button, .elementor-widget.ts-btn-ghost .elementor-button,
a.ts-btn-primary, a.ts-btn-outline, a.ts-btn-dark, a.ts-btn-white, a.ts-btn-ghost,
.ts-form .elementor-button[type="submit"] {
  font-family: var(--ts-font-text); font-weight: 600; font-size: 16px; line-height: 1; text-transform: none; letter-spacing: 0;
  min-height: 52px; padding: 0 28px; border-radius: var(--ts-radius-full);
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  box-shadow: none; transition: background-color var(--ts-duration) var(--ts-ease), border-color var(--ts-duration) var(--ts-ease), color var(--ts-duration) var(--ts-ease), transform var(--ts-duration) var(--ts-ease);
}
.elementor-widget.ts-btn-primary .elementor-button, a.ts-btn-primary, .ts-form .elementor-button[type="submit"] {
  background-color: var(--ts-brand); color: #FFFFFF; border: 0;
}
/* Outline: nur für Anker auf derselben Seite, Rahmen und Text in der Headline-Farbe des Untergrunds (Kundenentscheidung 23.09.2026) */
.elementor-widget.ts-btn-outline .elementor-button, a.ts-btn-outline {
  background: transparent; color: var(--ts-text); border: 2px solid var(--ts-text);
}
/* Dunkel und Weiß: unwichtigere Links (Unterseiten, Herstellerseiten, Telefon), Farbe je nach Untergrund */
.elementor-widget.ts-btn-dark .elementor-button, a.ts-btn-dark {
  background-color: #111113; color: #FFFFFF; border: 0;
}
.elementor-widget.ts-btn-white .elementor-button, a.ts-btn-white {
  background-color: #FFFFFF; color: #111113; border: 0;
}
.elementor-widget.ts-btn-ghost .elementor-button, a.ts-btn-ghost {
  background: transparent; color: var(--ts-text); border: 0; padding: 0; min-height: 0;
}
.elementor-widget.ts-btn-ghost .elementor-button .elementor-button-icon, a.ts-btn-ghost svg { color: var(--ts-brand); }
.elementor-widget.ts-btn-primary .elementor-button:active, .elementor-widget.ts-btn-outline .elementor-button:active, .elementor-widget.ts-btn-dark .elementor-button:active, .elementor-widget.ts-btn-white .elementor-button:active { transform: translateY(1px); }
.elementor-widget.ts-btn-primary .elementor-button svg, .elementor-widget.ts-btn-outline .elementor-button svg, .elementor-widget.ts-btn-dark .elementor-button svg, .elementor-widget.ts-btn-white .elementor-button svg, .elementor-widget.ts-btn-ghost .elementor-button svg { width: 20px; height: 20px; }
.elementor-widget.ts-btn-primary .elementor-button-content-wrapper, .elementor-widget.ts-btn-outline .elementor-button-content-wrapper, .elementor-widget.ts-btn-dark .elementor-button-content-wrapper, .elementor-widget.ts-btn-white .elementor-button-content-wrapper, .elementor-widget.ts-btn-ghost .elementor-button-content-wrapper { gap: 10px; align-items: center; }
/* Kompakt (Header-Telefon, Sticky-Leiste) */
.elementor-widget.ts-btn-compact .elementor-button { min-height: 44px; padding: 0 20px; }
.elementor-widget.ts-btn-icon .elementor-button { min-height: 44px; width: 44px; padding: 0; }
.elementor-widget.ts-btn-icon .elementor-button-text { display: none; }
/* Fokus */
.ts-light :focus-visible, .ts-dark :focus-visible { outline: 2px solid var(--ts-brand); outline-offset: 2px; }
.elementor-widget.ts-btn-primary .elementor-button:focus-visible { outline-color: #FFFFFF; outline-offset: -4px; }

/* ---------- 6.8 Badge ---------- */
.ts-badge { display: inline-block; font-family: var(--ts-font-text); font-size: 13px; font-weight: 600; line-height: 1.3; letter-spacing: 0.02em; padding: 4px 12px; border-radius: var(--ts-radius-full); background: var(--ts-brand); color: #FFFFFF; text-transform: none; }
.ts-badge .elementor-heading-title { margin: 0; line-height: 1.3; }
.ts-badge-neutral { background: var(--ts-surface-2); color: var(--ts-text-high); }
.ts-tag { display: inline-block; font-size: 13px; font-weight: 600; line-height: 1.3; padding: 6px 12px; border-radius: var(--ts-radius-full); background: var(--ts-surface-2); color: var(--ts-text-high); }

/* ---------- 6.2 Kennzahlen-Leiste ---------- */
.ts-specbar { border-top: 4px solid var(--ts-brand); }
.ts-specbar .ts-kennzahl { font-family: var(--ts-font-display); font-weight: 700; line-height: 1; color: var(--ts-text); font-variant-numeric: tabular-nums; }
.ts-specbar .ts-kennzahl .ts-einheit { font-weight: 600; font-size: 0.6em; margin-left: 8px; }
.ts-specbar .ts-label { font-family: var(--ts-font-text); font-size: 13px; font-weight: 600; letter-spacing: 0.02em; color: var(--ts-text-medium); margin-top: 8px; }
.ts-specbar .ts-specbar-item + .ts-specbar-item { border-left: 1px solid var(--ts-line); }

/* ---------- 6.4 Trailer-Kachel / 6.3 Marken-Kachel ---------- */
.ts-tile, .ts-brand-tile { background: var(--ts-surface); border-radius: 0; border: 0; box-shadow: none; position: relative; overflow: hidden; }
.ts-tile .ts-tile-media, .ts-brand-tile .ts-tile-media { background: var(--ts-surface-2); aspect-ratio: 16 / 9; overflow: hidden; }
.ts-tile .ts-tile-media img, .ts-brand-tile .ts-tile-media img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--ts-duration-md) var(--ts-ease); transform: translateZ(0) scale(1); backface-visibility: hidden; will-change: transform; }  /* Bild bleibt dauerhaft auf einer eigenen Compositing-Ebene: ohne das springt es nach dem Zoom-Out um einen Pixel, wenn der Browser die Ebene wieder aufloest (Kundenvideo 14.10.2026) */
.ts-price { font-family: var(--ts-font-display); font-weight: 700; font-size: 26px; line-height: 1; color: var(--ts-brand); }
/* Auszeichnung hinter dem Preis: Inter 14 px, text-medium, gleiche Grundlinie (Kundenentscheidung 22.09.2026) */
.ts-price-note { font-family: var(--ts-font-text); font-size: 14px; font-weight: 500; line-height: 1; letter-spacing: 0; text-transform: none; color: var(--ts-text-medium); margin-left: 8px; white-space: nowrap; }
.ts-tile .ts-facts { display: flex; gap: 16px; font-size: 16px; color: var(--ts-text-medium); }
.ts-tile .ts-facts > * + * { border-left: 1px solid var(--ts-line); padding-left: 16px; }
.ts-check-list { list-style: none; margin: 0; padding: 0; }
.ts-check-list li { position: relative; padding-left: 28px; font-size: 16px; color: var(--ts-text-high); }
.ts-check-list li::before { content: ""; position: absolute; left: 0; top: 2px; width: 18px; height: 18px; background: no-repeat center / contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FF6F07'><g fill-rule='evenodd'><path d='M19.7071068,7.29289322 C20.0976311,7.68341751 20.0976311,8.31658249 19.7071068,8.70710678 L11.2071068,17.2071068 C11.0569051,17.3573084 10.8708099,17.4497402 10.6764315,17.4844021 L10.5590314,17.4982669 L10.4409686,17.4982669 C10.205064,17.4844021 9.9731352,17.3873488 9.79289322,17.2071068 L5.29289322,12.7071068 C4.90236893,12.3165825 4.90236893,11.6834175 5.29289322,11.2928932 C5.68341751,10.9023689 6.31658249,10.9023689 6.70710678,11.2928932 L10.5,15.085 L18.2928932,7.29289322 C18.6834175,6.90236893 19.3165825,6.90236893 19.7071068,7.29289322 Z'></path></g></svg>"); }
.ts-brand-tile-dark { background: #0F0F10; border-top: 4px solid var(--ts-brand); }
/* Markenseite (6.3): Kachelkoerper fuellt die Kachel, Buttons sitzen unten buendig, Bild 16:9 auch als Platzhalter */
.ts-brand-grid > .ts-brand-tile { display: flex; flex-direction: column; }
.ts-brand-tile > .ts-tile-body, .ts-tile > .ts-tile-body { flex: 1 1 auto; display: flex; flex-direction: column; }
.ts-brand-tile .ts-tile-actions, .ts-tile .ts-tile-actions { margin-top: auto !important; }
.ts-tile { display: flex; flex-direction: column; }
.ts-tile-body .elementor-widget-text-editor p:last-child { margin-bottom: 0; }  /* Absatzabstand des Themes (16 px) verfaelscht sonst die Kachel-Abstaende */
.ts-brand-tile .ts-tile-media img, .ts-tile .ts-tile-media img { aspect-ratio: 16 / 9; height: auto; display: block; }  /* Foto 16:9 aus der Breite, keine festen Pixelhoehen (gleich wie Platzhalter) */
.ts-ph-16x9 { aspect-ratio: 16 / 9; }
.elementor-widget.ts-btn-block .elementor-button { display: flex; width: 100%; }
.ts-hero-band .ts-brand-logo img { max-height: 40px; width: auto; }
/* Unternehmen: Portrait 184 x 248 (mobil 150 x 200), Laufbahn-Zeilen mit fester Jahresspalte */
.ts-portrait img { width: 184px; height: 248px; object-fit: cover; display: block; }
.ts-station .elementor-heading-title { font-variant-numeric: tabular-nums; }
.ts-station > .elementor-widget-text-editor { flex: 1 1 0; min-width: 0; width: auto; }  /* Text nimmt die Restbreite neben der Jahresspalte, sonst 100 % und Ueberlauf */
@media (max-width: 767px) { .ts-portrait img { width: 150px; height: 200px; } }
.ts-hero-band .elementor-widget-text-editor a { color: var(--ts-text-medium); text-decoration: none; }

/* ---------- 6.5 Spec-Tabelle / 6.19 Modellvergleich ---------- */
table.ts-specs, table.ts-vergleich { width: 100%; border-collapse: collapse; border: 0; }
table.ts-specs th, table.ts-specs td, table.ts-vergleich th, table.ts-vergleich td { height: 48px; padding: 0 16px; border: 0; border-bottom: 1px solid var(--ts-line); vertical-align: middle; font-family: var(--ts-font-text); }
table.ts-specs td:first-child, table.ts-vergleich td:first-child { font-size: 16px; color: var(--ts-text-medium); text-align: left; }
table.ts-specs td:last-child { font-size: 16px; color: var(--ts-text); text-align: right; }
/* Spec-Tabelle mit zwei Wertspalten (Lorgano Aero 1 / Aero 2): Werte rechtsbuendig, Spaltentitel in der Gruppenzeile */
table.ts-specs-multi td:not(:first-child) { font-size: 16px; color: var(--ts-text); text-align: right; width: 24%; }  /* kein nowrap: lange Werte (Bremse) duerfen auf Tablet umbrechen */
/* Mehrspaltige Spec-Tabelle (Lorgano) mobil als Bloecke wie der mobile Modellvergleich (06.10.2026): Merkmal in einer eigenen Zeile,
   darunter die Werte beider Varianten nebeneinander in zwei gleich breiten Spalten. Drei Tabellenspalten auf 335 px waren zu gequetscht. */
@media (max-width: 767px) {
  table.ts-specs-multi, table.ts-specs-multi tbody { display: block; width: 100%; }
  table.ts-specs-multi tr { display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--ts-line); }
  table.ts-specs-multi td, table.ts-specs-multi td:first-child, table.ts-specs-multi td:not(:first-child) { display: block; width: auto; height: auto; padding: 0; border: 0; text-align: left; white-space: normal; hyphens: manual; overflow-wrap: normal; }
  table.ts-specs-multi td:first-child { grid-column: 1 / -1; font-size: 15px; color: var(--ts-text-medium); margin-bottom: 6px; }
  table.ts-specs-multi td:not(:first-child) { font-size: 16px; color: var(--ts-text); line-height: 1.4; }
  /* Weniger Linien (Kundenfeedback 06.10.2026): Zellen tragen keine eigenen Linien, nur die Zeile; letzte Zeile einer Gruppe ohne Linie, Gruppenkopf mit einer kraeftigen Linie darunter */
  table.ts-specs-multi tbody tr td, table.ts-specs-multi tbody tr.ts-group td, table.ts-specs-multi tbody tr td:last-child { border: 0; }
  table.ts-specs-multi tbody tr:last-child { border-bottom: 0; }
  table.ts-specs tbody tr:last-child td { border-bottom: 0; }  /* gilt auch fuer die einspaltigen Tabellen von TS1, TS2, AST-2: letzte Zeile einer Gruppe ohne Linie (06.10.2026) */
  table.ts-specs-multi tbody tr.ts-group { padding: 28px 0 10px; border-bottom: 1px solid var(--ts-line-strong); }
  table.ts-specs-multi tbody:first-child tr.ts-group { padding-top: 8px; }
  table.ts-specs-multi tr.ts-group td:first-child { font-size: 13px; font-weight: 600; letter-spacing: 0.02em; color: var(--ts-text); margin-bottom: 12px; }
  table.ts-specs-multi tbody tr.ts-group td:not(:first-child) { font-size: 20px; text-align: left; }  /* Spaltentitel buendig mit den linksbuendigen Werten (tbody fuer hoehere Spezifitaet als die Desktop-Regel) */
  table.ts-specs-multi tr.ts-group td small { font-size: 14px; }
  /* Drei Wertspalten (Woodford RL 5000 / 6000 / 7000, 28.10.2026): zwei Spalten passen nicht, darum je Merkmal drei Zeilen,
     der Baureihen-Titel (data-col aus produkt.spec_table) steht als Label 14 px vor dem Wert; die Spaltentitel der Gruppenzeile entfallen mobil */
  table.ts-specs-cols-3 tr { grid-template-columns: 1fr; row-gap: 6px; }
  table.ts-specs-cols-3 td:not(:first-child) { display: grid; grid-template-columns: 76px 1fr; column-gap: 12px; align-items: baseline; }
  table.ts-specs-cols-3 td:not(:first-child)::before { content: attr(data-col); font-size: 14px; font-weight: 600; color: var(--ts-text-medium); }
  table.ts-specs-cols-3 tbody tr.ts-group { grid-template-columns: 1fr; }
  table.ts-specs-cols-3 tbody tr.ts-group td:not(:first-child) { display: none; }
  table.ts-specs-cols-3 tr.ts-group td:first-child { margin-bottom: 4px; }
}
table.ts-specs-multi tr.ts-group td:not(:first-child) { font-family: var(--ts-font-display); text-transform: uppercase; font-size: 18px; font-weight: 600; letter-spacing: 0.01em; color: var(--ts-text); text-align: right; }  /* Spaltentitel buendig ueber den rechtsbuendigen Werten (06.10.2026) */
table.ts-specs-multi tr.ts-group td small { display: block; font-family: var(--ts-font-text); text-transform: none; font-size: 14px; font-weight: 500; letter-spacing: 0; line-height: 1.3; color: var(--ts-text-medium); margin-top: 2px; }  /* Untertitel "fuer ein Motorrad" unter dem Spaltentitel */
/* Modellvergleich ohne Hervorhebung (Varianten einer Seite) */
.ts-vergleich-neutral table.ts-vergleich th, .ts-vergleich-neutral table.ts-vergleich td { width: auto; }
.ts-vergleich-neutral table.ts-vergleich thead th:not(:first-child) { border-top: 4px solid var(--ts-brand) !important; }
.ts-vergleich-neutral .ts-vergleich-actions td a.ts-btn-primary { white-space: nowrap; }
table.ts-specs tbody tr td { background: transparent; }
table.ts-specs tr, table.ts-specs td, table.ts-vergleich tr, table.ts-vergleich td, table.ts-vergleich th, table.ts-specs tbody tr:nth-child(odd) td, table.ts-specs tbody tr:nth-child(even) td, table.ts-vergleich tbody tr:nth-child(odd) td, table.ts-vergleich tbody tr:nth-child(even) td { background: transparent; }
table.ts-specs tr:hover td, table.ts-vergleich tr:hover td { background: transparent; }
table.ts-vergleich tr:hover td.ts-current { background: var(--ts-brand-soft); }
table.ts-specs .ts-group td, table.ts-vergleich .ts-group td { font-size: 13px; font-weight: 600; letter-spacing: 0.02em; color: var(--ts-text); background: transparent; height: auto; padding: 24px 16px 8px; text-align: left; border-bottom: 1px solid var(--ts-line-strong); }
table.ts-specs tbody:first-child .ts-group td { padding-top: 8px; }
table.ts-vergleich { background: var(--ts-canvas); }
table.ts-vergleich th { font-family: var(--ts-font-display); text-transform: uppercase; font-weight: 600; font-size: clamp(1.13rem, 0.21vw + 1.08rem, 1.33rem); color: var(--ts-text); text-align: center; height: auto; padding: 20px 16px 12px; }
table.ts-vergleich th small { display: block; font-family: var(--ts-font-text); font-weight: 400; text-transform: none; font-size: 16px; color: var(--ts-text); margin-top: 6px; letter-spacing: 0; }
table.ts-vergleich td { font-size: 16px; color: var(--ts-text); text-align: center; }
table.ts-vergleich thead th.ts-current { border-top: 4px solid var(--ts-brand) !important; }

/* ---------- 6.6 Tabs ---------- */
.ts-tabs .elementor-tabs-wrapper { border-bottom: 1px solid var(--ts-line); display: flex; gap: 32px; overflow-x: auto; }
.ts-tabs .elementor-tab-title { font-family: var(--ts-font-text); font-size: 13px; font-weight: 600; letter-spacing: 0.02em; color: var(--ts-text-medium); background: transparent; border: 0; border-bottom: 2px solid transparent; padding: 12px 0; margin-bottom: -1px; white-space: nowrap; }
.ts-tabs .elementor-tab-title.elementor-active { color: var(--ts-text); border-bottom-color: var(--ts-brand); }
.ts-tabs .elementor-tab-content { border: 0; padding: 24px 0 0; }
.ts-tabs .elementor-tab-mobile-title { display: none; }

/* ---------- 6.7 Technik: drei Kacheln + Content-Box in einem Raster (Variante D, 23.09.2026) ---------- */
.ts-tech-media img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.ts-tech-tile h3, .ts-tech-box h3 { hyphens: auto; -webkit-hyphens: auto; overflow-wrap: anywhere; }
@media (min-width: 1025px) {
  .ts-tech-grid > .ts-tech-box { grid-column: 1 / -1; background: var(--ts-surface); border: 1px solid var(--ts-line); }
  .ts-tech-box .ts-tech-media, .ts-tech-box .ts-tech-media img { height: 100%; }
  .ts-tech-box .ts-tech-media img { aspect-ratio: 3 / 2; }
}
@media (max-width: 1024px) {
  .ts-tech-grid .ts-tech-box .elementor-widget-heading.elementor-element .elementor-heading-title { font-weight: 600; }  /* Schriftgewicht ist in Elementor nicht responsiv; Spezifitaet ueber Elementors Widget-Regel */
}
@media (max-width: 767px) {
  .ts-tech-media img { aspect-ratio: 3 / 2; }
}

/* ---------- 6.10 Hero Startseite: Szene in Fahrt, Header im Bild ---------- */
/* Startseiten-Hero nach Mockup G (Kundenentscheidung 14.10.2026, Vorbild Pinterest-Referenz): Vollbild-Szene, zwei Verlaeufe als Backdrop (oben fuer den
   transparenten Header, von links fuer den Text), Label in Orange, Headline auf genau zwei Zeilen, Text links mittig. Vorher (23.09. bis 14.10.2026): dunkle Textbox unten links. */
.ts-hero-home { position: relative; }
.ts-hero-home::after { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 1;
  background: linear-gradient(to bottom, rgba(15,15,16,0.55) 0%, rgba(15,15,16,0) 22%), linear-gradient(to right, rgba(15,15,16,0.86) 0%, rgba(15,15,16,0.62) 38%, rgba(15,15,16,0.12) 64%, rgba(15,15,16,0) 100%); }  /* Verlauf seit 14.10.2026 kraeftiger, damit Text und Buttons vor dem Zugfahrzeug lesbar bleiben */
.ts-hero-home > .e-con-inner, .ts-hero-home > .e-con { position: relative; z-index: 2; }
.ts-hero-home .ts-hero-label .elementor-heading-title { margin: 0; }
.ts-hero-home .ts-hero-vorteile .elementor-icon-list-items { flex-wrap: wrap; row-gap: 8px; }  /* Vorteilszeile unter den Buttons (14.10.2026): Faire Preise, Europaweite Lieferung; mobil darf sie umbrechen */
.ts-hero-home .ts-hero-vorteile .elementor-icon-list-text { color: #F7F7F8; }  /* Overline ist seit 14.10.2026 ein H1-Heading-Widget (Suchbegriff), Schrift und Laufweite kommen aus dem Widget */
.ts-hero-home > .elementor-widget.ts-hero-ki { position: absolute; right: var(--ts-safe-zone); bottom: 18px; width: auto; z-index: 3; }  /* KI-Kennzeichnung (Art. 50 KI-VO) als Fussnote 13 px unten rechts, 14.10.2026 */
.ts-hero-home .ts-hero-ki p { margin: 0; }
.ts-hero-home .elementor-widget-text-editor p:last-child { margin-bottom: 8px; }  /* Theme-Absatzabstand unter dem Hero-Fliesstext von 16 auf 8 px (Kundenwunsch 14.10.2026), dazu Container-Gap 22 und Buttonzeile 6 */
.ts-hero-home .ts-hero-title .ts-br-d, .ts-hero-home .ts-hero-title .ts-br-m { display: none; }  /* mobil laeuft die Headline frei um, Zeilenzahl egal (Kundenentscheidung 14.10.2026) */
@media (min-width: 768px) {
  .ts-hero-home .ts-hero-title .elementor-heading-title { white-space: nowrap; }  /* Tablet und Desktop: genau zwei Zeilen, "Damit Ihr Fahrzeug" / "sicher ankommt" */
  .ts-hero-home .ts-hero-title .ts-br-d { display: block; }
}
@media (max-width: 767px) {
  /* mobil: Bild oben als 420-px-Zone, laeuft nach unten in das Dunkel aus, Text darunter (Mockup GM) */
  .ts-hero-home.e-con { background-size: auto 440px !important; background-position: 68% top !important; background-repeat: no-repeat !important; background-color: #0F0F10 !important; }
  .ts-hero-home::after { background: linear-gradient(to bottom, rgba(15,15,16,0.6) 0px, rgba(15,15,16,0) 110px, rgba(15,15,16,0) 300px, #0F0F10 420px); }
  .ts-hero-home > .elementor-widget.ts-hero-ki { right: 20px; bottom: auto; top: 392px; }  /* mobil am unteren Rand der Bildzone, ueber dem Auslauf ins Dunkel */
}
@media (min-width: 660px) and (max-width: 767px) {
  .ts-hero-home.e-con { background-size: 100% auto !important; }  /* breite Handys und kleine Tablets: bei fester Hoehe 440 px war das Bild nur 660 px breit und liess links und rechts Rand (Kundenfeedback 14.10.2026); volle Breite, der Rest laeuft unter dem dunklen Verlauf weiter */
}

/* ---------- Tags (Modellreihen als neutrale Pills) ---------- */
.ts-tags .elementor-icon-list-items { display: flex; flex-wrap: wrap; gap: 8px; }
.ts-tags .elementor-icon-list-item { background: var(--ts-surface-2); border-radius: 999px; padding: 6px 14px !important; margin: 0 !important; }
.ts-tags .elementor-icon-list-item .elementor-icon-list-text { font-size: 13px; font-weight: 600; letter-spacing: 0.02em; color: var(--ts-text-high); }
.ts-tags .elementor-icon-list-item:after { display: none !important; }

/* Kachel-Bild als Elementor-Bild-Widget */
.ts-tile .ts-tile-media, .ts-brand-tile .ts-tile-media, .ts-tile .ts-tile-media .elementor-widget-container, .ts-brand-tile .ts-tile-media .elementor-widget-container { background: var(--ts-surface-2); overflow: hidden; }
.ts-tile .ts-tile-media img, .ts-brand-tile .ts-tile-media img { width: 100%; object-fit: cover; }
/* Fakten-Zeile in Kacheln (Icon-Liste inline mit Trenner) */
.ts-facts .elementor-icon-list-item { font-size: 16px; color: var(--ts-text-medium); }
.ts-facts .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after { border-color: var(--ts-line); }

/* ---------- Produktseite: Technik-Bento, Galerie-Raster, Extras, Vergleich, Sticky ---------- */
.ts-gallery-big { grid-column: span 2; grid-row: span 2; }
.ts-gallery-wide { grid-column: span 2; }  /* breites Bild 2x1 (Galerie-Variante mit 8 sichtbaren Bildern) */
.ts-gallery-grid .ts-gallery-hidden { display: none !important; }  /* nur in der Lightbox-Diashow */
.ts-gallery-grid .elementor-widget-image, .ts-gallery-grid .elementor-widget-image .elementor-widget-container, .ts-gallery-grid .elementor-widget-image a { height: 100%; display: block; }
.ts-gallery-grid .elementor-widget-image img { width: 100%; height: 100%; object-fit: cover; }
/* Bildunterschrift als Overlay auf der Kachel (Referenz-Galerie Startseite, 03.11.2026): Elementor-Caption (figure/figcaption) unten im Bild, Verlauf fuer Kontrast */
.ts-gallery-grid .elementor-widget-image figure { height: 100%; margin: 0; position: relative; display: block; }
.ts-gallery-grid .elementor-widget-image figcaption.widget-image-caption { position: absolute; left: 0; right: 0; bottom: 0; margin: 0; padding: 40px 14px 12px; text-align: left; font-family: var(--ts-font-text); font-size: 15px; line-height: 1.35; font-weight: 500; font-style: normal; color: #fff; background: linear-gradient(to top, rgba(0,0,0,0.72), rgba(0,0,0,0)); pointer-events: none; }
.ts-gallery-grid .elementor-widget-image figcaption.widget-image-caption strong { font-weight: 600; }
.ts-gallery-grid .ts-gallery-big figcaption.widget-image-caption { font-size: 17px; padding: 56px 18px 16px; }
/* Referenz-Galerie Startseite (03.11.2026, Vorbild Friseur Spangl): randloses Raster von Fensterrand zu Fensterrand, alle Kacheln 3:2 ueber aspect-ratio statt fester Hoehe */
.ts-ref-grid .elementor-widget-image img { height: auto !important; aspect-ratio: 3 / 2; }
.ts-extra { border-top: 1px solid var(--ts-line); }
.ts-extra-nophoto .ts-extra-icon { flex: 0 0 20px; margin-top: 3px; }
.ts-extra-nophoto .ts-extra-icon .elementor-icon, .ts-extra-nophoto .ts-extra-icon svg { color: var(--ts-brand); fill: var(--ts-brand); width: 20px; height: 20px; font-size: 20px; }  /* Extras ohne Herstellerfotos (Lorgano): Plus-Icon statt Foto */
.ts-extra .ts-extra-img, .ts-extra .ts-extra-img .elementor-widget-container { background: var(--ts-surface-2); }
.ts-extra .ts-extra-img img { width: 160px; height: 120px; object-fit: cover; display: block; }
.ts-extra .ts-extra-img a { display: block; }
.ts-extra .ts-extra-price { font-family: Inter, sans-serif; font-weight: 600; font-size: 16px; letter-spacing: 0; text-transform: none; color: var(--ts-text); margin-left: 10px; white-space: nowrap; }  /* Optionspreis hinter dem Titel (13.10.2026) */
.ts-extra .ts-extra-ph { width: 160px; height: 120px; flex: 0 0 160px; background: var(--ts-surface-2); border: 1px solid var(--ts-line); display: flex; align-items: center; justify-content: center; }
.elementor-widget-n-tabs.ts-spec-tabs { --n-tabs-title-gap: 32px; --n-tabs-title-color: var(--ts-text-medium); --n-tabs-title-color-hover: var(--ts-text-medium); --n-tabs-title-color-active: var(--ts-text); --n-tabs-title-background-color: transparent; --n-tabs-title-background-color-hover: transparent; --n-tabs-title-background-color-active: transparent; --n-tabs-title-border-color: transparent; --n-tabs-title-border-color-hover: transparent; --n-tabs-title-border-color-active: transparent; }
.ts-spec-tabs .e-n-tabs-heading { gap: 32px !important; border-bottom: 1px solid var(--ts-line); }
.ts-spec-tabs .e-n-tab-title { background: transparent !important; border: 0 !important; border-bottom: 2px solid transparent !important; border-radius: 0 !important; padding: 16px 0 !important; margin-bottom: -1px; font-family: var(--ts-font-text); font-size: 14px; font-weight: 600; letter-spacing: 0.02em; color: var(--ts-text-medium); }
.ts-spec-tabs .e-n-tab-title[aria-selected="true"], .ts-spec-tabs .e-n-tab-title.e-active { color: var(--ts-text) !important; border-bottom-color: var(--ts-brand) !important; }
.ts-spec-tabs .e-n-tab-title-text { font-size: 14px; }
.ts-spec-tabs .e-n-tabs-content { padding-top: 8px; }
.ts-spec-tabs .e-n-tabs-content > .e-con { padding: 0; }
.ts-vergleich-wrap { background: var(--ts-canvas); min-width: 0; max-width: 100%; }
.ts-vergleich-wrap .elementor-widget-html, .ts-vergleich-wrap .elementor-widget-html .elementor-widget-container { margin: 0; padding: 0; line-height: 0; }
table.ts-vergleich { margin: 0; line-height: 1.4; }
table.ts-vergleich .ts-group td { border-bottom: 1px solid var(--ts-line-strong); }
table.ts-vergleich .ts-group td:first-child { text-align: left; }
.ts-vergleich-wrap .elementor-widget, .ts-vergleich-wrap .elementor-widget-container { min-width: 0; max-width: 100%; }
table.ts-vergleich th .ts-badge { margin-top: 8px; }
table.ts-vergleich td.ts-current, table.ts-vergleich th.ts-current, table.ts-vergleich tbody tr:nth-child(odd) td.ts-current, table.ts-vergleich tbody tr:nth-child(even) td.ts-current { background: var(--ts-brand-soft) !important; }
table.ts-vergleich .ts-vergleich-actions td { padding: 24px 16px; height: auto; }
table.ts-vergleich .ts-vergleich-actions a.ts-btn-primary { min-height: 48px; padding: 0 24px; font-size: 15px; }
table.ts-vergleich .ts-vergleich-actions a.ts-btn-ghost { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: var(--ts-text); }
table.ts-vergleich .ts-vergleich-actions a.ts-btn-ghost svg { fill: var(--ts-brand); width: 20px; height: 20px; }
table.ts-vergleich .ts-yes svg { width: 20px; height: 20px; fill: var(--ts-success); vertical-align: middle; }
/* Modellvergleich mobil (Kundenentscheidung 23.09.2026): Umschalter + Merkmal-Bloecke mit zwei Modellen, Tabelle nur ab 768 px */
.ts-vergleich-m { display: none; }
.ts-vergleich-m [data-m] { display: none; }
.ts-vergleich-m.ts-vergleich-neutral [data-m] { display: block; }  /* Varianten-Seite (Lorgano): beide Spalten immer sichtbar, kein Umschalter */
.ts-vergleich-m [data-m].ts-vm-on { display: block; }  /* sichtbares Vergleichsmodell traegt ts-vm-on (Generator setzt es, Umschalter-Script wechselt es), unabhaengig vom Modellschluessel (13.10.2026) */
.ts-vergleich-m .ts-vm-actions a[data-m] { display: none; }
.ts-vergleich-m .ts-vm-actions a[data-m].ts-vm-on { display: inline-flex; }
.ts-check-icons .elementor-icon-list-icon svg { fill: var(--ts-brand); }
.ts-hero-trailer img { mix-blend-mode: multiply; }
/* Produkt-Hero: Desktop Mindesthoehe 70 vh, Inhalt in drei Gruppen (Kopf, Freisteller, Buttons), der Freisteller in natuerlicher Groesse bis 1.240 px.
   Die Viewporthoehe (100vh minus Header) vom 23.09.2026 ist wieder raus: der Kunde will die Kennzahlen-Leiste unter dem Hero anschneiden sehen. */
.ts-hero-product { min-height: 70vh; }
.ts-hero-product .ts-hero-media { width: 100%; display: flex; align-items: center; justify-content: center; }
.ts-hero-product .elementor-widget.ts-hero-media > .elementor-widget-container { display: flex; align-items: center; justify-content: center; width: 100%; }
.ts-hero-product .ts-hero-media img { max-width: min(100%, 1240px); width: auto; height: auto; }
.ts-hero-product .ts-hero-media-compact img { max-width: min(100%, 760px); }  /* kompakte Anhaenger (Lorgano Aero): Hero-Hoehe wie beim TS1 (06.10.2026) */
/* Feste Hero-Bildhoehe (Kundenwunsch 13.10.2026): die Renders haben verschiedene Seitenverhaeltnisse, deshalb bekommt das Bild ab Tablet eine feste
   Hoehe und skaliert in der Breite (object-fit contain, kein Verzerren). So ist der Hero auf allen Modellseiten gleich hoch und die Kennzahlen-Leiste
   schneidet ueberall gleich an. Mobil bleibt die Hoehe aus dem Seitenverhaeltnis. */
/* Hoehe an den Viewport gekoppelt (Kundenwunsch 13.10.2026): Header 80 + Hero-Rahmen ~250 + Kennzahlen-Leiste 142 + 4 px Reserve fuer die fluide Headline, minus 48 px Pull-up = 493 px (gemessen 13.10.2026), der Rest ist Bild,
   begrenzt auf 340 bis 580 px (kompaktere Leiste mit drei Zeilen und kleineren Zahlen seit 13.10.2026). So steht die Kennzahlen-Leiste auf jedem Desktop komplett im ersten Bildschirm. */
@media (min-width: 1025px) { .ts-hero-product .ts-hero-media img { height: clamp(340px, calc(100vh - 493px), 580px); width: auto; max-width: min(100%, 1240px); object-fit: contain; } }
@media (min-width: 768px) and (max-width: 1024px) { .ts-hero-product .ts-hero-media img { height: 340px; width: auto; max-width: 100%; object-fit: contain; } }
.ts-hero-product .ts-ph.ts-hero-media { max-width: 1240px; align-self: center; }
.ts-drawing img { border: 1px solid var(--ts-line); background: #FFFFFF; width: 100%; }
.ts-drawing-svg { margin: 0; border: 1px solid var(--ts-line); background: #FFFFFF; --ink: #111113; --dim: #6B6B70; --brand: #FF6F07; --paper: #FFFFFF; }  /* Massskizze als inline SVG (seit 14.10.2026), Farben ueber die Variablen des Generators */
.ts-drawing-svg svg { display: block; width: 100%; height: auto; }
.elementor-widget.ts-drawing-wrap { width: 100%; }  /* die Spalte zentriert ihre Kinder, das HTML-Widget wuerde sonst auf Inhaltsbreite schrumpfen */

/* ---------- Lightbox: Pfeile (Elementor lädt e-swiper.css nur mit Slider-Widget, die Lightbox braucht die Regeln trotzdem) ---------- */
.elementor-lightbox .elementor-swiper-button { position: absolute; top: 0; bottom: 0; transform: none; z-index: 2; cursor: pointer; display: flex; align-items: center; justify-content: center; height: 100%; width: 15%; }
.elementor-lightbox .elementor-swiper-button-prev { left: 0; }
.elementor-lightbox .elementor-swiper-button-next { right: 0; }
.elementor-lightbox .elementor-swiper-button svg { width: 1em; height: 1em; fill: currentColor; }
.elementor-lightbox .elementor-swiper-button .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* ---------- 6.11 Galerie ---------- */
.ts-gallery .elementor-gallery-item, .ts-gallery .e-gallery-item, .ts-gallery img { border-radius: 0; }
.ts-gallery .elementor-image-gallery .gallery { gap: 8px; }
.ts-gallery .elementor-gallery-item__overlay { background: transparent; }

/* ---------- 6.12 Bewertung ---------- */
.ts-trust .ts-rating { font-family: var(--ts-font-display); font-weight: 700; font-size: clamp(2.5rem, 3vw + 1.5rem, 5rem); line-height: 1; color: var(--ts-brand); }
.ts-trust .ts-stars { color: var(--ts-brand); letter-spacing: 2px; }
.ts-trust blockquote, .ts-quote { border-left: 1px solid var(--ts-line); padding-left: var(--ts-space-md); margin: 0; font-family: var(--ts-font-display); text-transform: none; font-weight: 600; font-size: clamp(1.42rem, 0.94vw + 1.23rem, 2.37rem); line-height: 1.2; color: var(--ts-text); }
/* Zitat-Slider [mlgb_quotes] (Plugin ml-google-bewertungen 1.4.0, 05.11.2026): Linie und Einzug traegt die Spalte, Zitat und Name wie das fruehere kuratierte Zitat */
.ts-trust .mlgb-quote { display: flex; flex-direction: column; gap: 20px; }
.ts-trust blockquote.mlgb-quote-text { border-left: 0; padding-left: 0; max-width: 720px; letter-spacing: 0.01em; color: var(--ts-text); }
.ts-trust .mlgb-quote-author { font-family: var(--ts-font-text); font-size: 14px; line-height: 1.5; font-weight: 400; font-style: normal; margin: 0; color: var(--ts-text-medium); }
.ts-trust .mlgb-quote-author strong { font-weight: 700; }
.ts-trust .mlgb-quote-author a, .ts-trust .mlgb-quote-author a:hover { color: inherit; text-decoration: none; }
@media (hover: hover) { .ts-trust .mlgb-quote-author a:hover { color: var(--ts-brand); } }
.ts-trust .mlgb-quotes-dots { color: var(--ts-text); gap: 0; margin: 20px 0 0 -4px; }  /* Punkte 16 px Raster (Kundenwunsch 05.11.2026, vorher 28 px) */
.ts-trust button.mlgb-dot, .ts-trust button.mlgb-dot:hover, .ts-trust button.mlgb-dot:focus { display: inline-flex; align-items: center; justify-content: center; width: 16px; height: 24px; min-width: 0; min-height: 0; padding: 0; margin: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: inherit; }  /* Kit-Buttonstil (orange Pille) aufheben */
.ts-trust button.mlgb-dot:focus-visible { outline: 2px solid var(--ts-brand); outline-offset: 2px; }

/* ---------- 6.18 Vorteile ---------- */
.ts-vorteile { background: #F2F2F3; }
.ts-vorteile-card { background: #FFFFFF; border: 0; border-radius: 0; box-shadow: none; padding: 32px; }  /* kein grauer Rand (Kundenwunsch 04.11.2026) */
.ts-vorteile-card .elementor-icon, .ts-vorteile-card svg { color: var(--ts-brand); fill: var(--ts-brand); width: 48px; height: 48px; }
.ts-vorteile-card .elementor-icon-box-icon { margin-bottom: 16px; }
.ts-vorteile-card .elementor-icon-box-title { font-family: var(--ts-font-display); text-transform: uppercase; font-weight: 600; font-size: clamp(1.13rem, 0.21vw + 1.08rem, 1.33rem); line-height: 1.2; color: #111113; }
.ts-vorteile-card .elementor-icon-box-description { font-size: 16px; line-height: 1.5; color: rgba(17,17,19,0.80); }

/* ---------- 6.20 FAQ (Elementor Accordion) ---------- */
.ts-faq .elementor-accordion .elementor-accordion-item, .ts-faq .elementor-accordion .elementor-accordion-item + .elementor-accordion-item { border: 0; border-top: 1px solid var(--ts-line); border-radius: 0; background: transparent; }
.ts-faq .elementor-accordion { border-bottom: 1px solid var(--ts-line); }
.ts-faq .elementor-accordion .elementor-tab-title { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-family: var(--ts-font-display); text-transform: uppercase; font-weight: 600; font-size: 22px; line-height: 1.2; color: var(--ts-text); padding: 20px 0; background: transparent; border: 0; }
.ts-faq .elementor-accordion .elementor-tab-title .elementor-accordion-icon { float: none; width: auto; order: 2; flex: 0 0 auto; display: inline-flex; color: var(--ts-brand); }
.ts-faq .elementor-accordion .elementor-tab-title .elementor-accordion-icon svg { width: 24px; height: 24px; fill: var(--ts-brand); }
.ts-faq .elementor-accordion .elementor-tab-title .elementor-accordion-icon span svg { display: block; }
.ts-faq .elementor-accordion .elementor-tab-title a { flex: 1 1 auto; }
.ts-faq .elementor-accordion .elementor-accordion-item .elementor-tab-content { border: 0; padding: 0 0 20px; background: transparent; font-size: 16px; line-height: 1.55; color: var(--ts-text-high); max-width: 640px; }
.ts-faq .elementor-accordion .elementor-tab-content p { margin: 0; }

/* ---------- 6.13 Abschluss-CTA ---------- */
.ts-cta { background-color: #FFFFFF; background-size: cover; background-position: center; }
.ts-cta-dark { border-top: 4px solid var(--ts-brand); }

/* ---------- 6.14 Formular (Elementor Pro Form) ---------- */
.ts-form .elementor-form-fields-wrapper { row-gap: 24px; }
.ts-form .elementor-field-group { margin-bottom: 0; padding-bottom: 0 !important; padding-top: 0 !important; }
.ts-form .elementor-field-label { font-family: var(--ts-font-text); font-size: 13px; font-weight: 600; letter-spacing: 0.02em; color: var(--ts-text); margin-bottom: 8px; display: block; }
.ts-form .elementor-field-textual { min-height: 52px; background: var(--ts-canvas); border: 1px solid var(--ts-line-strong); border-radius: var(--ts-radius-input); color: var(--ts-text); font-family: var(--ts-font-text); font-size: 16px; padding: 0 16px; box-shadow: none; }
.ts-form textarea.elementor-field-textual { min-height: 140px; padding: 14px 16px; }
.ts-form .elementor-field-textual::placeholder { color: var(--ts-text-low); }
.ts-form .elementor-field-textual:focus, .ts-form .elementor-field-textual:focus-visible { border-color: var(--ts-brand) !important; border-width: 1px !important; outline: none !important; box-shadow: none !important; }  /* nur Farbwechsel, gleiche 1-px-Staerke, sonst verschiebt sich das Layout (Kundenwunsch 23.09.2026) */
.ts-form input[type="file"] { font-size: 15px; color: var(--ts-text-high); padding: 12px 0; }
.ts-form .elementor-field-type-upload .elementor-field-label { margin-bottom: 4px; }
.ts-form .elementor-upload-hint { font-size: 14px; color: var(--ts-text-medium); margin: 4px 0 0; }
.ts-form .elementor-field-type-acceptance .elementor-field-subgroup { display: flex; align-items: flex-start; gap: 12px; }
.ts-form .elementor-field-type-acceptance label { font-size: 16px; line-height: 1.5; color: var(--ts-text-high); }
.ts-form .elementor-field-type-acceptance label a { color: var(--ts-text); text-decoration: underline; }
/* Eigene Checkbox: 20 px, Rahmen line-strong, angehakt Orange mit weissem Haken (Kundenwunsch 23.09.2026) */
.ts-form .elementor-field-type-acceptance input[type="checkbox"] { appearance: none !important; -webkit-appearance: none !important; width: 20px !important; height: 20px !important; min-width: 20px; padding: 0 !important; margin: 2px 0 0 !important; flex: 0 0 auto; border: 1px solid var(--ts-line-strong) !important; border-radius: var(--ts-radius-input) !important; background-color: var(--ts-canvas) !important; background-image: none; cursor: pointer; display: inline-block; vertical-align: top; box-shadow: none; }
.ts-form .elementor-field-type-acceptance input[type="checkbox"]:checked { background-color: var(--ts-brand) !important; border-color: var(--ts-brand) !important; background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath fill=%22%23FFFFFF%22 d=%22M19.7071068,7.29289322 C20.0976311,7.68341751 20.0976311,8.31658249 19.7071068,8.70710678 L11.2071068,17.2071068 C11.0569051,17.3573084 10.8708099,17.4497402 10.6764315,17.4844021 L10.5590314,17.4982669 L10.4409686,17.4982669 C10.205064,17.4844021 9.9731352,17.3873488 9.79289322,17.2071068 L5.29289322,12.7071068 C4.90236893,12.3165825 4.90236893,11.6834175 5.29289322,11.2928932 C5.68341751,10.9023689 6.31658249,10.9023689 6.70710678,11.2928932 L10.5,15.085 L18.2928932,7.29289322 C18.6834175,6.90236893 19.3165825,6.90236893 19.7071068,7.29289322 Z%22/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 16px 16px !important; }  /* Pixfort "Check" Solid (04.11.2026) */
.ts-form .elementor-field-type-acceptance input[type="checkbox"]:focus-visible { outline: 2px solid var(--ts-brand); outline-offset: 2px; }
.ts-form .elementor-field-type-submit { margin-top: 12px; }
.ts-form .elementor-message { font-size: 16px; }
.ts-form .elementor-message.elementor-message-danger { color: var(--ts-error); }
.ts-form .elementor-message.elementor-message-success { background: var(--ts-success-soft); color: var(--ts-success); padding: 16px; border-radius: var(--ts-radius-input); }
.ts-form .elementor-mark-required .elementor-field-label::after { color: var(--ts-brand); }
/* Kontaktkarte (6.14): Zeilen mit orangem Icon 24 px, Links dunkel */
.ts-info-row .elementor-widget-text-editor { flex: 1 1 0; min-width: 0; width: auto; }
.ts-info-row .elementor-widget-text-editor p { margin: 0; }
.ts-info-row a { color: var(--ts-text); text-decoration: none; }
.ts-info-row a:hover { color: var(--ts-brand); }
/* Karte: erst nach Klick laden */
/* Kontakt: statisches Kartenbild (eigener Server, kein Google-Iframe, kein Consent), Bild verlinkt auf Google Maps.
   ODbL-Pflichtnennung als kleines Overlay unten rechts im Bild (wie bei jedem Kartendienst). */
.ts-map { position: relative; background: var(--ts-surface-2); }
.ts-map .ts-map-img { display: block; }
.ts-map img { width: 100%; height: 300px; object-fit: cover; object-position: center; display: block; }
.ts-map .ts-map-credit { position: absolute; right: 0; bottom: 0; margin: 0; padding: 2px 6px; font-family: var(--ts-font-text); font-size: 12px; line-height: 1.4; color: #3A3A3E; background: rgba(255,255,255,0.8); }
.ts-map .ts-map-credit a { color: inherit; text-decoration: underline; }
@media (max-width: 767px) { .ts-map img { height: 280px; } }

/* ---------- 6.15 Header ---------- */
.ts-header .e-n-menu:not([data-layout="dropdown"]) .e-n-menu-heading > .e-n-menu-item:nth-last-child(2) { margin-inline-end: 4px; }  /* letzter sichtbarer Menuepunkt (der letzte ist der versteckte Burger-CTA): 4 px Nachlauf + Container-Gap 24 px = 28 px zum Sprachumschalter, wie zwischen den Menuepunkten; die 36 px zum Button (Kundenwunsch 04.11.2026) traegt jetzt der Umschalter, siehe 6.26 */
.ts-header { background: #FFFFFF; border-bottom: 1px solid rgba(17,17,19,0.16); min-height: 80px; }
/* Header-Breite beim Scrollen (Kundenwunsch 13.10.2026, Vorbild marketinglotse.at): oben am Seitenanfang laeuft der Inhalt ueber die volle
   Breite (24 px Rand), nach 80 px Scrollweg (Elementor-Klasse elementor-sticky--effects) zieht er sich weich auf die Containerbreite 1320 px
   mit Safe-Zone zusammen. Nur ab Desktop, Tablet und mobil bleiben unveraendert. Die Dropdown-Panels folgen ueber die beiden Variablen. */
@media (min-width: 1025px) {
  .ts-header.e-con { --ts-hdr-pad: 24px; --ts-hdr-inner-max: 100%; padding-left: var(--ts-hdr-pad) !important; padding-right: var(--ts-hdr-pad) !important; transition: padding 0.6s cubic-bezier(0.365, 0.84, 0.44, 1); }
  .ts-header.e-con.elementor-sticky--effects { --ts-hdr-pad: var(--ts-safe-zone); --ts-hdr-inner-max: 1320px; }
  .ts-header .e-con-boxed > .e-con-inner { max-width: var(--ts-hdr-inner-max); transition: max-width 0.6s cubic-bezier(0.365, 0.84, 0.44, 1); justify-content: flex-end; }
  .ts-header .ts-header-logo, .ts-header .ts-header-logo-neg { margin-right: auto; }  /* Logo links, Navigation und Button als Gruppe rechts (Kundenwunsch 14.10.2026; vorher space-between mit der Navigation in der Mitte) */
  /* 24 px Container-Gap zwischen letztem Menuepunkt und Button, knapper als die 28 px zwischen den Menuepunkten, damit Button und Navigation als Gruppe lesen (Kundenwunsch 14.10.2026; vorher 32 px) */
}
/* Navigation als Elementor-Pro Mega Menu (seit 13.10.2026, vorher nav-menu-Widget). Kein Aktivzustand, nur Hover (Kundenentscheidung 23.09.2026).
   "Unsere Modelle" und "Weitere Modelle" sind keine Links, nur Aufklapper per Hover; der letzte Eintrag ist der CTA fuers Burger-Menue. */
.ts-header .e-n-menu-title-container, .ts-header .e-n-menu-title-text { font-family: var(--ts-font-text); font-size: 15px; font-weight: 600; text-transform: none; letter-spacing: 0; color: #111113; }
.ts-header .e-n-menu-title-container { cursor: default; }
.ts-header a.e-n-menu-title-container { cursor: pointer; }
.ts-header .e-n-menu-dropdown-icon { cursor: default; }
/* Panel links buendig unter dem Menuepunkt (Elementor streckt den Inhalt sonst ueber die ganze Breite), Burger-Menue an der Header-Unterkante */
.ts-header .e-n-menu-item { position: relative; }
.ts-header .e-n-menu:not([data-layout="dropdown"]) .e-n-menu-content { left: 0 !important; right: auto !important; width: auto !important; }
.ts-header .e-con, .ts-header .elementor-widget-n-menu, .ts-header .e-n-menu { position: static; }
.ts-header .e-n-menu-content > .e-con { margin-inline-start: 0 !important; margin-inline-end: 0 !important; margin-left: 0 !important; margin-right: 0 !important; }
.ts-header .e-n-menu:not([data-layout="dropdown"]) .e-n-menu-content > .e-con { left: 0 !important; right: auto !important; }
/* "Weitere Modelle" (840 px) wuerde links buendig unter dem Menuepunkt rechts aus dem Viewport ragen: deshalb mittig unter dem Menuepunkt
   (li ist der Bezug, Inhalt beginnt an der Titelunterkante als Hover-Bruecke, Panel an der Header-Unterkante). Gilt in beiden Header-Zustaenden. */
.ts-header .e-n-menu:not([data-layout="dropdown"]) .e-n-menu-item:has(> #ts-mm-weitere) .e-n-menu-content { left: 50% !important; right: auto !important; transform: translateX(-50%); }
/* Unter 1300 px: "Unsere Modelle" (640 px) mittig unter dem Menuepunkt; "Weitere Modelle" (840 px) wuerde mittig rechts ueberlaufen,
   deshalb dort rechts an der Innenkante des Headers verankert (li statisch, Bezug ist der Header) */
@media (min-width: 1025px) and (max-width: 1299px) {
  .ts-header .e-n-menu:not([data-layout="dropdown"]) .e-n-menu-item:has(> #ts-mm-modelle) .e-n-menu-content { left: 50% !important; right: auto !important; transform: translateX(-50%); }
  .ts-header .e-n-menu-item:has(> #ts-mm-weitere) { position: static; }
  .ts-header .e-n-menu:not([data-layout="dropdown"]) .e-n-menu-item:has(> #ts-mm-weitere) .e-n-menu-content { left: auto !important; right: max(var(--ts-hdr-pad, 24px), calc((100% - var(--ts-hdr-inner-max, 1320px)) / 2)) !important; transform: none; top: calc(100% - 23px) !important; }
}
.ts-header .e-n-menu-content > .e-con { background: #FFFFFF; border: 1px solid rgba(17,17,19,0.16); border-top: 0; border-radius: 0; box-shadow: 0 16px 40px rgba(17,17,19,0.14); }
.ts-header .e-n-menu-toggle { color: #111113; background: transparent; border-radius: 0; width: 48px; height: 48px; }  /* Icon 32 px plus 8 px Rand, seit 14.10.2026 groesser */
.ts-header .e-n-menu-toggle:hover, .ts-header .e-n-menu-toggle:focus, .ts-header .e-n-menu-toggle:active, .ts-header .e-n-menu-toggle[aria-expanded="true"] { background: transparent !important; box-shadow: none; }  /* der Burger ist ein <button>: das globale Kit-Hover/Focus faerbte ihn orange und auf Touch blieb das nach dem Tippen stehen (Kundenfeedback 14.10.2026); kein Hover-Zustand am Burger */

/* ---------- 6.18 Header auf der Startseite: oben transparent im Hero-Bild ---------- */
/* Nach Mockup G (14.10.2026): auf der Startseite liegt der Header ohne Flaeche ueber dem Hero, Logo und Menue in Weiss. Ab 80 px Scrollweg (elementor-sticky--effects)
   wird er wieder weiss wie auf allen anderen Seiten. Der Sticky-Platzhalter wird ausgeblendet, damit der Hero bis an die Oberkante reicht. */
.home .elementor-sticky__spacer { display: none !important; }
.home .ts-header.e-con { transition: background-color 0.3s ease, border-color 0.3s ease, padding 0.6s cubic-bezier(0.365, 0.84, 0.44, 1); }
.home .ts-header.e-con:not(.elementor-sticky--effects) { background-color: transparent !important; border-bottom-color: transparent; }
@media (max-width: 1024px) { .home .ts-header.e-con:not(.elementor-sticky--active) { position: absolute; top: 0; left: 0; right: 0; z-index: 20; } }  /* Tablet und mobil ist der Header nicht sticky und stand als dunkler Balken ueber dem Hero-Bild; absolut gesetzt liegt er wie im Mockup GM im Bild (14.10.2026) */
.ts-header-logo-neg { display: none; }  /* zweites Logo-Widget im Header (Footer-Fassung: weisses Auto, oranger Schriftzug), nur im Startseiten-Hero sichtbar (14.10.2026) */
.home .ts-header.e-con:not(.elementor-sticky--effects) .ts-header-logo { display: none; }
.home .ts-header.e-con:not(.elementor-sticky--effects) .ts-header-logo-neg { display: block; }
.home .ts-header.e-con:not(.elementor-sticky--effects) .elementor-widget-n-menu { --n-menu-title-color-normal: #F7F7F8; --n-menu-title-color-active: #F7F7F8; --n-menu-dropdown-indicator-color-normal: #F7F7F8; --n-menu-dropdown-indicator-color-active: #F7F7F8; --n-menu-toggle-icon-color: #F7F7F8; --n-menu-toggle-icon-color-hover: #F7F7F8; --n-menu-toggle-icon-color-active: #F7F7F8; }
.home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu[data-layout="dropdown"] { --n-menu-title-color-normal: #111113; --n-menu-title-color-active: #111113; --n-menu-dropdown-indicator-color-normal: #111113; --n-menu-dropdown-indicator-color-active: #111113; }  /* im Burger-Dropdown (weisse Flaeche) bleiben Eintraege und Pfeile dunkel, nur der Burger selbst ist weiss (14.10.2026) */
.home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu[data-layout="dropdown"] .e-n-menu-title-container, .home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu[data-layout="dropdown"] .e-n-menu-title-text, .home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu[data-layout="dropdown"] .e-n-menu-dropdown-icon { color: #111113; }  /* auch der aktive Punkt (e-current) und die Pfeile, die ueber die direkte Farbregel weiss wurden */  /* Elementors Zustandsregeln (Spezifitaet 0,6,0) schlagen einfache Farb-Overrides, deshalb die Variablen setzen (14.10.2026) */
.home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu-title-container, .home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu-title-text,
.home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu-dropdown-icon, .home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu-toggle { color: #F7F7F8; }
.home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu-title-container:hover .e-n-menu-title-text, .home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu-title-container:hover .e-n-menu-dropdown-icon { color: var(--ts-brand); }
/* Burger-Menue (Tablet/mobil, alle Seiten): weicher Schatten nur nach unten, damit sich die weisse Liste vom weissen Seitenhintergrund abhebt (Kundenwunsch 06.11.2026) */
.ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-wrapper { box-shadow: 0 14px 24px -10px rgba(17,17,19,0.22); }
/* Burger offen oben auf der Startseite (Tablet/mobil): Kopf wie nach dem Scrollen, weiss mit Linie, normales Logo, dunkles X.
   Sonst blieb ueber der weissen Menueliste ein transparenter Balken im Hero-Bild stehen (Kundenwunsch 06.11.2026). */
.home .ts-header.e-con:not(.elementor-sticky--effects):has(.e-n-menu-toggle[aria-expanded="true"]) { background-color: #FFFFFF !important; border-bottom-color: var(--ts-line, rgba(17,17,19,0.16)); }
.home .ts-header.e-con:not(.elementor-sticky--effects):has(.e-n-menu-toggle[aria-expanded="true"]) .ts-header-logo { display: block; }
.home .ts-header.e-con:not(.elementor-sticky--effects):has(.e-n-menu-toggle[aria-expanded="true"]) .ts-header-logo-neg { display: none; }
.home .ts-header.e-con:not(.elementor-sticky--effects):has(.e-n-menu-toggle[aria-expanded="true"]) .elementor-widget-n-menu { --n-menu-toggle-icon-color: #111113; --n-menu-toggle-icon-color-hover: #111113; --n-menu-toggle-icon-color-active: #111113; }
.home .ts-header.e-con:not(.elementor-sticky--effects):has(.e-n-menu-toggle[aria-expanded="true"]) .e-n-menu-toggle { color: #111113; }

/* Dropdown-Zeilen (6.15, Variante C des Mockups): Thumbnail 104 x 58, Name in Barlow Condensed, ein Satz, Preis rechts */
.ts-mm { display: flex; flex-direction: column; gap: 16px; font-family: var(--ts-font-text); color: #111113; }
.ts-mm-group { display: flex; flex-direction: column; gap: 0; }  /* keine Luecke zwischen den Zeilen: sonst springt der Hover beim Wechsel kurz aus (Kundenvideo 13.10.2026) */
.ts-mm-group + .ts-mm-group { margin-top: 4px; }
/* Gruppentitel wie die Gruppentitel der Spec-Tabelle: Condensed, Versalien, Linie darunter (Kundenentscheidung 13.10.2026, Vorschlag 1 im Mockup) */
.ts-mm-label { font-family: var(--ts-font-display); font-weight: 700; font-size: 18px; line-height: 1; text-transform: uppercase; letter-spacing: 0.02em; color: #111113; padding: 0 12px 10px; margin-bottom: 6px; border-bottom: 1px solid rgba(17,17,19,0.16); }
.ts-mm-row { display: grid; grid-template-columns: 104px minmax(0, 1fr) 20px; grid-template-areas: "thumb text chev"; align-items: center; column-gap: 16px; padding: 8px 12px; color: #111113; text-decoration: none; }
/* Hover im Dropdown (Kundenvideos 13.10.2026): Flaechen (Zeile grau, Thumbnail weiss) wechseln OHNE Uebergang, weil die gegenlaeufige
   Ueberblendung wie Flackern wirkte; nur der Name blendet in 0,3 s nach Orange. Die Kit-Linkfarbe a:hover (orange) ist auf dem Link selbst
   unterdrueckt (a.ts-mm-row mit hoeherer Spezifitaet), damit der Name beim Verlassen nicht nachleuchtet. */
.ts-mm-row, .ts-mm-thumb, .ts-mm-brand, .ts-mm-brand-logo { transition: none; }
.ts-header a.ts-mm-row, .ts-header a.ts-mm-row:hover, .ts-header a.ts-mm-row:focus, .ts-header a.ts-mm-brand, .ts-header a.ts-mm-brand:hover, .ts-header a.ts-mm-brand:focus { color: #111113; }
.ts-header .e-n-menu-title-text { transition: color 0.3s ease; }
.ts-header .e-n-menu-content > .e-con.animated { animation-fill-mode: both; animation-timing-function: ease; }  /* Einblenden (fadeIn, 300 ms) endet sicher bei voller Deckkraft */
/* "Weitere Modelle": drei helle Logo-Kacheln mit Name, Pfeil und Satz (Kundenentscheidung 13.10.2026, Mockup W2) */
.ts-mm-brands { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; font-family: var(--ts-font-text); color: #111113; }
.ts-mm-brand { display: flex; flex-direction: column; gap: 12px; color: #111113; text-decoration: none; }
.ts-mm-brand-logo { height: 120px; background: #F2F2F3; display: flex; align-items: center; justify-content: center; padding: 24px; box-sizing: border-box; }
.ts-mm-brand-logo img { max-width: 100%; max-height: 44px; width: auto; height: auto; }
.ts-mm-logo-invert img { filter: invert(1); max-height: 64px; }  /* Woodford-Logo ist weiss, bis der Hersteller eine dunkle Fassung liefert */
.ts-mm-brand-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.ts-mm-brand .ts-mm-chev { flex: 0 0 20px; }
.ts-mm-brand .ts-mm-sub { white-space: normal; }
.ts-mm-thumb { grid-area: thumb; width: 104px; height: 58px; background: #F2F2F3; display: flex; align-items: center; justify-content: center; padding: 4px; box-sizing: border-box; }
.ts-mm-thumb img { max-width: 100%; max-height: 100%; width: auto; height: auto; mix-blend-mode: multiply; }
.ts-mm-text { grid-area: text; display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.ts-mm-name { font-family: var(--ts-font-display); font-weight: 700; font-size: 22px; line-height: 1; text-transform: uppercase; letter-spacing: 0.01em; }
.ts-mm-sub { font-size: 14px; line-height: 1.3; color: var(--ts-text-medium); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ts-mm-chev { grid-area: chev; color: var(--ts-brand); }  /* Pfeil in Orange statt Preis (Kundenentscheidung 13.10.2026) */
/* CTA-Eintrag nur im Burger-Menue, am Desktop steht der Button rechts im Header */
@media (min-width: 1025px) { .ts-header .e-n-menu-item:last-child { display: none; } }
/* Burger-Menue (Tablet und mobil): Liste unter dem Header, Eintraege 52 px mit 1 px Linie, Modell-Zeilen kompakt, CTA als Pill am Ende */
@media (max-width: 1024px) {
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-wrapper { position: absolute; top: 100% !important; left: 0 !important; right: auto !important; width: 100% !important; background: #FFFFFF; border-top: 1px solid rgba(17,17,19,0.16); max-height: calc(100vh - 72px); overflow-y: auto; }  /* Burger-Dropdown ueber die volle Headerbreite: Elementor setzt inline ein negatives left relativ zum Widget, der Bezug ist bei uns aber der Header (position static am Widget), deshalb !important (Kundenfeedback 14.10.2026) */
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-item { border-bottom: 1px solid rgba(17,17,19,0.16); }
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-item:last-child { border-bottom: 0; }
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-title { min-height: 52px; padding: 0 20px; font-size: 16px; justify-content: space-between; }  /* Text links, Chevron rechts */
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-title-text { font-size: 16px; }
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-content > .e-con { border: 0; box-shadow: none; }
  .ts-mm { gap: 0; }
  .ts-mm-group { gap: 0; }
  .ts-mm-label { font-size: 16px; padding: 6px 0 8px; border-bottom: 0; }  /* die Zeilen darunter tragen die Linie */
  .ts-mm-group + .ts-mm-group { margin-top: 12px; }
  .ts-mm-row { grid-template-columns: 84px minmax(0, 1fr) 20px; column-gap: 12px; min-height: 60px; padding: 6px 0; border-top: 1px solid rgba(17,17,19,0.16); }
  /* "Weitere Modelle" mobil nur Text: drei Namen untereinander, 52 px, Linie oben, oranger Pfeil (Mockup Mobil 4) */
  .ts-mm-brands { display: flex; flex-direction: column; gap: 0; }
  .ts-mm-brand { flex-direction: row; align-items: center; min-height: 52px; border-top: 1px solid rgba(17,17,19,0.16); gap: 0; }
  .ts-mm-brand-logo, .ts-mm-brand .ts-mm-sub { display: none; }
  .ts-mm-brand-head { flex: 1 1 auto; }
  .ts-mm-brand .ts-mm-name { font-size: 20px; }
  .ts-mm-thumb { width: 84px; height: 48px; }
  .ts-mm-text { gap: 2px; }
  .ts-mm-name { font-size: 20px; }
  .ts-mm-row .ts-mm-sub { display: none; }  /* der Satz wuerde auf 375 px umbrechen (Einzeilen-Regel), mobil nur Thumbnail, Name, Pfeil */
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-item:last-child .e-n-menu-title { padding: 16px 20px 24px; }
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-item:last-child .e-n-menu-title-container { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 52px; border-radius: 999px; background: var(--ts-brand); color: #FFFFFF; }
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-item:last-child .e-n-menu-title-text { color: #FFFFFF !important; }  /* !important: Elementors Dropdown-Farbregel hat Spezifitaet 0,7,0 und faerbte den Button-Text auf allen Seiten dunkel (14.10.2026) */
  .home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu[data-layout="dropdown"] .e-n-menu-item:last-child .e-n-menu-title-text, .home .ts-header.e-con:not(.elementor-sticky--effects) .e-n-menu[data-layout="dropdown"] .e-n-menu-item:last-child .e-n-menu-title-container { color: #FFFFFF; }  /* Startseite: die dunkle Dropdown-Farbe darf den orangen Button nicht treffen (14.10.2026) */
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-item:last-child .e-n-menu-title-text { display: inline-flex; align-items: center; gap: 8px; }
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-item:last-child .e-n-menu-title-text::after { content: ""; width: 20px; height: 20px; flex: 0 0 20px; background-color: #FFFFFF; -webkit-mask: url(https://www.trailershop.at/wp-content/uploads/trailershop-icons/pixfort-circle-arrow-right.svg) center / contain no-repeat; mask: url(https://www.trailershop.at/wp-content/uploads/trailershop-icons/pixfort-circle-arrow-right.svg) center / contain no-repeat; }  /* Kreispfeil wie bei den Primaer-Buttons, als Maske in Weiss (Kundenwunsch 14.10.2026) */
}

/* ---------- 6.16 Sticky-Anfrageleiste (mobil, nur Produktseiten) ---------- */

/* ---------- 6.17 Footer ---------- */
.ts-footer { border-top: 4px solid var(--ts-brand); }
.ts-footer .ts-footer-title { font-family: var(--ts-font-text); font-size: 13px; font-weight: 600; letter-spacing: 0.02em; color: var(--ts-brand); margin-bottom: 16px; }
.ts-footer .elementor-icon-list-item a, .ts-footer .elementor-icon-list-text, .ts-footer p { font-size: 16px; color: rgba(247,247,248,0.80); }
.ts-footer .elementor-element.elementor-element-ts-footer-text p { font-size: 16px; line-height: 1.5; margin: 0; }  /* Kurztext unter dem Logo 16 px wie die Menuespalten (Kundenwunsch 05.11.2026, vorher 14 px seit 23.09.2026); margin 0, damit die Kontaktliste direkt darunter sitzt (14.10.2026) */
.ts-footer .elementor-element.elementor-element-ts-footer-kontakt-list .elementor-icon-list-text { font-size: 16px; line-height: 1.5; }  /* Kontaktliste in der Groesse des Kurztexts, seit 05.11.2026 16 px wie alle Footer-Links (vorher 14 px, 14.10.2026) */
/* Unterste Zeile: Copyright + Credit links, Impressum/Datenschutz rechts, alles 14 px (Fussnote), Credit-Link in brand (Kundenstandard 22.09.2026) */
.ts-footer .ts-footer-bottom, .ts-footer .ts-footer-bottom a, .ts-footer .ts-footer-bottom p { font-size: 14px; font-weight: 400; line-height: 1.5; color: rgba(247,247,248,0.64); }  /* 14 px 400 (Kundenwunsch 04.11.2026) */
.ts-footer .ts-footer-bottom p { margin: 0; }
.ts-footer .ts-footer-bottom p a { color: var(--ts-brand); text-decoration: none; }
.ts-footer .ts-footer-bottom { border-top: 1px solid rgba(247,247,248,0.18); padding-top: 24px; }
.ts-footer .elementor-icon-list-icon svg, .ts-footer .elementor-icon-list-icon i { color: var(--ts-brand); fill: var(--ts-brand); }
/* Unterste Zeile: nur noch das Copyright, "Nach oben"-Link entfernt (Kundenwunsch 04.11.2026); Impressum und Datenschutz stehen seit 13.10.2026 in der Spalte Unternehmen */
/* Inserate-Button im Footer (03.11.2026): Outline-Button mit dem Truck1-Wortmarken-SVG als Icon (Attachment in trailershop-icons, fill currentColor), Logo 12 px hoch statt 20 x 20 */
.ts-footer .elementor-widget.ts-btn-outline.ts-btn-truck1 .elementor-button { color: #F7F7F8; border-color: rgba(247,247,248,0.6); }
.ts-footer .elementor-widget.ts-btn-outline.ts-btn-truck1 .elementor-button svg { width: auto; height: 12px; }
.ts-footer .ts-footer-inserate .ts-footer-title { margin-bottom: 0; }
.ts-footer .elementor-widget.ts-btn-truck1 .elementor-button-text { white-space: nowrap; }  /* Button-Text bricht nie um */

/* ---------- Icons ---------- */
/* Icons sind seit 23.09.2026 die pixfort-Solid-SVGs des Kunden (fill=currentColor). Die stroke-Regeln bleiben nur fuer eventuelle Alt-SVGs mit stroke-Attribut. */
svg[stroke="currentColor"] { fill: none !important; }
.elementor-icon-list-icon svg[stroke="currentColor"] { stroke: var(--ts-brand); }
.elementor-button-icon svg[stroke="currentColor"] { stroke: currentColor; }
.ts-icon-dark .elementor-icon-list-icon svg[stroke="currentColor"] { stroke: var(--ts-text); }
.ts-icon-brand svg, .ts-icon-brand i, .ts-icon-brand .elementor-icon { color: var(--ts-brand); fill: var(--ts-brand); }
.elementor-icon-list-icon svg { stroke-width: 2; }

/* ---------- Bilder ---------- */
/* Bild füllt auf Desktop die Höhe der Nachbarspalte (Klasse auf der Bildspalte) */
@media (min-width: 1025px) {
  .ts-stretch-media { position: relative; min-height: 320px; align-self: stretch; }
  .ts-stretch-media .elementor-widget-image { position: static; height: 100%; }
  .ts-stretch-media .elementor-widget-image img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; object-fit: cover; }
}
.ts-light img, .ts-dark img { border-radius: 0; }
.ts-cover img { width: 100%; height: 100%; object-fit: cover; }
.ts-contain img { object-fit: contain; }
/* Foto-Platzhalter auf den Produktseiten (23.09.2026): gestrichelte Box in Fotogroesse, Beschriftung in eckigen Klammern */
.ts-ph { background: var(--ts-surface-2); border: 1px dashed var(--ts-line-strong); max-width: 100%; min-width: 0; }
.ts-ph .elementor-widget-text-editor p { margin: 0; }
.ts-ph-1x1 { aspect-ratio: 1 / 1; }
.ts-ph-3x2 { aspect-ratio: 3 / 2; }
.ts-ph-4x3 { aspect-ratio: 4 / 3; }
.ts-ph-hero { aspect-ratio: 1440 / 511; max-width: 100%; margin-left: auto !important; margin-right: auto !important; }  /* zentriert wie der Freisteller */
.ts-gallery-grid .ts-ph { height: 100%; }
@media (min-width: 1025px) { .ts-stretch-media .ts-ph { height: 100%; } }
@media (max-width: 767px) { .ts-ph-1x1 { aspect-ratio: 3 / 2; } .ts-ph-hero { aspect-ratio: 16 / 9; } }
.ts-placeholder { background: var(--ts-surface-2); border: 1px solid var(--ts-line); display: flex; align-items: center; justify-content: center; text-align: center; font-size: 13px; color: var(--ts-text-medium); padding: 16px; }

/* ---------- Motion ---------- */
@media (prefers-reduced-motion: reduce) {
  .ts-tile img, .ts-brand-tile img, .elementor-button, .elementor-button-icon { transition: none !important; }
}

/* Aktiver Menüpunkt (kein Hover) */

/* ==========================================================================
   Mobile (bis 767 px) – DESIGN.md 5.3
   ========================================================================== */
/* Header-CTA erst ab 1240 px: darunter wuerde er mit den fuenf Menuepunkten kollidieren, das Menue rueckt dann rechts an (space-between),
   Tablet und mobil uebernimmt der Button am Ende des Burger-Menues (Kundenwunsch 23.09.2026) */
@media (max-width: 1239px) { .elementor-widget.ts-header-cta { display: none; } }
@media (max-width: 767px) {
  :root { --ts-safe-zone: 20px; }
  .ts-section { padding-top: 56px; padding-bottom: 56px; }
  .ts-section-hero { padding-top: 40px; padding-bottom: 40px; }
  .ts-header { min-height: 60px; }
  .ts-hero-product { min-height: 0; }
  .ts-hero-product .ts-ph.ts-hero-media { aspect-ratio: 16 / 9; }
  .ts-stack-mobile .elementor-widget-button, .ts-stack-mobile .elementor-button, .elementor-widget.ts-stack-mobile .elementor-button { width: 100%; }
  .ts-form .elementor-field-type-submit, .ts-form .elementor-field-type-submit .elementor-button { display: flex; width: 100%; justify-content: center; }
  .e-con.ts-stack-mobile .elementor-widget.ts-btn-primary .elementor-button, .e-con.ts-stack-mobile .elementor-widget.ts-btn-outline .elementor-button, .e-con.ts-stack-mobile .elementor-widget.ts-btn-dark .elementor-button, .e-con.ts-stack-mobile .elementor-widget.ts-btn-white .elementor-button, .elementor-widget.ts-stack-mobile .elementor-button { display: flex; width: 100%; }
  .elementor-widget.ts-btn-icon-mobile .elementor-button-text { display: none; }
  .elementor-widget.ts-btn-icon-mobile .elementor-button { width: 44px; min-height: 44px; padding: 0; justify-content: center; }
  .elementor-widget.ts-btn-icon-mobile .elementor-button-content-wrapper { gap: 0; }
  .ts-header-logo img, .ts-header-logo-neg img { height: 40px; width: auto; }
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-wrapper { max-height: calc(100vh - 60px); }
  /* Kennzahlen-Leiste mobil als Zeilen: Zahl links fest, Label rechts nimmt die Restbreite (Widgets in nowrap-Zeile sonst 100 % breit) */
  .ts-specbar .e-con.ts-kennzahl-row { flex: 0 0 auto; width: auto; }
  .ts-specbar .elementor-widget.ts-kennzahl-label { flex: 1 1 0; min-width: 0; width: auto; }
  .ts-tabs .elementor-tabs-wrapper { -webkit-mask-image: linear-gradient(to right, #000 85%, transparent); mask-image: linear-gradient(to right, #000 85%, transparent); gap: 24px; }
  table.ts-specs th, table.ts-specs td { height: 44px; }
  .ts-drawing img { height: 240px; object-fit: contain; }
  .ts-gallery-grid .elementor-hidden-mobile { display: none !important; }
  .ts-gallery-grid .elementor-widget-image figcaption.widget-image-caption { display: none; }
  .ts-footer .elementor-widget.ts-btn-outline.ts-btn-truck1 .elementor-button { padding: 0 20px; gap: 12px; }  /* mobil volle Breite ueber ts-stack-mobile, kompakter Innenabstand, Logo 11 px, damit Text und Wortmarke in einer Zeile stehen (03.11.2026) */
  .ts-footer .elementor-widget.ts-btn-outline.ts-btn-truck1 .elementor-button svg { height: 11px; }  /* mobil keine Bildunterschrift auf den Kacheln (Marvin 03.11.2026), Namen bleiben im Lightbox-Titel */
  .ts-faq .elementor-accordion .elementor-tab-title { font-size: 20px; padding: 16px 0; }
  .ts-gallery-big { grid-column: span 2; grid-row: auto; }
  /* Extras mobil, Variante B (Kundenentscheidung 05.11.2026): Foto 64 x 64, Titel und Preis in einer Zeile mit fester Preisspalte rechts, Zebra-Ton statt Trennlinien,
     der Satz steht nicht in der Zeile, sondern als Beschreibung im Bild-Popup (Anhang-Beschreibung, extras_lightbox.py). Lorgano ohne Fotos (ts-extra-nophoto) behaelt den Satz.
     Technik: Textcontainer, Heading-Widget und h3 werden per display:contents aufgeloest, Titeltext und Preis-Span sind damit direkte Grid-Zellen der Zeile. */
  .ts-extra.e-con:not(.ts-extra-nophoto) { --display: grid; display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; column-gap: 12px; align-items: center; padding: 10px 12px; border-top: 0; }
  .ts-extra:not(.ts-extra-nophoto):nth-child(even) { background: var(--ts-surface-2); }
  .elementor-element-extras-grid.e-grid { --grid-row-gap: 0px; --grid-column-gap: 0px; row-gap: 0; }
  .ts-extra:not(.ts-extra-nophoto) > .elementor-widget-image { width: 64px; }
  .ts-extra .ts-extra-img img { width: 64px; height: 64px; }
  .ts-extra .ts-extra-ph { width: 64px; height: 64px; flex-basis: 64px; font-size: 10px; }
  .ts-extra:not(.ts-extra-nophoto) > .e-con, .ts-extra:not(.ts-extra-nophoto) .elementor-widget-heading:not(.ts-extra-ph), .ts-extra:not(.ts-extra-nophoto) .elementor-widget-heading:not(.ts-extra-ph) > .elementor-widget-container, .ts-extra:not(.ts-extra-nophoto) .elementor-widget-heading:not(.ts-extra-ph) .elementor-heading-title { display: contents; }
  .ts-extra:not(.ts-extra-nophoto) .elementor-widget-text-editor { display: none; }
  .ts-extra .ts-extra-price { display: inline; margin: 0; grid-column: 3; justify-self: end; }
  .ts-spec-tabs .e-n-tabs-heading { gap: 24px !important; overflow-x: auto !important; flex-wrap: nowrap !important; -webkit-mask-image: linear-gradient(to right, #000 85%, transparent); mask-image: linear-gradient(to right, #000 85%, transparent); }
  .ts-spec-tabs .e-n-tab-title { padding: 12px 0 !important; font-size: 13px; white-space: nowrap; }
  .ts-trust blockquote, .ts-quote { font-size: 24px; }
  .ts-trust .mlgb-quote { gap: 12px; }
  .ts-trust .mlgb-quote-text { -webkit-line-clamp: 6; line-clamp: 6; }  /* mobil war das kuratierte Zitat schon 5 Zeilen */
  .ts-trust .mlgb-quote-author { font-size: 13px; }
  .ts-trust .mlgb-quotes-dots { margin-top: 12px; }
  .ts-price { font-size: 24px; }
  .ts-vorteile-card { padding: 20px; }
}
@media (min-width: 768px) {
}
@media (max-width: 767px) {
  .ts-vergleich-wrap table.ts-vergleich { display: none; }
  .ts-vergleich-m { display: block; padding: 16px 16px 24px; line-height: 1.4; font-family: var(--ts-font-text); }
  .ts-vm-seg { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--ts-line-strong); }
  .ts-vergleich-m .ts-vm-seg button[data-m] { display: block; }  /* Umschalter tragen data-m, duerfen aber nie ausgeblendet werden */
  .ts-vm-seg button { font-family: var(--ts-font-text); font-weight: 600; font-size: 15px; padding: 12px 8px; border: 0; border-radius: 0; background: transparent; color: var(--ts-text-medium); cursor: pointer; }
  .ts-vm-seg button.is-active { background: var(--ts-text); color: #FFFFFF; }
  .ts-vm-head { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 20px; position: sticky; top: 60px; background: var(--ts-canvas); padding: 8px 0; z-index: 2; }
  .ts-vm-head > div { font-family: var(--ts-font-display); text-transform: uppercase; font-size: 20px; font-weight: 600; line-height: 1.1; border-top: 3px solid var(--ts-line-strong); padding-top: 8px; color: var(--ts-text); }
  .ts-vm-head > .ts-vm-cur { border-top-color: var(--ts-brand); }
  .ts-vergleich-neutral .ts-vm-head > div { border-top-color: var(--ts-brand); }
  .ts-vergleich-neutral .ts-vm-vals .ts-vm-cur { font-weight: 400; }
  .ts-vergleich-neutral .ts-vm-actions-neutral { display: grid; gap: 10px; }
  .ts-vergleich-neutral .ts-vm-actions-neutral a { display: flex; width: 100%; }
  .ts-vm-head small { display: block; font-family: var(--ts-font-text); text-transform: none; font-weight: 400; font-size: 15px; color: var(--ts-text); margin-top: 4px; letter-spacing: 0; }
  .ts-vm-group { font-size: 13px; font-weight: 600; letter-spacing: 0.02em; color: var(--ts-text); padding: 20px 0 6px; border-bottom: 1px solid var(--ts-line-strong); }
  .ts-vm-row { padding: 12px 0; border-bottom: 1px solid var(--ts-line); }
  .ts-vm-label { font-size: 15px; color: var(--ts-text-medium); margin-bottom: 6px; }
  .ts-vm-vals { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; font-size: 16px; color: var(--ts-text); font-variant-numeric: tabular-nums; }
  .ts-vm-vals .ts-vm-cur { font-weight: 600; }
  .ts-vm-vals .ts-yes svg { width: 20px; height: 20px; fill: var(--ts-success); vertical-align: middle; }
  .ts-vm-actions { display: flex; flex-direction: column; gap: 10px; margin-top: 24px; }
  .ts-vm-actions a { width: 100%; justify-content: center; min-height: 48px; }
  .ts-vm-actions a.ts-btn-ghost { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: var(--ts-text); border: 1px solid var(--ts-line-strong); border-radius: 999px; padding: 0 22px; }
  .ts-vm-actions a.ts-btn-ghost svg { fill: var(--ts-brand); width: 18px; height: 18px; }
}
/* Tablet 768–1024: mobile Regeln mit 2 Spalten bei Kacheln, Elementor-Container übernehmen die Spalten */
@media (min-width: 768px) and (max-width: 1024px) {
  .ts-section { padding-top: 64px; padding-bottom: 64px; }
}

/* ==========================================================================
   Hover nur auf Geräten mit Hover (Maus/Trackpad). Touch: keine Hover-Effekte.
   ========================================================================== */
@media (hover: hover) and (pointer: fine) {
  .elementor-widget-n-tabs.ts-spec-tabs { --n-tabs-title-color-hover: var(--ts-brand); }
  .ts-spec-tabs .e-n-tab-title:hover:not([aria-selected="true"]) { color: var(--ts-brand) !important; }
  .elementor-widget.ts-btn-primary .elementor-button:hover, .elementor-widget.ts-btn-primary .elementor-button:focus-visible, a.ts-btn-primary:hover, .ts-form .elementor-button[type="submit"]:hover {
  background-color: var(--ts-brand-hover); color: #FFFFFF;
}
  .elementor-widget.ts-btn-outline .elementor-button:hover, .elementor-widget.ts-btn-outline .elementor-button:focus-visible, a.ts-btn-outline:hover {
  background: var(--ts-text); color: var(--ts-canvas); border-color: var(--ts-text);
}
  .ts-footer .elementor-widget.ts-btn-outline.ts-btn-truck1 .elementor-button:hover, .ts-footer .elementor-widget.ts-btn-outline.ts-btn-truck1 .elementor-button:focus-visible { background: #F7F7F8; color: #111113; border-color: #F7F7F8; }
  .elementor-widget.ts-btn-dark .elementor-button:hover, .elementor-widget.ts-btn-dark .elementor-button:focus-visible, a.ts-btn-dark:hover { background-color: #2A2A2E; color: #FFFFFF; }
  .elementor-widget.ts-btn-white .elementor-button:hover, .elementor-widget.ts-btn-white .elementor-button:focus-visible, a.ts-btn-white:hover { background-color: #E6E6E8; color: #111113; }
  .elementor-widget.ts-btn-ghost .elementor-button:hover, a.ts-btn-ghost:hover { color: var(--ts-text); }
  .ts-tile:hover .ts-tile-media img, .ts-brand-tile:hover .ts-tile-media img { transform: translateZ(0) scale(1.03); }
  .ts-header .e-n-menu-title:hover .e-n-menu-title-text { color: var(--ts-brand); }
  /* kein Unterstrich im Hover, nur der Farbwechsel (Kundenwunsch 14.10.2026; vorher 2 px orange Linie) */
  .ts-mm-row:hover { background: #F2F2F3; }
  .ts-mm-row:hover .ts-mm-thumb { background: #FFFFFF; }
  /* Text bleibt schwarz, kein Orange aus der Kit-Linkfarbe: das Umfaerben wirkte wie Flackern (Kundenvideo 13.10.2026) */
  /* Modell- bzw. Markenname wird im Hover orange, in 0,3 s hinein und sofort zurueck (Kundenwunsch 13.10.2026, bewusste Ausnahme von der 24-px-Regel fuer Orange) */
  .ts-mm-name { color: #111113; transition: color 0s; }
  .ts-mm-row:hover .ts-mm-name, .ts-mm-brand:hover .ts-mm-name { color: var(--ts-brand); transition: color 0.3s ease; }
  .ts-mm-row:hover .ts-mm-sub, .ts-mm-brand:hover .ts-mm-sub { color: var(--ts-text-medium); }
  /* Menuepunkt bleibt orange, solange sein Panel offen ist (kein Hin und Her beim Wechsel in das Panel) */
  .ts-header .e-n-menu-item:has(> .e-n-menu-content > .e-con.e-active) > .e-n-menu-title .e-n-menu-title-text { color: var(--ts-brand); }
  .ts-mm-brand:hover .ts-mm-brand-logo { background: #E6E6E8; }
  .ts-header .e-n-menu[data-layout="dropdown"] .e-n-menu-item:last-child .e-n-menu-title-container:hover { background: var(--ts-brand-hover); }
  .ts-footer .elementor-icon-list-item a:hover .elementor-icon-list-text { color: #F7F7F8; }
  .ts-footer .ts-footer-bottom p a:hover { color: var(--ts-brand-hover); }
}

/* Touch-Geräte: Hover-Zustände, die Elementor selbst ausgibt, neutralisieren */
@media (hover: none) {
  .elementor-kit-6 .elementor-button:hover, .elementor-kit-6 .elementor-button:focus { background-color: var(--ts-brand); color: #FFFFFF; }
  .elementor-widget.ts-btn-outline .elementor-button:hover, .elementor-widget.ts-btn-outline .elementor-button:focus { background: transparent; color: var(--ts-text); border-color: var(--ts-text); }
  .elementor-widget.ts-btn-dark .elementor-button:hover, .elementor-widget.ts-btn-dark .elementor-button:focus { background-color: #111113; color: #FFFFFF; }
  .elementor-widget.ts-btn-white .elementor-button:hover, .elementor-widget.ts-btn-white .elementor-button:focus { background-color: #FFFFFF; color: #111113; }
  .elementor-widget.ts-btn-ghost .elementor-button:hover, .elementor-widget.ts-btn-ghost .elementor-button:focus { background: transparent; color: var(--ts-text); }
  .elementor-widget-image img:hover, .ts-tile img { transform: none !important; }
  .elementor-icon-list-item a:hover .elementor-icon-list-text { color: inherit; }
}

/* ---------- 6.25 Konfigurator (Seite /konfigurator/, Quelle konfigurator.html + konfigurator.py, 04.11.2026) ---------- */
.elementor-kit-6 .ts-konf { font-family: var(--ts-font-text); color: var(--ts-text); }
.elementor-kit-6 .ts-konf * { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }  /* seit 05.11.2026 auch siteweit in Basis */
.elementor-kit-6 .ts-konf-h { font-family: var(--ts-font-display); text-transform: uppercase; letter-spacing: 0.01em; font-weight: 700; font-size: clamp(2rem, 1.5vw + 1.5rem, 3rem); line-height: 1.05; margin: 0 0 32px; color: var(--ts-text); }
.elementor-kit-6 .ts-konf .t { font-family: var(--ts-font-display); text-transform: uppercase; letter-spacing: 0.01em; font-weight: 600; line-height: 1.2; }
/* Buttons */
.elementor-kit-6 .ts-konf-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 28px; border-radius: var(--ts-radius-full); border: 0; font-family: var(--ts-font-text); font-size: 16px; font-weight: 600; line-height: 1; cursor: pointer; text-decoration: none; white-space: nowrap; transition: background-color var(--ts-duration) var(--ts-ease), color var(--ts-duration) var(--ts-ease); }
.elementor-kit-6 .ts-konf-btn svg { width: 20px; height: 20px; flex: none; }
.elementor-kit-6 .ts-konf-btn:active { transform: translateY(1px); }
.elementor-kit-6 .ts-konf-btn[disabled] { opacity: 0.4; cursor: default; }
.elementor-kit-6 .ts-konf-btn-primary { background: var(--ts-brand); color: #FFFFFF; }
.elementor-kit-6 .ts-konf-btn-dark { background: #111113; color: #FFFFFF; }
.elementor-kit-6 .ts-konf-btn-white { background: #FFFFFF; color: #111113; }
.elementor-kit-6 .ts-konf-btn-outline { background: transparent; color: var(--ts-text); border: 2px solid var(--ts-text); }
.elementor-kit-6 .ts-konf-btn-ghost { background: transparent; color: var(--ts-text); padding: 0; min-height: 0; }
.elementor-kit-6 .ts-konf-btn-ghost svg { color: var(--ts-brand); }
.elementor-kit-6 .ts-konf-btn:focus-visible, .elementor-kit-6 .ts-konf-step:focus-visible, .elementor-kit-6 .ts-konf-var:focus-visible, .elementor-kit-6 .ts-konf-group-h:focus-visible, .elementor-kit-6 .ts-konf-row input:focus-visible { outline: 2px solid var(--ts-brand); outline-offset: 2px; }  /* Ring nur bei Tastaturfokus auf dem Kaestchen, nicht nach Mausklick (Kundenwunsch 04.11.2026) */
.elementor-kit-6 .ts-konf-btn-primary:focus-visible { outline-color: #111113; }
/* Das Kit stylt jedes <button> als orangen Pill (.elementor-kit-6 button): eigene Buttons im Konfigurator mit hoeherer Spezifitaet zuruecksetzen */
.elementor-kit-6 .ts-konf-step, .elementor-kit-6 .ts-konf-group-h, .elementor-kit-6 .ts-konf-var, .elementor-kit-6 .ts-konf-row .ph, .elementor-kit-6 .ts-konf-zoom .x { box-shadow: none; text-transform: none; }
.elementor-kit-6 .ts-konf-step { border-radius: 0; line-height: 1; }
.elementor-kit-6 .ts-konf-var { line-height: 1.5; width: 100%; white-space: normal; }
.elementor-kit-6 .ts-konf-var .in { min-width: 0; flex: 1 1 auto; text-align: left; }
.elementor-kit-6 .ts-konf-step:hover, .elementor-kit-6 .ts-konf-step:focus { background: transparent; color: var(--ts-text-low); }
.elementor-kit-6 .ts-konf-step.done:hover, .elementor-kit-6 .ts-konf-step.done:focus { background: transparent; color: var(--ts-text); }
.elementor-kit-6 .ts-konf-step.active:hover, .elementor-kit-6 .ts-konf-step.active:focus { background: var(--ts-brand-soft); color: var(--ts-text); }
.elementor-kit-6 .ts-konf-group-h:hover, .elementor-kit-6 .ts-konf-group-h:focus { background: transparent; color: var(--ts-text); }
.elementor-kit-6 .ts-konf-var:hover, .elementor-kit-6 .ts-konf-var:focus { background: var(--ts-canvas); color: var(--ts-text); }
.elementor-kit-6 .ts-konf-var.sel:hover, .elementor-kit-6 .ts-konf-var.sel:focus { background: var(--ts-surface); color: var(--ts-text); }
.elementor-kit-6 .ts-konf-row .ph:hover, .elementor-kit-6 .ts-konf-row .ph:focus { background: var(--ts-surface-2); color: inherit; }
.elementor-kit-6 .ts-konf-zoom .x:hover, .elementor-kit-6 .ts-konf-zoom .x:focus { background: #FFFFFF; color: #111113; }
.elementor-kit-6 .ts-konf-btn-primary:hover, .elementor-kit-6 .ts-konf-btn-primary:focus { background: var(--ts-brand); color: #FFFFFF; }
.elementor-kit-6 .ts-konf-btn-dark:hover, .elementor-kit-6 .ts-konf-btn-dark:focus { background: #111113; color: #FFFFFF; }
.elementor-kit-6 .ts-konf-btn-white:hover, .elementor-kit-6 .ts-konf-btn-white:focus { background: #FFFFFF; color: #111113; }
.elementor-kit-6 .ts-konf-btn-outline:hover, .elementor-kit-6 .ts-konf-btn-outline:focus { background: transparent; color: var(--ts-text); }
.elementor-kit-6 .ts-konf-btn-ghost:hover, .elementor-kit-6 .ts-konf-btn-ghost:focus { background: transparent; color: var(--ts-text); }
/* Schrittleiste, klebt unter dem Header */
.elementor-kit-6 .ts-konfbar-sec { position: sticky; top: 81px; z-index: 20; }
.elementor-kit-6 .ts-konf-bar { display: flex; align-items: center; gap: 24px; min-height: 72px; }
.elementor-kit-6 .ts-konf-steps { display: flex; gap: 4px; overflow-x: auto; scrollbar-width: none; flex: 1 1 auto; min-width: 0; }
.elementor-kit-6 .ts-konf-steps::-webkit-scrollbar { display: none; }
.elementor-kit-6 .ts-konf-step { height: 72px; padding: 0 20px; display: inline-flex; align-items: center; gap: 10px; font-family: var(--ts-font-text); font-size: 16px; font-weight: 600; color: var(--ts-text-low); background: transparent; border: 0; border-bottom: 2px solid transparent; cursor: default; white-space: nowrap; }
.elementor-kit-6 .ts-konf-step.done { color: var(--ts-text); cursor: pointer; }
.elementor-kit-6 .ts-konf-step.active { color: var(--ts-text); border-bottom-color: var(--ts-brand); background: var(--ts-brand-soft); }
.elementor-kit-6 .ts-konf-step .n { width: 24px; height: 24px; border-radius: var(--ts-radius-full); border: 2px solid currentColor; display: inline-flex; align-items: center; justify-content: center; font-size: 13px; }
.elementor-kit-6 .ts-konf-step.done .n { background: var(--ts-brand); border-color: var(--ts-brand); color: #FFFFFF; }
.elementor-kit-6 .ts-konf-bar-price { margin-left: auto; text-align: right; line-height: 1.1; }
.elementor-kit-6 .ts-konf-bar-p { font-family: var(--ts-font-display); font-size: 26px; font-weight: 700; color: var(--ts-brand); white-space: nowrap; font-variant-numeric: tabular-nums; }
.elementor-kit-6 .ts-konf-bar-note { font-size: 14px; font-weight: 500; color: var(--ts-text-medium); }
/* Modellkacheln (Variante C, 03.11.2026) */
.elementor-kit-6 .ts-konf-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.elementor-kit-6 .ts-konf-model { display: flex; flex-direction: column; background: var(--ts-surface); color: var(--ts-text); }
.elementor-kit-6 .ts-konf-model.sel { outline: 2px solid var(--ts-brand); outline-offset: -2px; }
.elementor-kit-6 .ts-konf-model .img { background: var(--ts-surface-2); aspect-ratio: 16 / 9; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.elementor-kit-6 .ts-konf-model .img img { width: 92%; height: auto; mix-blend-mode: multiply; }
.elementor-kit-6 .ts-konf-model .body { padding: 24px; display: flex; flex-direction: column; gap: 12px; flex: 1; }
.elementor-kit-6 .ts-konf-model .body .t { font-size: 26px; }
.elementor-kit-6 .ts-konf-model .claim { color: var(--ts-text-high); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.elementor-kit-6 .ts-konf-model .pr, .elementor-kit-6 .ts-konf-var .pr { display: flex; align-items: baseline; gap: 10px; }
.elementor-kit-6 .ts-konf-model .price, .elementor-kit-6 .ts-konf-var .price { font-family: var(--ts-font-display); font-size: 26px; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; }
.elementor-kit-6 .ts-konf-model .price { color: var(--ts-brand); }
.elementor-kit-6 .ts-konf-model .note, .elementor-kit-6 .ts-konf-var .note, .elementor-kit-6 .ts-konf-sum .note, .elementor-kit-6 .ts-konf-mbar .note { font-size: 14px; font-weight: 500; color: var(--ts-text-medium); }
.elementor-kit-6 .ts-konf-model .facts { display: flex; flex-direction: column; gap: 10px; padding: 14px 0 8px; border-top: 1px solid var(--ts-line); }
.elementor-kit-6 .ts-konf-model .facts div { display: flex; align-items: center; gap: 12px; font-size: 16px; line-height: 1.3; }
.elementor-kit-6 .ts-konf-model .facts svg { width: 22px; height: 22px; flex: none; color: var(--ts-text); }
.elementor-kit-6 .ts-konf-model .facts b { font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; }
.elementor-kit-6 .ts-konf-model .facts span { color: var(--ts-text-medium); }
.elementor-kit-6 .ts-konf-model .ts-konf-btn { width: 100%; margin-top: auto; }
.elementor-kit-6 .ts-konf-model-dark { background: #0F0F10; color: #F7F7F8; padding: 32px; display: flex; flex-direction: column; gap: 16px; justify-content: center; }
.elementor-kit-6 .ts-konf-model-dark .t { font-size: 30px; font-weight: 700; color: #F7F7F8; }
.elementor-kit-6 .ts-konf-model-dark p { margin: 0; color: rgba(247,247,248,0.80); }
.elementor-kit-6 .ts-konf-model-dark .ts-konf-btn { align-self: flex-start; }
/* Seit sechs Modellen (Lorgano 05.11.2026) stuende die dunkle Kachel allein in einer Reihe: ab Tablet als Band ueber die volle Breite */
@media (min-width: 768px) {
  .elementor-kit-6 .ts-konf-model-dark { grid-column: 1 / -1; flex-direction: row; align-items: center; gap: 32px; padding: 32px 40px; }
  .elementor-kit-6 .ts-konf-model-dark .t { flex: 0 0 auto; max-width: 360px; }
  .elementor-kit-6 .ts-konf-model-dark p { flex: 1 1 auto; max-width: 560px; }
  .elementor-kit-6 .ts-konf-model-dark .ts-konf-btn { align-self: center; margin-left: auto; flex: none; }
}
/* Zweispaltiges Layout Variante/Ausstattung, Panel links klebt */
.elementor-kit-6 .ts-konf-conf { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 40px; align-items: start; }
.elementor-kit-6 .ts-konf-stick, .elementor-kit-6 .ts-konf-groups { min-width: 0; }
.elementor-kit-6 .ts-konf-stick { position: sticky; top: 177px; }
.elementor-kit-6 .ts-konf-stage { background: var(--ts-surface); padding: 32px; display: flex; flex-direction: column; gap: 20px; }
.elementor-kit-6 .ts-konf-stage > img { width: 100%; height: auto; mix-blend-mode: multiply; }
.elementor-kit-6 .ts-konf-stage .t { font-size: 26px; }
.elementor-kit-6 .ts-konf-stage .claim { color: var(--ts-text-medium); }
.elementor-kit-6 .ts-konf-stage .ts-konf-btn-primary { align-self: flex-start; }
.elementor-kit-6 .ts-konf-stage .ts-konf-btn-ghost { align-self: flex-start; }
.elementor-kit-6 .ts-konf-kz { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; border-top: 1px solid var(--ts-line); padding-top: 20px; }
.elementor-kit-6 .ts-konf-kz > div { min-width: 0; }
.elementor-kit-6 .ts-konf-kz b { display: block; font-family: var(--ts-font-display); font-size: 30px; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; }
.elementor-kit-6 .ts-konf-kz b small { font-size: 18px; font-weight: 600; }
.elementor-kit-6 .ts-konf-kz .lab { font-size: 13px; font-weight: 600; letter-spacing: 0.02em; line-height: 1.3; color: var(--ts-text-medium); }
.elementor-kit-6 .ts-konf-sum { display: flex; flex-direction: column; gap: 8px; border-top: 1px solid var(--ts-line); padding-top: 20px; }
.elementor-kit-6 .ts-konf-sum.nol { border-top: 0; padding-top: 4px; }
.elementor-kit-6 .ts-konf-sum .line, .elementor-kit-6 .ts-konf-pos .line { display: flex; justify-content: space-between; gap: 16px; font-variant-numeric: tabular-nums; }
.elementor-kit-6 .ts-konf-sum .line b { font-weight: 600; }
.elementor-kit-6 .ts-konf-sum .line.tot { align-items: baseline; flex-wrap: wrap; }
.elementor-kit-6 .ts-konf-sum .line b, .elementor-kit-6 .ts-konf-pos .line b { white-space: nowrap; }
.elementor-kit-6 .ts-konf-sum .line.tot span { font-family: var(--ts-font-display); text-transform: uppercase; letter-spacing: 0.01em; font-weight: 600; font-size: 20px; }
.elementor-kit-6 .ts-konf-sum .big { font-family: var(--ts-font-display); font-size: 34px; font-weight: 700; line-height: 1; margin-top: 8px; color: var(--ts-brand); white-space: nowrap; margin-left: auto; }
.elementor-kit-6 .ts-konf-pos .line { padding: 10px 0; border-bottom: 1px solid var(--ts-line); }
.elementor-kit-6 .ts-konf-pos .line b { font-weight: 600; }
.elementor-kit-6 .ts-konf-pos .line.muted { color: var(--ts-text-medium); }
/* Varianten (AST-2) */
.elementor-kit-6 .ts-konf-vars { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.elementor-kit-6 .ts-konf-var { display: flex; gap: 20px; align-items: flex-start; text-align: left; background: var(--ts-canvas); border: 1px solid var(--ts-line); padding: 24px; cursor: pointer; font-family: var(--ts-font-text); color: var(--ts-text); border-radius: 0; }
.elementor-kit-6 .ts-konf-var.sel { outline: 2px solid var(--ts-brand); outline-offset: -2px; background: var(--ts-surface); }
.elementor-kit-6 .ts-konf-var .in { display: flex; flex-direction: column; gap: 8px; }
.elementor-kit-6 .ts-konf-var .t { font-size: 24px; }
.elementor-kit-6 .ts-konf-var .d { color: var(--ts-text-high); font-size: 16px; line-height: 1.5; }
.elementor-kit-6 .ts-konf-radio { width: 24px; height: 24px; border-radius: var(--ts-radius-full); border: 2px solid var(--ts-line-strong); flex: none; margin-top: 2px; display: flex; align-items: center; justify-content: center; }
.elementor-kit-6 .ts-konf-var.sel .ts-konf-radio { border-color: var(--ts-brand); }
.elementor-kit-6 .ts-konf-var.sel .ts-konf-radio i { width: 12px; height: 12px; border-radius: var(--ts-radius-full); background: var(--ts-brand); display: block; }
/* Extras in Gruppen (Dropdowns) */
.elementor-kit-6 .ts-konf-group { border-top: 1px solid var(--ts-line); }
.elementor-kit-6 .ts-konf-group:last-child { border-bottom: 1px solid var(--ts-line); }
.elementor-kit-6 .ts-konf-group-h { display: flex; align-items: center; gap: 16px; width: 100%; padding: 22px 0; background: transparent; border: 0; cursor: pointer; text-align: left; font-family: var(--ts-font-text); color: var(--ts-text); border-radius: 0; }
.elementor-kit-6 .ts-konf-group-h .t { font-size: 24px; flex: 1 1 auto; min-width: 0; }
.elementor-kit-6 .ts-konf-group-h .cnt { margin-left: auto; flex: none; white-space: nowrap; font-size: 14px; font-weight: 500; color: var(--ts-text-medium); }
.elementor-kit-6 .ts-konf-group-h svg { width: 36px; height: 36px; margin: -6px; flex: none; transition: transform var(--ts-duration) var(--ts-ease); }  /* pixfort "Arrow Bottom Mini" fuellt nur die Mitte der Zeichenflaeche: 36 px Box = optisch 24 px wie das FAQ-Icon (6.20), Kundenwunsch 04.11.2026 */
.elementor-kit-6 .ts-konf-group.open .ts-konf-group-h svg { transform: rotate(180deg); }
.elementor-kit-6 .ts-konf-group-b { padding: 0 0 16px; }
.elementor-kit-6 .ts-konf-row { display: grid; grid-template-columns: 28px 112px 1fr; gap: 16px; align-items: start; padding: 14px 12px; margin: 0 -12px; cursor: pointer; transition: background-color var(--ts-duration) var(--ts-ease); }
.elementor-kit-6 .ts-konf-row.off { cursor: default; }
.elementor-kit-6 .ts-konf-row input[type="checkbox"] { appearance: none !important; -webkit-appearance: none !important; width: 24px !important; height: 24px !important; min-width: 24px; margin: 30px 0 0 !important; padding: 0 !important; border: 2px solid var(--ts-line-strong) !important; border-radius: 0 !important; background: #FFFFFF !important; background-image: none; cursor: pointer; position: relative; flex: none; box-shadow: none; }
.elementor-kit-6 .ts-konf-row input:checked { background: var(--ts-brand) !important; border-color: var(--ts-brand) !important; }
.elementor-kit-6 .ts-konf-row input:checked { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath fill=%22%23FFFFFF%22 d=%22M19.7071068,7.29289322 C20.0976311,7.68341751 20.0976311,8.31658249 19.7071068,8.70710678 L11.2071068,17.2071068 C11.0569051,17.3573084 10.8708099,17.4497402 10.6764315,17.4844021 L10.5590314,17.4982669 L10.4409686,17.4982669 C10.205064,17.4844021 9.9731352,17.3873488 9.79289322,17.2071068 L5.29289322,12.7071068 C4.90236893,12.3165825 4.90236893,11.6834175 5.29289322,11.2928932 C5.68341751,10.9023689 6.31658249,10.9023689 6.70710678,11.2928932 L10.5,15.085 L18.2928932,7.29289322 C18.6834175,6.90236893 19.3165825,6.90236893 19.7071068,7.29289322 Z%22/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 18px 18px !important; }  /* Pixfort "Check" Solid, wie im Kontaktformular */
.elementor-kit-6 .ts-konf-row input[disabled] { cursor: default; background: var(--ts-surface-2) !important; border-color: var(--ts-surface-2) !important; }
.elementor-kit-6 .ts-konf-row input[disabled]:checked { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath fill=%22%23111113%22 d=%22M19.7071068,7.29289322 C20.0976311,7.68341751 20.0976311,8.31658249 19.7071068,8.70710678 L11.2071068,17.2071068 C11.0569051,17.3573084 10.8708099,17.4497402 10.6764315,17.4844021 L10.5590314,17.4982669 L10.4409686,17.4982669 C10.205064,17.4844021 9.9731352,17.3873488 9.79289322,17.2071068 L5.29289322,12.7071068 C4.90236893,12.3165825 4.90236893,11.6834175 5.29289322,11.2928932 C5.68341751,10.9023689 6.31658249,10.9023689 6.70710678,11.2928932 L10.5,15.085 L18.2928932,7.29289322 C18.6834175,6.90236893 19.3165825,6.90236893 19.7071068,7.29289322 Z%22/%3E%3C/svg%3E") !important; }
.elementor-kit-6 .ts-konf-row .ph { display: block; width: 112px; aspect-ratio: 4 / 3; background: var(--ts-surface-2); overflow: hidden; border: 0; padding: 0; cursor: zoom-in; border-radius: 0; }
.elementor-kit-6 .ts-konf-row .ph img { display: block; width: 100%; height: 100%; object-fit: cover; }
.elementor-kit-6 .ts-konf-row .ph.none { display: flex; align-items: center; justify-content: center; cursor: pointer; }  /* ohne Kundenfoto (Lorgano 05.11.2026) */
.elementor-kit-6 .ts-konf-row .ph.none span { font-family: var(--ts-font-text); font-size: 11px; font-weight: 500; line-height: 1.3; color: var(--ts-text-medium); }
.elementor-kit-6 .ts-konf-zoom .card.noimg { grid-template-columns: 1fr; width: min(560px, 100%); }
.elementor-kit-6 .ts-konf-row .tx { display: block; }
.elementor-kit-6 .ts-konf-row .th { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }  /* Titel links, Preis oder Badge rechts in einer Zeile (Review 05.11.2026) */
.elementor-kit-6 .ts-konf-row .t { display: block; font-size: 22px; }
.elementor-kit-6 .ts-konf-row .d { display: block; color: var(--ts-text-medium); font-size: 16px; font-weight: 400; line-height: 1.5; }  /* 400 ausdruecklich: die Zeile ist ein label, das Theme setzt Labels auf 600 */  /* text-medium wie der Optionssatz der Extras-Sektion (Kundenwunsch 04.11.2026) */
.elementor-kit-6 .ts-konf-row .hint { display: block; font-size: 14px; color: var(--ts-text-medium); margin-top: 4px; }
.elementor-kit-6 .ts-konf-row .p { font-weight: 600; font-size: 16px; line-height: 1.5; white-space: nowrap; flex: none; font-variant-numeric: tabular-nums; }  /* 16/600 rechte Spalte, 20 px war dem Kunden zu gross (04.11.2026) */
.elementor-kit-6 .ts-konf-row .badgecol { flex: none; }
.elementor-kit-6 .ts-konf-badge { display: inline-flex; align-items: center; height: 24px; padding: 0 10px; border-radius: var(--ts-radius-full); background: var(--ts-brand-soft); color: var(--ts-text); font-size: 13px; font-weight: 600; white-space: nowrap; }
.elementor-kit-6 .ts-konf-foot { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--ts-line); flex-wrap: wrap; }
/* Anfrage: Elementor-Formular links, Zusammenfassung rechts */
.elementor-kit-6 .ts-konf-anfrage .ts-konf-aside { position: sticky; top: 177px; }
.elementor-kit-6 .ts-konf-anfrage .elementor-field-type-submit { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.elementor-kit-6 .ts-konf-anfrage .elementor-field-type-submit .elementor-button { width: auto; }
.elementor-kit-6 .ts-konf-anfrage .ts-konf-pdfbtn { min-height: 52px; }
/* Bild-Popup */
.elementor-kit-6 .ts-konf-zoom { position: fixed; inset: 0; z-index: 1000; background: var(--ts-backdrop); display: flex; align-items: center; justify-content: center; padding: 24px; }
.elementor-kit-6 .ts-konf-zoom .card { background: #FFFFFF; width: min(960px, 100%); display: grid; grid-template-columns: 3fr 2fr; position: relative; }
.elementor-kit-6 .ts-konf-zoom .card img { display: block; width: 100%; height: 100%; object-fit: cover; aspect-ratio: 4 / 3; }
.elementor-kit-6 .ts-konf-zoom .zt { padding: 32px; display: flex; flex-direction: column; gap: 12px; }
.elementor-kit-6 .ts-konf-zoom .zt .t { font-size: 28px; padding-right: 36px; white-space: normal; overflow: visible; overflow-wrap: anywhere; }  /* Titel bricht um und laeuft nie unter das X (44 px, rechts 12 px); nie abschneiden (Michael 04.11.2026) */
.elementor-kit-6 .ts-konf-zoom .zt p { margin: 0; color: var(--ts-text-high); }
.elementor-kit-6 .ts-konf-zoom .zt .price { font-family: var(--ts-font-display); font-size: 30px; font-weight: 700; margin-top: auto; font-variant-numeric: tabular-nums; }
.elementor-kit-6 .ts-konf-zoom .zt .note { font-size: 14px; font-weight: 500; color: var(--ts-text-medium); }
.elementor-kit-6 .ts-konf-zoom .x { position: absolute; top: 12px; right: 12px; width: 44px; height: 44px; border: 0; background: #FFFFFF; cursor: pointer; display: flex; align-items: center; justify-content: center; color: #111113; border-radius: 0; padding: 0; }
.elementor-kit-6 .ts-konf-zoom .x svg { width: 22px; height: 22px; }
/* [hidden] muss gegen die display-Regeln gewinnen (Popup, Toast, mobile Leiste) */
.elementor-kit-6 .ts-konf-zoom[hidden], .elementor-kit-6 .ts-konf-toast[hidden], .elementor-kit-6 .ts-konf-mbar[hidden] { display: none !important; }
/* Toast und mobile Preisleiste */
.elementor-kit-6 .ts-konf-toast { position: fixed; left: 50%; bottom: 96px; transform: translateX(-50%); background: #1A1A1C; color: #F7F7F8; padding: 14px 20px; border-radius: var(--ts-radius-input); box-shadow: var(--ts-shadow-sm); font-size: 16px; z-index: 1001; max-width: calc(100% - 40px); }
.elementor-kit-6 .ts-konf-mbar { display: none; }
@media (hover: hover) and (pointer: fine) {
  .elementor-kit-6 .ts-konf-btn-primary:hover { background: var(--ts-brand-hover); }
  .elementor-kit-6 .ts-konf-btn-dark:hover { background: #2A2A2E; }
  .elementor-kit-6 .ts-konf-btn-white:hover { background: #E6E6E8; }
  .elementor-kit-6 .ts-konf-btn-outline:hover { background: var(--ts-text); color: #FFFFFF; }
  .elementor-kit-6 .ts-konf-row:hover { background: var(--ts-surface); }
  .elementor-kit-6 .ts-konf-var:hover { outline: 2px solid var(--ts-text); outline-offset: -2px; }
}
@media (max-width: 1024px) {
  .elementor-kit-6 .ts-konf-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .elementor-kit-6 .ts-konf-conf { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .elementor-kit-6 .ts-konf-stick { position: static; }
  .elementor-kit-6 .ts-konf-anfrage .ts-konf-aside { position: static; }
}
@media (max-width: 767px) {
  .elementor-kit-6 .ts-konf-h { margin-bottom: 24px; }
  .elementor-kit-6 .ts-konfbar-sec { top: 61px; }
  .elementor-kit-6 .ts-konf-bar { min-height: 60px; gap: 8px; }
  .elementor-kit-6 .ts-konf-sum .big { font-size: 30px; }
  .elementor-kit-6 .ts-konf-group-h .t { font-size: 22px; }
  .elementor-kit-6 .ts-konf-step:not(.active) .lbl { display: none; }
  .elementor-kit-6 .ts-konf-step { padding: 0 10px; height: 60px; font-size: 15px; gap: 8px; }
  .elementor-kit-6 .ts-konf-step:not(.active) { padding: 0 4px; }  /* erledigte und kommende Schritte nur als Nummernchip, damit alle vier samt Preis in 375 px passen (Review 05.11.2026) */
  .elementor-kit-6 .ts-konf-steps { gap: 2px; overflow: visible; }
  .elementor-kit-6 .ts-konf-bar-note .full { display: none; }
  .elementor-kit-6 .ts-konf-group-h { flex-wrap: wrap; row-gap: 2px; }  /* Zaehler unter den Titel statt daneben, die Titel liefen in den Zaehler (Review 05.11.2026) */
  .elementor-kit-6 .ts-konf-group-h .t { flex: 1 1 calc(100% - 40px); white-space: normal; }
  .elementor-kit-6 .ts-konf-group-h .cnt { order: 3; flex: 1 1 100%; margin-left: 0; }
  .elementor-kit-6 .ts-konf-bar-p { font-size: 22px; }
  .elementor-kit-6 .ts-konf-stage .ts-konf-btn-primary { display: none; }  /* mobil traegt die feste Leiste unten den Weiter-Button */
  .elementor-kit-6 .ts-konf-grid { grid-template-columns: 1fr; gap: 16px; }
  .elementor-kit-6 .ts-konf-vars { grid-template-columns: 1fr; }
  .elementor-kit-6 .ts-konf-variante .ts-konf-conf { display: flex; flex-direction: column; }
  .elementor-kit-6 .ts-konf-variante .ts-konf-vars { order: -1; }
  .elementor-kit-6 .ts-konf-stage { padding: 20px; }
  .elementor-kit-6 .ts-konf-kz { display: flex; flex-direction: column; gap: 0; padding-top: 4px; }
  .elementor-kit-6 .ts-konf-kz > div { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--ts-line); }
  .elementor-kit-6 .ts-konf-kz > div:last-child { border-bottom: 0; }
  .elementor-kit-6 .ts-konf-kz b { font-size: 26px; display: inline; }
  .elementor-kit-6 .ts-konf-kz b small { font-size: 15px; }
  .elementor-kit-6 .ts-konf-kz .lab { text-align: right; }
  /* mobil (Variante C, Kundenentscheidung 05.11.2026): Kaestchen, Foto 56 x 42, Titel, Preis in fester Spalte rechts; der Satz entfaellt,
     er steht im Bild-Popup. Bei 19 Optionen passt so doppelt so viel auf den Schirm. */
  .elementor-kit-6 .ts-konf-row { grid-template-columns: 28px 56px minmax(0, 1fr) auto; column-gap: 10px; row-gap: 4px; align-items: center; padding: 10px 12px; }
  .elementor-kit-6 .ts-konf-row .ph { width: 56px; }
  .elementor-kit-6 .ts-konf-row input[type="checkbox"] { margin: 0 !important; }
  .elementor-kit-6 .ts-konf-row .tx, .elementor-kit-6 .ts-konf-row .th { display: contents; }
  .elementor-kit-6 .ts-konf-row .t { grid-column: 3; font-size: 19px; }
  .elementor-kit-6 .ts-konf-row .p, .elementor-kit-6 .ts-konf-row .badgecol { grid-column: 4; }
  .elementor-kit-6 .ts-konf-row .d { display: none; }
  .elementor-kit-6 .ts-konf-row .hint { grid-column: 3 / 5; font-size: 14px; margin-top: 0; }
  .elementor-kit-6 .ts-konf-row input[type="checkbox"] { margin-top: 21px !important; }
  .elementor-kit-6 .ts-konf-group-h { padding: 18px 0; }
  .elementor-kit-6 .ts-konf-foot .ts-konf-btn { width: 100%; }
  .elementor-kit-6 .ts-konf-zoom { padding: 0; align-items: flex-end; }
  .elementor-kit-6 .ts-konf-zoom .card { grid-template-columns: 1fr; max-height: 92vh; overflow-y: auto; }
  .elementor-kit-6 .ts-konf-zoom .zt { padding: 20px; }
  .elementor-kit-6 .ts-konf-mbar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; min-height: 72px; background: #1A1A1C; color: #F7F7F8; box-shadow: 0 -3px 8px rgba(0,0,0,0.16); align-items: center; gap: 12px; padding: 12px 20px; z-index: 900; }
  .elementor-kit-6 .ts-konf-mbar[hidden] { display: none; }
  .elementor-kit-6 .ts-konf-mbar .p { font-family: var(--ts-font-display); font-size: 24px; font-weight: 700; color: var(--ts-brand); line-height: 1; font-variant-numeric: tabular-nums; }
  .elementor-kit-6 .ts-konf-mbar .note { color: rgba(247,247,248,0.64); }
  .elementor-kit-6 .ts-konf-mbar { min-width: 0; }
  .elementor-kit-6 .ts-konf-mbar .ts-konf-btn { margin-left: auto; min-height: 44px; padding: 0 20px; flex: none; }
  .elementor-kit-6 .ts-konf-ausstattung, .elementor-kit-6 .ts-konf-variante { padding-bottom: 72px; }
  .elementor-kit-6 .ts-konf-toast { bottom: 88px; }
  .elementor-kit-6 .ts-konf-anfrage .ts-konf-pdfbtn, .elementor-kit-6 .ts-konf-anfrage .elementor-field-type-submit .elementor-button { width: 100%; }
}

/* ---------- 6.26 Sprachumschalter DE | EN (Spec elementor/i18n/SPEC-englische-sprachversion.md Abschnitt 6, Kundenfreigabe 05.11.2026) ---------- */
/* Markup aus dem mu-Plugin trailershop-lang.php: <nav class="ts-lang"><a lang="de" class="is-active">DE</a><span class="ts-lang-sep">|</span><a lang="en">EN</a></nav>.
   Desktop: Shortcode-Widget ts-header-lang zwischen Mega-Menue und CTA-Button, Schrift wie die Menuepunkte (Inter 15 px 600), aktive Sprache text,
   inaktive text-medium, Trenner text-low, Hover nur bei Mausgeraeten in Orange (0,3 s wie die Menuepunkte), nichts bewegt sich, keine Unterstreichung. */
.ts-lang { display: inline-flex; align-items: center; gap: 10px; font-family: var(--ts-font-text); font-size: 15px; font-weight: 600; line-height: 1.2; letter-spacing: 0.02em; }
.ts-header .ts-lang a, .ts-header .ts-lang a:hover, .ts-header .ts-lang a:focus { color: var(--ts-text-medium); text-decoration: none; transition: color 0.3s ease; }
.ts-header .ts-lang a.is-active, .ts-header .ts-lang a.is-active:hover { color: #111113; }
.ts-lang .ts-lang-sep { color: var(--ts-text-low); font-weight: 400; }
@media (hover: hover) { .ts-header .ts-lang a:not(.is-active):hover { color: var(--ts-brand); } }
.ts-header-lang { margin-inline-end: 12px; }  /* Umschalter -> Button: 12 px Nachlauf + Container-Gap 24 px = 36 px (Kundenwunsch 04.11.2026, vorher letzter Menuepunkt -> Button) */
/* Startseite oben (transparenter Header, 6.18): Umschalter in Weiss wie die Menuepunkte, inaktive Sprache und Trenner gedaempft */
.home .ts-header.e-con:not(.elementor-sticky--effects) .ts-header-lang .ts-lang a { color: rgba(247,247,248,0.64); }
.home .ts-header.e-con:not(.elementor-sticky--effects) .ts-header-lang .ts-lang a.is-active { color: #F7F7F8; }
.home .ts-header.e-con:not(.elementor-sticky--effects) .ts-header-lang .ts-lang-sep { color: rgba(247,247,248,0.48); }
@media (hover: hover) { .home .ts-header.e-con:not(.elementor-sticky--effects) .ts-header-lang .ts-lang a:not(.is-active):hover { color: var(--ts-brand); } }
/* Tablet und mobil (bis 1024 px): ts-header-lang-m (Deutsch | English) verschiebt das Plugin-Script beim Laden als letzte Zeile in den Burger-Wrapper;
   davor und am Desktop unsichtbar. Das Burger-Menue ist auch auf der Startseite weiss, darum hier immer die dunklen Farben. */
.ts-header-lang-m { display: none; }
@media (max-width: 1024px) {
  .ts-header-lang { display: none; }
  /* Fallback ohne JS (Review 05.11.2026): solange ts-header-lang-m nicht im Burger-Wrapper liegt, erscheint die Kurzform nach 1,5 s im Balken */
  .ts-header:not(:has(.e-n-menu-wrapper > .ts-header-lang-m)) .ts-header-lang { display: inline-flex; visibility: hidden; animation: ts-lang-fallback 0s 1.5s forwards; }
  @keyframes ts-lang-fallback { to { visibility: visible; } }
  .ts-header .e-n-menu-wrapper > .ts-header-lang-m { display: block; padding: 0 20px 20px; }
  .ts-header-lang-m .ts-lang { font-size: 16px; gap: 12px; min-height: 36px; }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Barlow Condensed';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('https://www.trailershop.at/wp-content/uploads/trailershop-fonts/barlow-condensed-latin-600-normal.woff2') format('woff2');
}
@font-face {
	font-family: 'Barlow Condensed';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('https://www.trailershop.at/wp-content/uploads/trailershop-fonts/barlow-condensed-latin-700-normal.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('https://www.trailershop.at/wp-content/uploads/trailershop-fonts/inter-latin-400-normal.woff2') format('woff2');
}
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('https://www.trailershop.at/wp-content/uploads/trailershop-fonts/inter-latin-500-normal.woff2') format('woff2');
}
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('https://www.trailershop.at/wp-content/uploads/trailershop-fonts/inter-latin-600-normal.woff2') format('woff2');
}
/* End Custom Fonts CSS */