/* Ersatz für Slick-Slider (Startseiten-Header): einfacher Fade.
   !important, weil das Theme alle Slides ausser dem ersten per Selektor mit hoher Spezifität ausblendet. */
.dynamicHeader{position:relative;overflow:hidden}
.dynamicHeader>.slide{display:none!important}
.dynamicHeader>.slide.is-active{display:block!important;animation:gfade .8s ease}
@keyframes gfade{from{opacity:0}to{opacity:1}}
.dynamicHeader .slick-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;border:0;background-color:transparent;background-repeat:no-repeat;font-size:0;line-height:0;cursor:pointer;padding:0;opacity:.9}
.dynamicHeader .slick-arrow:hover{opacity:1}
.dynamicHeader .dots{display:flex;gap:.5rem;justify-content:center;padding:.5rem 0}
.dynamicHeader .dots button{width:.75rem;height:.75rem;border-radius:50%;border:0;background:#c5ccd6;padding:0}
.dynamicHeader .dots button.is-active{background:#1f4a8a}
@media (max-width:767px){.mp_dynamicheader .dynamicHeader .slick-prev{left:8px}.mp_dynamicheader .dynamicHeader .slick-next{right:8px}}
/* Produkt-Galerie ohne Slick */
.mpProductsGallery .slider-for>div{display:none}
.mpProductsGallery .slider-for>div.is-active{display:block}
.mpProductsGallery .slider-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}
.mpProductsGallery .slider-nav>div{width:5rem;cursor:pointer;opacity:.6}
.mpProductsGallery .slider-nav>div.is-active{opacity:1}
.mpProductsGallery img{max-width:100%;height:auto}

/* Schrift: Albert Sans (OFL, selbst gehostet) als Ersatz für Univers LT Std.
   Der Familienname "Univers" bleibt, damit das Theme-CSS unverändert funktioniert. */
@font-face{font-family:Univers;font-weight:300;font-style:normal;font-display:swap;
  src:url(/assets/fonts/albert-sans-latin-300-normal.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Univers;font-weight:300;font-style:normal;font-display:swap;
  src:url(/assets/fonts/albert-sans-latin-ext-300-normal.woff2) format("woff2");
  unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Univers;font-weight:400;font-style:normal;font-display:swap;
  src:url(/assets/fonts/albert-sans-latin-300-normal.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Univers;font-weight:700;font-style:normal;font-display:swap;
  src:url(/assets/fonts/albert-sans-latin-700-normal.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Univers;font-weight:700;font-style:normal;font-display:swap;
  src:url(/assets/fonts/albert-sans-latin-ext-700-normal.woff2) format("woff2");
  unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* Click-to-load (Karten/Videos) */
.consent-embed{position:relative;width:100%;background:#eef2f7;border:1px solid #c5ccd6}
.consent-video,.consent-map{aspect-ratio:16/9}
.consent-dealer{height:28rem}
.consent-embed .consent-box{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:1.5rem;text-align:center}
.consent-embed .consent-box p{margin:0;max-width:34rem;font-size:.95rem}
.consent-embed.is-loaded{background:none;border:0}
.consent-embed iframe{width:100%;height:100%;border:0;display:block}
.consent-dealer.is-loaded{border:1px solid #c5ccd6}
.dealer-list{max-height:28rem;overflow:auto}
.dealer-list .dealer{padding:.75rem 0;border-bottom:1px solid #dde3ea;cursor:pointer}
.dealer-list .dealer[hidden]{display:none}
.gertec-routenplaner-frame .consent-embed{aspect-ratio:16/9;min-height:20rem}

/* Routenplaner */
.route-planner .consent-route{height:26rem}
.route-planner .consent-route.is-loaded{border:1px solid #c5ccd6}
.gertec-routenplaner a.btn{position:static;left:auto;transform:none;width:auto;margin:1rem 0 2rem}
.route-planner .route-result{min-height:1.5em;color:#1f4a8a}

/* Video-Platzhalter im Bootstrap-ratio-Container: Rahmen füllt den 16:9-Container exakt */
.ratio>.consent-embed{position:absolute;top:0;left:0;width:100%;height:100%;aspect-ratio:auto}
.consent-embed iframe{height:100%}
/* Galerie-Pfeile */
.mpProductsGallery>.row:first-child>.col-auto{user-select:none;font-size:1.5rem;cursor:pointer}
.mpProductsGallery>.row:first-child>.col-auto:hover{color:#1f4a8a!important}

/* H1, die optisch wie die bisherige H2 aussieht (SEO: jede Seite hat genau eine H1) */
h1.as-h2{font-size:calc(1.3rem + .6vw);line-height:40px;margin-bottom:1rem!important}
@media (min-width:1200px){h1.as-h2{font-size:1.75rem}}

/* Formulare */
.gertec-form .gf-hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.gertec-form .form-label{font-weight:700}
.gertec-form .form-control[readonly]{background:#eef2f7}
.gertec-form .was-validated .form-control:invalid,.gertec-form.was-validated .form-control:invalid{border-color:#a5261d}
.gertec-form .form-status{min-height:1.5em;margin:.5rem 0 1rem;font-weight:700}
.gertec-form .form-status.is-error{color:#a5261d}
.gertec-form button[disabled]{opacity:.7;cursor:wait}

/* Formulare, modern: Raster, ruhige Felder, deutlicher Fokus, Karte bzw. Dialog */
.gertec-form .row{display:grid;grid-template-columns:1fr;gap:1.1rem 1.25rem;margin:0}
.gertec-form .row>*{width:auto;max-width:none;flex:none;margin:0!important;padding:0}
.gertec-form .row>.col-12:not([class*=col-md]){grid-column:1/-1}
@media (min-width:768px){
  .gertec-form[data-type=contact] .row{grid-template-columns:repeat(3,1fr)}
  .gertec-form[data-type=product] .row{grid-template-columns:repeat(2,1fr)}
}
.gertec-form .form-label{display:block;margin:0 0 .35rem;font-size:.85rem;font-weight:600;letter-spacing:.01em;color:#1f2d3d}
.gertec-form .form-control{min-height:3rem;padding:.7rem .9rem;border:1px solid #c9d2de;border-radius:.5rem;background:#f8fafc;box-shadow:none;transition:border-color .15s,box-shadow .15s,background-color .15s}
.gertec-form textarea.form-control{min-height:9rem;resize:vertical}
.gertec-form .form-control:hover{border-color:#9fb0c6}
.gertec-form .form-control:focus{background:#fff;border-color:#1f4a8a;box-shadow:0 0 0 .2rem rgba(31,74,138,.18)}
.gertec-form .form-control[readonly]{background:#eef2f7;color:#4a5a70;border-style:dashed}
.gertec-form .form-check{display:flex;align-items:flex-start;gap:.6rem;padding:0;margin:0}
.gertec-form .form-check-input{float:none;margin:.2rem 0 0;width:1.15rem;height:1.15rem;flex:none;border-color:#9fb0c6}
.gertec-form .form-check-input:checked{background-color:#1f4a8a;border-color:#1f4a8a}
.gertec-form .form-check-label{font-size:.9rem;line-height:1.45}
.gertec-form button.btn{width:auto;min-width:14rem;padding:.85rem 1.75rem;border-radius:.5rem;transition:background-color .15s,transform .1s}
.gertec-form button.btn:active{transform:translateY(1px)}
@media (max-width:575px){.gertec-form button.btn{width:100%}}
.gertec-form .form-status{margin:1rem 0 .75rem}
.gertec-form[data-type=contact]{padding:1.75rem;background:#fff;border:1px solid #e1e7ef;border-radius:.9rem;box-shadow:0 6px 24px rgba(31,45,61,.07)}
@media (max-width:575px){.gertec-form[data-type=contact]{padding:1.1rem}}
#productForm .modal-dialog{max-width:640px;margin:1.5rem auto;padding:0 .75rem}
#productForm .modal-content{border:0;border-radius:.9rem;box-shadow:0 18px 60px rgba(15,25,40,.3)}
#productForm .modal-body{padding:2rem 1.75rem 1.75rem}
#productForm .btn-close{top:.6rem;right:.6rem;padding:.9rem;opacity:.55;border-radius:50%}
#productForm .btn-close:hover{opacity:1;background-color:#eef2f7}

/* Produktseiten: Tabelle "Technische Daten" (vorher Word-HTML mit Inline-Formatierung) */
.product-data{border-collapse:collapse;width:100%;margin-bottom:1rem}
.product-data td{border:1px solid #000;padding:2px 6px;vertical-align:top}
.product-data tr:nth-child(odd) td{background-color:#d9d9d9}
