/* talenteschmiede bewegt — CI-Foundation (Website)
   Farbsystem, Typografie, Logo & Bewegungselement laut Brand Book (Juli 2026).
   Alle Fonts selbst gehostet (DSGVO). */
@import url("fonts/inter.css");    /* Inter — Fließtext (Brand Book: Regular/Medium) */
@import url("fonts/caveat.css");   /* Caveat — sparsamer Akzent für Zitate/Markierungen */

/* ---- Inter Tight (Variable Font, latin) — Headlines / Social-Tiles ---- */
@font-face{
  font-family:"Inter Tight";
  src:url("fonts/InterTight.woff2") format("woff2");
  font-weight:100 900; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"Inter Tight";
  src:url("fonts/InterTight-Italic.woff2") format("woff2");
  font-weight:100 900; font-style:italic; font-display:swap;
}

/* ---- Tokens ---- */
:root{
  --royal-blue:#1A8FE3;
  --royal-blue-d:#0F6FB8;
  --tuerkis:#2BB7C9;
  --lime:#90C73D;
  --lime-d:#6f9e2c;
  --warm-grey:#737270;
  --ivory:#FBF9F4;
  --sand:#F2EEE4;
  --blue-tint:#E4F2FC; /* helle Royal-Blue-Tönung, einfarbig (kein Verlauf), für ruhige CTA-Flächen */
  --anthrazit:#1F2225;
  --white:#fff;
  --grad-angle:98deg; /* Brand Book: Verlauf immer diagonal, entlang der 8°-Neigung */
  --grad-brand:linear-gradient(var(--grad-angle),var(--royal-blue),var(--tuerkis) 50%,var(--lime));
  --font:"Inter",system-ui,-apple-system,sans-serif;          /* Fließtext */
  --font-head:"Inter Tight","Inter",system-ui,sans-serif;     /* Headlines */
  --font-accent:"Caveat","Inter",cursive;                     /* Akzent */
  --maxw:1140px;
  --lean:-8deg; /* Vorwärtsneigung aus dem Logo */
  --shadow:0 10px 34px #1f221512;
  --shadow-lg:0 24px 60px #1f22251f;
  --radius:16px;
}

/* ---- Base ---- */
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--anthrazit);background:var(--ivory);line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--font-head);line-height:1.04;font-weight:900;letter-spacing:-.015em}
p{text-wrap:pretty}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}
/* Eyebrow trägt die Bewegungselement-Underline als führenden Verlaufs-Dash */
.eyebrow{color:var(--warm-grey);font-weight:900;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;
  display:inline-flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:26px;height:5px;border-radius:99px;background:var(--grad-brand);flex:0 0 auto}
.eyebrow.on-dark{color:#cfe6f5}
.lead{font-size:1.15rem;color:#4a4a47;max-width:60ch}
.accent{font-family:var(--font-accent);font-weight:700;color:var(--royal-blue-d);font-size:1.28em;line-height:1}

/* ===== Bewegungselement — wiederkehrendes Grafiksystem (Verlauf immer diagonal 8°) ===== */
/* Verlaufsbalken / Underline unter Headlines */
.gradbar{display:block;height:6px;width:clamp(56px,7vw,120px);border-radius:99px;background:var(--grad-brand);margin:14px 0 4px}
.gradbar.center{margin-inline:auto}
/* Hero: dritte Tür „Für Schulen" (Lime) — volle Breite unter den zwei angeschrägten Türen a/b.
   Door-Basisstile (Farbe/Padding/lbl/h2/p/Button) kommen aus dem Inline-Style der Startseite (.doors .door). */
.doors{flex-wrap:wrap}
.doors .door.c{flex:0 0 100%;min-height:34vh;clip-path:polygon(0 6vw,100% 0,100% 100%,0 100%);margin-top:-6vw;z-index:1}
/* „Für Schulen": originaler CI-Verlauf (blau→türkis→lime) statt einfarbig Lime */
.doors .door.c .wp-block-cover__background{background:linear-gradient(160deg,rgba(26,143,227,.9) 0%,rgba(43,183,201,.85) 48%,rgba(144,199,61,.92) 100%)!important}
.doors .door.c:hover{flex:0 0 100%}
.doors .door.c .wp-block-cover__inner-container{padding-top:12vh}
/* „Beweglich" wie die oberen Türen: Für Schulen reagiert auf Hover (Bild-Zoom + leichter Lift, ohne Layout-Sprung) */
.doors .door.c .wp-block-cover__image-background{transition:transform .6s ease}
.doors .door.c .wp-block-cover__inner-container>*{transition:transform .35s ease}
.doors .door.c:hover .wp-block-cover__image-background{transform:scale(1.06)}
.doors .door.c:hover .wp-block-cover__inner-container>*{transform:translateX(10px)}
/* Für Schulen überlappt die Türen nach oben → „Für Unternehmen"-Inhalt anheben, damit Button frei bleibt */
.doors .door.a .wp-block-cover__inner-container,.doors .door.b .wp-block-cover__inner-container{padding-bottom:calc(7vh + 5.5vw)}
@media(max-width:640px){.doors .door.c{clip-path:none;margin-top:0;min-height:46vw}.doors .door.a .wp-block-cover__inner-container,.doors .door.b .wp-block-cover__inner-container{padding-bottom:7vh}}
/* Spine — vertikaler Verlaufsbalken links */
.spine{position:relative;padding-left:24px}
.spine::before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:6px;border-radius:99px;background:var(--grad-brand)}
/* Keyline — Verlaufs-Rahmen um eine Box */
.keyline{border:2px solid transparent;border-radius:var(--radius);
  background:linear-gradient(#fff,#fff) padding-box,var(--grad-brand) border-box}

/* ===== Bildwelt — Duotone-Verlaufs-Signatur (Brand Book: „Modern. Hell. Echt.") ===== */
.duotone{position:relative;overflow:hidden;background:var(--anthrazit);isolation:isolate}
.duotone>img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1) contrast(1.03) brightness(1.07)}
.duotone::after{content:"";position:absolute;inset:0;background:var(--grad-brand);mix-blend-mode:multiply;opacity:.6;z-index:1}
.duotone.soft::after{opacity:.4}
.duotone>*:not(img){position:relative;z-index:2}

/* ---- Wortmarken-Logik (talente blau / schmiede lime / bewegt blau) ---- */
.wm .t{color:var(--royal-blue);font-style:italic;font-weight:900}
.wm .s{color:var(--lime);font-weight:400}
.wm .b{color:var(--royal-blue);font-style:italic;font-weight:700}

/* ---- Buttons ---- */
.btn{display:inline-flex;align-items:center;gap:.4em;background:var(--lime);color:#1c2b00;font-weight:900;
  padding:14px 26px;border-radius:10px;text-decoration:none;border:0;cursor:pointer;font-size:1rem;
  transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 6px 18px #90c73d3a}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px #90c73d4d}
.btn-blue{background:var(--royal-blue);color:#fff;box-shadow:0 6px 18px #1a8fe33a}
.btn-lime{background:var(--lime);color:#1c2b00}
.btn-lime:hover{background:var(--lime-d)}
.btn-blue:hover{box-shadow:0 12px 26px #1a8fe34d}
.btn-ghost{background:transparent;color:inherit;box-shadow:none;border:1.5px solid currentColor}
.btn-ghost:hover{box-shadow:none}
.btn-sm{padding:9px 16px;font-size:.85rem;border-radius:8px}

/* ---- Endorsement (Pflicht, kein Wappen) ---- */
.endorsement{color:var(--warm-grey);font-size:.8rem}

/* ---- Entwurf-Banner (statisch, scrollt weg) ---- */
.draft-banner{background:var(--anthrazit);color:#fff;
  text-align:center;font-size:.78rem;padding:7px 14px;letter-spacing:.01em}
.draft-banner b{color:var(--lime)}

/* ---- Konzept-Kontextleiste (Vergleich Vorstand) ---- */
.concept-bar{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid #00000010;
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:8px 24px;font-size:.82rem}
.concept-bar .which{color:var(--warm-grey)}
.concept-bar .which b{color:var(--anthrazit)}
.backlink{display:inline-flex;align-items:center;gap:6px;text-decoration:none;font-weight:800;
  color:var(--royal-blue);white-space:nowrap}
.backlink:hover{color:var(--royal-blue-d)}
.concept-switch{display:flex;gap:6px}
.concept-switch a{font-size:.74rem;font-weight:800;text-decoration:none;color:var(--warm-grey);
  padding:4px 10px;border-radius:20px;border:1px solid #e3dfd5}
.concept-switch a.active{background:var(--anthrazit);color:#fff;border-color:var(--anthrazit)}
.concept-switch a:hover:not(.active){border-color:var(--royal-blue);color:var(--royal-blue)}

/* ---- Foto-Platzhalter (Streifen-Fallback, falls kein Bild) ---- */
.photo-ph{background:repeating-linear-gradient(45deg,#e7e3da,#e7e3da 12px,#ded9cd 12px,#ded9cd 24px);
  display:flex;align-items:center;justify-content:center;color:#8a8a82;font-size:.85rem;
  text-align:center;padding:12px;min-height:200px;border-radius:10px}
/* dezenter Platzhalter-Tag über Echtfotos */
.photo-tag{position:absolute;right:12px;bottom:12px;z-index:3;
  background:rgba(0,0,0,.42);color:#fff;font-size:.62rem;letter-spacing:.04em;
  padding:3px 8px;border-radius:20px;backdrop-filter:blur(2px);text-transform:uppercase}

/* ---- Header / Footer (gemeinsam) ---- */
/* Sticky wirkt am Template-Part-Wrapper (dessen Elternbox = ganze Seite), nicht am kopfhohen Inner-Header */
.wp-block-template-part:has(> .site-header){position:sticky;top:0;z-index:60}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:12px 24px;border-bottom:1px solid #00000010;background:rgba(251,249,244,.92);backdrop-filter:blur(8px)}
.site-header .hleft{display:flex;align-items:center;gap:16px}
.site-header .logo{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px;text-decoration:none;line-height:1}
.site-header .logo img{height:52px;width:auto}
.site-header .logo .logo-endorse{font-size:.58rem;font-weight:700;letter-spacing:.02em;color:var(--warm-grey);white-space:nowrap;line-height:1.1;margin-top:1px}
.site-nav a{margin-left:20px;text-decoration:none;font-weight:700;font-size:.92rem;position:relative;padding:4px 0}
.site-nav a.active{color:var(--royal-blue)}
.site-nav a.active::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--lime)}
.site-footer{position:relative;margin-top:56px;color:#4a4a47;font-size:.92rem;line-height:1.6;
  background:
    radial-gradient(65% 120% at 8% 0%, rgba(43,183,201,.16), transparent 46%),
    radial-gradient(58% 105% at 94% 26%, rgba(144,199,61,.15), transparent 52%),
    #eef4f3}
.site-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--grad-brand)}
.site-footer a{color:#4a4a47;text-decoration:none}
.foot-top{max-width:var(--maxw);margin:0 auto;padding:56px 24px 40px;display:grid;grid-template-columns:1.8fr 1fr 1.3fr;gap:44px}
.foot-brand .logo{display:inline-block}
.foot-brand .logo img{height:48px;width:auto}
.foot-claim{margin:16px 0 20px;color:#6b6b68;max-width:26ch;font-style:italic}
.foot-social{display:flex;gap:12px}
.foot-social a{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:var(--royal-blue);box-shadow:0 2px 10px #1f22150f;transition:background .15s,color .15s,transform .15s}
.foot-social a:hover{background:var(--grad-brand);color:#fff;transform:translateY(-2px)}
.foot-social svg{width:18px;height:18px;fill:currentColor}
.foot-endorse-row{display:flex;flex-wrap:wrap;gap:22px;margin-top:24px}
.foot-endorse-lockup{margin-top:0}
.foot-endorse-cap{display:block;font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:var(--warm-grey);margin-bottom:8px}
.foot-voba,.foot-pa{display:block;width:auto;height:28px;object-fit:contain}
.foot-col h4{position:relative;color:var(--anthrazit);font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;margin:0 0 20px;padding-bottom:10px;font-weight:800}
.foot-col h4::after{content:"";position:absolute;left:0;bottom:0;width:30px;height:3px;border-radius:99px;background:var(--grad-brand)}
.foot-col a{display:block;padding:3px 0;transition:color .15s,transform .15s}
.foot-col a:hover{color:var(--royal-blue);transform:translateX(3px)}
.foot-col p{margin:0 0 12px}
.foot-news p{color:#9aa0a7;margin-bottom:14px}
.foot-newsform{display:flex;gap:8px;flex-wrap:wrap}
.foot-newsform input{flex:1 1 150px;min-width:0;padding:11px 13px;border-radius:8px;border:1px solid #ffffff26;background:#ffffff10;color:#fff;font:inherit}
.foot-newsform input::placeholder{color:#8b9098}
.foot-newsform input:focus{outline:none;border-color:var(--royal-blue)}
.foot-newsform button{padding:11px 20px;border-radius:8px;border:0;background:var(--lime);color:#1c2b00;font-weight:800;cursor:pointer;transition:background .15s}
.foot-newsform button:hover{background:var(--lime-d)}
.foot-bottom{max-width:var(--maxw);margin:0 auto;padding:18px 24px 30px;border-top:1px solid #0000000f;display:flex;justify-content:center;flex-wrap:wrap;gap:10px;font-size:.82rem;color:var(--warm-grey)}
.foot-bottom a:hover{color:var(--royal-blue)}
.foot-legal{padding-right:0;text-align:center}
.foot-claim-hl{color:var(--lime);font-weight:600}
@media(max-width:560px){.foot-legal{padding-right:0}}
@media(max-width:860px){.foot-top{grid-template-columns:1fr 1fr;gap:32px}.foot-brand{grid-column:1/-1}}
@media(max-width:520px){.foot-top{grid-template-columns:1fr}.foot-bottom{flex-direction:column;align-items:flex-start}}

/* ---- Dual-Track-Segment-Toggle (funktioniert via site.js) ---- */
.seg{display:inline-flex;background:#e9f4fc;border:1px solid #cfe6f8;border-radius:24px;padding:3px;
  font-size:.78rem;font-weight:800;vertical-align:middle}
.seg [data-go]{padding:6px 14px;border-radius:20px;cursor:pointer;color:var(--royal-blue);border:0;background:transparent;font:inherit;font-weight:800;transition:background .15s,color .15s}
.seg [data-go].on{background:var(--grad-brand);color:#fff;border-color:transparent}
.seg.on-lime{background:#f1f8e6;border-color:#dcecc2}
.seg.on-lime [data-go]{color:var(--lime-d)}
.seg.on-lime [data-go].on{background:var(--lime);color:#1c2b00}

/* ---- Reveal-Animation ---- */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* ---- Zahlen-Band (gemeinsam) ---- */
.stat b{font-style:italic;font-weight:900}

/* ---- Testimonials ---- */
.voices{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.voice{background:#fff;border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);position:relative}
.voice::before{content:"\201E";position:absolute;top:6px;left:16px;font-size:3.4rem;color:var(--lime);
  font-family:Georgia,serif;line-height:1;opacity:.5}
.voice p{font-size:1.05rem;margin:14px 0 14px;position:relative}
.voice .who{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--warm-grey)}
.voice .av{width:34px;height:34px;border-radius:50%;background:var(--grad-brand);flex:0 0 auto}
.voice .who b{color:var(--anthrazit)}
.voice .who em{color:#a8a89f;font-style:italic}

/* ---- Social-Media-Strip (Schüler-Bereich, Platzhalter) ---- */
.social-strip{max-width:var(--maxw);margin:0 auto;padding:6vh 24px;text-align:center}
.social-strip h2{font-style:italic;font-size:clamp(1.5rem,3.5vw,2.1rem)}
.social-strip .social-sub{color:#5a5a57;max-width:46ch;margin:12px auto 24px;line-height:1.6}
.social-strip .tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:18px}
.social-strip .tile{aspect-ratio:1;border-radius:14px;background:var(--grad-brand);position:relative;overflow:hidden;display:grid;place-items:end;color:#fff;padding:10px;font-size:.78rem;font-weight:800;text-align:left}
.social-strip .tile::after{content:"Platzhalter";position:absolute;top:8px;left:8px;font-size:.6rem;font-weight:700;background:rgba(0,0,0,.35);padding:2px 7px;border-radius:10px}
.social-strip .handles{margin-top:14px}
.social-strip .handles a{color:var(--royal-blue);font-weight:800;margin:0 8px;text-decoration:none}
.social-strip .handles a:hover{text-decoration:underline}

/* ---- FAQ (native details, kein JS nötig) ---- */
.faq{max-width:760px;margin:0 auto}
.faq details{background:#fff;border:1px solid #ece8df;border-radius:12px;margin-bottom:10px;overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:16px 20px;font-weight:800;display:flex;
  justify-content:space-between;align-items:center;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.4rem;color:var(--royal-blue);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details[open] summary{color:var(--royal-blue)}
.faq .a{padding:0 20px 18px;color:#555}
/* FAQ-Seite: native core/details-Blöcke (von der Redaktion pflegbar) */
.faq .wp-block-details>:not(summary){padding:0 20px;margin:0 0 12px;color:#555;line-height:1.65}
.faq .wp-block-details>:not(summary):last-child{padding-bottom:18px;margin-bottom:0}
.faq .wp-block-details ul,.faq .wp-block-details ol{padding-left:42px}
.faq-group{padding:0 24px}
.faq-group h2{max-width:760px;margin:38px auto 14px;font-size:1.3rem;font-weight:900;letter-spacing:-.01em}
.faq-group h2:first-of-type{margin-top:8px}

/* ---- Einfache Inhaltsseite (Bedienungsanleitung, Impulsvortrag) ---- */
.simple-page{max-width:760px;margin:0 auto;padding:8px 24px 72px}
.simple-page h2{font-size:1.3rem;font-weight:900;margin:34px 0 10px;letter-spacing:-.01em}
.simple-page p,.simple-page li{color:#3a3d40;line-height:1.65}
.simple-page ul,.simple-page ol{padding-left:22px;margin:0 0 14px}
.simple-page .hint{background:var(--sand);border:1px dashed #c9c2ae;border-radius:12px;padding:16px 20px;margin:18px 0;color:#57534a;font-size:.96rem}

/* ---- Termine-Liste ---- */
.termine{display:flex;flex-direction:column;gap:10px;max-width:820px;margin:0 auto}
.termin{display:flex;align-items:center;gap:18px;background:#fff;border-radius:12px;padding:14px 18px;box-shadow:var(--shadow)}
.termin .date{flex:0 0 auto;text-align:center;line-height:1;background:var(--sand);border-radius:10px;padding:10px 12px;min-width:64px}
.termin .date .d{font-size:1.5rem;font-weight:900;font-style:italic;display:block}
.termin .date .m{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--warm-grey)}
.termin .info{flex:1}
.termin .info b{display:block}
.termin .info span{color:var(--warm-grey);font-size:.9rem}
.termin .pill{flex:0 0 auto;font-size:.72rem;font-weight:800;padding:4px 10px;border-radius:20px}
a.termin{text-decoration:none;color:inherit;transition:transform .12s,box-shadow .12s}
a.termin:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.termin-go{flex:0 0 auto;color:var(--royal-blue);font-weight:800;font-size:1.15rem}
.termin-media{position:relative;flex:0 0 auto;width:132px;height:92px;border-radius:10px}
.termin-media .termin-date{position:absolute;left:10px;bottom:8px;color:#fff;line-height:1;text-align:left;text-shadow:0 1px 5px rgba(0,0,0,.35)}
.termin-media .termin-date b{display:block;font-size:1.4rem;font-weight:900;font-style:italic}
.termin-media .termin-date i{font-size:.66rem;font-style:normal;text-transform:uppercase;letter-spacing:.07em}
@media(max-width:560px){.termin-media{width:100px;height:76px}}
/* Verlauf auf dem Detail-Hero (natürliches Seitenverhältnis erhalten) */
.vd-hero.duotone img{height:auto}
.vd-hero.duotone::after{opacity:.5}
/* Veranstaltungs-Detailseite (/veranstaltung/<slug>/) */
.vd{max-width:1000px;margin:0 auto;padding:44px 24px 88px}
.vd-head{margin:2px 0 4px}
.vd-tw{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--royal-blue);background:#e8f3fb;padding:4px 11px;border-radius:99px;margin-bottom:12px}
.vd-anmelden{display:flex;justify-content:center;width:100%;margin-top:18px}
.vd-factsheet{display:inline-flex;align-items:center;gap:8px;margin-top:24px;font-weight:700;color:var(--royal-blue);text-decoration:none;border:1.5px solid #cfe1f2;padding:11px 18px;border-radius:10px}
.vd-factsheet:hover{background:#eef6fc}
/* Download-Reihe unter dem News-Text (selbst gehostete PDFs, assets/downloads/) */
.vd-downloads{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.vd-downloads .vd-factsheet{margin-top:0}
.vd-dl-meta{font-weight:500;color:var(--warm-grey)}
.vd-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.vd-head .vd-tw{margin:0}
.vd-status{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.04em;padding:5px 12px;border-radius:99px}
.vd-status--offen{color:var(--royal-blue);background:#e8f3fb}
.vd-status--wenige{color:#b56a00;background:#fff3e0}
.vd-status--ausgebucht{color:#c62828;background:#fdecea}
.vd-status--abgesagt{color:#5a5a5a;background:#efefef}
.vd-hinweis{background:#fdecea;border-left:4px solid #c62828;color:#b3261e;padding:14px 18px;border-radius:0 10px 10px 0;margin:0 0 24px;font-size:.95rem}
.vd-btn-off{display:inline-flex;align-items:center;justify-content:center;width:100%;margin-top:18px;background:#e9edf1;color:#9aa3ad;font-weight:800;padding:14px 26px;border-radius:10px;cursor:not-allowed}
.vd-hero{border-radius:18px;overflow:hidden;margin:10px 0 26px;box-shadow:0 8px 30px #0000001a}
.vd-hero img{width:100%;height:auto;display:block}
.vd-date{color:var(--royal-blue);font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;margin:0 0 8px}
.vd-title{font-size:clamp(1.7rem,3.6vw,2.5rem);line-height:1.1;margin:0 0 22px}
.vd-body{color:#4a4a47;font-size:1.05rem;line-height:1.72}
.vd-body p{margin:0 0 16px}
.vd-body h2,.vd-body h3{margin:28px 0 10px;line-height:1.2}
.vd-body ul,.vd-body ol{margin:0 0 16px 1.2em}
.vd-body li{margin:4px 0}
.vd-body img{max-width:100%;height:auto;border-radius:12px}
.vd-body a{color:var(--royal-blue)}
.vd-empty{color:var(--warm-grey);margin-top:20px}
.vd-list{max-width:860px;margin:0 auto;padding:44px 24px 80px}
.vd-list--grid{max-width:1140px}
.vd-list-h{font-size:clamp(1.7rem,3.6vw,2.4rem);margin:.2em 0 14px}
.vd-list-intro{color:#4a4a47;font-size:1.08rem;line-height:1.6;max-width:62ch;margin:0 0 32px}
.vcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:26px}
.vcard{display:flex;flex-direction:column;background:#fff;border-radius:16px;overflow:hidden;box-shadow:var(--shadow);text-decoration:none;color:inherit;transition:transform .16s,box-shadow .16s}
.vcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.vcard-media{position:relative;height:172px;background:var(--anthrazit);overflow:hidden}
.vcard-media img{width:100%;height:100%;object-fit:cover;display:block}
.vcard-media::before{content:"";position:absolute;inset:auto 0 0 0;height:60%;background:linear-gradient(to top,rgba(8,16,26,.62),rgba(8,16,26,.12) 55%,transparent);z-index:1;pointer-events:none}
.vcard-date{position:absolute;left:15px;bottom:13px;color:#fff;line-height:1;text-align:left;text-shadow:0 1px 8px rgba(0,0,0,.5);z-index:2}
.vcard-date b{display:block;font-size:1.9rem;font-weight:900;font-style:italic;letter-spacing:-.02em}
.vcard-date i{font-size:.72rem;font-style:normal;text-transform:uppercase;letter-spacing:.09em;opacity:.95}
/* Overlays absolut halten: schlägt .duotone>*:not(img){position:relative} (sonst rutscht das Datum unters Bild) */
.vcard-media>.vcard-date,.vcard-media>.vcard-status,.vcard-media>.vcard-type{position:absolute}
.vcard-status{position:absolute;right:12px;top:12px;z-index:2;font-size:.66rem;font-weight:800;letter-spacing:.02em;padding:5px 11px;border-radius:99px}
.vcard-body{padding:20px 20px 22px;display:flex;flex-direction:column;gap:9px;flex:1}
.vcard-tw{align-self:flex-start;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--royal-blue);background:#e8f3fb;padding:4px 11px;border-radius:99px}
.vcard-title{font-size:1.14rem;line-height:1.28;margin:1px 0 0}
.vcard-kurz{color:var(--warm-grey);font-size:.92rem;line-height:1.5;margin:0}
.vcard-more{margin-top:auto;padding-top:6px;color:var(--royal-blue);font-weight:800;font-size:.9rem}
.vcard:hover .vcard-more{color:var(--royal-blue-d,#0f6fbf)}
@media(max-width:520px){.vcards{grid-template-columns:1fr}}
/* Typ-Badge im gemischten Aktuelles-Grid (Termin vs. News) */
.vcard-type{position:absolute;right:12px;top:12px;z-index:2;font-size:.64rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:5px 11px;border-radius:99px;color:#fff}
.vcard-type--termin{background:var(--royal-blue)}
.vcard-type--news{background:var(--lime);color:#1c2b00}
/* ---- /veranstaltung/ Seiten-Hero + Sektions-Rhythmus ---- */
.ver-hero{max-width:var(--maxw);margin:0 auto;padding:48px 24px 4px;text-align:center}
.ver-hero .eyebrow{display:inline-flex}
.ver-hero-h{font-size:clamp(2rem,5vw,3rem);font-weight:900;letter-spacing:-.02em;line-height:1.05;margin:.14em 0 .2em}
.ver-hero-lead{color:#4a4a47;font-size:1.12rem;line-height:1.6;max-width:58ch;margin:0 auto}
.ver-hero + .ck-sec{padding-top:26px}
/* wenige Karten nicht auseinanderziehen */
.vd-list--grid .vcards{grid-template-columns:repeat(auto-fill,minmax(300px,360px));justify-content:center}
.vd-list--grid .vcards>*{width:100%;max-width:360px}
/* ---- Rechtstexte (Impressum / Datenschutz) ---- */
.legal{max-width:820px;margin:0 auto;padding:48px 24px 72px}
.legal h1{font-size:clamp(1.9rem,4vw,2.6rem);font-weight:900;letter-spacing:-.02em;line-height:1.08;margin:0 0 6px}
.legal .legal-sub{color:var(--warm-grey);margin:0 0 26px}
.legal h2{font-size:1.22rem;font-weight:800;margin:30px 0 8px;color:var(--anthrazit)}
.legal p,.legal li{color:#3a3d40;line-height:1.65}
.legal p{margin:0 0 12px}
.legal ul{margin:0 0 12px;padding-left:20px}
.legal address{font-style:normal;line-height:1.65}
.legal a{color:var(--royal-blue-d,#0f6fb8)}
.legal .legal-note{background:var(--sand);border:1px dashed #c9c2ae;border-radius:12px;padding:16px 20px;margin:0 0 26px;color:#57534a;font-size:.96rem}
/* Startseiten-Sektion „Aktuelles" */
.aktuelles{padding:64px 24px 8px}
.ak-h{font-size:clamp(1.6rem,3.4vw,2.2rem);margin:.15em 0 26px}
.ak-more{margin:26px 0 0;font-weight:700}
.ak-more a{color:var(--royal-blue);text-decoration:none}
.ak-more a:hover{text-decoration:underline}
/* News-Detail: Datum-Chip, News-Themenlabel, breiterer Textkörper */
.vd-datum{display:inline-block;font-size:.8rem;font-weight:700;color:var(--warm-grey)}
.vd-tw--news{background:#eef6e2;color:#3d6a1c}
.vd-body--wide{max-width:none}
/* Schulen: Verzeichnis-Grid + Detail-Kopf */
.schulen{padding:78px 24px 24px}
.schul-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px;margin-top:26px;grid-auto-rows:1fr}
/* Karten-Grids: Gutenberg-Flow-Blockabstand raus + gleiche Höhe (Philine: „1. Kachel größer") */
.cards>*,.tests>*,.cols>*,.tiers>*,.flow>*{margin-block-start:0!important}
.cards,.tests,.cols,.tiers,.flow{align-items:stretch}
.schul-card{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid #ececea;border-radius:14px;padding:18px 20px;text-decoration:none;color:inherit;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s,border-color .15s}
.schul-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--royal-blue)}
.schul-logo{flex:0 0 52px;width:52px;height:52px;border-radius:10px;background:#eef4f9;color:var(--royal-blue);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.05rem;overflow:hidden}
.schul-logo img{width:100%;height:100%;object-fit:contain;padding:6px}
.schul-body{display:flex;flex-direction:column;min-width:0}
.schul-name{font-weight:600;line-height:1.25}
.schul-meta{font-size:.85rem;color:var(--warm-grey);margin-top:4px}
.schul-head{display:flex;align-items:center;gap:20px;margin:8px 0 6px}
.schul-logo--lg{flex:0 0 88px;width:88px;height:88px;border-radius:16px;font-size:1.7rem}
.schul-satz{color:var(--warm-grey);font-size:1.05rem;margin:6px 0 0;font-style:italic}
.schul-termine{margin-top:34px;border-top:1px solid #ececea;padding-top:22px}
@media(max-width:520px){.schul-grid{grid-template-columns:1fr}.schul-head{gap:14px}.schul-logo--lg{flex-basis:64px;width:64px;height:64px}}
/* Anreiz-Seite /fuer-schulen/ */
.schul-hero{position:relative;color:#fff;padding:16vh max(24px,calc((100% - var(--maxw))/2)) 15vh;text-align:left;overflow:hidden;background:var(--anthrazit) center/cover no-repeat;background-image:url(../img/stock/jugend-workshop.jpg);clip-path:polygon(0 0,100% 0,100% calc(100% - 5vw),0 100%)}
.schul-hero::before{content:"";position:absolute;inset:0;background:var(--grad-brand);opacity:.84;z-index:0}
.schul-hero>*{position:relative;z-index:1}
.schul-hero .eyebrow{color:#fff;opacity:.92}
.schul-hero h1{font-size:clamp(2.1rem,5vw,3.6rem);font-style:italic;max-width:22ch;margin:10px 0 0;color:#fff}
.schul-hero p{font-size:1.2rem;max-width:52ch;margin:18px 0 0;color:#fff;opacity:.96}
.schul-hero .btn-row{display:flex;gap:12px;justify-content:flex-start;flex-wrap:wrap;margin-top:30px}
.schul-hero .btn-ghost{background:#ffffff1f;color:#fff;border:1px solid #ffffff5c}
.schul-hero .btn-ghost:hover{background:#ffffff33}
.schul-sec{max-width:var(--maxw);margin:0 auto;padding:78px 24px 20px}
.schul-sec h2{font-size:clamp(1.6rem,3.4vw,2.2rem);margin:.1em 0 10px}
.schul-sec .lead{color:#4a4a47;font-size:1.08rem;max-width:60ch;margin:0 0 36px}
.schul-sec>p{color:#3a3a37;font-size:1.07rem;line-height:1.75;max-width:68ch;margin:0 0 16px}
.about-hero{background-image:url(../img/stock/jugend-hero.jpg)}
.partner-hero{background-image:url(../img/stock/partner-cnc.jpg)}
/* Schnittmenge-Grafik (CI-SVG) */
.schnittmenge-sec{max-width:var(--maxw);margin:0 auto;padding:70px 24px 24px;text-align:center}
.schnittmenge-sec h2{font-size:clamp(1.6rem,3.4vw,2.2rem);margin:.1em 0 10px}
.schnittmenge-sec .lead{color:#4a4a47;font-size:1.08rem;max-width:56ch;margin:0 auto 28px}
.schnittmenge{width:min(440px,88%);height:auto;display:block;margin:6px auto 0}
/* Über uns: Text + Portrait (Wiedererkennung) */
.about-split{max-width:var(--maxw);margin:0 auto;padding:24px 24px;display:grid;grid-template-columns:1.35fr .85fr;gap:40px;align-items:center}
.about-split .about-txt h2{font-size:clamp(1.5rem,3.2vw,2rem);margin:0 0 12px}
.about-split .about-txt p{color:#3a3a37;font-size:1.06rem;line-height:1.7;margin:0 0 14px}
.about-portrait{border-radius:18px;box-shadow:var(--shadow-lg);aspect-ratio:67/86}
@media(max-width:760px){.about-split{grid-template-columns:1fr;gap:24px}.about-portrait{max-width:300px;margin:0 auto}}
/* Karte der Partnerschulen */
.karte-sec{max-width:1120px;margin:0 auto;padding:70px 24px 8px;text-align:center}
.karte-sec h2{font-size:clamp(1.6rem,3.4vw,2.2rem);margin:.1em 0 8px}
.karte-sec .lead{color:#4a4a47;font-size:1.08rem;max-width:60ch;margin:0 auto 24px}
.karte-sec img{width:100%;height:auto;max-width:1040px;margin:0 auto}
/* „Für dich": Berufe-Band (Frau + Berufsvarianten) */
.berufe-band{margin:0 auto;max-width:var(--maxw);padding:64px 24px 8px}
.berufe-band .eyebrow{margin-bottom:6px}
.berufe-band h2{font-size:clamp(1.6rem,3.4vw,2.2rem);margin:.1em 0 20px;max-width:22ch}
.berufe-band .berufe-media{border-radius:18px;box-shadow:var(--shadow);aspect-ratio:192/83}
.team-band{max-width:var(--maxw);margin:0 auto;padding:64px 24px 8px;text-align:center}
.team-band .eyebrow{margin-bottom:6px}
.team-band h2{font-size:clamp(1.6rem,3.4vw,2.2rem);margin:.1em 0 22px}
.team-band .team-media{max-width:760px;margin:0 auto;border-radius:18px;box-shadow:var(--shadow);aspect-ratio:3/2}
.benefit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.benefit-grid:has(.benefit:nth-child(5)){grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.benefit{background:#fff;border-radius:16px;padding:24px 22px;box-shadow:var(--shadow);border-top:4px solid var(--royal-blue)}
.benefit:nth-child(2){border-top-color:var(--tuerkis,#2BB7C9)}
.benefit:nth-child(3){border-top-color:var(--lime)}
.benefit:nth-child(4){border-top-color:var(--royal-blue-d,#0F6FB8)}
.benefit:nth-child(5){border-top-color:var(--warm-grey,#737270)}
.benefit h3{font-size:1.15rem;margin:0 0 8px}
.benefit p{color:var(--warm-grey);margin:0;line-height:1.55}
.schul-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px;margin-top:8px}
.schul-stat{background:#f4f7f4;border-radius:14px;padding:26px 18px;text-align:center}
.schul-stat b{display:block;font-size:2.3rem;font-weight:900;font-style:italic;background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:1}
.schul-stat span{display:block;margin-top:8px;color:#4a4a47;font-size:.95rem}
.schul-cta{max-width:var(--maxw);margin:64px auto 0;padding:0 24px 100px}
.schul-cta-inner{background:var(--anthrazit);color:#fff;border-radius:20px;padding:44px 40px;text-align:center;position:relative;overflow:hidden}
.schul-cta-inner::before{content:"";position:absolute;left:0;top:0;height:8px;width:100%;background:var(--grad-brand)}
.schul-cta-inner h2{color:#fff;font-size:clamp(1.5rem,3vw,2.1rem);margin:0 0 10px}
.schul-cta-inner p{color:#c7ccd2;max-width:52ch;margin:0 auto 22px}
/* Button im „Für dich"-Hero */
.fd-hero .wp-block-buttons{margin-top:24px}
.fd-hero .wp-block-button__link{background:#fff;color:var(--anthrazit);font-weight:900;font-size:1.05rem;padding:12px 22px;border-radius:10px}
.fd-hero .wp-block-button__link:hover{background:var(--lime);color:#1c2b00}
.vd-cta{margin:26px 0 0}
.vd-gallery{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0}
.vd-gallery-item{flex:0 0 auto;width:168px;height:114px;border-radius:8px;overflow:hidden;background:var(--anthrazit)}
.vd-gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}
.vd-gallery-item:hover img{transform:scale(1.05)}
.pill.free{background:#f1f8e6;color:var(--lime-d)}
.pill.few{background:#fff3e0;color:#b56a00}
.pill.online{background:#eaf4fd;color:var(--royal-blue)}

/* ---- Praktika-Karten ---- */
.praktika{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.prak{background:#fff;border-radius:12px;padding:20px;box-shadow:var(--shadow);border-left:4px solid var(--royal-blue);transition:transform .15s}
.prak:hover{transform:translateY(-3px)}
.prak .field{font-weight:900;font-size:1.1rem}
.prak .firma{color:var(--warm-grey);font-size:.9rem;margin-top:2px}
.prak .ort{display:inline-block;margin-top:10px;font-size:.78rem;font-weight:800;color:var(--lime-d)}

/* ---- Unternehmens-Showcase (Partner entdecken) ---- */
.firmen-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.firma-card{background:#fff;border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);border-top:4px solid var(--royal-blue);display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
.firma-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.firma-card .firma-logo{width:48px;height:48px;border-radius:12px;background:var(--grad-brand);color:#fff;display:grid;place-items:center;font-weight:900;font-style:italic;margin-bottom:12px}
.firma-card .firma-name{font-weight:900;font-size:1.05rem;line-height:1.2}
.firma-card .firma-meta{color:var(--warm-grey);font-size:.82rem;margin-top:4px}
.firma-card .firma-satz{color:#555;font-size:.92rem;margin:12px 0 14px;flex:1}
.firma-card .firma-link{font-weight:800;color:var(--royal-blue);font-size:.9rem;text-decoration:none}
.firma-card a.firma-link:hover{text-decoration:underline}
.firma-card .firma-link.is-soon{color:#a8a89f}

/* ---- Partner-Logo-Leiste (Platzhalter) ---- */
.logos{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.logos .lg{height:48px;min-width:120px;border-radius:8px;background:#fff;border:1px dashed #d9d4c7;
  display:flex;align-items:center;justify-content:center;color:#b3ad9e;font-size:.72rem;font-weight:800}

/* ---- Echte Partner-Logos (Logo-Wand) ---- */
.logo-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;align-items:center}
.logo-wall .lg{background:#fff;border:1px solid #ece8df;border-radius:12px;height:86px;display:flex;align-items:center;justify-content:center;padding:14px;box-shadow:var(--shadow)}
.logo-wall .lg img{max-height:100%;max-width:100%;object-fit:contain;filter:grayscale(1);opacity:.72;transition:filter .2s,opacity .2s}
.logo-wall .lg:hover img{filter:none;opacity:1}

/* ---- Ablauf-Schritte (nummeriert) ---- */
.flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;counter-reset:f}
.flow .it{position:relative;padding:22px;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}
.flow .it::before{counter-increment:f;content:counter(f);display:inline-flex;align-items:center;justify-content:center;
  width:40px;height:40px;border-radius:50%;background:var(--grad-brand);color:#fff;font-weight:900;font-style:italic;margin-bottom:12px}
.flow .it h3{font-size:1.15rem;margin-bottom:6px}
.flow .it p{color:#555;font-size:.96rem}

/* ---- Abschnitts-CTA (gemeinsam) ---- */
.endcta{text-align:center;padding:12vh 24px;background:var(--grad-brand);color:#fff;position:relative;overflow:hidden}
.endcta h2{font-size:clamp(2rem,5vw,3.1rem);font-style:italic}
.endcta p{margin:12px auto 0;max-width:48ch;opacity:.95}
.endcta .btn{margin-top:24px;background:#fff;color:var(--anthrazit)}
.endcta .wp-block-buttons{margin-top:24px}
.endcta .wp-block-button__link{background:#fff;color:var(--anthrazit);font-weight:800;border-radius:9px;padding:12px 24px}
.endcta .wp-block-button__link:hover{background:var(--lime);color:#1c2b00}

/* ---- Cookie-/Speicher-Hinweis ---- */
.tsb-consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:200;max-width:600px;margin:0 auto;
  background:#fff;border:1px solid #e7e4dc;border-radius:14px;box-shadow:var(--shadow-lg);
  padding:14px 18px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:.88rem}
.tsb-consent p{margin:0;flex:1;min-width:220px;color:#444;line-height:1.45}
.tsb-consent a{color:var(--royal-blue);font-weight:700}
.tsb-consent[hidden]{display:none}

/* ---- YouTube-Video, DSGVO-konform (2-Klick): lokales Vorschaubild, iframe erst nach Klick,
   Auslieferung über youtube-nocookie.com. Vor dem Klick geht keine Anfrage an Google raus.
   Markup + Verhalten: assets/js/yt-consent.js. Wiederverwendbar für jedes Erklärvideo. */
.yt-consent{max-width:720px}
.yt-consent-frame{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:var(--anthrazit);box-shadow:var(--shadow)}
.yt-consent-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-consent-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;width:100%;height:100%;border:0;padding:0;margin:0;background:none;cursor:pointer}
.yt-consent-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.yt-consent-icon{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:var(--royal-blue);color:#fff;font-size:1.5rem;box-shadow:0 10px 30px rgba(0,0,0,.35);transition:background .15s,transform .15s}
.yt-consent-play:hover .yt-consent-icon,.yt-consent-play:focus-visible .yt-consent-icon{background:var(--royal-blue-d);transform:scale(1.06)}
.yt-consent-label{position:relative;z-index:1;color:#fff;font-weight:800;background:rgba(31,34,37,.55);padding:6px 14px;border-radius:99px;font-size:.85rem;text-align:center}
.yt-consent-hint{margin:10px 2px 0;color:var(--warm-grey);font-size:.82rem;line-height:1.5}
.yt-consent-hint a{color:var(--royal-blue-d);font-weight:700}
.yt-consent-frame.is-playing .yt-consent-play{display:none}

/* ---- Gütesiegel / Partnerplakette ---- */
.guetesiegel-band{background:var(--sand);padding:8vh 24px}
.guetesiegel-band .gs-inner{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:auto 1fr;gap:44px;align-items:center}
.guetesiegel-band .gs-img{width:340px;height:auto;flex:0 0 auto;filter:drop-shadow(0 14px 34px #1f221522)}
.guetesiegel-band .gs-txt h2{font-style:italic;font-size:clamp(1.6rem,4vw,2.4rem);margin:8px 0 12px}
.guetesiegel-band .gs-txt .btn{margin-top:18px}
@media(max-width:720px){.guetesiegel-band .gs-inner{grid-template-columns:1fr;justify-items:center;text-align:center}.guetesiegel-band .gs-txt .eyebrow{justify-content:center}}

/* ---- Mobile-Navigation ---- */
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px}
.nav-toggle span{width:24px;height:2px;background:var(--anthrazit);transition:.2s}
@media(max-width:760px){
  .site-nav{position:absolute;top:100%;left:0;right:0;background:var(--ivory);flex-direction:column;
    align-items:flex-start;gap:6px;padding:14px 24px;border-bottom:1px solid #00000012;
    box-shadow:var(--shadow);display:none;z-index:55}
  .site-header.nav-open .site-nav{display:flex}
  .site-nav a{margin:0;padding:8px 0;width:100%}
  .nav-toggle{display:flex}
  .site-header .seg{display:none}
  .site-header .logo .logo-endorse{font-size:.54rem}
  .site-header.nav-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .site-header.nav-open .nav-toggle span:nth-child(2){opacity:0}
  .site-header.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .concept-bar .which{display:none}
}

/* ---- Partner-Detailseite (/partnerprofil/) — cleanes zweispaltiges Profil ---- */
.pd{max-width:1080px;margin:0 auto;padding:44px 24px 96px}
.pd-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:28px;color:var(--royal-blue);font-weight:700;text-decoration:none;font-size:.92rem}
.pd-back span{transition:transform .15s}
.pd-back:hover span{transform:translateX(-3px)}
.pd-head{display:flex;gap:26px;align-items:center;padding-bottom:30px;margin-bottom:40px;border-bottom:1px solid #0000000f}
.pd-logo{width:150px;height:150px;flex:0 0 auto;border-radius:22px;background:var(--grad-brand);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-style:italic;font-size:2.8rem;box-sizing:border-box}
.pd-logo.has-img{background:#fff;border:1px solid #ececec;padding:16px;overflow:hidden}
@media(max-width:520px){.pd-logo{width:120px;height:120px}}
.pd-logo.has-img img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.pd-head-main{min-width:0}
.pd-tier{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:4px 11px;border-radius:99px;margin-bottom:12px}
.pd-tier--top{color:var(--royal-blue);background:#e8f3fb}
.pd-tier--haupt{color:#1a8a99;background:#e5f6f8}
.pd-tier--sponsor{color:var(--lime-d);background:#eef6dd}
.pd-name{font-size:clamp(1.7rem,3.6vw,2.5rem);line-height:1.08;margin:0 0 13px}
.pd-chips{display:flex;flex-wrap:wrap;gap:7px}
.pd-chip{background:#f1f4f7;color:#4a5560;font-weight:600;font-size:.78rem;padding:5px 12px;border-radius:99px}
.pd-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:start}
.pd-main{min-width:0}
.pd-block{margin-bottom:44px}
.pd-block:last-child{margin-bottom:0}
.pd-h{font-size:.85rem;font-weight:800;letter-spacing:.06em;color:var(--warm-grey);text-transform:uppercase;margin:0 0 16px}
.pd-motto{font-size:clamp(1.25rem,2.4vw,1.55rem);line-height:1.42;font-weight:500;color:#2b2b28;font-style:italic;position:relative;padding-left:24px}
.pd-motto::before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:4px;border-radius:99px;background:var(--grad-brand)}
.pd-motto p{margin:0 0 14px}
.pd-motto p:last-child{margin:0}
.pd-prose{color:#4a4a47;font-size:1.02rem;line-height:1.72}
.pd-prose p{margin:0 0 14px}
.pd-prose p:last-child{margin:0}
.pd-jobs{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.pd-jobs li{padding:12px 16px;background:#fff;border:1px solid #00000010;border-radius:12px;font-size:.92rem;font-weight:500;color:#333}
.pd-praktika{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-direction:column;gap:8px}
.pd-praktika li{display:flex;flex-wrap:wrap;align-items:baseline;gap:9px;padding:12px 16px;background:#f6faf0;border-left:3px solid var(--lime);border-radius:0 10px 10px 0}
.pd-prak-b{font-weight:700}
.pd-prak-ort{color:var(--warm-grey);font-size:.85rem}
.pd-prak-lnk{display:flex;flex-wrap:wrap;align-items:baseline;gap:9px;flex:1;text-decoration:none;color:inherit}
.pd-prak-lnk:hover .pd-prak-b{color:var(--royal-blue)}
.pd-prak-go{margin-left:auto;color:var(--royal-blue);font-weight:700;font-size:.85rem;white-space:nowrap}
/* pd-prak-desc: seit #4 (ausführliche Praktikumsbeschreibungen, Migration von der
   Altseite) mehrabsätzig über $paras() gerendert — daher die p-Kind-Regeln. */
.pd-prak-desc{flex-basis:100%;width:100%;margin:4px 0 0;color:#4a4a47;font-size:.9rem;line-height:1.5}
.pd-prak-desc p{margin:0 0 8px}
.pd-prak-desc p:last-child{margin-bottom:0}
.pd-praktika li{transition:border-color .15s}
.pd-praktika li:hover{border-left-color:var(--royal-blue)}
.pd-finder{margin-top:4px}
.pd-media{display:flex;flex-wrap:wrap;gap:8px}
.pd-media-tile{position:relative;display:block;height:134px;border-radius:6px;overflow:hidden;background:#eef2f5}
.pd-media-tile img{height:134px;width:auto;max-width:none;object-fit:cover;display:block}
.pd-video::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.16)}
.pd-play{position:absolute;inset:0;margin:auto;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.92);color:var(--royal-blue);border-radius:50%;font-size:.9rem;padding-left:3px;z-index:1}
@media(max-width:520px){.pd-media-tile,.pd-media-tile img{height:104px}}
.pd-side{position:sticky;top:92px;display:flex;flex-direction:column;gap:18px}
.pd-card{background:#fff;border:1px solid #00000010;border-radius:18px;padding:24px;box-shadow:0 4px 24px #0000000a}
.pd-card-h{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--warm-grey);margin:0 0 16px}
.pd-facts{margin:0;display:flex;flex-direction:column;gap:15px}
.pd-facts div{display:flex;flex-direction:column;gap:3px}
.pd-facts dt{font-size:.74rem;font-weight:700;color:var(--warm-grey);text-transform:uppercase;letter-spacing:.04em}
.pd-facts dd{margin:0;font-weight:600;color:#2b2b28;word-break:break-word}
.pd-facts a{color:var(--royal-blue);text-decoration:none}
.pd-facts a:hover{text-decoration:underline}
/* Offene Plätze (Praktikum/Ausbildung/Ferienjob, Änderungsplan #6) */
.pd-plaetze-badge{display:inline-block;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:99px;margin:0 6px 6px 0}
.pd-plaetze-badge--praktikum{color:var(--royal-blue);background:var(--blue-tint)}
.pd-plaetze-badge--ausbildung{color:#1a8a99;background:#e5f6f8}
.pd-plaetze-badge--ferienjob{color:var(--lime-d);background:#eef6dd}
.pd-plaetze-badge--auf_anfrage{color:var(--warm-grey);background:#f1f4f7}
.pd-plaetze-stand{display:block;margin-top:2px;font-size:.72rem;font-weight:500;color:var(--warm-grey);text-transform:none;letter-spacing:0}
.pd-contact p{margin:0 0 9px;color:#3a3a37}
.pd-contact p:last-child{margin:0}
.pd-person{font-weight:700;color:#2b2b28}
.pd-addr{font-size:.92rem;color:var(--warm-grey)}
.pd-contact a{color:var(--royal-blue);text-decoration:none;font-weight:600}
.pd-contact a:hover{text-decoration:underline}
@media(max-width:820px){
  .pd-grid{grid-template-columns:1fr;gap:34px}
  .pd-side{position:static;flex-direction:row;flex-wrap:wrap}
  .pd-card{flex:1 1 240px}
  .pd-head{flex-direction:column;align-items:flex-start}
}
@media(max-width:520px){.pd-jobs{grid-template-columns:1fr}.pd-side{flex-direction:column}}
.firma-card .firma-link{cursor:pointer}
.firma-card-link{text-decoration:none;color:inherit;text-align:center;cursor:pointer}
.firma-card-link .firma-name{font-size:.95rem;font-weight:500;line-height:1.3;color:#3a3a37}
/* Reine Logo-Kacheln (nur Firmenlogos) */
.firma-logo-only{padding:14px;justify-content:center;align-items:center}
.firma-logo-only .firma-logo{margin-bottom:0}
.firma-logo-only .firma-logo.has-img{width:100%;height:112px;padding:8px;display:flex;align-items:center;justify-content:center}
.firma-logo-only .firma-logo.has-img img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.firma-logo-only .firma-ini{width:64px;height:64px;border-radius:14px;background:var(--grad-brand);color:#fff;display:grid;place-items:center;font-weight:900;font-style:italic;font-size:1.3rem}
.firma-card .firma-logo.has-img{width:100%;height:120px;box-sizing:border-box;border:1px solid #ececec;border-radius:14px;background:#fff;padding:12px;margin-bottom:14px;overflow:hidden}
.firma-card .firma-logo.has-img img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;display:block}
/* Partner-Übersicht nach Sponsoring-Stufe */
.firmen-showcase{display:block}
.firma-tier{margin:0 0 44px}
.firma-tier-h{display:flex;align-items:center;gap:12px;font-size:1.35rem;margin:0 0 20px}
.firma-tier-h span{position:relative;padding-left:16px}
.firma-tier-h span::before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:6px;border-radius:99px;background:var(--grad-brand)}
.firma-tier-h em{font-style:normal;font-weight:800;font-size:.78rem;color:var(--warm-grey);background:#eef2f5;padding:2px 11px;border-radius:99px}
/* Stufen in den drei TS-Farben (Verlauf: Blau -> Türkis -> Lime) */
.firma-tier--top .firma-tier-h span::before{background:var(--royal-blue)}
.firma-tier--top .firma-tier-h em{color:var(--royal-blue);background:#e8f3fb}
.firma-tier--top .firma-card{border-top-color:var(--royal-blue)}
.firma-tier--haupt .firma-tier-h span::before{background:var(--tuerkis)}
.firma-tier--haupt .firma-tier-h em{color:#1a8a99;background:#e5f6f8}
.firma-tier--haupt .firma-card{border-top-color:var(--tuerkis)}
.firma-tier--sponsor .firma-tier-h span::before{background:var(--lime)}
.firma-tier--sponsor .firma-tier-h em{color:var(--lime-d);background:#eef6dd}
.firma-tier--sponsor .firma-card{border-top-color:var(--lime)}
/* Scroll-nach-oben-Button */
.scrolltop{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border-radius:50%;border:none;background:var(--royal-blue);color:#fff;font-size:1.4rem;line-height:1;cursor:pointer;box-shadow:0 6px 20px #1a8fe355;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s,transform .2s,visibility .2s;z-index:55}
.scrolltop.show{opacity:1;visibility:visible;transform:none}
.scrolltop:hover{background:var(--tuerkis);transform:translateY(-2px)}
@media(max-width:560px){.scrolltop{right:14px;bottom:14px;width:42px;height:42px}}
/* Startseite: „Worum es geht" — Potential-Formel */
.formula{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:12px;margin-top:10px}
.formula-card{flex:1 1 190px;max-width:228px;background:#fff;border:1px solid #00000010;border-top:4px solid var(--royal-blue);border-radius:14px;padding:22px 20px;box-shadow:0 4px 20px #0000000a;display:flex;flex-direction:column;gap:5px;text-align:left}
.formula-card.fc-2{border-top-color:var(--tuerkis)}
.formula-card.fc-3{border-top-color:var(--lime)}
.formula-card b{font-size:1.1rem;color:#2b2b28}
.formula-card span{color:var(--warm-grey);font-size:.92rem}
.formula-op{display:flex;align-items:center;font-size:1.5rem;font-weight:800;color:#c7cdd2}
.formula-result{flex:1 1 190px;max-width:228px;background:var(--grad-brand);color:#fff;border-radius:14px;padding:22px 20px;display:flex;flex-direction:column;justify-content:center;gap:2px;box-shadow:0 10px 28px #1a8fe340}
.formula-result span{font-size:.92rem;opacity:.9;font-weight:600}
.formula-result b{font-size:1.55rem;line-height:1}
@media(max-width:820px){.formula{flex-direction:column;align-items:stretch}.formula-card,.formula-result{max-width:none}.formula-op{justify-content:center;transform:rotate(90deg)}}
/* Startseite: „Dein Weg" — nummerierte Schritt-Timeline */
.steps{display:grid;grid-template-columns:repeat(6,1fr);margin-top:16px}
.step{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;padding:0 6px;text-align:center}
.step::before{content:"";position:absolute;top:23px;right:50%;width:100%;height:3px;background:var(--grad-brand);z-index:0}
.step:first-child::before{display:none}
.step-n{position:relative;z-index:1;width:48px;height:48px;border-radius:50%;background:#fff;border:3px solid var(--royal-blue);color:var(--royal-blue);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.05rem;box-shadow:0 3px 10px #1a8fe322}
.step b{font-size:.9rem;font-weight:600;color:#3a3a37;line-height:1.25}
.step-d{margin-top:-8px;font-size:.72rem;color:#6b6b68;line-height:1.3;max-width:16ch}
.step-neu .step-n{border-color:var(--lime);color:#5c8a1c;box-shadow:0 3px 10px #90c73d40}
@media(max-width:720px){.steps{grid-template-columns:repeat(3,1fr);row-gap:28px}.step::before{display:none}}
@media(max-width:420px){.steps{grid-template-columns:repeat(2,1fr)}}
/* Verfahren-Karten (Seite „Unser Verfahren") */
.verf-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px}
.verf-card{position:relative;background:#fff;border:1px solid #e7ecef;border-radius:16px;padding:26px 24px 24px;box-shadow:var(--shadow)}
.verf-card .verf-n{font-family:'Inter Tight',Inter,sans-serif;font-weight:900;font-size:1.5rem;background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}
.verf-card b{display:block;margin:8px 0 8px;font-size:1.12rem;color:var(--anthrazit)}
.verf-card p{margin:0;color:#5b5b58;font-size:.96rem;line-height:1.5}
@media(max-width:720px){.verf-steps{grid-template-columns:1fr}}
/* Anmeldeseite */
.two-tracks{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}
.track-card{background:#fff;border:1px solid #e7ecef;border-radius:16px;padding:26px 24px;box-shadow:var(--shadow)}
.track-tag{display:inline-block;font-family:'Inter Tight',Inter,sans-serif;font-weight:800;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--grad-brand);padding:6px 14px;border-radius:20px;margin-bottom:12px}
.track-card p{margin:0;color:#5b5b58;line-height:1.55}
.info-box{margin-top:28px;background:#eef7fb;border-left:4px solid var(--royal-blue);border-radius:10px;padding:16px 20px;color:#33474f;line-height:1.55}
.kundengruppen{margin:16px 0 6px;padding:0;list-style:none;display:grid;gap:10px;max-width:640px}
.kundengruppen li{position:relative;padding:12px 16px 12px 42px;background:#fafcfd;border:1px solid #e7ecef;border-radius:10px;color:#3a3a37}
.kundengruppen li::before{content:"";position:absolute;left:16px;top:50%;transform:translateY(-50%);width:14px;height:14px;border-radius:50%;background:var(--grad-brand)}
.kg-note{font-size:.9rem;color:#82817e;margin-top:8px}
.checkliste-phases{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px}
.cl-phase{background:#fff;border:1px solid #e7ecef;border-radius:14px;padding:22px 20px;box-shadow:var(--shadow)}
.cl-phase b{display:block;font-family:'Inter Tight',Inter,sans-serif;font-size:1.05rem;color:var(--royal-blue);margin-bottom:8px}
.cl-phase p{margin:0;color:#5b5b58;font-size:.95rem;line-height:1.5}
.mitbringen-h{margin:34px 0 10px;font-size:1.15rem}
.mitbringen{margin:0;padding-left:0;list-style:none;display:grid;gap:8px;max-width:640px}
.mitbringen li{position:relative;padding:8px 12px 8px 32px;color:#3a3a37}
.mitbringen li::before{content:"✓";position:absolute;left:8px;color:var(--lime);font-weight:900}
@media(max-width:720px){.two-tracks,.checkliste-phases{grid-template-columns:1fr}}
/* Anmelde-Formular */
.anm-sec{background:#fafcfd;border-top:1px solid #eef2f4;border-bottom:1px solid #eef2f4}
.anm-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;max-width:680px;margin-top:14px}
.anm-full{grid-column:1 / -1}
.anm-form label{display:flex;flex-direction:column;font-weight:600;color:#3a3a37;font-size:.95rem;gap:6px}
.anm-form input,.anm-form select{padding:11px 12px;border:1px solid #cfd6da;border-radius:9px;font:inherit;background:#fff}
.anm-check{flex-direction:row!important;align-items:flex-start;gap:10px;font-weight:400;color:#5b5b58;font-size:.92rem}
.anm-check input{width:18px;height:18px;margin-top:2px;flex:none}
.anm-hp{position:absolute!important;left:-9999px;width:1px;height:1px}
.anm-btn{background:var(--royal-blue);color:#fff;border:0;border-radius:10px;padding:13px 28px;font-weight:800;font-size:1rem;cursor:pointer;justify-self:start}
.anm-btn:disabled{opacity:.5;cursor:default}
.anm-msg{min-height:1.2em;margin:2px 0 0;color:#c0392b}
.anm-msg.ok{color:#2e7d32;font-weight:600}
@media(max-width:600px){.anm-form{grid-template-columns:1fr}}
@media(max-width:560px){.pp-head{flex-direction:column;align-items:flex-start}}
/* Partnerplakette-Sektion */
.plakette-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;margin-top:18px}
.plakette-img img{width:100%;max-width:440px;height:auto;border-radius:16px;filter:drop-shadow(0 12px 30px rgba(26,143,227,.16))}
.plakette-txt p:last-child{color:#5b5b58;line-height:1.6}
@media(max-width:820px){.plakette-wrap{grid-template-columns:1fr}.plakette-img{order:-1}}
/* QA: Platzhalter-Sektionen ausgeblendet (22.07.2026), reaktivieren = qa-hidden entfernen */
.qa-hidden{display:none!important}
/* Schul-Detail: Anreiz-Karte + Anfahrt — einfarbige helle Tönung statt Verlauf (WCAG-AA: Text/Button auf --blue-tint) */
.schul-cta-card{margin-top:26px;background:var(--blue-tint);border-radius:16px;padding:24px 26px;color:var(--anthrazit);box-shadow:var(--shadow)}
.schul-cta-card .pd-card-h{color:var(--anthrazit);margin-top:0}
.schul-cta-card p{color:#3a3d40;margin:8px 0 16px;line-height:1.55}
.pd-maps{display:inline-block;margin-top:12px;color:var(--royal-blue);text-decoration:none;font-weight:700}
.pd-maps:hover{text-decoration:underline}

/* ---- Förderseite (.efre) — ausgelagert aus post_content (kein Texturize) ---- */
.efre{--rb:#1A8FE3;--rbd:#0F6FB8;--tk:#2BB7C9;--lm:#90C73D;--wg:#737270;--ink:#1F2225;--ivory:#FBF9F4;--sand:#F2EEE4;
  font-family:"Inter",system-ui,-apple-system,sans-serif;color:#2a2d30;line-height:1.65}
.efre *{box-sizing:border-box}
.efre .efre-hero{background:linear-gradient(98deg,var(--rb),var(--tk) 50%,var(--lm));color:#fff;padding:60px 24px 56px;text-align:center}
.efre .efre-badge{display:inline-block;background:#fff;border-radius:16px;padding:18px 24px;margin:0 0 26px;box-shadow:0 16px 44px rgba(31,34,37,.2)}
.efre .efre-badge img{display:block;width:420px;max-width:100%;height:auto}
.efre .efre-hero h1{font-family:"Inter Tight","Inter",system-ui,sans-serif;font-weight:900;font-size:clamp(1.9rem,5vw,3rem);
  line-height:1.08;margin:0 0 12px;letter-spacing:-.01em}
.efre .efre-hero .efre-sub{font-size:1.08rem;margin:0;opacity:.96;font-weight:500}
.efre .efre-body{max-width:820px;margin:0 auto;padding:52px 24px 24px}
.efre .efre-lead{font-size:1.18rem;color:#3a3d40;background:var(--ivory);border-left:4px solid var(--lm);
  border-radius:0 14px 14px 0;padding:18px 22px;margin:0 0 40px}
.efre .efre-eyebrow{color:var(--wg);font-weight:900;text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;
  display:inline-flex;align-items:center;gap:10px;margin:0 0 8px}
.efre .efre-eyebrow::before{content:"";width:26px;height:5px;border-radius:99px;
  background:linear-gradient(98deg,var(--rb),var(--tk) 50%,var(--lm));flex:0 0 auto}
.efre h2{font-family:"Inter Tight","Inter",system-ui,sans-serif;font-weight:900;font-size:1.5rem;color:var(--ink);
  margin:0 0 14px;letter-spacing:-.01em}
.efre .efre-section{margin:0 0 40px}
.efre .efre-section p{margin:0 0 14px}
.efre ul.efre-list{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:10px}
.efre ul.efre-list li{position:relative;padding:2px 0 2px 30px;color:#33363a}
.efre ul.efre-list li::before{content:"";position:absolute;left:0;top:9px;width:16px;height:16px;border-radius:5px;
  background:linear-gradient(98deg,var(--rb),var(--lm));flex:0 0 auto}
.efre .efre-note{background:var(--sand);border:1px dashed #c9c2ae;border-radius:14px;padding:20px 22px;color:#57534a;font-size:.98rem}
.efre .efre-note strong{color:var(--ink)}
.efre .efre-contact{background:var(--ivory);border-radius:18px;padding:26px 28px;margin:8px 0 0}
.efre .efre-contact .efre-name{font-weight:800;color:var(--ink)}
.efre .efre-contact a{color:var(--rbd);font-weight:600;text-decoration:none}
.efre .efre-contact a:hover{text-decoration:underline}
.efre a{color:var(--rbd)}
.efre .efre-more{margin:30px 0 6px;font-size:.98rem}
.efre .efre-back{display:inline-block;margin:36px 0 8px;font-weight:700;color:var(--rbd);text-decoration:none}
.efre .efre-back:hover{text-decoration:underline}
@media(max-width:560px){.efre .efre-badge img{width:100%}}