/*!
 * apollon hell – Design-Schicht über ATLAS
 * System HELL (18.09.2026): heller Verlauf · graphit · Open Sans Leicht/Halbfett · ein dunkler Button
 *
 * Aufbau
 *   1  Tokens
 *   2  Basis & Typografie
 *   3  Buttons
 *   4  Header & Navigation
 *   5  Heroes (Foto-Fade)
 *   6  Sektionen, Karten, ATLAS-Blöcke
 *   7  Blog: Übersicht & Artikel
 *   8  Formulare
 *   9  Footer
 *   10 Schlanke Seiten (Kern-Blöcke + Vorlagen)
 *   11 Inselseiten mit eigenem CSS (Preise)
 *   12 Bedienbarkeit (Web Interface Guidelines, WCAG)
 *   13 Umgebaute Seiten (Kernblöcke statt ATLAS-Layoutgerüst)
 *   14 Bildwelt „Licht & Material"
 *
 * Alle Regeln hängen an body.apl, damit sie die von ATLAS inline ausgegebenen
 * Komponenten-Styles sicher überstimmen. ATLAS setzt html{font-size:62.5%},
 * deshalb hier durchgehend px statt rem.
 */

/* ------------------------------------------------------------------ 1 Tokens */
:root{
  --apl-graphit:#1E2828;
  --apl-graphit-72:rgba(30,40,40,.72);
  --apl-graphit-62:rgba(30,40,40,.62);
  --apl-linie:rgba(30,40,40,.16);
  --apl-linie-zart:rgba(30,40,40,.09);
  --apl-blau:#41AAE6;
  --apl-tuerkis:#96C8D2;
  --apl-nebel:#F3F9FA;   /* Verlauf 0 %  */
  --apl-dunst:#E3F1F4;   /* Verlauf 34 % */
  --apl-see:#B9DBE2;     /* Verlauf 68 % */
  --apl-weiss:#fff;

  --apl-verlauf:linear-gradient(100deg,#F3F9FA 0%,#E3F1F4 34%,#B9DBE2 68%,#96C8D2 100%);
  --apl-schein:radial-gradient(60% 75% at 100% 0%,rgba(65,170,230,.55) 0%,rgba(65,170,230,.22) 38%,rgba(65,170,230,0) 72%);
  --apl-buehne:var(--apl-schein),var(--apl-verlauf);
  --apl-verlauf-zart:linear-gradient(100deg,#fff 0%,#F3F9FA 45%,#E3F1F4 100%);

  --apl-leicht:300;
  --apl-halbfett:600;
  --apl-gewicht-text:var(--apl-leicht); /* bei Bedarf auf 400 stellen: Lesetext wird kräftiger */

  --apl-radius:20px;
  --apl-radius-klein:12px;
  --apl-pill:999px;
  --apl-schatten:0 1px 2px rgba(30,40,40,.04),0 12px 32px -12px rgba(30,40,40,.14);
  --apl-schatten-hover:0 2px 4px rgba(30,40,40,.05),0 22px 44px -14px rgba(30,40,40,.22);
  --apl-breite:1240px;
  --apl-lesebreite:760px;
  --apl-tempo:.25s cubic-bezier(.2,.7,.2,1);
  /* Bildwelt (Übergang): bunte Altfotos in Foto-Plätzen ruhiger und kühler; auf 'none' stellen = Originalfarben */
  /* Altfotos bekommen das Foto-Rezept HELL als echten Duoton (SVG-Filter aus inc/rahmen.php). 'none' schaltet ihn ab. */
  --apl-foto-filter:none; /* Blauschleier abgeschaltet 30.09.2026 (Tobias/Norbert): Fotos in Originalfarbe */
}

/* ------------------------------------------------- 2 Basis & Typografie */
body.apl{
  background:var(--apl-weiss);
  color:var(--apl-graphit);
  font-family:"Open Sans",system-ui,sans-serif;
  font-weight:var(--apl-gewicht-text);
  font-size:16px;
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
/* Skala 1.3: Fließtext bleibt 17 px – leichter Schnitt wird kleiner schnell dünn */

.apl b,.apl strong{font-weight:var(--apl-halbfett)}
.apl p{margin:0 0 24px}
.apl ::selection{background:var(--apl-see);color:var(--apl-graphit)}

/* Überschriften: Halbfett als Standard. Wer in einer Überschrift einen Teil fett
   setzt, bekommt automatisch den Schnittwechsel (Rest leicht) – wie im Social-System. */
.apl h1,.apl .h1,.apl h2,.apl .h2,.apl h3,.apl .h3,.apl h4,.apl .h4,.apl h5,.apl .h5,.apl h6,.apl .h6{
  font-family:inherit;
  font-weight:var(--apl-halbfett);
  color:var(--apl-graphit);
  letter-spacing:-.012em;
  text-transform:none !important;
  hyphens:manual;-webkit-hyphens:manual;
  text-wrap:balance;
  margin:0 0 .6em;
}
.apl h1,.apl .h1{font-size:clamp(28px,2.9vw,40px);line-height:1.16;letter-spacing:-.02em}
.apl h2,.apl .h2{font-size:clamp(23px,2vw,28px);line-height:1.22;letter-spacing:-.014em}
.apl h3,.apl .h3{font-size:clamp(19px,1.5vw,22px);line-height:1.3}
.apl h4,.apl .h4{font-size:clamp(17px,1.25vw,18.5px);line-height:1.35}
.apl h5,.apl .h5{font-size:16px;line-height:1.4}
.apl h6,.apl .h6{font-size:15px;line-height:1.4}
.apl :is(h1,h2,h3,.h1,.h2,.h3):has(> strong,> b){font-weight:var(--apl-leicht)}
.apl :is(h1,h2,h3):has(> strong:only-child){font-weight:var(--apl-halbfett)} /* komplett gefettete Alt-Überschriften */
.apl :is(h1,h2,h3).is-style-apl-leicht{font-weight:var(--apl-leicht)}

/* Kicker: Halbfett, Versalien, gesperrt, 62 % */
.apl .apl-kicker,
.apl p.is-style-preheading,
.apl p.is-style-apl-kicker,
.apl p.is-style-uppercase{
  font-size:13px;line-height:1.4;font-weight:var(--apl-halbfett);
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--apl-graphit-62);margin:0 0 18px;
}
.apl p.is-style-leadparagraph,
.apl p.is-style-apl-lead{font-size:clamp(17px,1.25vw,18.5px);line-height:1.55;font-weight:var(--apl-leicht);color:var(--apl-graphit)}

.apl a{color:inherit;transition:color var(--apl-tempo),background-color var(--apl-tempo),border-color var(--apl-tempo)}
.apl a:hover,.apl a:focus{color:var(--apl-graphit)}
.apl .page-content a:not([class]),.apl .page-content a.rank-math-link{
  text-decoration:underline;text-decoration-color:var(--apl-blau);
  text-decoration-thickness:1.5px;text-underline-offset:4px;
}
.apl .page-content a:not([class]):hover,.apl .page-content a.rank-math-link:hover{color:var(--apl-graphit);text-decoration-thickness:2.5px}
.apl :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--apl-graphit);outline-offset:3px;border-radius:4px}

/* Trennlinie: die feine Fußzeilen-Linie aus den Visuals statt des 3px-Blau-Balkens */
.apl hr,.apl .wp-block-separator{
  border:0 !important;border-top:1px solid var(--apl-linie) !important;
  background:none !important;height:0;opacity:1;margin:40px auto;color:var(--apl-linie);
}
.apl .wp-block-separator:not(.is-style-wide):not(.is-style-dots){width:72px;margin-left:0}
.apl .has-text-align-center + .wp-block-separator,.apl .wp-block-separator.aligncenter,
.apl :is(.container__body,.apl-sektion,.apl-innen,.apl-schmal,.wp-block-column):has(> .has-text-align-center) > .wp-block-separator{margin-left:auto;margin-right:auto}
.apl :is(.apl-sektion,.apl-innen):has(> .has-text-align-center) > .wp-block-columns{justify-content:center}

/* Listen */
.apl .page-content ul:not([class]) li,.apl .acf-block ul:not([class]) li,.apl ul.wp-block-list li{font-size:inherit;line-height:1.65;padding-left:28px;margin-bottom:10px;position:relative}
.apl ul.wp-block-list{list-style:none;padding:0;margin:0 0 28px}
.apl .page-content ul:not([class]) li::before,.apl .acf-block ul:not([class]) li::before,.apl ul.wp-block-list li::before{
  content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--apl-blau);
}
.apl ol li::before{color:var(--apl-graphit);font-weight:var(--apl-halbfett)}

.apl blockquote,.apl .wp-block-quote{
  border:0;border-left:3px solid var(--apl-blau);margin:40px 0;padding:6px 0 6px 28px;background:none;
  font-size:clamp(20px,2vw,26px);line-height:1.5;font-weight:var(--apl-leicht);font-style:normal;color:var(--apl-graphit);
}
.apl blockquote cite,.apl .wp-block-quote cite{display:block;margin-top:16px;font-size:14px;font-style:normal;font-weight:var(--apl-halbfett);letter-spacing:.04em;color:var(--apl-graphit-62)}

.apl .wp-block-table table{border-collapse:collapse;width:100%;font-size:16px}
.apl .wp-block-table th{font-weight:var(--apl-halbfett);text-align:left;background:var(--apl-nebel);border:0;border-bottom:1px solid var(--apl-graphit);padding:14px 16px}
.apl .wp-block-table td{border:0;border-bottom:1px solid var(--apl-linie-zart);padding:14px 16px;vertical-align:top}
.apl .wp-block-table{overflow-x:auto}

.apl img{border-radius:0}
.apl .wp-block-image img,.apl .wp-block-media-text__media img,.apl .wp-block-embed iframe{border-radius:var(--apl-radius)}
.apl .wp-block-image img[src$=".svg"]{border-radius:0}

/* Alt-Palette auf das helle System umlenken (Slugs bleiben, Werte wechseln) */
.apl .has-primary-color,.apl .has-color-1-color{color:var(--apl-blau) !important}
.apl .has-secondary-color,.apl .has-color-2-color{color:var(--apl-graphit) !important}
.apl .has-primary-dark-color,.apl .has-primary-darker-color{color:var(--apl-graphit) !important}
.apl .has-background-gray-color{color:var(--apl-graphit-62) !important}
.apl .has-primary-background-color,.apl .has-color-1-background-color{background-color:var(--apl-see) !important;color:var(--apl-graphit)}
.apl .has-primary-light-background-color,.apl .has-color-3-background-color{background-color:var(--apl-dunst) !important}
.apl .has-primary-lighter-background-color,.apl .has-bright-gray-background-color{background-color:var(--apl-nebel) !important}
.apl .has-secondary-background-color,.apl .has-color-2-background-color,
.apl .has-primary-dark-background-color,.apl .has-primary-darker-background-color,
.apl .has-background-gray-background-color{background:var(--apl-buehne) !important;color:var(--apl-graphit) !important}
.apl :is(.has-secondary-background-color,.has-primary-dark-background-color,.has-primary-darker-background-color,.has-background-gray-background-color) :is(h1,h2,h3,h4,h5,h6,p,li,a:not(.wp-block-button__link)){color:var(--apl-graphit) !important}

/* ------------------------------------------------------------ 3 Buttons */
/* Primär = der eine dunkle Pill-Button. Alles Weitere ist Kontur oder Textlink. */
.apl .wp-block-button__link,
.apl .main-header-button-link,
.apl .apl-button,
.apl input[type="submit"],
.apl button[type="submit"]:not(.search-icon),
.apl .gform_button,
.apl .page-content .post-password-form [type="submit"]{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-width:0;min-height:52px;padding:0 30px;
  font-family:inherit;font-size:16px;line-height:1;font-weight:var(--apl-halbfett);
  letter-spacing:0;text-transform:none;text-decoration:none;
  color:#fff !important;background:var(--apl-graphit) !important;
  border:1.5px solid var(--apl-graphit) !important;border-radius:var(--apl-pill) !important;
  box-shadow:none;cursor:pointer;
  transition:transform var(--apl-tempo),background-color var(--apl-tempo),color var(--apl-tempo),box-shadow var(--apl-tempo);
}
.apl .wp-block-button__link::after{
  content:"→";position:static;transform:none;width:auto;height:auto;background:none !important;
  -webkit-mask-image:none;mask-image:none;font-weight:var(--apl-leicht);font-size:18px;line-height:1;transition:transform var(--apl-tempo);
}
.apl .wp-block-button__link:hover,
.apl .main-header-button-link:hover,
.apl .apl-button:hover,
.apl input[type="submit"]:hover,
.apl .gform_button:hover{
  color:#fff !important;background:#2c3a3a !important;border-color:#2c3a3a !important;
  transform:translateY(-1px);box-shadow:0 10px 24px -10px rgba(30,40,40,.55);
}
.apl .wp-block-button__link:hover::after{transform:translateX(4px);right:auto}

/* Sekundär: Kontur. Die frühere Orange-Variante wird zur Kontur-Variante. */
.apl .is-style-outline .wp-block-button__link,
.apl .is-style-fill-secondary .wp-block-button__link,
.apl .is-style-apl-kontur .wp-block-button__link,
.apl .apl-button--kontur{
  color:var(--apl-graphit) !important;background:transparent !important;border-color:var(--apl-graphit) !important;
}
.apl .is-style-outline .wp-block-button__link:hover,
.apl .is-style-fill-secondary .wp-block-button__link:hover,
.apl .is-style-apl-kontur .wp-block-button__link:hover,
.apl .apl-button--kontur:hover{color:#fff !important;background:var(--apl-graphit) !important}

/* Textlink mit Pfeil */
.apl .is-style-link-only .wp-block-button__link,
.apl .is-style-apl-textlink .wp-block-button__link{
  min-height:0;padding:0 0 4px;border:0 !important;border-radius:0 !important;background:none !important;
  color:var(--apl-graphit) !important;box-shadow:inset 0 -1.5px 0 var(--apl-blau);
}
.apl .is-style-link-only .wp-block-button__link:hover,
.apl .is-style-apl-textlink .wp-block-button__link:hover{transform:none;box-shadow:inset 0 -2.5px 0 var(--apl-blau);background:none !important;color:var(--apl-graphit) !important}
.apl .wp-block-buttons{gap:14px}
.apl .wp-block-button{margin-bottom:0}

/* ------------------------------------------- 4 Header & Navigation */
.apl .main-header,
.apl .main-header.fixed,
.apl .main-header__transparent{
  background:rgba(255,255,255,.86) !important;
  -webkit-backdrop-filter:saturate(1.4) blur(16px);backdrop-filter:saturate(1.4) blur(16px);
  box-shadow:0 1px 0 var(--apl-linie-zart);
}
.apl .top-header{background:transparent;border-bottom:1px solid var(--apl-linie-zart)}
.apl .top-header__contact-link{font-size:13px;font-weight:var(--apl-leicht);color:var(--apl-graphit-72)}
.apl .top-header__contact-link:hover{color:var(--apl-graphit)}
.apl .top-header__contact-icon img{height:18px;width:auto}
.apl .top-header__social-icon img{height:22px;width:auto;filter:grayscale(1) brightness(.35);opacity:.75;transition:opacity var(--apl-tempo)}
.apl .top-header__social-link:hover img{opacity:1}

/* Logo: kein herabhängender weißer „Reiter" mehr */
.apl #page .main-header .main-header__logo-wrapper,
.apl #page:not(.searchIsOpen) .main-header__fixed-header:not(.fixed) .main-header__logo-wrapper{
  background:transparent !important;border-radius:0 !important;box-shadow:none !important;
}

.apl .main-nav .menu>li>a{
  font-size:15.5px;font-weight:var(--apl-leicht);letter-spacing:0;text-transform:none;color:var(--apl-graphit) !important;
}
.apl .main-nav .menu>li>a::before{background:var(--apl-graphit);height:1.5px}
.apl .main-nav .menu>li.current-menu-item>a,
.apl .main-nav .menu>li.current-menu-ancestor>a,
.apl .main-nav .menu>li:hover>a{font-weight:var(--apl-halbfett)}
/* Breite reservieren, damit der Gewichtswechsel beim Hover nichts verschiebt */
.apl .main-nav .menu>li>a{display:inline-flex;flex-direction:column}

/* Desktop-Dropdowns behalten die Scrollleiste: ATLAS' pauschaler
   17px-Ausgleich verschiebt sonst Kopfzeile und Seiteninhalt. */
@media (min-width:1200px){
  body.apl.dropdown--isOpen{overflow-y:auto;padding-right:0}
  body.apl.dropdown--isOpen .main-header{padding-right:0}
}

.apl .main-nav .mega-menu-wrapper{
  background:#fff;border-radius:0 0 var(--apl-radius) var(--apl-radius);
  box-shadow:0 30px 60px -30px rgba(30,40,40,.28);border-top:1px solid var(--apl-linie-zart);
}
.apl .main-nav .sub-menu-heading{font-size:12px;font-weight:var(--apl-halbfett);letter-spacing:.16em;color:var(--apl-graphit-62)}
.apl .main-nav .sub-menu a,.apl .main-nav .sub-menu__icon .menu-item__title{font-size:15.5px;font-weight:var(--apl-halbfett);color:var(--apl-graphit)}
.apl .main-nav .sub-menu a:hover,.apl .main-nav .sub-menu__icon .menu-item:hover .menu-item__title{color:var(--apl-graphit)}
.apl .main-nav .sub-menu__icon .menu-item__paragraph{font-size:14px;line-height:1.5;font-weight:var(--apl-leicht);color:var(--apl-graphit-72)}
.apl .main-nav .sub-menu li.current-menu-item a,.apl .main-nav .sub-menu li.current_page_item a{color:var(--apl-graphit);background:var(--apl-nebel);border-radius:8px}
.apl .main-nav .bgcolor .mega-menu-wrapper__container .sub-menu-wrapper:last-child,
.apl .main-nav .bgcolor .mega-menu-wrapper__container .sub-menu-wrapper:last-child::after{background:var(--apl-verlauf);border-radius:var(--apl-radius-klein)}

.apl .main-header-button-link{min-height:42px;padding:0 22px;font-size:14.5px}
/* Mobil, Menü offen: Button an den unteren Rand statt über Suche und Sprachschalter */
/* backdrop-filter würde den Header zum Bezugsrahmen für position:fixed machen – mobil deshalb ohne Glaseffekt */
@media (max-width:991px){ .apl .main-header,.apl .main-header.fixed,.apl .main-header__transparent{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff !important} .apl .main-header-button-mobile{top:auto !important;bottom:24px !important} .apl .main-header-button-mobile .main-header-button-link{min-height:52px;padding:0 30px;font-size:16px;box-shadow:0 12px 30px -10px rgba(30,40,40,.45)} }
.apl .lang-toggle__label{font-size:12px;font-weight:var(--apl-halbfett);letter-spacing:.08em;color:var(--apl-graphit-62) !important}
.apl .lang-toggle__label--active{color:var(--apl-graphit) !important}
.apl .lang-toggle__track,.apl .main-header__transparent:not(.fixed) .lang-toggle__track{background:var(--apl-see)}
.apl .lang-toggle__knob,.apl .main-header__transparent:not(.fixed) .lang-toggle__knob{background:var(--apl-graphit)}
/* Hover/Fokus in HELL statt ATLAS-Blau mit weißem Knopf: Schiene eine Stufe dunkler, Knopf bleibt graphit */
.apl .lang-toggle__switch:hover .lang-toggle__track,.apl .lang-toggle__switch:focus-visible .lang-toggle__track{background:#96C8D2}
.apl .lang-toggle__switch:hover .lang-toggle__knob,.apl .lang-toggle__switch:focus-visible .lang-toggle__knob{background:var(--apl-graphit)}
.apl .lang-toggle__switch:focus-visible{outline:2px solid var(--apl-graphit);outline-offset:3px;border-radius:12px}
.apl .lang-toggle__label:hover,.apl .lang-toggle__label:focus-visible{color:var(--apl-graphit) !important}
.apl .main-header-search-link{filter:brightness(0) saturate(100%) invert(12%) sepia(9%) saturate(1200%) hue-rotate(131deg)}
.apl #hamburger-trigger span{height:2px;border-radius:2px;background:var(--apl-graphit)}
.apl .main-header__search{background:var(--apl-verlauf)}
.apl .main-header__search input:not([type="submit"]){border-radius:var(--apl-pill);box-shadow:var(--apl-schatten);font-size:16px}

/* ------------------------------------------- 5 Heroes (Foto-Fade) */
/* Prinzip aus dem Social-System: Verlauf als Bühne, Foto blendet weich aus,
   Text steht nie auf Bilddetails und ist graphit statt weiß. */
.apl .heroalt-image__wrapper,
.apl .featured-title,
.apl .block-hero,
.apl .article-header,
.apl .blog-header{background:var(--apl-buehne) !important;position:relative;overflow:hidden;isolation:isolate}

.apl .heroalt-image__wrapper{min-height:0 !important}
.apl .heroalt-image__bg{inset:0 0 0 auto !important;left:auto !important;width:62%;z-index:-1;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.5) 34%,#000 70%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.5) 34%,#000 70%);}
.apl .heroalt-image__bg::before{display:none}
.apl .heroalt-image__bg img,.apl .heroalt-image__bg video{width:100%;height:100%;object-fit:cover}
/* html body …: muss seitenbezogene Snippets (body.page-id-796 … !important) überstimmen */
html body.apl .heroalt-image__content-wrapper{height:auto !important}
.apl .container.heroalt-image__content-container{height:auto !important;padding-top:clamp(190px,24vh,260px) !important;padding-bottom:clamp(90px,14vh,150px) !important}
.apl .block-heroalt:has(.block-heroalt__suffix) .container.heroalt-image__content-container{padding-bottom:clamp(150px,22vh,210px) !important}
.apl .heroalt-image__content{color:var(--apl-graphit);max-width:760px;padding:0}
.apl .heroalt-image__content :is(h1,h2){color:var(--apl-graphit);font-size:clamp(38px,5.2vw,68px);line-height:1.1;letter-spacing:-.022em;font-weight:var(--apl-leicht);margin-bottom:22px}
.apl .heroalt-image__content :is(h1,h2) :is(strong,b){font-weight:var(--apl-halbfett)}
/* Alt-Heroes ohne Auszeichnung: erste Zeile halbfett, Rest leicht – ergibt den Schnittwechsel von selbst */
.apl .heroalt-image__content :is(h1,h2):not(:has(strong,b))::first-line{font-weight:var(--apl-halbfett)}
.apl .heroalt-image__content p{font-size:clamp(18px,1.6vw,22px);line-height:1.55;color:var(--apl-graphit);max-width:620px}
.apl .heroalt-image__buttons{margin-top:34px;gap:14px}
@media (max-width:991px){
  .apl .heroalt-image__bg{width:100%;height:46%;inset:0 0 auto 0 !important;-webkit-mask-image:linear-gradient(180deg,#000 30%,transparent 100%);mask-image:linear-gradient(180deg,#000 30%,transparent 100%)}
  .apl .container.heroalt-image__content-container{padding-top:230px !important;padding-bottom:64px !important;margin-top:0 !important;margin-bottom:0 !important}
  .apl .block-heroalt:has(.block-heroalt__suffix) .container.heroalt-image__content-container{padding-bottom:96px !important}
  .apl .heroalt-image__wrapper{overflow:visible}
  .apl .block-heroalt__suffix-container{margin-top:-48px !important}
}
.apl .block-heroalt__suffix-container{border-radius:var(--apl-radius);box-shadow:var(--apl-schatten);border:1px solid var(--apl-linie-zart)}
.apl .block-heroalt__suffix-title{font-size:13px;font-weight:var(--apl-halbfett);letter-spacing:.16em;text-transform:uppercase !important;color:var(--apl-graphit-62)}

/* Titelbühne der Inhaltsseiten/Artikel (custom/featured-title) */
.apl .featured-title{min-height:clamp(300px,38vw,460px)}
.apl .featured-title__bg{left:auto !important;right:0;width:66%;z-index:-1;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 62%);mask-image:linear-gradient(90deg,transparent 0%,#000 62%)}
.apl .featured-title__bg::after{display:none}
.apl .featured-title__body,.apl .featured-title__body :is(h1,h2,p){color:var(--apl-graphit) !important}
.apl .featured-title__body .has-text-light-color{color:var(--apl-graphit) !important}
@media (max-width:767px){ .apl .featured-title__bg{width:100%;-webkit-mask-image:linear-gradient(180deg,#000,transparent 85%);mask-image:linear-gradient(180deg,#000,transparent 85%)} }

/* ------------------------- 6 Sektionen, Karten, ATLAS-Blöcke */
.apl .container{max-width:min(var(--apl-breite),100% - 40px);padding-left:0;padding-right:0}
.apl .container.container--full{max-width:100%}
/* dekorative Alt-Hintergründe (SVG-Wolken) weichen dem ruhigen Hellsystem */
.apl .wp-block-custom-container[style*="background-image"][style*=".svg"]{background-image:var(--apl-verlauf-zart) !important;background-size:cover !important}

.apl .block-card,
.apl .single-reference__wrapper,
.apl .block-teaser__item,
.apl .block-statistics__item,
.apl .member,
.apl .apl-karte{
  background:#fff;border:1px solid var(--apl-linie-zart);border-radius:var(--apl-radius);
  box-shadow:var(--apl-schatten);transition:transform var(--apl-tempo),box-shadow var(--apl-tempo);
}
.apl .block-card:hover,.apl .single-reference__wrapper:hover,.apl .apl-karte:hover{transform:translateY(-3px);box-shadow:var(--apl-schatten-hover)}
.apl .block-card__subtitle :is(h2,h3,h4,h5,h6),.apl .block-card__title :is(h2,h3,h4,h5,h6){font-size:18px;font-weight:var(--apl-halbfett);letter-spacing:0}
.apl .block-card__content{font-size:15px;line-height:1.6;color:var(--apl-graphit)}
.apl a.block-card__link:not(.wp-block-button__link),.apl a.single-reference-content__link:not(.wp-block-button__link){font-weight:var(--apl-halbfett);color:var(--apl-graphit);box-shadow:inset 0 -1.5px 0 var(--apl-blau)}
.apl :is(.block-card__link,.single-reference-content__link) .wp-block-button__link,.apl .wp-block-button__link:is(.block-card__link,.single-reference-content__link){box-shadow:none}

/* ATLAS-Sonderform (große Ecke unten links) → einheitlicher, ruhiger Radius */
.apl .block-teaser__img-wrapper,.apl .block-reference .single-reference-image__content,.apl .block-statistics__container,
.apl .single-ccp__img,.apl .single-event__img,.apl .single-speaker__img,.apl .single-slide__bg,
.apl .wp-block-media-text .wp-block-media-text__media,
.apl :is(.block-teaser__img-wrapper,.single-reference-image__content,.single-ccp__img,.single-event__img,.single-speaker__img) img{
  border-radius:var(--apl-radius) !important;
}
.apl .block-teaser.acf-block{box-shadow:none}
.apl .block-teaser__item,.apl .block-teaser__wrapper{border-radius:var(--apl-radius);overflow:hidden}
.apl .block-teaser__img-wrapper,.apl .block-teaser__img-wrapper img{border-radius:var(--apl-radius) var(--apl-radius) 0 0 !important}
.apl .slick-prev,.apl .slick-next{filter:grayscale(1) brightness(.35)}
.apl .single-reference-content__editor{font-style:normal}
.apl .single-reference-content__editor em{font-style:normal;font-size:15px;color:var(--apl-graphit-72)}

/* Bildwelt (Übergang): nur echte Foto-Plätze, keine Logos, Icons, Screenshots */
.apl :is(.block-teaser__img-wrapper,.single-slide__bg,.single-reference-image__content,.single-news__img,.member__image,.wp-block-media-text__media) img:not([src$=".svg"]):not([src*="logo" i]):not([src*="screenshot" i]):not([src*="Screen_" i]):not([src*="AI-" i]):not([src*="Tagger" i]):not([src*="bildwelt" i]){filter:var(--apl-foto-filter)}
/* Media-Text mit „Bild füllt Spalte": das Foto liegt als Hintergrund auf der Figur */
.apl .wp-block-media-text.is-image-fill > .wp-block-media-text__media:not([style*="Screen_" i]):not([style*="AI-" i]):not([style*="Tagger" i]):not([style*="bildwelt" i]){filter:var(--apl-foto-filter);border-radius:var(--apl-radius);overflow:hidden}

/* Akkordeon */
.apl .wp-block-custom-accordion-single,.apl .accordion__item{border:0;border-bottom:1px solid var(--apl-linie);border-radius:0;background:none;box-shadow:none}
.apl .accordion__title,.apl .accordion__header,.apl .accordion__title :is(h2,h3,h4,h5,span),.apl .accordion__header :is(h2,h3,h4,h5,span){font-weight:var(--apl-halbfett);font-size:16.5px !important;line-height:1.4;color:var(--apl-graphit);background:none}

/* Zahlen/Statistik: die große Zahl aus T5 */
.apl .block-statistics__number,.apl .statistics__number,.apl .apl-zahl{font-size:clamp(56px,7vw,104px);line-height:1;font-weight:var(--apl-leicht);letter-spacing:-.03em;color:var(--apl-graphit)}

/* Zitate/Testimonials */
.apl .block-testimonials__content,.apl .testimonial__text{font-size:clamp(19px,1.8vw,24px);line-height:1.55;font-weight:var(--apl-leicht);font-style:normal}
.apl .block-testimonials__author,.apl .testimonial__author{font-weight:var(--apl-halbfett)}

/* Slider-Punkte & Pfeile */
.apl .slick-dots li button::before{color:var(--apl-graphit)}
.apl .slick-dots li button{background:var(--apl-see);border-radius:50%}
.apl .slick-dots li.slick-active button{background:var(--apl-graphit)}

/* Slider-Hero (halbe Breite, Produktseiten): helle Fläche statt Weiß */
.apl .single-slide--half-width{background:var(--apl-verlauf-zart)}

/* CTA-Band → helle Bühne statt Farbfläche */
.apl .block-cta,.apl .block-cta__wrapper{background:var(--apl-buehne) !important;color:var(--apl-graphit);border-radius:var(--apl-radius)}
.apl .block-cta :is(h2,h3,p){color:var(--apl-graphit) !important}

/* Shopware-Banner der Startseite (kommt inline aus der ATLAS functions.php) */
.apl .sw-home-banner-v2-wrap{background:#fff}
.apl .sw-home-banner-v2{background:var(--apl-buehne);border-radius:28px;border:1px solid var(--apl-linie-zart)}
.apl .sw-home-banner-v2::before,.apl .sw-home-banner-v2::after{display:none}
.apl .sw-home-banner-v2__eyebrow{color:var(--apl-graphit-62);font-size:13px;letter-spacing:.16em}
.apl .sw-home-banner-v2__title{color:var(--apl-graphit);font-weight:var(--apl-leicht);font-size:clamp(26px,2.6vw,36px)}
.apl .sw-home-banner-v2__title span{color:var(--apl-graphit);font-weight:var(--apl-halbfett)}
.apl .sw-home-banner-v2__desc,.apl .sw-home-banner-v2__role,.apl .sw-home-banner-v2__quote{color:var(--apl-graphit-72);font-style:normal}
.apl .sw-home-banner-v2__name{color:var(--apl-graphit);font-weight:var(--apl-halbfett)}
.apl .sw-home-banner-v2__tag{background:rgba(255,255,255,.6);border-color:var(--apl-linie);color:var(--apl-graphit);font-weight:var(--apl-leicht)}
.apl .sw-home-banner-v2__cta{background:var(--apl-graphit);border-radius:var(--apl-pill);color:#fff !important}
.apl .sw-home-banner-v2__cta:hover{background:#2c3a3a}
.apl .sw-home-banner-v2__divider{background:var(--apl-linie)}
.apl .sw-home-banner-v2__avatar{border-color:#fff}

/* ------------------------------------ 7 Blog: Übersicht & Artikel */
.apl .blog-header{padding-top:clamp(170px,20vh,230px);padding-bottom:56px}
.apl .blog-header__filters{display:flex;flex-wrap:wrap;gap:10px}
.apl .blog-header__filter{
  display:inline-flex;align-items:center;min-height:40px;padding:0 20px;border-radius:var(--apl-pill);
  border:1px solid var(--apl-linie);background:rgba(255,255,255,.55);color:var(--apl-graphit);
  font-size:14.5px;font-weight:var(--apl-leicht);text-transform:none;letter-spacing:0;text-decoration:none;
}
.apl .blog-header__filter:hover{border-color:var(--apl-graphit);background:#fff}
.apl .blog-header__filter--active{background:var(--apl-graphit);border-color:var(--apl-graphit);color:#fff !important;font-weight:var(--apl-halbfett)}

.apl .single-news__wrapper{
  height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid var(--apl-linie-zart);
  border-radius:var(--apl-radius);box-shadow:var(--apl-schatten);overflow:hidden;
  transition:transform var(--apl-tempo),box-shadow var(--apl-tempo);
}
.apl .single-news__wrapper:hover{transform:translateY(-3px);box-shadow:var(--apl-schatten-hover)}
.apl .single-news__img{margin:0;overflow:hidden;aspect-ratio:16/10;background:var(--apl-dunst)}
.apl .single-news__img img{width:100%;height:100%;object-fit:cover;border-radius:0 !important;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.apl .single-news__wrapper:hover .single-news__img img{transform:scale(1.035)}
.apl .single-news__content{display:flex;flex-direction:column;gap:10px;padding:26px 28px 30px;flex:1}
.apl .single-news__category{
  background:rgba(255,255,255,.92);border:0;border-radius:var(--apl-pill);padding:6px 14px;
  font-size:11.5px;font-weight:var(--apl-halbfett);letter-spacing:.14em;color:var(--apl-graphit);
}
.apl .single-news__date{font-size:13px;letter-spacing:.04em;color:var(--apl-graphit-62)}
.apl .single-news__title{font-size:21px;line-height:1.32;font-weight:var(--apl-halbfett);text-transform:none;letter-spacing:-.01em;color:var(--apl-graphit)}
.apl .single-news__desc{font-size:15.5px;line-height:1.6;color:var(--apl-graphit-72)}
.apl .single-news .wp-block-button{margin-top:auto;padding-top:8px}
.apl .single-news .wp-block-button__link{min-height:0;padding:0 0 4px;border:0 !important;border-radius:0 !important;background:none !important;color:var(--apl-graphit) !important;box-shadow:inset 0 -1.5px 0 var(--apl-blau);font-size:15px}
.apl .single-news .wp-block-button__link:hover{transform:none;box-shadow:inset 0 -2.5px 0 var(--apl-blau)}

.apl .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border-radius:var(--apl-pill);
  border:1px solid var(--apl-linie);color:var(--apl-graphit);font-size:15px;text-decoration:none;background:#fff;
}
.apl .page-numbers.current,.apl .page-numbers:hover{background:var(--apl-graphit);border-color:var(--apl-graphit);color:#fff}

/* Artikel: ruhige Lesespalte */
.apl .page-content--article .wp-block-custom-container > .container,
.apl .page-content--article .article-body,
.apl .apl-lesespalte{max-width:min(var(--apl-lesebreite),100% - 40px)}
.apl .page-content--article{font-size:18.5px;line-height:1.75}
.apl .page-content--article :is(h2){margin-top:1.8em}
.apl .page-content--article :is(h3){margin-top:1.5em}
.apl .page-content--article .wp-block-post-date{font-size:13px !important;font-weight:var(--apl-halbfett);letter-spacing:.16em;text-transform:uppercase;color:var(--apl-graphit-62) !important}
.apl .article-header__inner{text-align:left;max-width:min(var(--apl-lesebreite),100% - 40px)}
.apl .article-header{padding-top:clamp(170px,22vh,240px) !important;padding-bottom:64px !important}

/* ------------------------------------------------------ 8 Formulare */
.apl :is(input[type="text"],input[type="email"],input[type="tel"],input[type="url"],input[type="number"],input[type="password"],input[type="search"],select,textarea){
  font-family:inherit;font-size:16px;font-weight:var(--apl-leicht);color:var(--apl-graphit);
  background:#fff;border:1px solid var(--apl-linie) !important;border-radius:var(--apl-radius-klein) !important;
  padding:14px 16px !important;box-shadow:none;transition:border-color var(--apl-tempo),box-shadow var(--apl-tempo);
}
.apl :is(input,select,textarea):focus{border-color:var(--apl-graphit) !important;box-shadow:0 0 0 4px rgba(150,200,210,.45);outline:0}
.apl label,.apl .gfield_label{font-size:14px;font-weight:var(--apl-halbfett);color:var(--apl-graphit)}
.apl ::placeholder{color:var(--apl-graphit-62);opacity:1}

/* -------------------------------------------------------- 9 Footer */
/* Hell wie die Visuals: Verlauf, feine Linie, Claim rechts. Keine dunkle Fläche. */
.apl .main-footer{background:var(--apl-buehne) !important;color:var(--apl-graphit);border-top:1px solid var(--apl-linie-zart)}
.apl .main-footer__background{display:none}
.apl .main-footer__top{padding-top:72px;padding-bottom:40px}
.apl .main-footer__heading{font-size:12.5px;font-weight:var(--apl-halbfett);letter-spacing:.16em;text-transform:uppercase !important;color:var(--apl-graphit-62);margin-bottom:18px}
.apl .main-footer__menu .menu{list-style:none;margin:0 0 32px;padding:0}
.apl .main-footer__menu li{padding:0;margin:0 0 9px}
.apl .main-footer__menu li::before{display:none}
.apl .main-footer__top a{font-size:15.5px;font-weight:var(--apl-leicht);color:var(--apl-graphit);text-decoration:none;background-image:linear-gradient(var(--apl-graphit),var(--apl-graphit));background-size:0 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size var(--apl-tempo)}
.apl .main-footer__top a:hover{background-size:100% 1px}
.apl .main-footer__bottom{border-top:1px solid var(--apl-linie);padding-top:26px;padding-bottom:30px;color:var(--apl-graphit)}
.apl .main-footer__quick-links,.apl .main-footer__copy{font-size:14px;font-weight:var(--apl-leicht)}
.apl .main-footer__quick-links a:hover{color:var(--apl-graphit);text-decoration:underline;text-underline-offset:4px}
.apl .social-links__icon svg,.apl .social-links__icon img{filter:grayscale(1) brightness(.3)}
.apl .social-links__text{font-weight:var(--apl-leicht)}

/* ---------------- 10 Schlanke Seiten (Kern-Blöcke + Vorlagen) */
/* Seiten-Template „apollon hell – schlanke Seite": Breiten über die normale Block-Ausrichtung. */
.apl .apl-seite > :where(:not(.alignfull):not(.alignwide)){max-width:min(var(--apl-lesebreite),100% - 40px);margin-left:auto;margin-right:auto}
.apl .apl-seite > .alignwide{max-width:min(var(--apl-breite),100% - 40px);margin-left:auto;margin-right:auto}
.apl .apl-seite > .alignfull{max-width:none;width:100%;margin-left:0;margin-right:0}
.apl .apl-seite > :first-child:not(.apl-buehne):not(.is-style-apl-buehne){margin-top:190px}

/* Flächen. Der Innenabstand links/rechts bildet den Container – Inhalte bleiben linksbündig. */
.apl .apl-buehne,.apl .is-style-apl-buehne{background:var(--apl-buehne);position:relative;isolation:isolate;overflow:hidden}
.apl .apl-flaeche-nebel,.apl .is-style-apl-nebel{background:var(--apl-nebel)}
.apl .apl-flaeche-verlauf{background:var(--apl-verlauf-zart)}
.apl .apl-sektion,.apl .apl-buehne,.apl .is-style-apl-buehne,.apl .is-style-apl-nebel{
  padding:clamp(48px,5.4vw,80px) max(20px,calc((100% - var(--apl-breite)) / 2));margin-top:0;margin-bottom:0;
}
.apl .apl-buehne.apl-buehne--kopf{--apl-kopf-oben:clamp(100px,13vh,128px);--apl-kopf-unten:clamp(56px,8vh,100px);padding-top:var(--apl-kopf-oben);padding-bottom:var(--apl-kopf-unten)}
.apl .apl-sektion > *,.apl .apl-buehne > *{margin-left:0;margin-right:0}
.apl .apl-schmal{max-width:var(--apl-lesebreite);margin-left:auto !important;margin-right:auto !important}
.apl .apl-schmal.apl-links,.apl .apl-links{margin-left:0 !important}
.apl .apl-sektion > .wp-block-columns,.apl .apl-buehne > .wp-block-columns{margin-top:48px;gap:24px}
.apl .apl-sektion .alignwide,.apl .apl-buehne .alignwide{max-width:none;width:100%}

.apl .apl-buehne h1{font-weight:var(--apl-leicht);font-size:clamp(30px,3.4vw,46px);line-height:1.1;letter-spacing:-.024em;max-width:20ch;margin-bottom:26px}
.apl .apl-buehne h1 strong{font-weight:var(--apl-halbfett)}
.apl .apl-buehne--kopf .is-style-apl-lead{max-width:640px;margin-bottom:36px}

/* Foto-Fade für schlanke Seiten: Bild rechts, hell getönt, blendet in den Verlauf aus */
.apl .apl-foto-fade{position:absolute;inset:0 0 0 auto;width:58%;max-width:none !important;margin:0 !important;z-index:-1;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 65%);mask-image:linear-gradient(90deg,transparent,#000 65%)}
.apl .apl-foto-fade img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;border-radius:0 !important}
@media (max-width:781px){ .apl .apl-foto-fade{width:100%;height:42%;inset:0 0 auto 0;-webkit-mask-image:linear-gradient(180deg,#000 25%,transparent);mask-image:linear-gradient(180deg,#000 25%,transparent)} }
/* Ohne Schleier kollidieren farbige Kopffotos mobil mit Breadcrumb und H1: dort nur die Bühne zeigen */
@media (max-width:781px){ .apl .apl-foto-fade,.apl .featured-title__bg,.apl .heroalt-image__bg{display:none !important} }

.apl .apl-karte,.apl .is-style-apl-karte{
  background:#fff;border:1px solid var(--apl-linie-zart);border-radius:var(--apl-radius);box-shadow:var(--apl-schatten);
  padding:32px;height:100%;transition:transform var(--apl-tempo),box-shadow var(--apl-tempo);
}
.apl .is-style-apl-karte:hover{transform:translateY(-3px);box-shadow:var(--apl-schatten-hover)}
.apl :is(.apl-karte,.is-style-apl-karte) > :last-child{margin-bottom:0}
.apl :is(.apl-karte,.is-style-apl-karte,.apl-schritt) h3{font-size:20px;margin-bottom:10px}
.apl :is(.apl-karte,.is-style-apl-karte,.apl-schritt) p:not(.apl-nummer){font-size:16px;line-height:1.6;color:var(--apl-graphit-72)}
.apl .apl-schritt{border-top:1px solid var(--apl-linie);padding-top:22px}
.apl p.apl-nummer{font-size:13px;font-weight:var(--apl-halbfett);letter-spacing:.16em;text-transform:uppercase;color:var(--apl-blau);margin-bottom:14px}
.apl p.apl-zahl{margin-bottom:10px}
.apl .apl-fusszeile{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--apl-linie);padding-top:26px;margin-top:56px !important}
.apl p.apl-claim{font-size:15px;color:var(--apl-graphit-72);margin:0}
.apl .apl-sektion > p.apl-claim{margin-top:40px}
.apl .apl-zitat{border-left:3px solid var(--apl-blau);padding-left:32px}
.apl .apl-zitat p:first-child{font-size:clamp(22px,2.4vw,32px);line-height:1.45;font-weight:var(--apl-leicht)}
.apl .wp-block-media-text__media img,.apl .wp-block-media-text__media video{border-radius:var(--apl-radius) !important}
.apl .wp-block-media-text{gap:clamp(24px,5vw,72px)}
.apl .wp-block-media-text .wp-block-media-text__content{padding:0}

.apl details.wp-block-details{border-bottom:1px solid var(--apl-linie);padding:22px 0;margin:0}
.apl details.wp-block-details summary{font-weight:var(--apl-halbfett);font-size:18px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px}
.apl details.wp-block-details summary::-webkit-details-marker{display:none}
.apl details.wp-block-details summary::after{content:"+";font-weight:var(--apl-leicht);font-size:26px;line-height:1;transition:transform var(--apl-tempo)}
.apl details.wp-block-details[open] summary::after{transform:rotate(45deg)}
.apl details.wp-block-details > :not(summary){margin-top:14px;color:var(--apl-graphit-72)}

/* Aus ATLAS überführte Karten, Galerie und Fragen (tools/atlas-bausteine-nativ.php): Optik wie die bisherigen ATLAS-Karten */
.apl .apl-karte-baustein{padding:28px 28px 30px;display:flex;flex-direction:column;align-items:flex-start}
.apl .apl-karte-baustein > *{margin-top:0;margin-bottom:0}
.apl .apl-karte-baustein > .apl-icon{margin:0 0 22px}
.apl .apl-karte-baustein > .apl-icon img{width:auto;height:48px;max-width:96px;object-fit:contain}
.apl .apl-karte-baustein > .apl-icon img:not([src$=".svg"]){width:64px;height:64px}
.apl .apl-karte-baustein > .apl-karte-bild{margin:-28px -28px 22px;width:calc(100% + 56px)}
.apl .apl-karte-baustein > .apl-karte-bild img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--apl-radius) var(--apl-radius) 0 0 !important}
.apl .apl-karte-baustein > p.is-style-apl-kicker{font-size:13px;font-weight:var(--apl-leicht);letter-spacing:.02em;text-transform:none;color:var(--apl-graphit-62);margin-bottom:8px}
.apl .apl-karte-baustein > h3{font-size:18px;margin-bottom:8px}
.apl .apl-karte-baustein > p:not(.is-style-apl-kicker){font-size:15px;line-height:1.6;color:var(--apl-graphit)}
.apl .apl-karte-baustein > p + p{margin-top:12px}
.apl .apl-karte-baustein > .wp-block-buttons{margin-top:auto;padding-top:20px}
.apl .wp-block-column > .apl-karte-baustein{height:100%}
.apl .wp-block-gallery.apl-galerie{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
@media (max-width:781px){ .apl .wp-block-gallery.apl-galerie{grid-template-columns:1fr} }
.apl .wp-block-gallery.apl-galerie.has-nested-images figure.wp-block-image:not(#individual-image){width:auto !important;margin:0 !important;justify-content:center}
.apl .wp-block-gallery.apl-galerie.has-nested-images figure.wp-block-image img{width:100% !important;height:auto !important;flex:none}
.apl .wp-block-gallery.apl-galerie .wp-block-image{background:var(--apl-verlauf-zart);border:1px solid var(--apl-linie-zart);border-radius:var(--apl-radius);padding:clamp(16px,2.5vw,32px)}
.apl .wp-block-gallery.apl-galerie .wp-block-image img{border-radius:0 !important;object-fit:contain}
.apl .wp-block-gallery.apl-galerie .wp-block-image{flex-direction:column}
.apl .wp-block-gallery.apl-galerie figcaption.wp-element-caption{position:static;background:none;color:var(--apl-graphit-72);font-size:14px;text-align:left;padding:14px 0 0;margin:0;max-height:none;overflow:visible}
.apl .apl-fragen{border-top:1px solid var(--apl-linie)}
.apl .apl-zahlen > h3{font-size:clamp(19px,1.45vw,21px);margin-bottom:18px}
.apl .apl-zahlen .wp-block-columns{gap:clamp(24px,4vw,56px);border-top:1px solid var(--apl-linie);padding-top:22px}
.apl .apl-referenzen{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}
.apl .apl-referenzen > .apl-karte-baustein{margin:0 !important}
.apl .apl-karte-baustein > .apl-karte-logo{margin:0 0 20px}
.apl .apl-karte-baustein > .apl-karte-logo img{width:auto;height:40px;max-width:180px;object-fit:contain;object-position:left}
.apl .apl-merkmal-spalten{gap:clamp(32px,5vw,72px)}
.apl .apl-merkmal-spalten h3{font-size:clamp(19px,1.45vw,21px);margin-bottom:12px}
.apl .apl-merkmal{display:flex;align-items:center;gap:18px;padding:12px 0;border-top:1px solid var(--apl-linie-zart);margin:0 !important}
.apl .apl-merkmal > *{margin:0 !important}
.apl .apl-merkmal-spalten h3{margin-bottom:16px !important}
.apl .apl-sektion.apl-ohne-unten:has(> .apl-merkmal-spalten){padding-bottom:clamp(48px,6vw,80px) !important}
.apl .apl-merkmal > .apl-icon img{width:40px;height:40px;object-fit:contain}
.apl .apl-merkmal > p{font-size:16px;line-height:1.5}
.apl .apl-fragekarte > h3::before{content:"";display:block;width:32px;height:2px;border-radius:2px;background:var(--apl-blau);margin:4px 0 20px}
.apl .apl-fragekarte > h3{font-size:clamp(19px,1.45vw,21px);line-height:1.25;letter-spacing:-.01em;margin-bottom:12px}

/* ------------------------- 11 Inselseiten mit eigenem CSS (Preise) */
/* Die Preisseite bringt ein eigenes <style> mit Farbvariablen mit – hier auf das helle System umgelenkt. */
.apl .omn-pricing-page{--apollon-dark:#1E2828;--apollon-primary:#1E2828;--essential-color:#1E2828;--professional-color:#1E2828;--apollon-gradient-start:#1E2828;--apollon-gradient-end:#1E2828;--apollon-accent-light:#F3F9FA}
.apl .omn-pricing-page .hero,.apl .omn-pricing-page .bottom-cta{background:var(--apl-buehne);color:var(--apl-graphit)}
.apl .omn-pricing-page .hero{padding-top:clamp(150px,20vh,210px);padding-bottom:110px}
.apl .omn-pricing-page :is(.hero,.bottom-cta) :is(h1,h2,p){color:var(--apl-graphit)}
.apl .omn-pricing-page .hero h1{font-weight:var(--apl-leicht);font-size:clamp(36px,4.6vw,60px)}
.apl .omn-pricing-page .hero h1 span{background:none;-webkit-text-fill-color:currentColor;color:var(--apl-graphit);font-weight:var(--apl-halbfett)}
.apl .omn-pricing-page :is(.cta-button,.btn-primary-cta){background:var(--apl-graphit);color:#fff;border-radius:var(--apl-pill);font-weight:var(--apl-halbfett)}
.apl .omn-pricing-page :is(.cta-essential,.cta-enterprise){background:transparent;color:var(--apl-graphit);border:1.5px solid var(--apl-graphit)}
.apl .omn-pricing-page :is(.cta-essential,.cta-enterprise):hover{background:var(--apl-graphit);color:#fff}
.apl .omn-pricing-page .package-card{border-radius:var(--apl-radius);box-shadow:var(--apl-schatten)}
.apl .omn-pricing-page .package-card.featured{border:1.5px solid var(--apl-graphit)}
.apl .omn-pricing-page .category-row td{background:var(--apl-dunst) !important;color:var(--apl-graphit) !important;font-weight:var(--apl-halbfett) !important;letter-spacing:.14em}
.apl .omn-pricing-page .info-banner-inner{background:var(--apl-nebel);border-color:var(--apl-linie-zart);border-radius:var(--apl-radius)}
.apl .omn-pricing-page .ai-badge{background:var(--apl-see);color:var(--apl-graphit)}

/* ------------- 12 Bedienbarkeit (Web Interface Guidelines, WCAG) */
html{scroll-padding-top:150px}
.apl :is(h1,h2,h3,h4,h5,h6,[id]){scroll-margin-top:150px}
.apl :is(a,button,summary,label,input,select,textarea,[role="button"]){touch-action:manipulation;-webkit-tap-highlight-color:rgba(150,200,210,.35)}
.apl :is(table,.apl-zahl,.omn-pricing-page){font-variant-numeric:tabular-nums}
.apl :is(p,li,h1,h2,h3,h4,td,th,.single-news__title){overflow-wrap:break-word}
.apl p,.apl li{text-wrap:pretty}

/* Skip-Link: erstes fokussierbares Element, nur bei Tastaturfokus sichtbar */
.apl-skip{position:fixed;left:16px;top:-80px;z-index:100000;padding:14px 22px;border-radius:999px;background:#1E2828;color:#fff !important;font:600 15px/1 "Open Sans",sans-serif;text-decoration:none;transition:top .2s}
.apl-skip:focus{top:16px;outline:3px solid #41AAE6;outline-offset:3px}
#apl-inhalt{display:block;height:0;outline:0}

/* Fokus sichtbar – ATLAS schaltet Outlines global ab */
.apl :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--apl-graphit) !important;outline-offset:3px;border-radius:4px}
.apl .wp-block-button__link:focus-visible,.apl .main-header-button-link:focus-visible,.apl .apl-button:focus-visible{outline-offset:4px;border-radius:var(--apl-pill)}

/* Mega-Menü öffnet in ATLAS nur bei Maus-Hover – mit Tastatur tabbt man sonst durch ~70 unsichtbare Links */
@media (min-width:992px){
  .apl .main-nav .menu>li:focus-within .mega-menu-wrapper{pointer-events:all;opacity:1}
  .apl .main-nav .menu>li:focus-within>a::before{opacity:1}
}

/* Suche/Menü sind jetzt echte Buttons – Browser-Standardoptik zurücksetzen */
.apl button#search-icon,.apl button#hamburger-trigger,.apl button#close-icon{appearance:none;-webkit-appearance:none;border:0;padding:0;margin:0;background-color:transparent;cursor:pointer;font:inherit;color:inherit}
.apl button#search-icon{display:block;width:40px;min-width:40px}
.apl button#hamburger-trigger{min-width:44px;min-height:44px}

/* Brotkrumen: liegen über dem oberen Freiraum der Bühne, direkt unter dem Header */
.apl .apl-brotkrumen{position:absolute;z-index:5;left:0;right:0;top:150px;padding:0 max(20px,calc((100% - var(--apl-breite)) / 2));pointer-events:none}
.apl .apl-brotkrumen ol{display:flex;flex-wrap:wrap;gap:4px 0;list-style:none;margin:0;padding:0;font-size:13px;line-height:1.4;color:var(--apl-graphit-62)}
.apl .apl-brotkrumen li{padding:0;margin:0;display:flex;align-items:center;pointer-events:auto}
.apl .apl-brotkrumen li::before{display:none}
.apl .apl-brotkrumen li + li::before{content:"›";display:inline;position:static;width:auto;height:auto;background:none;margin:0 9px;color:var(--apl-graphit-62)}
.apl .apl-brotkrumen a{color:var(--apl-graphit-72);text-decoration:none;padding:6px 0}
.apl .apl-brotkrumen a:hover{color:var(--apl-graphit);text-decoration:underline;text-underline-offset:4px}
.apl .apl-brotkrumen [aria-current]{color:var(--apl-graphit);font-weight:var(--apl-halbfett);max-width:46ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:991px){ .apl .apl-brotkrumen{top:132px} .apl .apl-brotkrumen li:not(:nth-last-child(-n+2)){display:none} .apl .apl-brotkrumen li:nth-last-child(2)::before{display:none} }

/* 404 und Suchfeld */
.apl .apl-suchfeld{display:flex;flex-wrap:wrap;gap:12px;max-width:620px;margin:0 0 34px}
.apl .apl-suchfeld input{flex:1 1 260px;min-height:52px;border-radius:var(--apl-pill) !important;padding:0 24px !important}
.apl .apl-wege{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
.apl .apl-wege li{padding:0;margin:0}.apl .apl-wege li::before{display:none}
.apl .apl-wege a{text-decoration:none !important;display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border-radius:var(--apl-pill);border:1px solid var(--apl-linie);background:rgba(255,255,255,.6);text-decoration:none;font-size:15px}
.apl .apl-wege a:hover{border-color:var(--apl-graphit);background:#fff}

/* Mindestgröße für Tippziele */
.apl .page-numbers,.apl .blog-header__filter,.apl .lang-toggle__label{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}

/* ---- 13 Umgebaute Seiten (Kernblöcke statt ATLAS-Container/-Spalten/-Abstände) */
.apl{--apl-textbreite:820px}
.apl .page-entry > .wp-block-group.alignfull{max-width:none;width:100%;margin-left:0;margin-right:0}
.apl .apl-ohne-oben{padding-top:0 !important}
.apl .apl-ohne-unten{padding-bottom:0 !important}
.apl .apl-voll{padding:0}
.apl .apl-innen{margin:0}
/* zwei schlichte Sektionen hintereinander: nur ein Abstand, nicht zwei */
.apl .apl-sektion:not(.apl-buehne):not([class*="apl-flaeche"]) + .apl-sektion:not(.apl-buehne):not([class*="apl-flaeche"]){padding-top:0}

/* Lesbare Zeilenlänge: Text läuft nicht über die volle Breite */
.apl .apl-sektion > :where(p,ul,ol,h1,h2,h3,h4,h5,h6,blockquote,.wp-block-quote,.wp-block-buttons,details,.wp-block-list),
.apl .apl-innen > :where(p,ul,ol,h2,h3,h4,h5,h6,blockquote,.wp-block-list){max-width:var(--apl-textbreite)}
.apl :is(.apl-sektion,.apl-innen,.apl-schmal) > :where(.has-text-align-center){margin-left:auto !important;margin-right:auto !important}
.apl .apl-sektion > .wp-block-buttons.is-content-justification-center,.apl .apl-sektion > .aligncenter{margin-left:auto !important;margin-right:auto !important}
.apl .apl-sektion > :where(.wp-block-columns,.wp-block-media-text,.wp-block-table,figure,.wp-block-group,.acf-block,.wp-block-embed){margin-top:40px;margin-bottom:40px}
.apl .apl-sektion > :first-child{margin-top:0}
.apl .apl-sektion > :last-child{margin-bottom:0}
.apl .apl-schmal > :last-child,.apl .apl-innen > :last-child,.apl .wp-block-column > :last-child{margin-bottom:0}

/* Spalten */
.apl .wp-block-columns{gap:clamp(24px,3vw,40px);margin-bottom:0}
.apl .apl-spalten-mittig{justify-content:center}
.apl .wp-block-column > .wp-block-image:first-child{margin-top:0}
/* umbrechendes Raster: beliebig viele Kacheln, 1 → 2 → n Spalten */
.apl .wp-block-columns.apl-raster{display:grid !important;grid-template-columns:1fr;gap:24px}
@media (min-width:640px){ .apl .wp-block-columns.apl-raster{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (min-width:1024px){
  .apl .wp-block-columns.apl-raster--3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .apl .wp-block-columns.apl-raster--4{grid-template-columns:repeat(4,minmax(0,1fr))}
  /* kleine Kacheln: Reihe füllt sich unabhängig von der Anzahl (5 Kacheln lassen keinen sechsten Platz frei) */
  .apl .wp-block-columns.apl-raster--6{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
}
.apl .apl-raster > .wp-block-column{min-width:0;flex-basis:auto !important}

/* Seitenkopf aus dem früheren Bild-Titelblock */
.apl .apl-buehne--kopf > :where(h1,p,.wp-block-post-date){position:relative;max-width:min(760px,62%)}
@media (max-width:781px){ .apl .apl-buehne--kopf > :where(h1,p,.wp-block-post-date){max-width:100%} }
.apl .page-entry > .apl-buehne--kopf h1{font-size:clamp(28px,2.8vw,40px);line-height:1.12;font-weight:var(--apl-halbfett);max-width:min(760px,62%);margin-bottom:20px}
.apl .page-entry > .apl-buehne--kopf h1:has(strong){font-weight:var(--apl-leicht)}
@media (max-width:781px){ .apl .page-entry > .apl-buehne--kopf h1{max-width:100%} }
.apl .apl-buehne--kopf .apl-datum,.apl .apl-buehne--kopf .wp-block-post-date{font-size:14px;letter-spacing:.04em;color:var(--apl-graphit-72);margin:0}
.apl .apl-buehne--bildband{min-height:clamp(260px,30vw,380px);padding-bottom:0}
.apl .apl-buehne--bildband .apl-foto-fade{width:72%}
/* Artikel: Lesespalte direkt unter dem Kopf */
.apl .page-content--article .page-entry > .apl-sektion{padding-left:max(20px,calc((100% - var(--apl-lesebreite)) / 2));padding-right:max(20px,calc((100% - var(--apl-lesebreite)) / 2))}
.apl .page-content--article .page-entry > .apl-buehne--kopf + .apl-sektion{padding-top:clamp(40px,5vw,72px)}

/* ---- 14 Bildwelt „Licht & Material" */
/* Produkt zuerst: echter Screenshot als ganzes Objekt auf der Bühne – wird NIE ausgeblendet */
/* Ab 992 px: zwei Spalten im Inhaltsraster. Text links, Objekt rechts – beide rechnen gegen dieselbe Breite,
   deshalb kann das Objekt den Text bei keiner Fensterbreite überlagern. */
@media (min-width:992px){
  .apl .apl-buehne--objekt{display:grid;grid-template-columns:minmax(0,11fr) minmax(0,13fr);column-gap:clamp(32px,4vw,72px);align-content:center}
  /* der Kopf ist mindestens so hoch wie das Objekt – auch bei kurzem Text wird das Motiv nicht angeschnitten */
  .apl .apl-buehne--objekt{min-height:calc(var(--apl-kopf-oben) + var(--apl-kopf-unten) + min(450px,29vw))}
  .apl .apl-buehne--objekt > *{grid-column:1;max-width:none !important}
  .apl .apl-buehne--objekt > .apl-objekt{grid-column:2 / 3;position:absolute;z-index:0;top:var(--apl-kopf-oben);bottom:var(--apl-kopf-unten);left:0;right:max(-140px,calc((var(--apl-breite) - 100vw) / 2 + 20px));width:auto;margin:0;display:flex;align-items:center}
}
/* Standard: freigestelltes Objekt (PNG mit Transparenz, z. B. Geräte-Mockup) – kein Rahmen, weicher Bodenschatten */
.apl .apl-objekt img{display:block;width:100%;height:auto;border-radius:0 !important;border:0;box-shadow:none;filter:drop-shadow(0 30px 40px rgba(30,40,40,.22))}
/* Variante für schematische Motive (SVG mit eigenen Schatten): kein zusätzlicher Bodenschatten */
.apl .apl-objekt--schema img{filter:none;height:auto}
/* Variante für flache Screenshots: zusätzliche Klasse „apl-objekt--rahmen" am Bildblock */
.apl .apl-objekt--rahmen img{border-radius:14px !important;border:1px solid rgba(30,40,40,.10);box-shadow:0 2px 4px rgba(30,40,40,.06),0 40px 80px -30px rgba(30,40,40,.35);filter:none}
.apl .apl-buehne--objekt .apl-objekt--rahmen{transform:perspective(1600px) rotateY(-7deg) rotateX(2deg);transform-origin:right center}
@media (max-width:991px){
  .apl .apl-buehne--objekt{display:flex;flex-direction:column}
  .apl .apl-buehne--objekt > :where(h1,p,.wp-block-buttons){max-width:100% !important}
  .apl .apl-buehne--objekt .apl-objekt{position:static;order:9;width:100%;transform:none;margin-top:40px}
}
/* Motive der Bildwelt (bereits im Duoton) und Linien-Icons */
.apl .apl-bildwelt img{border-radius:var(--apl-radius) !important;filter:none;aspect-ratio:1/1;object-fit:cover}
.apl .wp-block-image.apl-icon{margin:0 0 14px}
.apl .apl-icon img{border-radius:0 !important;filter:none}
.apl .block-card__img-wrapper img[src*="apollon-icon-"]{width:48px;height:48px;filter:none}
/* CTA ohne Hintergrundfoto: die Bühne trägt */
.apl .block-cta:not(:has(img)){padding-top:clamp(56px,7vw,96px);padding-bottom:clamp(56px,7vw,96px);border-radius:0}
/* die Bühne nur einmal: innere Hülle ohne eigene Fläche, ohne die alte Mindesthöhe für das Hintergrundfoto */
.apl .block-cta:not(:has(img)) .block-cta__wrapper{background:none !important;min-height:0 !important;padding-top:0;padding-bottom:0;border-radius:0}
.apl .block-cta:not(:has(img)) .block-cta__box{padding-top:0;padding-bottom:0}

/* ---- 15 Feinschliff nach Designprüfung (PIM-Seite, 1980 px) */
/* Header: oben nicht höher als im gescrollten Zustand (vorher 205 px = ein Viertel des Fensters, Brotkrumen lagen darunter) */
@media (min-width:1200px){
  .apl #page:not(.searchIsOpen) .main-header__fixed-header:not(.fixed) .main-header__logo-wrapper{min-width:100px;height:100%;top:0;transform:none}
  .apl #page:not(.searchIsOpen) .main-header__fixed-header:not(.fixed) .main-header__logo-content{max-width:84px}
  .apl #page:not(.searchIsOpen) .main-header__fixed-header:not(.fixed) .main-header__logo-content svg{width:84px}
  .apl .main-header__fixed-header:not(.fixed) .main-header__content{padding-left:110px;min-height:0;height:auto}
  .apl .main-header__fixed-header:not(.fixed) .main-header__content-items{min-height:0}
  .apl main.page-content{padding-top:130px}
  .apl .apl-brotkrumen{top:146px}
  .apl .apl-buehne.apl-buehne--kopf{--apl-kopf-oben:clamp(88px,11vh,124px);--apl-kopf-unten:clamp(64px,8vh,100px)}
}
/* Seitenkopf mit Objekt: Überschrift höchstens drei Zeilen */
.apl .page-entry > .apl-buehne--objekt h1{font-size:clamp(28px,2.7vw,38px);line-height:1.14;text-wrap:balance;max-width:none}
.apl .apl-buehne--objekt .is-style-apl-lead{margin-bottom:30px}
/* Einleitung direkt unter dem Seitenkopf */
.apl .apl-sektion.apl-einleitung{padding-top:clamp(48px,6vw,80px);padding-bottom:0}
.apl .apl-einleitung > p{font-size:clamp(17px,1.35vw,19px);line-height:1.6;max-width:920px}

/* Weiße ATLAS-Textklassen auf heller Fläche sind unlesbar – im Hellsystem gibt es keinen dunklen Grund (Ausnahme: Cover mit Foto) */
.apl .page-entry :is(.has-text-light-color,.has-white-color,.has-weiss-color):not(.wp-block-button__link):not(.wp-block-cover *){color:var(--apl-graphit) !important}

/* Bühne im Seitenverlauf (CTA): immer voller Innenabstand, auch wenn der Altblock „ohne Abstand" gesetzt war */
.apl .apl-buehne:not(.apl-buehne--kopf):is(.apl-ohne-oben,.apl-ohne-unten){padding-top:clamp(64px,7vw,104px) !important;padding-bottom:clamp(64px,7vw,104px) !important}
.apl :is(.apl-buehne:not(.apl-buehne--kopf),.block-cta) p.has-large-font-size{font-size:clamp(18px,1.5vw,22px) !important;line-height:1.55 !important;max-width:58ch}
.apl :is(.apl-buehne:not(.apl-buehne--kopf),.block-cta) :is(h2,h3){margin-bottom:16px}
.apl :is(.apl-buehne:not(.apl-buehne--kopf),.block-cta) .wp-block-buttons{margin-top:28px}
/* auf der Bühne ist der Button die Hauptaktion: dunkel, nicht Kontur */
.apl :is(.apl-buehne,.block-cta) :is(.is-style-fill-secondary,.is-style-outline) .wp-block-button__link{color:#fff !important;background:var(--apl-graphit) !important}
/* CTA als Kasten innerhalb einer Sektion: runde Ecken wie alle Karten, Luft zum nächsten Element */
.apl .apl-sektion > .block-cta:not(:has(img)){border-radius:var(--apl-radius);overflow:hidden}
.apl .apl-sektion > .block-cta + *{margin-top:clamp(56px,7vw,96px) !important}
.apl .apl-sektion.apl-ohne-oben:has(> .block-cta:first-child){padding-top:clamp(40px,5vw,72px) !important}

/* Sektionsköpfe linksbündig wie im Social-System; der kurze Strich unter jeder Überschrift entfällt */
.apl .apl-sektion:not(.apl-buehne) > :is(h2,h3,h4,p).has-text-align-center{text-align:left;margin-left:0 !important;margin-right:0 !important}
.apl .apl-sektion > :is(h2,h3) + .wp-block-separator{display:none}
.apl .apl-sektion:not(.apl-buehne) > h2{margin-bottom:20px}
.apl .apl-sektion:not(.apl-buehne) > h2 + .wp-block-separator + p,.apl .apl-sektion:not(.apl-buehne) > h2 + p{font-size:clamp(16px,1.2vw,17.5px);line-height:1.6;color:var(--apl-graphit)}

/* Karten: kompakt und linksbündig. ATLAS gab Kacheln 140/80 px Innenabstand und 120 px Bildfläche für ein 48-px-Icon. */
.apl .block-card{padding:28px 28px 30px !important;text-align:left}
.apl .block-card .block-card__row{display:flex;flex-direction:column;align-items:flex-start;height:100%}
.apl .block-card__img-wrapper:has(img[src$=".svg"]){height:auto !important;min-height:0;margin:0 0 22px !important;width:auto;display:block}
.apl .block-card__img-wrapper:has(img[src$=".svg"]) img{width:auto;height:48px;max-width:96px;object-fit:contain;margin:0}
.apl .block-card__content-wrapper{padding:0 !important;text-align:left;width:100%}
.apl .block-card__title,.apl .block-card__subtitle{margin:0 0 8px}
.apl .block-card__subtitle :is(h2,h3,h4,h5,h6){font-size:13px;font-weight:var(--apl-leicht);color:var(--apl-graphit-62);letter-spacing:.02em}
.apl .block-card__content p:last-child{margin-bottom:0}
.apl .block-card .wp-block-buttons,.apl .block-card .block-card__link{margin-top:20px;justify-content:flex-start}
/* reine Icon-Kacheln (Icon + Wort): niedrig, Icon oben, Wort unten */
.apl .block-card.block-card__square{min-height:0 !important;aspect-ratio:auto}
.apl .block-card__square .block-card__content-wrapper{margin-top:auto}
.apl .block-card__square .block-card__title{margin:0}

/* Icon-Grafiken als PNG (Produkt-Icons): wie Icons behandeln – links, 64 px */
.apl .block-card__img-wrapper:has(img:is([src*="icon" i],[src*="outline" i])){height:auto !important;min-height:0;margin:0 0 20px !important;display:block}
.apl .block-card__img-wrapper img:is([src*="icon" i],[src*="outline" i]):not([src$=".svg"]){width:64px;height:64px;object-fit:contain;margin:0;filter:none}
/* Titel trägt, Untertitel (Kürzel) steht als kleine Zeile darüber */
.apl .block-card__content-wrapper{display:flex;flex-direction:column}
.apl .block-card__title > *{font-size:17px;line-height:1.35;font-weight:var(--apl-halbfett);color:var(--apl-graphit);margin:0}
.apl .block-card__subtitle{order:-1;margin:0 0 6px}
.apl .block-card__subtitle > *{font-size:12px !important;font-weight:var(--apl-halbfett) !important;letter-spacing:.14em;text-transform:uppercase;color:var(--apl-graphit-62);margin:0}
/* Buttons folgen der Textachse der Sektion */
.apl .apl-sektion:not(.apl-buehne) > .wp-block-buttons.is-content-justification-center{justify-content:flex-start;margin-left:0 !important}
/* Einleitung und erste Sektion: ein klarer Abstand */
.apl .apl-einleitung + .apl-sektion{padding-top:clamp(40px,5vw,64px) !important}
.apl .apl-sektion.apl-einleitung:has(+ :is([class*="apl-flaeche"],.apl-buehne,.block-cta)){padding-bottom:clamp(44px,5vw,72px)}
.apl .apl-einleitung + :is([class*="apl-flaeche"],.apl-buehne){padding-top:clamp(52px,6vw,88px) !important}

/* In Karten ist „Erfahre mehr" ein Textlink – der dunkle Button bleibt der einen Hauptaktion vorbehalten */
.apl .block-card .wp-block-button__link{min-height:0;padding:0 0 4px;border:0 !important;border-radius:0 !important;background:none !important;color:var(--apl-graphit) !important;box-shadow:inset 0 -1.5px 0 var(--apl-blau);font-size:15.5px}
.apl .block-card .wp-block-button__link:hover{transform:none;box-shadow:inset 0 -2.5px 0 var(--apl-blau);background:none !important;color:var(--apl-graphit) !important}
.apl .block-cta__box{max-width:780px;margin-left:auto;margin-right:auto}

/* Brotkrumen mobil: eine Zeile, aktuelle Seite wird gekürzt */
@media (max-width:991px){ .apl .apl-brotkrumen ol{flex-wrap:nowrap} .apl .apl-brotkrumen li{min-width:0;flex:0 0 auto} .apl .apl-brotkrumen li:last-child{flex:0 1 auto} .apl .apl-brotkrumen [aria-current]{max-width:100%} }

/* Teaser-Kacheln ohne Bild (Zielgruppen): Kartenform und Kartentitel statt H2-Größe */
.apl .block-teaser--full{background:#fff;border:1px solid var(--apl-linie-zart);border-radius:var(--apl-radius);box-shadow:var(--apl-schatten);height:100%}
.apl .block-teaser--full .block-teaser__content-wrapper{padding:26px 28px 28px}
.apl .block-teaser__title{font-size:18px !important;line-height:1.3;font-weight:var(--apl-halbfett);letter-spacing:0;margin:0 0 8px;hyphens:manual}
.apl .block-teaser__content{font-size:15px;line-height:1.6;color:var(--apl-graphit)}
.apl .block-teaser__content p:last-child{margin-bottom:0}

/* ---- 16 Linienführung, Bauteile, Footer (Durchsicht PIM-Seite, 19.09.2026) */
/* 16.1 Eine Rasterkante: Top-Leiste, Logo, Navigation, Brotkrumen, Inhalt und Footer beginnen und enden auf derselben Linie */
@media (min-width:1200px){
  .apl .main-header__content-wrapper,.apl .top-header__content{max-width:min(var(--apl-breite),100% - 40px) !important;margin-left:auto;margin-right:auto;padding-left:0 !important;padding-right:0 !important}
  .apl #page .main-header .main-header__logo-wrapper,
  .apl #page:not(.searchIsOpen) .main-header__fixed-header:not(.fixed) .main-header__logo-wrapper{left:0 !important;min-width:96px}
  .apl #page .main-header .main-header__logo-content{left:0 !important;transform:translateY(-50%) !important}
  .apl .main-header__content,.apl .main-header__fixed-header:not(.fixed) .main-header__content,.apl .fixed .main-header__content{padding-left:118px}
  .apl .main-nav .menu>li:first-of-type{margin-left:0}
  .apl .main-nav .menu>li{padding-left:16px;padding-right:16px}
}

/* 16.2 Weiße Sektion darf nicht ohne Abstand an eine getönte stoßen (Altblöcke „ohne Abstand") */
.apl .apl-sektion.apl-ohne-unten:not([class*="apl-flaeche"]):not(.apl-buehne):has(+ :is([class*="apl-flaeche"],.apl-buehne,.block-cta)){padding-bottom:clamp(52px,6vw,88px) !important}
.apl :is([class*="apl-flaeche"],.apl-buehne) + .apl-sektion.apl-ohne-oben:not([class*="apl-flaeche"]):not(.apl-buehne):not(:has(> .block-cta:first-child)){padding-top:clamp(52px,6vw,88px) !important}

/* 16.3 Fragekarten: die Frage ist das Gestaltungselement – kein Fragezeichen-Icon, das wie ein fehlendes Bild wirkt */
.apl .block-card:has(.block-card__img-wrapper img:is([src*="icon-frage" i],[src*="Fragezeichen" i])) .block-card__img-wrapper{display:none !important}
.apl .block-card:has(.block-card__img-wrapper img:is([src*="icon-frage" i],[src*="Fragezeichen" i])) .block-card__title::before{content:"";display:block;width:32px;height:2px;border-radius:2px;background:var(--apl-blau);margin:4px 0 20px}
.apl .block-card:has(.block-card__img-wrapper img:is([src*="icon-frage" i],[src*="Fragezeichen" i])) .block-card__title > *{font-size:clamp(19px,1.45vw,21px);line-height:1.25;letter-spacing:-.01em}
.apl .block-card:has(.block-card__img-wrapper img:is([src*="icon-frage" i],[src*="Fragezeichen" i])) .block-card__title{margin-bottom:12px}

/* 16.4 Logoreihe: gleiche optische Höhe, ruhig, an der linken Kante; Überschrift als kleine Zeile */
.apl .wp-block-columns:has(> .wp-block-column > .wp-block-image img[alt*="Logo" i]){display:flex !important;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:28px clamp(36px,5vw,72px);margin-top:28px !important}
.apl .wp-block-columns:has(> .wp-block-column > .wp-block-image img[alt*="Logo" i]) > .wp-block-column{flex:0 0 auto !important;width:auto}
.apl .wp-block-column > .wp-block-image:has(img[alt*="Logo" i]){margin:0 !important;text-align:left}
.apl .wp-block-column > .wp-block-image img[alt*="Logo" i]{height:46px;width:auto;max-width:170px;object-fit:contain;filter:grayscale(1);opacity:.78;transition:opacity var(--apl-tempo)}
.apl .wp-block-column > .wp-block-image a:hover img[alt*="Logo" i]{opacity:1}
.apl .apl-sektion:has(> .wp-block-columns > .wp-block-column > .wp-block-image img[alt*="Logo" i]) > h2{font-size:13px;line-height:1.4;font-weight:var(--apl-halbfett);letter-spacing:.16em;text-transform:uppercase !important;color:var(--apl-graphit-62);margin-bottom:0}
.apl .apl-sektion:has(> .wp-block-columns > .wp-block-column > .wp-block-image img[alt*="Logo" i]) > p{margin-top:32px;font-size:15.5px}
.apl .apl-sektion:has(> .wp-block-columns > .wp-block-column > .wp-block-image img[alt*="Logo" i]){padding-top:clamp(44px,5vw,64px);padding-bottom:clamp(44px,5vw,64px)}

/* 16.5 Reine Textsektion (Überschrift + Text): zweispaltig – Überschrift links, Text rechts. Kein Loch in der rechten Hälfte. */
@media (min-width:1100px){
  .apl .apl-sektion:not(.apl-buehne):not(.apl-einleitung):has(> h2:first-child):not(:has(> :not(h2,p,hr,ul,ol,.wp-block-buttons))){display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);column-gap:clamp(40px,6vw,96px);align-items:start}
  .apl .apl-sektion:not(.apl-buehne):not(.apl-einleitung):has(> h2:first-child):not(:has(> :not(h2,p,hr,ul,ol,.wp-block-buttons))) > h2{grid-column:1;grid-row:1 / span 12;margin:0;max-width:none}
  .apl .apl-sektion:not(.apl-buehne):not(.apl-einleitung):has(> h2:first-child):not(:has(> :not(h2,p,hr,ul,ol,.wp-block-buttons))) > :not(h2){grid-column:2;max-width:760px}
  .apl .apl-sektion:not(.apl-buehne):not(.apl-einleitung):has(> h2:first-child):not(:has(> :not(h2,p,hr,ul,ol,.wp-block-buttons))) > h2 + p{font-size:inherit;margin-top:4px}
}

/* 16.6 Ein CTA-Bauteil: kompakter Kasten im Raster, linksbündig, Button rechts. Gilt für den ATLAS-CTA-Block und
        für umgebaute Bühnen-Sektionen im Seitenverlauf. Die vollflächige Bühne bleibt dem Seitenkopf vorbehalten. */
.apl .block-cta:not(:has(img)),.apl .page-entry > .apl-sektion.apl-buehne:not(.apl-buehne--kopf){background:none !important;overflow:visible}
.apl .page-entry > .block-cta:not(:has(img)){padding:clamp(28px,3.5vw,48px) max(20px,calc((100% - var(--apl-breite)) / 2)) !important}
.apl .apl-sektion > .block-cta:not(:has(img)){padding:0 !important;overflow:visible}
.apl .block-cta:not(:has(img)) .block-cta__container{max-width:none;width:100%;margin:0;background:var(--apl-buehne);border-radius:var(--apl-radius);padding:clamp(28px,3.4vw,44px) clamp(24px,3.6vw,52px);overflow:hidden}
.apl .block-cta:not(:has(img)) .block-cta__box{max-width:none;margin:0;width:100%}
.apl .page-entry > .apl-sektion.apl-buehne:not(.apl-buehne--kopf){position:relative;padding:calc(clamp(28px,3.5vw,48px) + clamp(28px,3.4vw,44px)) calc(max(20px,(100% - var(--apl-breite)) / 2) + clamp(24px,3.6vw,52px)) !important}
.apl .page-entry > .apl-sektion.apl-buehne:not(.apl-buehne--kopf)::before{content:"";position:absolute;z-index:-1;inset:clamp(28px,3.5vw,48px) max(20px,calc((100% - var(--apl-breite)) / 2));border-radius:var(--apl-radius);background:var(--apl-buehne)}
/* Innenleben beider Formen */
.apl .block-cta:not(:has(img)) .acf-innerblocks-container,.apl .page-entry > .apl-sektion.apl-buehne:not(.apl-buehne--kopf){display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:clamp(24px,4vw,64px);align-items:center;text-align:left}
.apl .block-cta:not(:has(img)) .acf-innerblocks-container > *,.apl .page-entry > .apl-sektion.apl-buehne:not(.apl-buehne--kopf) > *{grid-column:1;text-align:left !important;margin-left:0 !important;margin-right:0 !important;max-width:720px}
.apl .block-cta:not(:has(img)) .acf-innerblocks-container > :is(h2,h3),.apl .page-entry > .apl-sektion.apl-buehne:not(.apl-buehne--kopf) > :is(h2,h3){font-size:clamp(20px,1.6vw,23px);margin:0 0 6px}
.apl .block-cta:not(:has(img)) .acf-innerblocks-container > p,.apl .page-entry > .apl-sektion.apl-buehne:not(.apl-buehne--kopf) > p{font-size:16px !important;line-height:1.55 !important;margin:0}
.apl .block-cta:not(:has(img)) .acf-innerblocks-container > .wp-block-buttons,.apl .page-entry > .apl-sektion.apl-buehne:not(.apl-buehne--kopf) > .wp-block-buttons{grid-column:2;grid-row:1 / span 8;align-self:center;margin:0 !important;justify-content:flex-end;max-width:none}
@media (max-width:781px){
  .apl .block-cta:not(:has(img)) .acf-innerblocks-container,.apl .page-entry > .apl-sektion.apl-buehne:not(.apl-buehne--kopf){grid-template-columns:1fr}
  .apl .block-cta:not(:has(img)) .acf-innerblocks-container > .wp-block-buttons,.apl .page-entry > .apl-sektion.apl-buehne:not(.apl-buehne--kopf) > .wp-block-buttons{grid-column:1;grid-row:auto;justify-content:flex-start;margin-top:20px !important}
}
.apl .apl-sektion:has(> .block-cta:first-child){padding-top:clamp(28px,3.5vw,48px) !important}

/* Unterzeile direkt unter der Sektionsüberschrift bleibt kleiner als die Überschrift */
.apl .apl-sektion:not(.apl-buehne) > h2 + :is(h3,h4,h5),.apl .apl-sektion:not(.apl-buehne) > h2 + .wp-block-separator + :is(h3,h4,h5){font-size:clamp(17px,1.3vw,19px);font-weight:var(--apl-leicht);line-height:1.5;text-align:left;margin:-8px 0 0;color:var(--apl-graphit)}

/* 16.7 Leere Sektion (z. B. nach entferntem Newsletter-Block) nimmt keinen Platz ein */
.apl .page-entry > .apl-sektion:not(:has(*)){display:none}

/* 16.8 Footer: eine Reihe – Markenblock links, Linkspalten rechts, Siegel, Rechtsleiste. Ruhige Fläche ohne Verlauf. */
.apl .main-footer.apl-fuss{background:var(--apl-nebel) !important}
.apl .apl-fuss .main-footer__top{padding-top:56px;padding-bottom:36px}
.apl .apl-fuss .main-footer__top > .container,.apl .apl-fuss .main-footer__bottom > .container,.apl .apl-fuss__siegel > .container{max-width:min(var(--apl-breite),100% - 40px);padding-left:0;padding-right:0}
.apl .apl-fuss__raster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 22px;margin:0;text-align:left}
.apl .apl-fuss__raster .main-footer__heading,.apl .apl-fuss__raster .main-footer__menu,.apl .apl-fuss__raster .main-footer__content{text-align:left}
.apl .apl-fuss .social-links__wrapper{justify-content:flex-start}
.apl .apl-fuss__spalte--marke{grid-column:1 / -1}
.apl .apl-fuss__spalte{display:flex;flex-direction:column;gap:26px;min-width:0}
.apl .apl-fuss__spalte > .main-footer__col{width:auto;max-width:none;flex:none;padding:0 !important;margin:0 !important;min-width:0}
.apl .apl-fuss__spalte--marke{gap:20px}
@media (min-width:900px){ .apl .apl-fuss__raster{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (min-width:1100px){
  .apl .apl-fuss__raster{grid-template-columns:minmax(0,1.4fr) repeat(5,minmax(0,1fr))}
  .apl .apl-fuss__raster--7{grid-template-columns:minmax(0,1.4fr) repeat(7,minmax(0,1fr))}
  .apl .apl-fuss__spalte--marke{grid-column:1;padding-right:20px}
}
.apl .apl-fuss .main-footer__heading{font-size:12px;margin-bottom:12px}
.apl .apl-fuss .main-footer__menu .menu{margin:0}
.apl .apl-fuss .main-footer__menu li{margin:0 0 5px;line-height:1.45}
.apl .apl-fuss .main-footer__top a{font-size:14.5px}
.apl .apl-fuss__heim{display:inline-flex;align-items:center;gap:12px;text-decoration:none;background:none !important;margin-bottom:14px}
.apl .apl-fuss__marke{padding:0 !important}
.apl .apl-fuss__logo{display:block;width:92px;height:auto}
.apl .apl-fuss__claim{font-size:14.5px;line-height:1.55;margin:0 0 20px;max-width:34ch}
.apl .apl-fuss__newsletter p{font-size:14.5px;line-height:1.55;margin:0 0 12px;max-width:34ch}
.apl .apl-fuss .apl-fuss__newsletter .apl-button{min-height:42px;padding:0 20px;font-size:14.5px !important;font-weight:var(--apl-halbfett);background-image:none}
/* Kontakt und Social gehören optisch zum Markenblock */
.apl .apl-fuss__spalte--marke .main-footer__heading{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.apl .apl-fuss .main-footer__content p{font-size:14.5px;line-height:1.55;margin:0 0 10px}
.apl .apl-fuss .main-footer__content a{text-decoration:none !important}
.apl .apl-fuss .social-links__wrapper{display:flex;flex-wrap:nowrap;gap:0;transform:translateX(-9px);list-style:none;margin:0;padding:0}
.apl .apl-fuss .social-links__single{margin:0;padding:0}
.apl .apl-fuss .social-links__single::before{display:none}
.apl .apl-fuss .social-links__link{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:none !important;transition:background-color var(--apl-tempo)}
.apl .apl-fuss .social-links__link:hover{background-color:var(--apl-dunst) !important}
.apl .apl-fuss .social-links__icon{margin:0;display:inline-flex}
.apl .apl-fuss .social-links__icon svg,.apl .apl-fuss .social-links__icon img{width:18px;height:18px}
.apl .apl-fuss .social-links__text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* Siegel */
.apl .apl-fuss__siegel{border-top:1px solid var(--apl-linie-zart);padding:22px 0}
.apl .apl-fuss__siegel ul{display:flex;flex-wrap:wrap;align-items:center;gap:18px 40px;list-style:none;margin:0;padding:0}
.apl .apl-fuss__siegel li{margin:0;padding:0}
.apl .apl-fuss__siegel li::before{display:none}
.apl .apl-fuss__siegel-bild{height:46px;width:auto;max-width:120px;object-fit:contain;filter:grayscale(1);opacity:.8}
/* Rechtsleiste */
.apl .apl-fuss .main-footer__bottom{padding-top:18px;padding-bottom:22px;border-top:1px solid var(--apl-linie-zart)}
.apl .apl-fuss .main-footer__bottom .row{margin:0;align-items:center}
.apl .apl-fuss .main-footer__bottom .col{padding:0}
.apl .apl-fuss .main-footer__copy{display:flex;justify-content:flex-end;align-items:center;gap:24px;flex-wrap:wrap}
.apl .apl-fuss .main-footer__copy p{margin:0}
.apl .apl-fuss__sprachen ul{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.apl .apl-fuss__sprachen li{margin:0;padding:0}
.apl .apl-fuss__sprachen li::before{display:none}
.apl .apl-fuss__sprachen a{display:inline-block;padding:6px 8px;font-size:13px;font-weight:var(--apl-halbfett);letter-spacing:.08em;color:var(--apl-graphit-62);text-decoration:none}
.apl .apl-fuss__sprachen a[aria-current]{color:var(--apl-graphit)}
@media (max-width:767px){ .apl .apl-fuss .main-footer__copy{justify-content:flex-start;margin-top:12px} .apl .apl-fuss .main-footer__quick-links,.apl .apl-fuss .main-footer__quick-links ul{text-align:left;justify-content:flex-start} }

/* ---- 17 Zweite Durchsicht (19.09.2026): Logoreihe, Galerie, Footer-Luft */
/* 17.1 Logoreihe: gleichmäßiges Raster, das die Breite nutzt – auch mit acht Logos eine Zeile */
.apl .wp-block-columns:has(> .wp-block-column > .wp-block-image img[alt*="Logo" i]){display:grid !important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:center;justify-items:start;gap:34px clamp(24px,3vw,48px)}
.apl .wp-block-column > .wp-block-image img[alt*="Logo" i]{height:40px;max-width:min(168px,100%)}
.apl .wp-block-column > .wp-block-image:has(img[alt*="Logo" i]) :is(a,img){display:block}
@media (max-width:640px){ .apl .wp-block-columns:has(> .wp-block-column > .wp-block-image img[alt*="Logo" i]){grid-template-columns:repeat(3,minmax(0,1fr))} }
/* Spaltenzahl nach Anzahl, damit die Reihen gleich voll werden: bis 6 → eine Reihe, 7/8 → 4, 9/10 → 5, 11/12 → 6 */
@media (min-width:900px){
  .apl .wp-block-columns:has(> .wp-block-column > .wp-block-image img[alt*="Logo" i]){grid-template-columns:repeat(5,minmax(0,1fr))}
  .apl .wp-block-columns:has(> .wp-block-column > .wp-block-image img[alt*="Logo" i]):has(> .wp-block-column:nth-child(6):last-child),
  .apl .wp-block-columns:has(> .wp-block-column > .wp-block-image img[alt*="Logo" i]):has(> .wp-block-column:nth-child(11)){grid-template-columns:repeat(6,minmax(0,1fr))}
  .apl .wp-block-columns:has(> .wp-block-column > .wp-block-image img[alt*="Logo" i]):has(> .wp-block-column:nth-child(7)):not(:has(> .wp-block-column:nth-child(9))){grid-template-columns:repeat(4,minmax(0,1fr))}
  .apl .wp-block-columns:has(> .wp-block-column > .wp-block-image img[alt*="Logo" i]):not(:has(> .wp-block-column:nth-child(6))){grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
}

/* 17.2 Galerie „So sieht … aus": kompaktes Bauteil auf zarter Fläche; Bildunterschrift, Punkte und Pfeile in einer Fußzeile */
.apl .block-gallery{max-width:880px;margin:28px 0 0 !important;padding:clamp(20px,2.4vw,32px);background:var(--apl-verlauf-zart);border:1px solid var(--apl-linie-zart);border-radius:var(--apl-radius);position:relative}
.apl .block-gallery .block-gallery__container,.apl .block-gallery .block-gallery__wrapper{max-width:none;width:100%;padding:0;margin:0}
.apl .block-gallery .block-gallery__slider{position:relative;margin:0;padding:0 0 60px}
.apl .block-gallery .block-gallery__slide-image{margin:0;padding:0 !important;height:auto !important}
.apl .block-gallery .block-gallery__slide-image > a{position:static !important;transform:none !important;top:auto !important;left:auto !important;display:block;width:100%;height:auto !important}
.apl .block-gallery .block-gallery__slide-image img{position:static !important;transform:none !important;top:auto !important;left:auto !important}
.apl .block-gallery .slick-slide{margin:0 !important;padding:0 !important}
.apl .block-gallery .block-gallery__slide-image img{display:block;width:100% !important;max-width:100%;height:auto !important;max-height:400px;margin:0 auto;object-fit:contain;border-radius:0 !important}
.apl .block-gallery .block-gallery__content-wrapper{padding:0;margin:12px 0 0;text-align:left;min-height:0}
.apl .block-gallery .block-gallery__content-title{font-size:14px;line-height:1.4;font-weight:var(--apl-leicht);color:var(--apl-graphit-72);letter-spacing:0}
.apl .block-gallery .slick-dots{position:absolute;left:0 !important;right:auto !important;bottom:16px !important;top:auto !important;transform:none !important;width:auto;display:flex !important;align-items:center;gap:6px;margin:0;padding:0;list-style:none}
.apl .block-gallery .slick-dots li{width:auto;height:auto;margin:0;padding:0}
.apl .block-gallery .slick-dots li::before{display:none}
.apl .block-gallery .slick-dots li button{display:block;width:8px;height:8px;padding:0;border:0;border-radius:4px;background:var(--apl-see);font-size:0;transition:width var(--apl-tempo),background-color var(--apl-tempo)}
.apl .block-gallery .slick-dots li button::before{display:none}
.apl .block-gallery .slick-dots li.slick-active button{width:26px;background:var(--apl-graphit)}
.apl .block-gallery .slick-arrow{position:absolute;top:auto !important;bottom:0 !important;left:auto !important;transform:none !important;width:40px;height:40px;min-height:0;padding:0;border-radius:50%;z-index:2}
.apl .block-gallery .slick-prev{right:50px !important;transform:rotate(180deg) !important}
.apl .block-gallery .slick-next{right:0 !important}
.apl .apl-sektion:has(> .block-gallery){padding-top:clamp(40px,4.4vw,64px);padding-bottom:clamp(40px,4.4vw,64px)}

/* 17.3 Footer: mehr Luft – breitere Spaltenabstände, größere Zeilenabstände, umbrechende Links bleiben als Einheit lesbar */
.apl .apl-fuss .main-footer__top{padding-top:80px;padding-bottom:56px}
@media (min-width:1100px){
  .apl .apl-fuss__raster,.apl .apl-fuss__raster.apl-fuss__raster--5{grid-template-columns:minmax(0,1.5fr) minmax(0,1.2fr) minmax(0,1.2fr) minmax(0,1.05fr) minmax(0,.9fr) minmax(0,1.1fr);column-gap:clamp(28px,3.2vw,48px)}
}
.apl .apl-fuss__spalte{gap:36px}
.apl .apl-fuss__spalte--marke{gap:26px}
.apl .apl-fuss .main-footer__heading{margin-bottom:16px}
.apl .apl-fuss .main-footer__menu li{margin:0 0 9px;line-height:1.35}
.apl .apl-fuss__claim{margin:0 0 24px}
.apl .apl-fuss__siegel{padding:30px 0}
.apl .apl-fuss__siegel ul{gap:20px 48px}
.apl .apl-fuss .main-footer__bottom{padding-top:24px;padding-bottom:28px}

/* 17.4 Social-Icons der Top-Leiste: nur das Zeichen in Textfarbe, runde Trefferfläche wie im Footer */
.apl .top-header__socials{display:flex;align-items:center;gap:2px}
.apl .top-header__social-link{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:var(--apl-graphit-72);transition:color var(--apl-tempo),background-color var(--apl-tempo)}
.apl .top-header__social-link:hover,.apl .top-header__social-link:focus-visible{color:var(--apl-graphit);background:var(--apl-dunst)}
.apl .top-header__social-icon{display:inline-flex;margin:0}
.apl .top-header__social-icon .apl-social-zeichen{width:26px;height:18px;display:block}
.apl .top-header__social-icon img{filter:none;opacity:1;height:20px}

/* 17.5 Mega-Menü: ein schwebender Kasten mit rundum runden Ecken; die getönte Spalte wird mit abgeschnitten (keine weiße Ecke oben rechts) */
.apl .main-nav .mega-menu-wrapper{border-radius:var(--apl-radius) !important;overflow:hidden;border-top:0;margin-top:8px}
.apl .main-nav .bgcolor .mega-menu-wrapper__container .sub-menu-wrapper:last-child,
.apl .main-nav .bgcolor .mega-menu-wrapper__container .sub-menu-wrapper:last-child::after{border-radius:0 !important}

/* 17.6 Die letzte Sektion hält Abstand zum Footer, auch wenn der Altblock „ohne Abstand unten" gesetzt war; Footer-Button bleibt einzeilig */
.apl .page-entry > .apl-sektion.apl-ohne-unten:last-child{padding-bottom:clamp(48px,5.4vw,80px) !important}
.apl .apl-fuss .apl-fuss__newsletter .apl-button{white-space:nowrap;padding:0 16px;font-size:14px !important}
.apl .apl-fuss__spalte--marke{padding-right:0 !important}

/* sanftes Einblenden – nur wenn JS aktiv ist und Bewegung erwünscht */
@media (prefers-reduced-motion:no-preference){
  .apl.apl-js .apl-einblenden{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
  .apl.apl-js .apl-einblenden.ist-sichtbar{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){ .apl *{transition-duration:.01ms !important;animation-duration:.01ms !important} }

/* Desktop logo: balanced breathing room without increasing the header height. */
@media (min-width:1200px){
  body.apl #page .main-header .main-header__logo-content{width:72px;max-width:72px !important}
  body.apl #page .main-header .main-header__logo-content svg{display:block;width:72px !important;height:auto}
  body.apl #page .main-header .header-logo__link{display:block}
}

/* Footer 20.09.2026: four readable navigation groups, separate newsletter. */
.apl .apl-fuss--klar .main-footer__top{padding:64px 0 48px}
.apl .apl-fuss--klar .apl-fuss__raster{grid-template-columns:minmax(0,1.3fr) repeat(4,minmax(0,1fr));gap:40px}
.apl .apl-fuss--klar .apl-fuss__spalte--marke{padding:0;gap:20px}
.apl .apl-fuss--klar .apl-fuss__spalte{gap:24px}
.apl .apl-fuss--klar .apl-fuss__heim{margin-bottom:16px}
.apl .apl-fuss--klar .apl-fuss__claim{margin:0;max-width:29ch}
.apl .apl-fuss--klar .main-footer__heading{margin:4px 0 20px;font-size:12px;letter-spacing:.14em}
.apl .apl-fuss--klar .main-footer__menu ul{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}
.apl .apl-fuss--klar .main-footer__menu li{display:block;margin:0;padding:0;line-height:1.5}
.apl .apl-fuss--klar .main-footer__menu a{display:inline-block;font-size:15px;line-height:1.5;overflow-wrap:break-word}
.apl .apl-fuss--klar .main-footer__content p{margin-bottom:10px}
.apl .apl-fuss--klar .main-footer__content a{overflow-wrap:anywhere}
.apl .apl-fuss--klar .social-links__wrapper{flex-wrap:wrap;transform:none;gap:4px;margin-left:-8px}
.apl .apl-fuss--klar .social-links__link{width:32px;height:36px}
.apl .apl-fuss--klar a:focus-visible{outline:2px solid var(--apl-graphit);outline-offset:5px;border-radius:2px}
.apl .apl-fuss__newsletter-zeile{text-align:left;border-top:1px solid var(--apl-linie-zart);padding:32px 0}
.apl .apl-fuss__newsletter-zeile > .container{max-width:min(var(--apl-breite),100% - 40px);padding:0;display:flex;align-items:center;justify-content:space-between;gap:24px}
.apl .apl-fuss__newsletter-zeile h2{font-size:20px;font-weight:var(--apl-halbfett);line-height:1.35;margin:0 0 8px;text-transform:none}
.apl .apl-fuss__newsletter-zeile p{font-size:15px;margin:0;line-height:1.6}
.apl .apl-fuss__newsletter-zeile .apl-button{flex-shrink:0;font-size:15px;min-height:46px}
.apl .apl-fuss--klar .apl-fuss__siegel{padding:24px 0}
.apl .apl-fuss--klar .apl-fuss__siegel ul{gap:24px 40px}
.apl .apl-fuss--klar .apl-fuss__siegel li{display:flex;align-items:center;justify-content:center;width:80px;min-height:48px}
.apl .apl-fuss--klar .apl-fuss__siegel-bild{max-width:80px;max-height:48px;width:auto;height:auto}
.apl .apl-fuss--klar .main-footer__bottom .row{display:flex;justify-content:space-between;align-items:center;gap:20px}
.apl .apl-fuss--klar .main-footer__bottom .col{width:auto;max-width:none;flex:0 1 auto}
.apl .apl-fuss--klar .main-footer__quick-links{margin:0}
.apl .apl-fuss--klar .main-footer__quick-links ul{display:flex;flex-wrap:wrap;gap:12px 24px;margin:0;padding:0;list-style:none}
.apl .apl-fuss--klar .main-footer__quick-links li{display:block;margin:0;padding:0}
.apl .apl-fuss--klar .main-footer__copy{margin:0;gap:24px}
@media(max-width:1099px){
 .apl .apl-fuss--klar .apl-fuss__raster{grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 24px}
 .apl .apl-fuss--klar .apl-fuss__spalte--marke{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px;align-items:start}
}
@media(max-width:767px){
 .apl .apl-fuss--klar .main-footer__top{padding:40px 0}
 .apl .apl-fuss--klar .apl-fuss__raster{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}
 .apl .apl-fuss--klar .apl-fuss__spalte--marke{grid-template-columns:1fr 1fr;gap:24px}
 .apl .apl-fuss--klar .apl-fuss__spalte--marke > :last-child{grid-column:1 / -1}
 .apl .apl-fuss--klar .main-footer__menu ul{gap:14px}
 .apl .apl-fuss__newsletter-zeile > .container{align-items:flex-start;flex-direction:column;gap:20px}
 .apl .apl-fuss--klar .main-footer__bottom .row{align-items:flex-start;flex-direction:column;gap:16px}
 .apl .apl-fuss--klar .main-footer__copy{justify-content:flex-start;gap:12px 24px}
}
@media(max-width:479px){
 .apl .apl-fuss--klar .apl-fuss__spalte--marke{display:flex;gap:20px}
 .apl .apl-fuss--klar .apl-fuss__claim{max-width:34ch}
 .apl .apl-fuss--klar .apl-fuss__raster{column-gap:20px}
}
