/* === DESIGN-LAYER (abgefahren.) — Kontexte, Pseudo-Elemente, Keyframes, Custom-Muster.
   Alles, was das CrocoBuilder-Design-System nicht kann (B4a). Klassen folgen css-naming.md. === */

/* --- on-dark-Kontext: schaltet Text, Kicker, Links, Badges gemeinsam --- */
.on-dark{color:var(--color-text-inverse)}
.on-dark a{color:var(--color-text-inverse)}
.on-dark a:hover{color:var(--color-accent)}
.on-dark .kicker{color:var(--color-accent)}
.on-dark .badge-outline{border-color:rgba(251,252,250,.45);color:var(--color-text-inverse)}

/* --- Section-Head-Feinheiten --- */
.section-head h2 .light,h1 .light,h2 .light{font-weight:700;opacity:.55}
.on-dark .section-head h2 .light,.on-dark h2 .light{opacity:.7}
.section-head-center{text-align:center;margin-inline:auto}

/* --- Original-Schriftzug als Mask (faerbt sich per currentColor) --- */
.wordmark-svg{display:block;width:168px;aspect-ratio:1652.18/252.28;background:currentColor;
  -webkit-mask:url('/wp-content/uploads/abgefahren/logo-abgefahren-wortmarke.svg') no-repeat left center/contain;
  mask:url('/wp-content/uploads/abgefahren/logo-abgefahren-wortmarke.svg') no-repeat left center/contain}
@media (max-width:767px){.wordmark-svg{width:140px}}

/* --- Plattform-Icon-Links --- */
.pf-link{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none;
  font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;font-weight:600;
  opacity:.8;transition:all .4s ease-in-out}
.pf-link:hover{opacity:1;color:var(--color-accent);transform:translateY(-1px)}
.pf-ico{flex:0 0 auto;display:block}

/* --- Player-Pille (Signature) --- */
.player-pill{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface);
  border-radius:var(--radius-pill);padding:10px 24px 10px 10px;max-width:560px}
.player-pill .track{flex:1;min-width:0}
.player-pill .track .t{font-weight:600;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.player-pill .bar{height:4px;background:rgba(20,32,26,.15);border-radius:2px;margin-top:6px;position:relative;overflow:hidden}
.player-pill .bar .fill{position:absolute;inset:0 65% 0 0;background:var(--color-primary);border-radius:2px}
.player-pill .time{font-size:var(--text-xs);color:#6a736c;font-variant-numeric:tabular-nums;white-space:nowrap}
@keyframes playerPulse{0%,100%{opacity:1}50%{opacity:.55}}
.player-pill .bar .fill::after{content:"";position:absolute;right:0;top:-2px;width:8px;height:8px;border-radius:50%;background:inherit;animation:playerPulse 2s ease-in-out infinite}
.player-pill-on-dark{background:rgba(251,252,250,.1)}
.player-pill-on-dark .time{color:rgba(251,252,250,.7)}
.player-pill-on-dark .bar{background:rgba(251,252,250,.25)}
.player-pill-on-dark .bar .fill{background:var(--color-accent)}

/* --- Spotify-Embed --- */
.sp-embed iframe{display:block;width:100%;height:152px;border:0;border-radius:var(--radius-pill)}

/* --- Punkt-Raster (Deko auf dunklen Flaechen) --- */
.dot-raster{position:absolute;inset:0;pointer-events:none;opacity:.35;
  background-image:radial-gradient(rgba(251,252,250,.14) 1px, transparent 1.4px);
  background-size:26px 26px}

/* --- Hairline-Trenner --- */
.hairline-b{border-bottom:1px solid var(--color-hairline)}

/* --- Listen-Modal (Jetzt reinhoeren) — Default ZU via visibility, NIE [hidden] --- */
.listen-modal{position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center;
  padding:var(--space-4);visibility:hidden;pointer-events:none}
.listen-modal.is-open{visibility:visible;pointer-events:auto}
.lm-backdrop{position:absolute;inset:0;background:rgba(20,32,26,.66);backdrop-filter:blur(4px);
  opacity:0;transition:opacity .35s ease;cursor:pointer}
.lm-card{position:relative;display:grid;grid-template-columns:280px minmax(0,1fr);background:var(--color-bg);
  max-width:720px;width:100%;opacity:0;transform:translateY(24px);
  transition:opacity .35s ease, transform .35s cubic-bezier(0.4,0,0.2,1)}
.listen-modal.is-open .lm-backdrop{opacity:1}
.listen-modal.is-open .lm-card{opacity:1;transform:translateY(0)}
.lm-media{overflow:hidden;background:var(--color-surface)}
.lm-media img{width:100%;height:100%;object-fit:cover;display:block}
.lm-body{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);
  align-items:flex-start;justify-content:center;min-width:0}
.lm-title{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);line-height:1.3;margin-top:2px}
.lm-close{position:absolute;top:12px;right:12px;z-index:2;width:36px;height:36px;border-radius:var(--radius-pill);
  border:1px solid rgba(20,32,26,.18);background:var(--color-bg);color:var(--color-text);cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;transition:all .4s ease-in-out}
.lm-close:hover{background:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}
.lm-close:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}
@media (max-width:700px){
  .lm-card{grid-template-columns:1fr;max-width:420px;max-height:92vh;overflow-y:auto}
  .lm-media{aspect-ratio:16/10;max-height:38vh}
}
@media (prefers-reduced-motion:reduce){.lm-backdrop,.lm-card{transition:none}}

/* --- Hero-Torch (Maus-Lichtkegel, weiche Mask-Kante; JS setzt --fx/--fy) --- */
.hero-flash{--fx:-200px;--fy:-200px}
.hero-torch-reveal{position:absolute;inset:0;pointer-events:none;z-index:0;
  background:url('/wp-content/uploads/abgefahren/hero-weltkarte-baeume.jpg') center center/cover;
  filter:brightness(1.16) saturate(1.06);
  -webkit-mask:radial-gradient(36px at var(--fx) var(--fy), #000 55%, transparent 100%);
  mask:radial-gradient(36px at var(--fx) var(--fy), #000 55%, transparent 100%);
  transform:scale(1.07);transform-origin:var(--fx) var(--fy);opacity:0;transition:opacity .4s ease}
.hero-torch-glow{position:absolute;left:0;top:0;width:90px;height:90px;margin:-45px 0 0 -45px;
  transform:translate(var(--fx), var(--fy));border-radius:50%;pointer-events:none;z-index:0;
  background:radial-gradient(circle, rgba(255,255,255,.20), rgba(255,255,255,.07) 45%, transparent 70%);
  mix-blend-mode:screen;opacity:0;transition:opacity .4s ease;will-change:transform}
.hero-flash.torch-on .hero-torch-reveal,.hero-flash.torch-on .hero-torch-glow{opacity:1}
@media (prefers-reduced-motion:reduce){.hero-torch-reveal,.hero-torch-glow{display:none}}

/* --- Header-Verhalten (Klassen setzt site.js) --- */
body.admin-bar .cb-header_root{top:32px}
@media (max-width:782px){body.admin-bar .cb-header_root{top:46px}}

/* --- Plattform-Icons als Mask (faerbbar via currentColor) --- */
.pf-ico{width:16px;height:16px;flex:0 0 auto;display:inline-block;background:currentColor}
.pf-ico-spotify{-webkit-mask:url(/wp-content/uploads/abgefahren/icons/ico-spotify.svg) no-repeat center/contain;mask:url(/wp-content/uploads/abgefahren/icons/ico-spotify.svg) no-repeat center/contain}
.pf-ico-apple{-webkit-mask:url(/wp-content/uploads/abgefahren/icons/ico-apple.svg) no-repeat center/contain;mask:url(/wp-content/uploads/abgefahren/icons/ico-apple.svg) no-repeat center/contain}
.pf-ico-amazon{-webkit-mask:url(/wp-content/uploads/abgefahren/icons/ico-amazon.svg) no-repeat center/contain;mask:url(/wp-content/uploads/abgefahren/icons/ico-amazon.svg) no-repeat center/contain}
.pf-ico-youtube{-webkit-mask:url(/wp-content/uploads/abgefahren/icons/ico-youtube.svg) no-repeat center/contain;mask:url(/wp-content/uploads/abgefahren/icons/ico-youtube.svg) no-repeat center/contain}
.pf-ico-rss{-webkit-mask:url(/wp-content/uploads/abgefahren/icons/ico-rss.svg) no-repeat center/contain;mask:url(/wp-content/uploads/abgefahren/icons/ico-rss.svg) no-repeat center/contain}
.pf-ico-instagram{-webkit-mask:url(/wp-content/uploads/abgefahren/icons/ico-instagram.svg) no-repeat center/contain;mask:url(/wp-content/uploads/abgefahren/icons/ico-instagram.svg) no-repeat center/contain}
.fav-ico{background:none;border-radius:4px;-webkit-mask:none;mask:none}

/* --- Header-Zustaende (site.js toggelt .is-stuck) --- */
.cb-header_root.is-stuck{box-shadow:0 1px 0 var(--color-hairline)}
.cb-header_root.is-stuck .cb-header_inner{padding-top:12px;padding-bottom:12px}
.cb-header_inner{transition:padding .4s ease-in-out}
/* Home: Header als Overlay ueber dem Hero (weiss), bis gescrollt wird */
body.home .cb-header_root:not(.is-stuck){background-color:transparent}
body.home .cb-header_root:not(.is-stuck) .cb-header_brand{color:#fff}
body.home .cb-header_root:not(.is-stuck) .pb-nav__item[data-depth="0"] > .pb-nav__link{color:#fff}
body.home .cb-header_root:not(.is-stuck) .pb-nav__item[data-depth="0"] > .pb-nav__link:hover{color:var(--color-accent)}
body.home .cb-header_root:not(.is-stuck) .pb-nav__collapse-toggle{color:#fff}

/* --- Mobile-Panel: OHNE Ancestor stylen (pb-nav teleportiert es an den body, A13),
       auf die Collapse-Breite gescoped, damit Desktop unberuehrt bleibt --- */
@media (max-width:1024px){
  .pb-nav__mobile-panel{background:var(--color-primary-dark);color:var(--color-text-inverse);
    padding:var(--space-8) var(--space-5)}
  .pb-nav__mobile-panel .pb-nav__link{color:var(--color-text-inverse);font-family:var(--font-display);
    font-weight:700;font-size:var(--text-xl);padding:10px 0}
  .pb-nav__mobile-panel .pb-nav__link:hover{color:var(--color-accent)}
  .pb-nav__mobile-close{color:var(--color-text-inverse)}
}

/* --- Footer-Details --- */
.footer-h{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--ls-wide);
  font-weight:600;color:var(--color-accent);margin-bottom:var(--space-2);font-family:var(--font-body)}
.cb-footer_root a{color:#fff}
.cb-footer_root a:hover{color:var(--color-accent)}
.cb-footer_root .pf-link{opacity:1;text-transform:none;letter-spacing:0;font-size:var(--text-base);font-weight:400}
.cb-fpages_nav .pb-nav__list{gap:0}
/* Footer-Menü: kein Collapse-Verhalten */
.cb-fcol_pages .pb-nav__collapse-toggle{display:none}

/* --- Screenreader-Only (falls Theme sie nicht liefert) --- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;
  clip:rect(1px,1px,1px,1px);clip-path:inset(50%);word-wrap:normal!important}

/* --- CTA-Band (Komponente cmp_cta_band) --- */
.cb-cta-band{background:var(--color-primary);color:var(--color-text-inverse);position:relative;overflow:hidden;text-align:center;display:block}
.cb-cta-band__title{font-size:var(--text-2xl);font-weight:800;margin-bottom:var(--space-2)}
.cb-cta-band__sage{color:var(--color-primary-dark)}
.cb-cta-band__lead{opacity:.8;margin-bottom:var(--space-5)}
.cb-cta-band__platforms{display:flex;gap:var(--space-2);justify-content:center;flex-wrap:wrap}
.cb-cta-band__platforms .pf-ico{width:18px;height:18px}
.cb-cta-band__platforms .btn .pf-ico{margin-right:2px}
.cb-cta-band__nl{margin-top:var(--space-8);padding-top:var(--space-7);border-top:1px solid rgba(251,252,250,.22);max-width:640px;margin-inline:auto}
.cb-cta-band__nl-lead{font-size:var(--text-base);opacity:.8;margin-bottom:var(--space-4)}
.nl-form{display:flex;flex-direction:column;gap:var(--space-3);align-items:center}
.nl-pill{display:flex;align-items:center;gap:var(--space-2);width:100%;background:rgba(251,252,250,.12);
  border:1px solid rgba(251,252,250,.28);border-radius:var(--radius-pill);padding:6px 6px 6px var(--space-4)}
.nl-pill:focus-within{border-color:var(--color-accent);background:rgba(251,252,250,.18)}
.nl-ico{display:flex;color:var(--color-primary-dark);flex:0 0 auto}
.nl-input{flex:1;min-width:0;background:none;border:none;outline:none;font-family:var(--font-body);
  font-size:var(--text-base);color:var(--color-text-inverse);padding:12px 0}
.nl-input::placeholder{color:rgba(251,252,250,.6)}
.nl-submit{flex:0 0 auto;padding:12px 26px;background:var(--color-primary-dark);color:#fff;border:none}
.nl-submit:hover{background:var(--color-accent);color:var(--color-primary-dark)}
.nl-consent{display:flex;gap:10px;align-items:flex-start;text-align:left;font-size:var(--text-sm);opacity:.85;line-height:1.45}
.nl-consent input{margin-top:3px;flex:0 0 auto;accent-color:var(--color-accent);width:16px;height:16px}
.nl-consent a{color:var(--color-primary-dark);text-decoration:underline}
@media (max-width:767px){
  .nl-pill{flex-wrap:nowrap;padding:6px 6px 6px var(--space-3)}
  .nl-input{width:auto;flex:1 1 auto}
  .nl-submit{padding:12px 18px}
}

/* --- Karten-Icons (Kreis primary + Mask-Icon) & Icon-Groessen --- */
.card-icon{width:48px;height:48px;border-radius:var(--radius-pill);background:var(--color-primary);
  display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-3)}
.card-icon .pf-ico{background:var(--color-text-inverse);width:22px;height:22px}
.pf-ico-lg{width:30px;height:30px}
.pf-ico-md{width:22px;height:22px}
.pf-ico-kompass{-webkit-mask:url(/wp-content/uploads/abgefahren/icons/ico-kompass.svg) no-repeat center/contain;mask:url(/wp-content/uploads/abgefahren/icons/ico-kompass.svg) no-repeat center/contain}
.pf-ico-berge{-webkit-mask:url(/wp-content/uploads/abgefahren/icons/ico-berge.svg) no-repeat center/contain;mask:url(/wp-content/uploads/abgefahren/icons/ico-berge.svg) no-repeat center/contain}
.pf-ico-mikro{-webkit-mask:url(/wp-content/uploads/abgefahren/icons/ico-mikro.svg) no-repeat center/contain;mask:url(/wp-content/uploads/abgefahren/icons/ico-mikro.svg) no-repeat center/contain}

/* --- Hero-Feinheiten --- */
.hero-listen-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--ls-wide);font-weight:800;opacity:.9}
.pf-link-dark{color:var(--color-text);opacity:.75}
.pf-link-dark:hover{opacity:1;color:var(--color-primary)}
.btn-sm{padding:8px 18px;font-size:var(--text-sm)}
/* Mobil: Hero fuellt Viewport, Duo schliesst unten ab (R13-Kontrakt) */
@media (max-width:767px){
  .hero-flash{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
  .hero-flash .hero-inner{display:flex;flex-direction:column;flex:1;min-height:0}
  .hero-flash .cb-hero_grid{display:flex;flex-direction:column;flex:1}
  .hero-flash .cb-hero_duo_wrap{margin-top:auto;align-self:center}
  .hero-flash .cb-hero_cta_listen{padding:15px 30px;font-size:17px}
}
/* light-Span in Headlines */
.light{font-weight:700;opacity:.55}
.on-dark .light{opacity:.7}

/* --- Episode-Row (Loop-Karte, Start + Archiv) --- */
.ep-item{display:grid;grid-template-columns:186px minmax(0,1fr) auto;gap:var(--space-6);
  padding:var(--space-6) var(--space-4);align-items:start;border-bottom:1px solid var(--color-hairline)}
.ep-cover-img{width:186px;aspect-ratio:1/1;object-fit:cover;display:block;border-radius:var(--radius-surface)}
.ep-meta{font-size:var(--text-sm);font-weight:600;margin-bottom:10px;color:var(--color-primary)}
.ep-num{font-family:var(--font-display);font-weight:800}
.ep-item h3{font-size:var(--text-lg);margin-bottom:6px}
.ep-item h3 a{color:inherit}
.ep-item h3 a:hover{color:var(--color-primary)}
.ep-teaser{font-size:var(--text-base);color:var(--color-text-soft);max-width:62ch}
.ep-side{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}
.ep-dur{font-size:var(--text-sm);color:#6a736c;white-space:nowrap}
.ep-listen{display:flex;gap:10px;align-items:center}
.ep-listen .pf-ico{width:20px;height:20px}
.arrow-fab{font-size:20px;line-height:1;text-decoration:none}
.arrow-fab:hover{transform:translateX(3px);color:var(--color-text-inverse)}
/* on-dark-Variante (Startseiten-Liste auf primary) */
.on-dark .ep-item{border-bottom-color:rgba(251,252,250,.28)}
.on-dark .ep-meta{color:var(--color-text-inverse)}
.on-dark .ep-item h3 a{color:var(--color-text-inverse)}
.on-dark .ep-item h3 a:hover{color:var(--color-primary-dark)}
.on-dark .ep-teaser{color:rgba(251,252,250,.85)}
.on-dark .ep-dur{color:rgba(251,252,250,.75)}
.on-dark .ep-listen .pf-link{color:var(--color-text-inverse);opacity:.75}
.on-dark .ep-listen .pf-link:hover{opacity:1}
.kicker-dark{color:var(--color-primary-dark)}
/* Archiv: Wechsel-Streifen (nur auf heller Liste) */
.ep-archiv .cb-el-collection-item:nth-child(even) .ep-item{background:var(--color-surface)}
/* Mobil: einspaltig, full-bleed-Streifen (R13/R14-Kontrakt) */
@media (max-width:767px){
  .ep-item{grid-template-columns:minmax(0,1fr);padding:var(--space-5) var(--space-3);
    margin-inline:calc(-1 * var(--container-pad))}
  .ep-item > *{grid-column:1}
  .ep-cover-img{width:100%;max-width:340px}
  .ep-side{flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--space-3);flex-wrap:wrap}
  .ep-side .arrow-fab{order:1}
  .ep-side .ep-listen{order:2}
  .ep-side .ep-dur{order:3;margin-left:auto}
}

/* --- Neueste-Folge-Sektion: Titel-Link erbt Farbe --- */
.cb-latest_title a{color:inherit}
.cb-latest_title a:hover{color:var(--color-primary)}

/* --- Hero-Wrapper (Spiegel-Render: nur Klassen kommen durch, keine Node-Styles) --- */
.hero-flash{background:linear-gradient(rgba(46,66,48,.55),rgba(46,66,48,.55)),
  url(/wp-content/uploads/abgefahren/hero-weltkarte-baeume.jpg) center center/cover;
  padding-top:var(--space-section-hero);position:relative;overflow:hidden}
.hero-inner{position:relative;z-index:1}

/* --- Seiten-Layout-Klassen (Node-Styles -> Klassen; post-css wird nicht benoetigt) --- */
.section-surface{background:var(--color-surface)}
.section-primary{background:var(--color-primary)}
.hero-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 48px;align-items:end}
.latest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 48px;align-items:center}
.cards-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.photos-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.split-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 48px;align-items:center}
@media (max-width:1024px){
  .hero-grid,.latest-grid,.cards-3,.split-2{grid-template-columns:minmax(0,1fr);gap:32px}
}
@media (max-width:767px){
  .hero-grid,.latest-grid,.cards-3,.split-2{gap:20px}
  .photos-2{gap:12px}
}
.hero-seq{padding-bottom:var(--space-8)}
@media (max-width:767px){.hero-seq{padding-bottom:0}}
.hero-badge-wrap{margin-top:var(--space-3)}
.hero-sub{max-width:520px;opacity:.85;margin-top:var(--space-3);margin-bottom:var(--space-5);font-size:var(--text-md)}
.hero-ctas{display:flex;gap:var(--space-2);flex-wrap:wrap}
.hero-listen{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-5)}
.hero-duo-wrap{display:flex;align-items:flex-end;justify-content:flex-end;height:100%}
@media (max-width:1024px){.hero-duo-wrap{justify-content:center}}
.hero-duo-img{max-width:min(640px,100%)}
.latest-title{font-size:var(--text-xl);margin-top:var(--space-3);margin-bottom:var(--space-3)}
.latest-teaser{color:var(--color-text-soft);margin-bottom:var(--space-5);font-size:var(--text-md)}
.latest-listen-row{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}
.ep-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-6);
  flex-wrap:wrap;margin-bottom:var(--space-6)}
@media (max-width:767px){.ep-head-row{gap:var(--space-3);margin-bottom:var(--space-3)}}
.section-head-space{margin-bottom:var(--space-6)}
.h2-tight{margin-top:var(--space-1)}
.voices-h2{margin-top:var(--space-1);margin-bottom:var(--space-3)}
.voices-p{color:var(--color-text-soft);margin-bottom:var(--space-5)}

/* --- Footer-Layout (Klassen statt Node-Layout) --- */
.footer-cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;
  padding-top:var(--space-8);padding-bottom:var(--space-8)}
@media (max-width:1024px){.footer-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}
@media (max-width:767px){.footer-cols{grid-template-columns:minmax(0,1fr);gap:32px}}
.footer-list{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.footer-list .footer-h{margin-bottom:var(--space-1)}

/* --- Unterseiten-Heros (fixed Header ueberlagert -> Ausgleich) --- */
.subhero{padding-top:calc(88px + var(--space-8));padding-bottom:var(--space-section-cta);position:relative;overflow:hidden}
.subhero-dark{background:var(--color-primary-dark)}
.subhero-map::before{content:"";position:absolute;inset:-10% 0;
  background:url(/wp-content/uploads/abgefahren/weltkarte-hell-web.png) center/cover no-repeat;opacity:.14;pointer-events:none}
.subhero .container{position:relative}
.archiv-intro{opacity:.85;max-width:560px;margin-top:var(--space-2)}

/* --- Host-Intro (Komponente cmp_host_intro) --- */
.cb-host-intro{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:48px;align-items:center}
@media (max-width:1024px){.cb-host-intro{grid-template-columns:minmax(0,1fr);gap:32px}}
.cb-host-intro__photo img{width:100%;max-width:520px;aspect-ratio:4/5;object-fit:cover;display:block}
.cb-host-intro__title{margin-top:var(--space-3);margin-bottom:var(--space-3)}
.cb-host-intro__text p{color:var(--color-text-soft);margin-bottom:var(--space-3);font-size:var(--text-md)}
.cb-host-intro__voice{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4);
  background:var(--color-surface);border-radius:var(--radius-pill);padding:10px 24px 10px 10px;max-width:460px}
.cb-host-intro__vn-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover}
.cb-host-intro__vn-body{display:flex;flex-direction:column;min-width:0}
.cb-host-intro__vn-label{font-weight:600;font-size:var(--text-sm)}
.cb-host-intro__vn-hint{font-size:var(--text-xs);color:#6a736c}
/* Surface-Sektion: Voice-Pille absetzen */
.section-surface .cb-host-intro__voice{background:var(--color-bg)}

/* --- Willkommens-Sektion (Ueber uns) --- */
.welcome-band{background:var(--color-primary);color:var(--color-text-inverse);
  padding-top:calc(var(--space-section)/2);padding-bottom:calc(var(--space-section)/2);text-align:center}
.welcome-band h2{margin-bottom:var(--space-4)}
.welcome-band p{opacity:.92;max-width:76ch;margin-left:auto;margin-right:auto;margin-bottom:var(--space-3);font-size:var(--text-md)}
/* --- Warum-Sektion --- */
.warum-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:center}
@media (max-width:1024px){.warum-grid{grid-template-columns:minmax(0,1fr);gap:24px}}
.warum-grid p{opacity:.92;margin-bottom:var(--space-3);font-size:var(--text-md)}
/* --- Abschluss-CTA mit heller Weltkarte --- */
.map-outro{background:linear-gradient(rgba(251,252,250,.78),rgba(251,252,250,.78)),
  url(/wp-content/uploads/abgefahren/weltkarte-hell-web.png) center/cover;text-align:center;position:relative;overflow:hidden}
.map-outro h2{margin-bottom:var(--space-5)}
.map-outro .hero-ctas{justify-content:center}
/* --- Ueber-uns-Hero --- */
.ueber-hero{background:linear-gradient(rgba(46,66,48,.84),rgba(46,66,48,.84)),
  url(/wp-content/uploads/abgefahren/anker-2-alpen-trail.jpg) center 40%/cover}
.intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:end}
@media (max-width:1024px){.intro-grid{grid-template-columns:minmax(0,1fr);gap:20px}}
.intro-grid p{opacity:.88;font-size:var(--text-md)}

/* --- Kontakt --- */
.subhero-surface{background:var(--color-surface)}
.paper-plane{position:absolute;right:8%;bottom:0;width:min(340px,26vw);pointer-events:none;opacity:.9}
@media (max-width:1024px){.paper-plane{display:none}}
.kontakt-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:52px;align-items:start}
@media (max-width:1024px){.kontakt-grid{grid-template-columns:minmax(0,1fr);gap:32px}}
.channel{display:flex;flex-direction:column;gap:4px;padding:var(--space-3) 0;border-bottom:1px solid var(--color-hairline);min-width:0}
.channel-last{border-bottom:none}
.channel .channel-k{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--ls-wide);font-weight:600;color:var(--color-primary)}
.channel a{overflow-wrap:anywhere}
.channel-mail{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg)}
.form-card{background:var(--color-surface);padding:var(--space-7)}
.form-card h2{font-size:var(--text-lg);margin-bottom:var(--space-4)}
.kf-name-row{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--space-4)}
@media (max-width:767px){.kf-name-row{grid-template-columns:1fr}}
.kf-field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-3)}
.kf-field label{font-size:var(--text-sm);font-weight:600}
.kf-field input,.kf-field textarea{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);
  background:var(--color-bg);border:1px solid rgba(20,32,26,.18);border-radius:var(--radius-pill);padding:12px 18px;outline:none;min-width:0}
.kf-field textarea{border-radius:24px;min-height:140px;resize:vertical}
.kf-field input:focus,.kf-field textarea:focus{border-color:var(--color-primary)}
.kf-dsgvo{display:flex;gap:10px;align-items:flex-start;font-size:var(--text-sm);color:var(--color-text-soft);margin-bottom:var(--space-4)}
.kf-dsgvo input{margin-top:3px;accent-color:var(--color-primary);width:16px;height:16px;flex:0 0 auto}

/* --- JetFormBuilder-Optik (Kontakt-Karte + Newsletter im CTA-Band) --- */
.jet-form-builder .jet-form-builder__field.text-field,
.jet-form-builder .jet-form-builder__field.textarea-field{
  font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);
  background:var(--color-bg);border:1px solid rgba(20,32,26,.18);
  border-radius:var(--radius-pill);padding:12px 18px;width:100%}
.jet-form-builder .jet-form-builder__field.textarea-field{border-radius:24px;min-height:140px}
.jet-form-builder .jet-form-builder__field:focus{border-color:var(--color-primary);outline:none}
.jet-form-builder__label{font-size:var(--text-sm);font-weight:600;margin-bottom:6px}
.jet-form-builder__required{color:var(--color-primary)}
.jet-form-builder-row{margin-bottom:var(--space-3)}
.jet-form-builder__action-button{display:inline-flex;align-items:center;font-family:var(--font-body);
  font-weight:600;font-size:var(--text-base);padding:14px 30px;border-radius:var(--radius-pill);
  background:var(--color-primary);color:var(--color-text-inverse);border:2px solid transparent;
  cursor:pointer;transition:all .4s ease-in-out}
.jet-form-builder__action-button:hover{background:var(--color-primary-dark);transform:translateY(-2px)}
.checkboxes-wrap .jet-form-builder__fields-group{display:flex;gap:10px;align-items:flex-start;
  font-size:var(--text-sm);color:var(--color-text-soft)}
.jet-form-builder input[type=checkbox]{accent-color:var(--color-primary);width:16px;height:16px;margin-top:3px}
/* Newsletter im dunklen CTA-Band */
.cb-cta-band .jet-form-builder{text-align:left}
.cb-cta-band .jet-form-builder .jet-form-builder__field.text-field{
  background:rgba(251,252,250,.12);border-color:rgba(251,252,250,.28);color:var(--color-text-inverse)}
.cb-cta-band .jet-form-builder .jet-form-builder__field.text-field::placeholder{color:rgba(251,252,250,.6)}
.cb-cta-band .jet-form-builder__label{color:var(--color-text-inverse)}
.cb-cta-band .checkboxes-wrap .jet-form-builder__fields-group{color:rgba(251,252,250,.85)}
.cb-cta-band .jet-form-builder__action-button{background:var(--color-primary-dark);color:#fff}
.cb-cta-band .jet-form-builder__action-button:hover{background:var(--color-accent);color:var(--color-primary-dark)}
.cb-cta-band input[type=checkbox]{accent-color:var(--color-accent)}

/* --- Rechtstexte --- */
.legal-content{max-width:76ch}
.legal-content h2{font-size:var(--text-lg);margin-top:var(--space-6);margin-bottom:var(--space-2)}
.legal-content h3{font-size:var(--text-base);margin-top:var(--space-4);margin-bottom:var(--space-1)}
.legal-content p,.legal-content li{color:var(--color-text-soft);margin-bottom:var(--space-2);font-size:var(--text-base)}
.legal-content ul,.legal-content ol{padding-left:1.2em;margin-bottom:var(--space-3)}

/* --- Folge-Single --- */
.fs-meta{color:var(--color-accent)}
.fs-title{font-size:var(--text-2xl);max-width:22ch;margin-bottom:var(--space-5)}
.fs-player{max-width:640px}
.fs-player audio{width:100%;display:block}
.folge-player-hint a{color:var(--color-accent);text-decoration:underline}
.fs-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,0.6fr);gap:52px;align-items:start}
@media (max-width:1024px){.fs-grid{grid-template-columns:minmax(0,1fr);gap:32px}}
.fs-desc-h{font-size:var(--text-lg);margin-bottom:var(--space-3)}
.fs-desc p{color:var(--color-text-soft);margin-bottom:var(--space-3);font-size:var(--text-md)}
.fs-listen{margin-top:var(--space-5)}
.fs-aside{background:var(--color-surface);padding:var(--space-6);position:sticky;top:104px}
.fs-aside h3{font-size:var(--text-base);margin-bottom:var(--space-3)}
.shownotes-list{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:var(--space-4)}
.shownotes-list a{font-weight:600}
.shownotes-empty,.beschreibung-empty{color:#6a736c;font-size:var(--text-base);margin-bottom:var(--space-4)}

/* --- Listen-Modal Feinheiten (Grid im Loop-Item) --- */
.lm-grid{display:grid;grid-template-columns:280px minmax(0,1fr)}
@media (max-width:700px){.lm-grid{grid-template-columns:minmax(0,1fr)}}
.lm-media a,.lm-media img{display:block;width:100%;height:100%;object-fit:cover}
.lm-title a{color:inherit}
.lm-title a:hover{color:var(--color-primary)}
.lm-player{width:100%}
.lm-player audio{width:100%}
.lm-player .sp-embed iframe{border-radius:12px}
