/* MASK – Mobil-Feinschliff (23.10.2026). Bewusste Abweichung vom alten Layout, nur ≤767px (Header/Menü: ≤1004px).
   Ziel: einheitlicher Rand (20px), klare Typo-Skala, ruhige Abstände, weniger Scrollen.
   Abstände (Padding/Margin von Zeilen, Spalten, Modulen) kommen ausschließlich aus Beaver Builder bzw. der globalen Abstands-Systematik – hier keine Abstands-Overrides. */

@media (max-width:767px){

  /* ---------- Raster: Container-Module (BB „Box“) ohne eigenen Seitenrand – der Rand kommt von den Inhalten (20px) ---------- */
  .fl-builder-content-primary .fl-module-box > .fl-module{width:100%;max-width:none}

  /* ---------- Typografie ---------- */
  .fl-builder-content-primary :is(h1.fl-module,.fl-module-heading h1,.fl-module-rich-text h1,.fl-module-html h1){font-size:28px!important;line-height:1.15!important;letter-spacing:-.01em}
  .fl-builder-content-primary :is(h2.fl-module,.fl-module-heading h2,.fl-module-rich-text h2,.fl-module-html h2){font-size:23px!important;line-height:1.2!important}
  .fl-builder-content-primary :is(h3.fl-module,.fl-module-heading h3,.fl-module-rich-text h3,.fl-module-html h3){font-size:19px!important;line-height:1.25!important}
  .fl-builder-content-primary :is(h4.fl-module,.fl-module-heading h4,.fl-module-rich-text h4,.fl-module-html h4,.fl-module-info-list h4){font-size:17px!important;line-height:1.3!important}
  .fl-builder-content-primary :is(.fl-module-rich-text,.fl-module-html,.fl-module-info-box,.fl-module-advanced-accordion,.fl-module-advanced-tabs,.fl-module-mask-tabs) p{font-size:16px;line-height:1.55}
  .fl-builder-content-primary :is(.fl-module-rich-text,.fl-module-html) :is(h1,h2,h3,h4){hyphens:manual;overflow-wrap:normal}
  .fl-builder-content-primary :is(.fl-module-rich-text,.fl-module-html) p{hyphens:auto}

  /* ---------- Startseite: Bühne ---------- */
  .fl-builder-content-primary h1.fl-module.home-header-text{font-size:31px!important;line-height:1.12!important;font-weight:600!important}
  .fl-module-rich-text.home-header-text p{font-size:18px!important;line-height:1.4!important;font-weight:500!important}
  .fl-row:has(.home-header-text) > .fl-row-content-wrap{background-position:82% 50%!important;position:relative}
  .fl-row:has(.home-header-text) > .fl-row-content-wrap::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,44,59,.15) 0%,rgba(15,44,59,.55) 45%,rgba(15,44,59,.85) 100%);pointer-events:none;z-index:0}
  .fl-row:has(.home-header-text) .fl-row-content{position:relative;z-index:1}

  

  /* ---------- Kursseiten: Kopf ---------- */
  .fl-builder-content-primary .fl-module.kurs-header h1{font-size:15px!important;line-height:1.35!important;font-weight:500!important;letter-spacing:.01em}
  .fl-builder-content-primary .kurs-header .qh1{font-size:27px!important;line-height:1.15!important;hyphens:manual;overflow-wrap:normal}
  .kurs-header .qh1 br{display:none}
  .fl-builder-content-primary .fl-module.kurs-header h1.qh1{font-size:27px!important;line-height:1.15!important;font-weight:400!important;letter-spacing:normal}

  /* ---------- Eckdaten (Kursseiten, DE+EN): Info-Boxen 2-spaltig statt untereinander (ohne „Schritt 1–4“ auf Selbstzahler) ---------- */
  body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))){display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px;row-gap:8px}
  body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box)))::before,body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box)))::after,body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))) > .fl-col::before,body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))) > .fl-col::after,body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))) > .fl-col > .fl-col-content::before,body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))) > .fl-col > .fl-col-content::after{display:none!important}
  body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))) > .fl-col,body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))) > .fl-col > .fl-col-content{display:contents!important}
  body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))) .uabb-imgicon-wrap{margin-bottom:6px!important}
  body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))) .uabb-infobox-title{font-size:15px!important;line-height:1.25!important;margin:4px 0!important}
  body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))) .uabb-infobox-text,body:not(.home) .fl-col-group-nested:not(.fl-node-zks8ujpl2oye,.fl-node-phuswxb1vi57):has(> .fl-col > .fl-col-content > .fl-module-info-box):not(:has(> .fl-col > .fl-col-content > .fl-module:not(.fl-module-info-box))) .uabb-infobox-text p{font-size:14px!important;line-height:1.4!important}

  /* ---------- Lange zentrierte Texte (Startseite „Unser Lernkonzept“, Profil, Firmenkurse): linksbündig ---------- */
  :is(.fl-node-sp8xti6qaovf,.fl-node-51erh8uxvd0y,.fl-node-ye7jaztu0vl3,.fl-node-3hxndesbi9y4) :is(.uabb-infobox,.uabb-infobox-content,.uabb-infobox-title-wrap,.uabb-infobox-title,.uabb-infobox-text,.uabb-infobox-text p,.uabb-imgicon-wrap){text-align:left!important}
  :is(.fl-node-sp8xti6qaovf,.fl-node-51erh8uxvd0y,.fl-node-ye7jaztu0vl3,.fl-node-3hxndesbi9y4) .uabb-infobox-title{font-size:19px!important;line-height:1.25!important}
  :is(.fl-node-sp8xti6qaovf,.fl-node-51erh8uxvd0y,.fl-node-ye7jaztu0vl3,.fl-node-3hxndesbi9y4) .uabb-imgicon-wrap img{width:60px!important;height:auto!important}
  :is(.fl-node-sp8xti6qaovf,.fl-node-51erh8uxvd0y,.fl-node-ye7jaztu0vl3,.fl-node-3hxndesbi9y4) .uabb-imgicon-wrap,:is(.fl-node-sp8xti6qaovf,.fl-node-51erh8uxvd0y,.fl-node-ye7jaztu0vl3,.fl-node-3hxndesbi9y4) .uabb-image{margin:0!important;padding:0!important}
  :is(.fl-node-sp8xti6qaovf,.fl-node-51erh8uxvd0y,.fl-node-ye7jaztu0vl3,.fl-node-3hxndesbi9y4) .uabb-infobox-title{margin:10px 0 8px!important}
  :is(.fl-node-sp8xti6qaovf,.fl-node-51erh8uxvd0y,.fl-node-ye7jaztu0vl3,.fl-node-3hxndesbi9y4) .uabb-infobox-text,:is(.fl-node-sp8xti6qaovf,.fl-node-51erh8uxvd0y,.fl-node-ye7jaztu0vl3,.fl-node-3hxndesbi9y4) .uabb-infobox-text p{margin-bottom:0!important;padding-bottom:0!important}
  :is(.fl-node-ecw2r93h8n6q,.fl-node-y0ot4vfba2m3,.fl-node-r4k2uvstgenq) :is(.uabb-info-list-content,.uabb-info-list-title,.uabb-info-list-description,.uabb-info-list-description p){text-align:left!important}

  /* ---------- Termine: keine Scroll-Box in der Seite ---------- */
  .mask-events[style*="max-height"]{max-height:none!important;overflow:visible!important;padding-right:0!important}
  .uabb-tab-acc-content:has(> .mask-events){padding-left:12px!important;padding-right:12px!important}
  .mask-events__item{grid-template-columns:12px minmax(0,1fr) auto!important}
  .mask-events__btn{white-space:nowrap;padding-left:16px!important;padding-right:16px!important}
  .mask-events.is-collapsed .mask-events__item--more{display:none!important}
  .mask-events__more{all:unset;box-sizing:border-box;display:block;width:calc(100% - 0px);margin:14px 0 4px;padding:14px 18px;border-radius:24px;background:#eff0f3;color:#003159;font-size:18px!important;font-weight:600;text-align:center;cursor:pointer} /* 18px wie alle Buttons; !important gegen UABB-Texteditor „font-size:inherit“ */
  .mask-events__more:focus-visible{outline:2px solid #003159;outline-offset:2px}

  /* ---------- Kurs-Kacheln (Startseite): flacher, Links ohne Tippen sichtbar ---------- */
  .fl-module-interactive-banner-2 .uabb-new-ib{max-height:200px}
  .fl-module-interactive-banner-2 .uabb-new-ib-img{height:200px;object-fit:cover;width:100%}
  .fl-module-interactive-banner-2 .uabb-new-ib-title{font-size:20px!important;line-height:1.2!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:manual!important}

  /* ---------- Akkordeons/FAQ: etwas größere Tippflächen ---------- */
  .fl-builder-content-primary .uabb-adv-accordion-button{min-height:48px;padding-left:0!important;padding-right:0!important}

  /* ---------- Footer ---------- */
  .mask-footer__azav{font-size:12px!important;line-height:1.45!important}
  .mask-footer__links a{display:inline-block;padding:8px 4px}
  .mask-footer__legal a{padding:12px 14px!important}
}

/* ---------- Mobiles Menü: Kontakt + Suche unter den Menüpunkten ---------- */
.mask-mm-contact{padding:20px 20px 28px;border-top:1px solid #e6e9ee;margin-top:8px;display:grid;gap:12px}
.mask-mm-contact__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mask-mm-contact a.mask-mm-btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:13px;background:#003159;color:#fff;font-size:17px;text-decoration:none;font-weight:600}
.mask-mm-contact a.mask-mm-btn--alt{background:#eff0f3;color:#003159}
.mask-mm-contact a.mask-mm-btn svg{width:16px;height:16px;flex:none}
.mask-mm-contact form{display:flex;border:1px solid #cfd6de;border-radius:24px;overflow:hidden;min-height:48px}
.mask-mm-contact input[type=search]{flex:1;border:0;padding:0 18px;font-size:16px;background:transparent;min-width:0}
.mask-mm-contact input[type=search]:focus{outline:none}
.mask-mm-contact button{all:unset;cursor:pointer;width:52px;display:flex;align-items:center;justify-content:center;color:#003159}
.mask-mm-contact button svg{width:18px;height:18px}

/* 27.10.2026 Quform mobil: 17px (≥16px, damit iOS beim Antippen nicht zoomt) */
@media (max-width:767px){ .quform{font-size:17px} }

/* Startseite DE (e5isu3nfz4y2) / EN (3hm5wx2kz8ao): Hero-Hintergrund auf Mobil in 1024 px statt 2560 px (60 → 19 KB). */
@media (max-width:767px){
  .fl-node-e5isu3nfz4y2 > .fl-row-content-wrap,
  .fl-node-3hm5wx2kz8ao > .fl-row-content-wrap { background-image: url("/wp-content/uploads/home_header_bg-1024x478.webp") !important; }
}
