/*
 * ALFARI 5.3.0 – verbindliche öffentliche Oberfläche.
 *
 * Diese Datei wird nach allen historischen Theme-Stilen geladen. Sie hält
 * Markenfarbe, Kontrast, Komponenten und Benutzerführung konsistent, ohne
 * Inhalte oder Funktionen der ALFARI-Plugins zu verändern.
 */
:root{
  --alfari-ui-bg:#171d1b;
  --alfari-ui-bg-soft:#242a27;
  --alfari-ui-panel:#242a27;
  --alfari-ui-panel-soft:#2e3531;
  --alfari-ui-text:#f7f8f5;
  --alfari-ui-muted:#d3d8d4;
  --alfari-ui-line:#4a544f;
  --alfari-ui-green:#356d20;
  --alfari-ui-green-hover:#234b17;
  --alfari-ui-on-dark:#f7f8f5;
  --alfari-ui-on-dark-muted:#d3d8d4;
  --alfari-ui-radius:16px;
  --alfari-ui-shadow:0 14px 34px rgba(0,0,0,.18);
}

/*
 * 5.7.16 – Öffentliche Inhalte verwenden ausschließlich den vorgesehenen
 * Trainer innerhalb der Seite. Alte Plugin-FABs mit abweichendem Portrait
 * werden ausgeblendet, damit sie keine Überschriften, Karten oder Aktionen
 * überdecken. Die Assistenzlogik des Plugins bleibt unberührt.
 */
body:not(.alfari-app-mode) :where(
  .alfari-avatar-fab,
  .alfari-trainer-fab,
  .alfari-assistant-fab,
  [data-alfari-avatar-fab],
  [data-alfari-trainer-fab]
){
  display:none!important;
}

/* 5.7.17 – lesbare und vollständig umbrechende öffentliche Mobilinhalte. */
body:not(.alfari-app-mode) :where(
  .wrap,
  .hero-grid,
  .hero-copy,
  .goals,
  .goal-grid,
  .goal-card,
  .alfari-trainer-focus-heading,
  .alfari-trainer-focus-grid,
  .alfari-trainer-focus-grid article
){
  min-width:0;
}
body:not(.alfari-app-mode) :where(
  .hero h1,
  .goals h2,
  .alfari-trainer-focus-heading h2,
  .alfari-trainer-focus-grid h3
){
  max-width:100%;
  overflow-wrap:break-word;
}
body:not(.alfari-app-mode) :where(
  .hero-text,
  .hero-benefits li,
  .goal-card p,
  .alfari-trainer-focus-heading>p:not(.kicker),
  .alfari-trainer-focus-grid p
){
  color:#39413d!important;
}

@media(max-width:620px){
  body:not(.alfari-app-mode) .goals h2{
    padding-inline:12px;
    font-size:clamp(1.8rem,8.5vw,2.2rem)!important;
    line-height:1.16!important;
    text-wrap:balance;
  }
  body:not(.alfari-app-mode) .alfari-trainer-focus-heading h2{
    font-size:clamp(1.75rem,8vw,2.15rem)!important;
    line-height:1.14!important;
    text-wrap:balance;
  }
  body:not(.alfari-app-mode) :where(
    .hero-copy,
    .goal-card,
    .alfari-trainer-focus-heading,
    .alfari-trainer-focus-grid article
  ) :where(p,li){
    font-size:1rem!important;
    line-height:1.6!important;
  }
  body:not(.alfari-app-mode) :where(
    .hero-buttons .button,
    .alfari-trainer-focus-heading .button
  ){
    width:100%;
    min-width:0;
    min-height:56px;
    padding-inline:18px;
    white-space:normal;
    text-align:center;
    overflow-wrap:break-word;
  }
}

/* 5.7.20 – eigenständig bedienbare öffentliche Suchfläche. */
body.alfari-public-search-open{
  overflow:hidden;
}
body:not(.alfari-app-mode) .search-panel.open{
  position:relative;
  z-index:102;
}
body:not(.alfari-app-mode) .search-panel>.wrap{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
}
body:not(.alfari-app-mode) .search-panel .search-form{
  width:100%;
  min-width:0;
  margin:0;
}
body:not(.alfari-app-mode) .public-search-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:52px;
  min-height:50px;
  padding:8px 14px;
  border:1px solid #727b76;
  border-radius:9px;
  background:#fff;
  color:#202723;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
body:not(.alfari-app-mode) .public-search-close span[aria-hidden="true"]{
  font-size:1.5rem;
  line-height:1;
}
body:not(.alfari-app-mode) .public-search-close:focus-visible{
  outline:3px solid var(--alfari-ui-green);
  outline-offset:3px;
}
.public-search-backdrop{
  display:none;
}
.public-search-backdrop:not([hidden]){
  position:fixed;
  inset:0;
  z-index:90;
  display:block;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  background:rgba(6,12,8,.62);
  cursor:pointer;
}

@media(max-width:620px){
  body:not(.alfari-app-mode) .search-panel>.wrap{
    grid-template-columns:minmax(0,1fr);
  }
  body:not(.alfari-app-mode) .public-search-close{
    width:100%;
    min-height:52px;
  }
}

/* 5.5.3 – öffentliche Premium-Adresse und klare Freischaltungsführung. */
body:not(.alfari-app-mode) .alfari-premium-page{
  background:var(--alfari-ui-bg);
  color:var(--alfari-ui-on-dark);
}
body:not(.alfari-app-mode) .alfari-premium-hero{
  padding:clamp(42px,7vw,88px) 0;
  background:var(--alfari-ui-bg);
}
body:not(.alfari-app-mode) .alfari-premium-hero .alfari-breadcrumb{
  margin-bottom:28px;
}
body:not(.alfari-app-mode) .alfari-premium-hero .alfari-breadcrumb :where(a,span){
  color:var(--alfari-ui-on-dark-muted);
}
body:not(.alfari-app-mode) .alfari-premium-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  gap:clamp(28px,5vw,64px);
  align-items:center;
}
body:not(.alfari-app-mode) .alfari-premium-hero__copy{
  min-width:0;
}
body:not(.alfari-app-mode) .alfari-premium-hero__copy .page-kicker{
  color:#b8f25a!important;
}
body:not(.alfari-app-mode) .alfari-premium-hero h1{
  max-width:780px;
  margin:0 0 24px;
  color:var(--alfari-ui-on-dark)!important;
  font-size:clamp(2.7rem,7vw,5.5rem)!important;
  line-height:.98!important;
  letter-spacing:-.045em;
}
body:not(.alfari-app-mode) .alfari-premium-lead{
  max-width:760px;
  margin:0;
  color:var(--alfari-ui-on-dark-muted)!important;
  font-size:clamp(1.15rem,2.4vw,1.45rem)!important;
  line-height:1.55!important;
}
body:not(.alfari-app-mode) .alfari-premium-hero__copy .page-actions{
  margin-top:30px;
}
body:not(.alfari-app-mode) .alfari-premium-access-note{
  max-width:720px;
  margin:22px 0 0;
  color:var(--alfari-ui-on-dark-muted)!important;
  font-size:.95rem!important;
  line-height:1.6!important;
}
body:not(.alfari-app-mode) .alfari-premium-summary{
  min-width:0;
  padding:clamp(26px,4vw,42px);
  border:1px solid var(--alfari-ui-line);
  border-top:6px solid var(--alfari-ui-green);
  border-radius:var(--alfari-ui-radius);
  background:#fff;
  color:var(--alfari-ui-text);
  box-shadow:var(--alfari-ui-shadow);
}
body:not(.alfari-app-mode) .alfari-premium-summary h2{
  margin:0;
  color:var(--alfari-ui-text)!important;
  font-size:clamp(1.7rem,3vw,2.25rem)!important;
  line-height:1.15!important;
}
body:not(.alfari-app-mode) .alfari-premium-summary ul{
  display:grid;
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
}
body:not(.alfari-app-mode) .alfari-premium-summary li{
  position:relative;
  padding-left:30px;
  color:var(--alfari-ui-text)!important;
  line-height:1.55!important;
}
body:not(.alfari-app-mode) .alfari-premium-summary li::before{
  position:absolute;
  top:0;
  left:0;
  color:var(--alfari-ui-green);
  content:"✓";
  font-weight:900;
}
body:not(.alfari-app-mode) .alfari-premium-path{
  padding:clamp(54px,8vw,96px) 0;
  background:#f4f5f3;
  color:var(--alfari-ui-text);
}
body:not(.alfari-app-mode) .alfari-premium-path__heading{
  width:min(100%,820px);
  margin-bottom:32px;
}
body:not(.alfari-app-mode) .alfari-premium-path__heading h2{
  margin:0;
  color:var(--alfari-ui-text)!important;
  font-size:clamp(2rem,4.2vw,3.35rem)!important;
  line-height:1.08!important;
}
body:not(.alfari-app-mode) .alfari-premium-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:none;
}
body:not(.alfari-app-mode) .alfari-premium-steps li{
  min-width:0;
  padding:clamp(24px,3vw,34px);
  border:1px solid var(--alfari-ui-line);
  border-radius:var(--alfari-ui-radius);
  background:#fff;
  box-shadow:0 10px 28px rgba(0,0,0,.07);
}
body:not(.alfari-app-mode) .alfari-premium-steps li>span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  min-height:36px;
  margin-bottom:18px;
  border-radius:999px;
  background:#e6efe1;
  color:var(--alfari-ui-green-hover);
  font-weight:850;
}
body:not(.alfari-app-mode) .alfari-premium-steps strong{
  display:block;
  margin-bottom:10px;
  color:var(--alfari-ui-text);
  font-size:1.3rem;
  line-height:1.25;
}
body:not(.alfari-app-mode) .alfari-premium-steps p{
  margin:0;
  color:var(--alfari-ui-muted)!important;
  line-height:1.65!important;
}
body:not(.alfari-app-mode) .alfari-premium-boundary{
  padding:clamp(48px,7vw,84px) 0;
  background:var(--alfari-ui-bg);
}
body:not(.alfari-app-mode) .alfari-premium-boundary .page-card{
  width:min(100%,980px);
  margin:0 auto;
}
body:not(.alfari-app-mode) .alfari-premium-boundary .alfari-offer-principles{
  margin-top:28px;
}
body:not(.alfari-app-mode) .alfari-premium-boundary .alfari-offer-principles li{
  border-color:var(--alfari-ui-line);
  background:#f4f5f3;
  color:var(--alfari-ui-text)!important;
}
body:not(.alfari-app-mode) .alfari-premium-page .alfari-public-slot{
  width:min(100% - 32px,1180px);
  margin:0 auto;
  padding:clamp(42px,7vw,78px) 0;
}
@media (max-width:900px){
  body:not(.alfari-app-mode) .alfari-premium-hero__grid{
    grid-template-columns:1fr;
  }
  body:not(.alfari-app-mode) .alfari-premium-summary{
    width:min(100%,680px);
  }
  body:not(.alfari-app-mode) .alfari-premium-steps{
    grid-template-columns:1fr;
  }
}
@media (max-width:620px){
  body:not(.alfari-app-mode) .alfari-premium-hero{
    padding:30px 0 46px;
  }
  body:not(.alfari-app-mode) .alfari-premium-hero h1{
    font-size:clamp(2.35rem,13vw,3.25rem)!important;
  }
  body:not(.alfari-app-mode) .alfari-premium-hero__copy .page-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  body:not(.alfari-app-mode) .alfari-premium-hero__copy .button{
    width:100%;
  }
  body:not(.alfari-app-mode) .alfari-premium-summary{
    padding:24px 18px;
  }
  body:not(.alfari-app-mode) .alfari-premium-boundary .alfari-offer-principles{
    grid-template-columns:1fr;
  }
}

html{background:var(--alfari-ui-bg)}
body:not(.alfari-app-mode){
  margin:0;
  overflow-x:hidden;
  background:var(--alfari-ui-bg)!important;
  color:var(--alfari-ui-on-dark);
}
body:not(.alfari-app-mode) :where(*,*::before,*::after){box-sizing:border-box}
body:not(.alfari-app-mode) :where(img,svg,video,iframe){max-width:100%}
body:not(.alfari-app-mode) :where(button,input,select,textarea){font:inherit}

/* Öffentlicher Rahmen */
.site-header,
.site-footer{
  background:var(--alfari-ui-bg)!important;
  color:var(--alfari-ui-on-dark)!important;
}
.site-header{
  border-bottom:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}
.site-footer{border-top:1px solid rgba(255,255,255,.16)!important}
.site-header :where(a,button),
.site-footer :where(a,h2,p){
  color:var(--alfari-ui-on-dark);
}
.site-header :where(a,button):focus-visible,
.site-footer a:focus-visible{
  outline:3px solid #b8f25a;
  outline-offset:3px;
}

/* Die Hauptnavigation bleibt ruhig; Mein ALFARI ist die einzige Zugangsaktion. */
.primary-nav>ul>li>a{
  min-height:48px;
  color:var(--alfari-ui-on-dark)!important;
  font-weight:750;
  text-decoration:none;
}
.primary-nav>ul>li>a:hover,
.primary-nav>ul>li>a:focus-visible,
.primary-nav>ul>li.current-menu-item>a,
.primary-nav>ul>li.current-menu-ancestor>a{
  background:rgba(255,255,255,.1);
  color:#fff!important;
}
.primary-nav .sub-menu{
  border:1px solid var(--alfari-ui-line)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28)!important;
}
.primary-nav .sub-menu a{
  min-height:48px;
  color:var(--alfari-ui-text)!important;
  font-size:1rem;
  font-weight:720;
}
.primary-nav .sub-menu a:hover,
.primary-nav .sub-menu a:focus-visible,
.primary-nav .sub-menu .current-menu-item>a{
  background:#edf3e9!important;
  color:#244918!important;
}

/* Große dunkle Markenflächen und helle Arbeitsflächen */
body:not(.alfari-app-mode) :where(.page-main,.hero,.goals,.why,.offers){
  background:var(--alfari-ui-bg)!important;
}
body:not(.alfari-app-mode) :where(.hero,.goals,.why,.offers)>.wrap>h2,
body:not(.alfari-app-mode) :where(.hero-copy,.why,.offers) :where(h1,h2,.hero-lead,.hero-text,.kicker){
  color:var(--alfari-ui-on-dark)!important;
}
body:not(.alfari-app-mode) :where(.hero-copy,.why) p{
  color:var(--alfari-ui-on-dark-muted)!important;
}
body:not(.alfari-app-mode) :where(
  .page-card,
  .goal-card,
  .offer-grid>a,
  .hero-copy,
  .why>.wrap,
  .alfari-card,
  .alfari-public-slot,
  .contact-box,
  .wp-block-group.has-background
){
  border-color:var(--alfari-ui-line);
  border-radius:var(--alfari-ui-radius);
  background:var(--alfari-ui-panel)!important;
  color:var(--alfari-ui-text)!important;
}
body:not(.alfari-app-mode) :where(.page-card,.goal-card,.offer-grid>a,.hero-copy,.alfari-card){
  box-shadow:var(--alfari-ui-shadow);
}
body:not(.alfari-app-mode) .why>.wrap{
  border:1px solid var(--alfari-ui-line);
  background:var(--alfari-ui-panel)!important;
  color:var(--alfari-ui-text)!important;
  box-shadow:var(--alfari-ui-shadow);
}
body:not(.alfari-app-mode) .hero-copy{
  border:1px solid var(--alfari-ui-line);
  background:var(--alfari-ui-panel)!important;
  color:var(--alfari-ui-text)!important;
}
body:not(.alfari-app-mode) .hero-benefits{
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
  margin:24px 0 0;
  padding:0;
  list-style:none;
}
body:not(.alfari-app-mode) .hero-benefits li{
  position:relative;
  padding-left:20px;
  color:var(--alfari-ui-text)!important;
  font-size:.92rem;
  font-weight:750;
  line-height:1.4;
}
body:not(.alfari-app-mode) .hero-benefits li::before{
  position:absolute;
  top:.38em;
  left:0;
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--alfari-ui-green);
  content:"";
}
body:not(.alfari-app-mode) :where(
  .page-card,
  .goal-card,
  .offer-grid>a,
  .hero-copy,
  .why>.wrap,
  .alfari-card,
  .alfari-public-slot,
  .contact-box
) :where(h1,h2,h3,h4,strong,label,legend){
  color:var(--alfari-ui-text)!important;
}
body:not(.alfari-app-mode) :where(
  .page-card,
  .goal-card,
  .offer-grid>a,
  .hero-copy,
  .why>.wrap,
  .alfari-card,
  .alfari-public-slot,
  .contact-box
) :where(p,li,small,figcaption){
  color:var(--alfari-ui-muted)!important;
}
body:not(.alfari-app-mode) [data-readable] :where(p,li){
  line-height:1.7;
}
body:not(.alfari-app-mode) :where(.page-kicker,.kicker){
  color:var(--alfari-ui-green)!important;
  font-weight:850;
  letter-spacing:.075em;
}

/*
 * Öffentliche ALFARI-Anmeldung.
 * Plugin oder WordPress liefern Zustand und Links; das Theme stellt nur eine
 * klare, helle und mobile Zugangsoberfläche bereit.
 */
body.alfari-member-access-page:not(.alfari-app-mode) .page-main{
  min-height:calc(100dvh - 68px);
  padding-block:clamp(28px,5vw,58px);
  background:var(--alfari-ui-bg)!important;
}
body.alfari-member-access-page:not(.alfari-app-mode) .page-wrap{
  width:min(100% - 32px,900px);
  max-width:900px;
}
body.alfari-member-access-page:not(.alfari-app-mode) .page-card{
  padding:clamp(26px,5vw,48px)!important;
  border:1px solid var(--alfari-ui-line)!important;
  border-radius:var(--alfari-ui-radius)!important;
  background:var(--alfari-ui-panel)!important;
  color:var(--alfari-ui-text)!important;
  box-shadow:var(--alfari-ui-shadow)!important;
}
body.alfari-member-access-page:not(.alfari-app-mode) .page-card :where(h1,h2,h3,h4,strong,label){
  color:var(--alfari-ui-text)!important;
}
body.alfari-member-access-page:not(.alfari-app-mode) .page-card :where(p,li,span,small){
  color:var(--alfari-ui-muted)!important;
}
body.alfari-member-access-page:not(.alfari-app-mode) .page-card>h1{
  max-width:18ch;
  margin:10px 0 26px;
  font-size:clamp(2rem,6vw,3.25rem)!important;
  line-height:1.1;
}
body.alfari-member-access-page:not(.alfari-app-mode) .alfari-breadcrumb{
  margin-bottom:24px;
}
body.alfari-member-access-page:not(.alfari-app-mode) .alfari-breadcrumb a{
  color:var(--alfari-ui-green)!important;
}
body.alfari-member-access-page:not(.alfari-app-mode) .entry-content{
  width:100%;
  min-width:0;
  font-size:1rem;
}
body.alfari-member-access-page:not(.alfari-app-mode) .entry-content>:where(section,article,div){
  width:100%!important;
  max-width:680px!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:clamp(22px,4vw,34px)!important;
  overflow:visible!important;
  border:1px solid var(--alfari-ui-line)!important;
  border-radius:14px!important;
  background:var(--alfari-ui-panel-soft)!important;
  color:var(--alfari-ui-text)!important;
  box-shadow:none!important;
}
body.alfari-member-access-page:not(.alfari-app-mode) .entry-content>:where(section,article,div)::before,
body.alfari-member-access-page:not(.alfari-app-mode) .entry-content>:where(section,article,div)::after{
  box-shadow:none!important;
}
body.alfari-member-access-page:not(.alfari-app-mode) .entry-content :where(h1,h2,h3,h4,strong,label){
  color:var(--alfari-ui-text)!important;
}
body.alfari-member-access-page:not(.alfari-app-mode) .entry-content :where(p,li,span,small){
  color:var(--alfari-ui-muted)!important;
}
body.alfari-member-access-page:not(.alfari-app-mode) .entry-content h2{
  margin:0 0 14px;
  font-size:clamp(1.5rem,4.5vw,2rem)!important;
  line-height:1.2;
}
body.alfari-member-access-page:not(.alfari-app-mode) .entry-content :where(
  a[href*="alfari-trainer"],
  a[href*="mein-alfari"],
  a.button,
  button,
  input[type="submit"]
){
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:auto;
  min-width:min(100%,220px);
  min-height:50px;
  margin-top:14px;
  padding:11px 18px!important;
  border:1px solid var(--alfari-ui-green)!important;
  border-radius:10px!important;
  background:var(--alfari-ui-green)!important;
  color:#fff!important;
  font-weight:850!important;
  line-height:1.25;
  text-align:center;
  text-decoration:none!important;
}
body.alfari-member-access-page:not(.alfari-app-mode) .entry-content :where(
  a[href*="alfari-trainer"],
  a[href*="mein-alfari"],
  a.button,
  button,
  input[type="submit"]
):where(:hover,:focus-visible){
  border-color:var(--alfari-ui-green-hover)!important;
  background:var(--alfari-ui-green-hover)!important;
  color:#fff!important;
}

/*
 * Template-verankerte Absicherung.
 * Diese Regeln greifen auch dann, wenn eine Fremdintegration die WordPress-
 * Body-Klassen verändert oder ihre eigenen Farben mit hoher Priorität lädt.
 */
.alfari-member-access-main{
  min-height:calc(100dvh - 68px)!important;
  padding-block:clamp(28px,5vw,58px)!important;
  background:var(--alfari-ui-bg)!important;
}
.alfari-member-access-wrap{
  width:min(100% - 32px,760px)!important;
  max-width:760px!important;
}
.alfari-member-access-card{
  width:100%!important;
  max-width:760px!important;
  min-height:0!important;
  height:auto!important;
  margin-inline:auto!important;
  padding:clamp(26px,5vw,48px)!important;
  overflow:visible!important;
  border:1px solid var(--alfari-ui-line)!important;
  border-radius:var(--alfari-ui-radius)!important;
  background:#fff!important;
  color:var(--alfari-ui-text)!important;
  box-shadow:var(--alfari-ui-shadow)!important;
}
.alfari-member-access-card>h1{
  max-width:none!important;
  margin:0 0 26px!important;
  color:var(--alfari-ui-text)!important;
  font-size:clamp(2rem,6vw,3.15rem)!important;
  line-height:1.1!important;
}
.alfari-member-access-content{
  width:100%!important;
  min-width:0!important;
  color:var(--alfari-ui-text)!important;
  font-size:1rem!important;
}
.alfari-member-access-content>:where(section,article,div,form){
  width:100%!important;
  max-width:620px!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:clamp(22px,4vw,34px)!important;
  overflow:visible!important;
  border:1px solid var(--alfari-ui-line)!important;
  border-radius:14px!important;
  background:var(--alfari-ui-panel-soft)!important;
  color:var(--alfari-ui-text)!important;
  box-shadow:none!important;
}
.alfari-member-access-content :where(h1,h2,h3,h4,h5,h6,strong,label){
  color:var(--alfari-ui-text)!important;
  text-shadow:none!important;
}
.alfari-member-access-content :where(p,li,span,small){
  color:var(--alfari-ui-muted)!important;
  text-shadow:none!important;
}
.alfari-member-access-content :where(h1,h2,h3,h4){
  opacity:1!important;
}
.alfari-member-access-content :where(
  a[href*="alfari-trainer"],
  a[href*="mein-alfari"],
  a.button,
  button,
  input[type="submit"]
){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:min(100%,220px)!important;
  min-height:50px!important;
  margin-top:14px!important;
  padding:12px 18px!important;
  border:1px solid var(--alfari-ui-green)!important;
  border-radius:10px!important;
  background:var(--alfari-ui-green)!important;
  color:#fff!important;
  opacity:1!important;
  font-weight:850!important;
  line-height:1.25!important;
  text-align:center!important;
  text-decoration:none!important;
  text-shadow:none!important;
}
.alfari-member-access-content :where(
  a[href*="alfari-trainer"],
  a[href*="mein-alfari"],
  a.button,
  button,
  input[type="submit"]
):where(:hover,:focus-visible){
  border-color:var(--alfari-ui-green-hover)!important;
  background:var(--alfari-ui-green-hover)!important;
  color:#fff!important;
}
body:not(.alfari-app-mode) .why>.wrap :where(h1,h2,h3,h4,strong){
  color:var(--alfari-ui-text)!important;
}
body:not(.alfari-app-mode) .hero-copy :where(h1,h2,h3,h4,strong){
  color:var(--alfari-ui-text)!important;
}
body:not(.alfari-app-mode) .hero-copy h1 span{
  color:var(--alfari-ui-green)!important;
}
body:not(.alfari-app-mode) .why>.wrap :where(p,li){
  color:var(--alfari-ui-muted)!important;
}
body:not(.alfari-app-mode) .hero-copy :where(p,li){
  color:var(--alfari-ui-muted)!important;
}
body:not(.alfari-app-mode) .why p{
  max-width:72ch;
  margin-right:auto;
  margin-left:auto;
  color:var(--alfari-ui-muted)!important;
  font-size:clamp(1rem,1.6vw,1.2rem)!important;
  line-height:1.7;
}

/* Einheitliche Aktionen: Grün nur für die wichtigste Handlung. */
body:not(.alfari-app-mode) :where(.button,button:not(.menu-toggle):not(.search-toggle):not(.header-submenu-toggle):not(.public-nav-close),input[type="submit"]){
  min-height:48px;
  border-radius:10px;
  font-weight:800;
  touch-action:manipulation;
}
body:not(.alfari-app-mode) :where(.button.primary,input[type="submit"]){
  border-color:var(--alfari-ui-green)!important;
  background:var(--alfari-ui-green)!important;
  color:#fff!important;
}
body:not(.alfari-app-mode) :where(.button.primary,input[type="submit"]):hover,
body:not(.alfari-app-mode) :where(.button.primary,input[type="submit"]):focus-visible{
  border-color:var(--alfari-ui-green-hover)!important;
  background:var(--alfari-ui-green-hover)!important;
  color:#fff!important;
}
body:not(.alfari-app-mode) .button.secondary{
  border-color:#7b8589!important;
  background:#fff!important;
  color:var(--alfari-ui-text)!important;
}
body:not(.alfari-app-mode) .button.secondary:hover,
body:not(.alfari-app-mode) .button.secondary:focus-visible{
  border-color:var(--alfari-ui-text)!important;
  background:var(--alfari-ui-text)!important;
  color:#fff!important;
}
body:not(.alfari-app-mode) :where(a,button,input,select,textarea):focus-visible{
  outline:3px solid rgba(53,109,32,.45);
  outline-offset:3px;
}

/* Formulare und öffentliche Plugin-Arbeitsflächen */
body:not(.alfari-app-mode) :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  min-height:50px;
  max-width:100%;
  border:1px solid #7f898d;
  border-radius:10px;
  background:#fff;
  color:var(--alfari-ui-text);
  font-size:16px;
}
body:not(.alfari-app-mode) textarea{min-height:112px}
body:not(.alfari-app-mode) :where(.alfari-public-slot,.entry-content){
  min-width:0;
  max-width:100%;
}
body:not(.alfari-app-mode) :where(.alfari-public-slot,.entry-content) :where(table,pre,figure){
  max-width:100%;
}

/* Footer wiederholt nur die wichtigsten Wege. */
.footer-navigation h2{
  margin-bottom:12px;
  color:#fff!important;
  font-size:1rem;
}
.footer-navigation ul{display:grid;gap:8px}
.footer-navigation a{
  color:var(--alfari-ui-on-dark-muted)!important;
  text-underline-offset:3px;
}
.footer-navigation a:hover,
.footer-navigation a:focus-visible{color:#fff!important}
.copyright{
  border-top:1px solid rgba(255,255,255,.13);
  color:var(--alfari-ui-on-dark-muted)!important;
}

@media(max-width:900px){
  .primary-nav{
    background:var(--alfari-ui-bg)!important;
    color:var(--alfari-ui-on-dark)!important;
  }
  .primary-nav .sub-menu{
    border:0!important;
    border-left:2px solid rgba(255,255,255,.2)!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .primary-nav .sub-menu a{
    min-height:50px;
    color:var(--alfari-ui-on-dark-muted)!important;
  }
  .primary-nav .sub-menu a:hover,
  .primary-nav .sub-menu a:focus-visible,
  .primary-nav .sub-menu .current-menu-item>a{
    background:rgba(255,255,255,.1)!important;
    color:#fff!important;
  }
}

@media(max-width:620px){
  /*
   * WordPress setzt die Adminleiste auf kleinen Displays absolut statt
   * dauerhaft fixiert. Der klebende Theme-Header darf deshalb beim Scrollen
   * keinen leeren 46-Pixel-Abstand reservieren.
   */
  body.admin-bar:not(.alfari-app-mode) .site-header{
    top:0!important;
  }
  body:not(.alfari-app-mode) .site-header{
    height:68px!important;
  }
  body:not(.alfari-app-mode) .header-row{
    min-height:68px;
    gap:9px;
  }
  body:not(.alfari-app-mode) .brand{
    flex:0 0 142px;
    width:142px;
    max-width:142px;
    overflow:hidden;
  }
  body:not(.alfari-app-mode) .brand-link{
    min-height:46px;
    justify-content:flex-start;
  }
  body:not(.alfari-app-mode) .alfari-logo-lockup-header{
    width:140px;
    height:32px;
  }
  body:not(.alfari-app-mode) .alfari-logo-lockup-header .alfari-logo-symbol{
    display:none;
  }
  body:not(.alfari-app-mode) .alfari-logo-lockup-header .alfari-logo-art{
    width:250px;
    gap:0;
    transform:scale(.55);
    transform-origin:left top;
  }
  body:not(.alfari-app-mode) :where(.menu-toggle,.search-toggle){
    width:46px;
    height:46px;
    min-width:46px;
    min-height:46px;
    border-radius:10px;
  }
  body:not(.alfari-app-mode) .menu-toggle{
    font-size:1.4rem;
  }
  body:not(.alfari-app-mode) .search-toggle{
    font-size:1.35rem;
  }
  body:not(.alfari-app-mode) .primary-nav{
    top:68px;
    max-height:calc(100dvh - 68px);
  }
  body:not(.alfari-app-mode) :where(.page-card,.goal-card,.offer-grid>a,.alfari-card){
    border-radius:13px;
  }
  body:not(.alfari-app-mode) :where(.page-actions,.hero-buttons){
    display:grid;
    grid-template-columns:1fr;
  }
  body:not(.alfari-app-mode) :where(.page-actions,.hero-buttons) .button{
    width:100%;
  }
  body:not(.alfari-app-mode) .why{
    padding-block:32px!important;
  }
  body:not(.alfari-app-mode) .why>.wrap{
    width:min(100% - 24px,850px);
    padding:24px 18px 112px!important;
    text-align:left;
  }
  body:not(.alfari-app-mode) .why h2{
    margin:8px 0 16px;
    font-size:clamp(1.55rem,7.6vw,2rem)!important;
    line-height:1.22;
  }
  body:not(.alfari-app-mode) .why p{
    margin-left:0;
    font-size:1rem!important;
    line-height:1.65;
  }
  body:not(.alfari-app-mode) .why .text-link{
    display:inline-flex;
    align-items:center;
    min-height:48px;
  }
  body.alfari-member-access-page:not(.alfari-app-mode) .page-wrap{
    width:min(100% - 24px,900px);
  }
  body.alfari-member-access-page:not(.alfari-app-mode) .page-card{
    padding:22px 16px 116px!important;
  }
  body.alfari-member-access-page:not(.alfari-app-mode) .page-card>h1{
    margin-bottom:22px;
    font-size:clamp(1.85rem,9vw,2.4rem)!important;
  }
  body.alfari-member-access-page:not(.alfari-app-mode) .entry-content>:where(section,article,div){
    padding:22px 16px!important;
  }
  body.alfari-member-access-page:not(.alfari-app-mode) .entry-content :where(
    a[href*="alfari-trainer"],
    a[href*="mein-alfari"],
    a.button,
    button,
    input[type="submit"]
  ){
    width:100%;
  }
  .alfari-member-access-wrap{
    width:min(100% - 24px,760px)!important;
  }
  .alfari-member-access-card{
    padding:24px 16px 116px!important;
  }
  .alfari-member-access-card>h1{
    margin-bottom:22px!important;
    font-size:clamp(1.85rem,9vw,2.4rem)!important;
  }
  .alfari-member-access-content>:where(section,article,div,form){
    padding:22px 16px 126px!important;
  }
  .alfari-member-access-content :where(
    a[href*="alfari-trainer"],
    a[href*="mein-alfari"],
    a.button,
    button,
    input[type="submit"]
  ){
    width:100%!important;
    min-width:0!important;
  }
}

/* 5.7.6 – eindeutiger Kontrast der Startseiten-Trainerfläche. */
body:not(.alfari-app-mode) .alfari-trainer-focus{
  background:#171d1b!important;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-heading{
  border-color:#d7dcd8!important;
  background:#fff!important;
  color:#171d1b!important;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-heading .kicker{
  color:#376f22!important;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-heading h2{
  color:#171d1b!important;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-heading>p:not(.kicker){
  color:#303934!important;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-heading .button.secondary{
  border-color:#89928d!important;
  background:#fff!important;
  color:#202723!important;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-grid article{
  border-color:#d3d9d5!important;
  background:#f5f6f3!important;
  color:#171d1b!important;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-grid h3{
  color:#171d1b!important;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-grid p{
  color:#303934!important;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-grid article>span{
  background:#e2eddd!important;
  color:#315f20!important;
}

/* 5.5.2 – ruhiger Header und korrektes Fünf-Spalten-Footer-Raster. */
body:not(.alfari-app-mode) .site-header{
  min-height:78px;
}
body:not(.alfari-app-mode) .header-row{
  min-height:78px;
  gap:18px;
}
body:not(.alfari-app-mode) .brand{
  width:230px;
  max-width:230px;
  flex:0 0 230px;
}
body:not(.alfari-app-mode) .brand-link{
  width:230px;
  max-width:100%;
  min-height:64px;
  align-items:center;
}
body:not(.alfari-app-mode) .alfari-logo-horizontal{
  display:block;
  height:auto;
  object-fit:contain;
  object-position:center;
}
body:not(.alfari-app-mode) .alfari-logo-horizontal-header{
  width:230px;
  max-width:100%;
}
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu{
  flex-wrap:nowrap;
  justify-content:flex-end;
  gap:2px;
}
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>li{
  min-width:0;
}
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>li>a{
  padding-right:7px;
  padding-left:7px;
  font-size:14px;
  white-space:nowrap;
}
body:not(.alfari-app-mode) .header-submenu-toggle{
  width:34px;
  min-width:34px;
  height:44px;
  min-height:44px;
  margin:0 2px 0 -6px;
  padding:0;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:var(--alfari-ui-on-dark)!important;
  box-shadow:none!important;
}
body:not(.alfari-app-mode) .header-submenu-toggle:hover,
body:not(.alfari-app-mode) .header-submenu-toggle:focus-visible,
body:not(.alfari-app-mode) .header-submenu-toggle[aria-expanded="true"]{
  background:rgba(255,255,255,.1)!important;
}
body:not(.alfari-app-mode) .site-footer{
  padding-top:46px!important;
}
body:not(.alfari-app-mode) .footer-grid{
  display:grid;
  grid-template-columns:minmax(220px,1.35fr) repeat(4,minmax(130px,1fr));
  gap:28px;
  align-items:start;
}
body:not(.alfari-app-mode) .footer-intro{
  min-width:0;
}
body:not(.alfari-app-mode) .footer-intro>p{
  max-width:24ch;
  margin:18px 0 0;
  font-size:1rem!important;
  line-height:1.55!important;
}

/* 5.7.5 – kontraststarke Buch- und Leseprobenflächen. */
body.alfari-books-context-page:not(.alfari-app-mode) :where(
  .entry-content,
  .book-product-card,
  .book-samples,
  .book-free-entry,
  .page-cta-buy
) :where(p,li,dd){
  color:#29312d!important;
  font-size:max(1rem,16px);
  line-height:1.72;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(
  .entry-content,
  .book-product-card,
  .book-samples,
  .book-free-entry,
  .page-cta-buy
) :where(h2,h3,strong){
  color:#171d1a!important;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(
  .entry-content,
  .book-product-card,
  .book-samples,
  .book-free-entry,
  .page-cta-buy
) a:not(.button){
  color:#2f651d!important;
  font-weight:800;
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:3px;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(
  .book-product-label,
  .page-kicker,
  .band2-cover figcaption,
  .book-checkout-note
){
  color:#34413a!important;
}
body.alfari-books-context-page:not(.alfari-app-mode) .button.secondary{
  border-color:#8d9691!important;
  color:#202723!important;
}

@media(max-width:620px){
  body.alfari-books-context-page:not(.alfari-app-mode) :where(
    .entry-content,
    .book-product-card,
    .book-samples,
    .book-free-entry,
    .page-cta-buy
  ) :where(p,li,dd){
    font-size:1rem!important;
    line-height:1.68!important;
  }
}
body:not(.alfari-app-mode) .alfari-logo-horizontal-footer{
  width:min(100%,235px);
  max-width:235px;
}
body:not(.alfari-app-mode) .footer-navigation{
  min-width:0;
}
body:not(.alfari-app-mode) .footer-navigation h2{
  margin:0 0 12px;
  font-size:.95rem!important;
  line-height:1.4;
}
body:not(.alfari-app-mode) .footer-navigation ul{
  gap:4px;
}
body:not(.alfari-app-mode) .footer-navigation a{
  margin:0;
  padding:5px 0;
  font-size:.95rem!important;
  line-height:1.4;
  text-decoration:none;
}
body:not(.alfari-app-mode) .footer-navigation a:hover,
body:not(.alfari-app-mode) .footer-navigation a:focus-visible{
  text-decoration:underline;
  text-underline-offset:4px;
}

@media(max-width:1180px){
  body:not(.alfari-app-mode) .header-row{
    min-height:72px;
  }
  body:not(.alfari-app-mode) .brand{
    width:180px;
    max-width:180px;
    flex-basis:180px;
  }
  body:not(.alfari-app-mode) .brand-link{
    width:180px;
    min-height:54px;
  }
  body:not(.alfari-app-mode) .alfari-logo-horizontal-header{
    width:180px;
  }
  body:not(.alfari-app-mode) .header-submenu-toggle{
    width:44px;
    min-width:44px;
    margin:0;
  }
  body:not(.alfari-app-mode) .footer-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  body:not(.alfari-app-mode) .footer-intro{
    grid-column:1/-1;
  }
}


@media(max-width:700px){
  body:not(.alfari-app-mode) .brand{
    width:145px;
    max-width:145px;
    flex-basis:145px;
  }
  body:not(.alfari-app-mode) .brand-link{
    width:145px;
    min-height:44px;
  }
  body:not(.alfari-app-mode) .alfari-logo-horizontal-header{
    width:145px;
  }
  body:not(.alfari-app-mode) .footer-grid{
    grid-template-columns:minmax(0,1fr);
    gap:24px!important;
  }
  body:not(.alfari-app-mode) .footer-intro{
    grid-column:auto;
    padding-right:76px;
  }
}

/* 5.7.33 – Kompaktes öffentliches Trainerfenster über eindeutige Plugin-Klassen. */
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-panel{
  position:fixed!important;
  right:16px!important;
  bottom:max(16px,env(safe-area-inset-bottom))!important;
  left:auto!important;
  top:auto!important;
  width:min(420px,calc(100vw - 32px))!important;
  min-width:0!important;
  max-width:420px!important;
  height:auto!important;
  max-height:min(560px,calc(100dvh - 32px))!important;
  padding:18px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  border:1px solid #929b96!important;
  border-radius:18px!important;
  background:#fff!important;
  color:#202723!important;
  box-shadow:0 18px 48px rgba(0,0,0,.34)!important;
  font-size:1rem!important;
  line-height:1.45!important;
  writing-mode:horizontal-tb!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  z-index:500!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-panel[hidden]{
  display:none!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public.alfari-speaking-avatar-panel-open .alfari-avatar-toggle,
body:not(.alfari-app-mode) .alfari-speaking-avatar--public:has(.alfari-avatar-panel:not([hidden])) .alfari-avatar-toggle{
  display:none!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-heading{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  padding-right:46px!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-heading img{
  width:52px!important;
  height:52px!important;
  border-radius:50%!important;
  object-fit:cover!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-heading :where(h2,p){
  margin:0!important;
  color:#202723!important;
  line-height:1.35!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-kicker{
  font-size:.75rem!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-close{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  display:grid!important;
  place-items:center!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  padding:0!important;
  border:1px solid #77807b!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#202723!important;
  font-size:1.75rem!important;
  line-height:1!important;
  z-index:2!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-actions--public{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  margin-top:14px!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-actions--public :where(button,a){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:46px!important;
  padding:9px 10px!important;
  font-size:.88rem!important;
  line-height:1.3!important;
  text-align:center!important;
  white-space:normal!important;
  writing-mode:horizontal-tb!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-speed{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  margin-top:14px!important;
  color:#202723!important;
  font-weight:750!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-speed select{
  width:100%!important;
  min-width:0!important;
  min-height:44px!important;
  color:#202723!important;
  writing-mode:horizontal-tb!important;
}
body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-status{
  margin:10px 0 0!important;
  color:#404944!important;
}
@media(max-width:620px){
  body:not(.alfari-app-mode) .alfari-speaking-avatar--public.alfari-speaking-avatar-panel-open,
  body:not(.alfari-app-mode) .alfari-speaking-avatar--public:has(.alfari-avatar-panel:not([hidden])){
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    pointer-events:none!important;
    transform:none!important;
    z-index:500!important;
  }
  body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-panel{
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    left:50%!important;
    width:min(88vw,70dvh,420px)!important;
    min-width:min(88vw,70dvh,420px)!important;
    max-width:min(88vw,70dvh,420px)!important;
    height:min(88vw,70dvh,420px)!important;
    min-height:min(88vw,70dvh,420px)!important;
    max-height:min(88vw,70dvh,420px)!important;
    padding:16px!important;
    pointer-events:auto!important;
    transform:translate(-50%,-50%)!important;
  }
}
@media(max-width:380px){
  body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-actions--public{
    grid-template-columns:1fr!important;
  }
}
@media(forced-colors:active){
  body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-panel,
  body:not(.alfari-app-mode) .alfari-speaking-avatar--public .alfari-avatar-close{
    border:2px solid CanvasText!important;
    background:Canvas!important;
    color:CanvasText!important;
  }
}

/*
 * 5.6.0 – ruhiger öffentlicher Kopf, verbindliche Kontraste und Abstände.
 * Die Navigation wird nur zusammengefasst; alle öffentlichen Ziele bleiben
 * erreichbar und sämtliche Funktionen verbleiben in ihren Plugins.
 */
:root{
  --alfari-ui-muted:#414a4e;
  --alfari-ui-on-dark-muted:#dde2de;
  --alfari-ui-line:#c8ced1;
}
body:not(.alfari-app-mode) .site-header{
  border-bottom-color:#48504d!important;
  background:#171d1b!important;
  box-shadow:0 8px 24px rgba(0,0,0,.16);
}
body:not(.alfari-app-mode) .header-row{
  min-height:76px;
  gap:14px;
}
body:not(.alfari-app-mode) .brand,
body:not(.alfari-app-mode) .brand-link{
  width:210px;
  max-width:210px;
  flex-basis:210px;
}
body:not(.alfari-app-mode) .alfari-logo-horizontal-header{
  width:210px;
}
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu{
  gap:4px;
}
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>li>a{
  min-height:46px;
  padding:12px 10px!important;
  border-radius:9px;
  color:#f7f8f5!important;
  font-size:.91rem;
  line-height:1.2;
}
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>li>a:hover,
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>li>a:focus-visible,
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>.current-menu-item>a,
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>.current-menu-ancestor>a{
  background:#2a312e!important;
  color:#fff!important;
}
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>.alfari-member-menu-item>a{
  margin-left:5px;
  padding-inline:15px!important;
  border:1px solid #6da44c;
  background:#356d20!important;
  color:#fff!important;
}
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>.alfari-member-menu-item>a:hover,
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>.alfari-member-menu-item>a:focus-visible{
  border-color:#8dc66a;
  background:#234b17!important;
}
body:not(.alfari-app-mode) :where(.menu-toggle,.search-toggle){
  border-color:#68716d!important;
  background:#222927!important;
  color:#fff!important;
}
body:not(.alfari-app-mode) :where(.menu-toggle,.search-toggle):hover,
body:not(.alfari-app-mode) :where(.menu-toggle,.search-toggle):focus-visible{
  border-color:#fff!important;
  background:#303835!important;
  color:#fff!important;
}
body:not(.alfari-app-mode) :where(.goal-grid,.offer-grid,.alfari-offer-grid,.alfari-difference-grid){
  gap:clamp(16px,2.1vw,26px)!important;
}
body:not(.alfari-app-mode) :where(
  .page-card,
  .goal-card,
  .offer-grid>a,
  .alfari-card,
  .alfari-offer-card,
  .alfari-premium-summary,
  .alfari-premium-steps>li
){
  border-color:var(--alfari-ui-line)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.14)!important;
}
body:not(.alfari-app-mode) :where(.goal-card,.offer-grid>a,.alfari-offer-card){
  padding:clamp(22px,2.8vw,32px)!important;
}
body:not(.alfari-app-mode) :where(
  .page-card,
  .goal-card,
  .offer-grid>a,
  .alfari-card,
  .alfari-offer-card,
  .alfari-premium-summary,
  .alfari-premium-steps>li
) :where(p,li,small,figcaption){
  color:var(--alfari-ui-muted)!important;
  opacity:1!important;
}
body:not(.alfari-app-mode) :where(.alfari-offer-card,.alfari-premium-summary) .button.primary{
  background:var(--alfari-ui-green)!important;
  color:#fff!important;
}

@media(max-width:1180px){
  body:not(.alfari-app-mode) .brand,
  body:not(.alfari-app-mode) .brand-link{
    width:180px;
    max-width:180px;
    flex-basis:180px;
  }
  body:not(.alfari-app-mode) .alfari-logo-horizontal-header{
    width:180px;
  }
  body:not(.alfari-app-mode) .primary-nav{
    background:#171d1b!important;
  }
  body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>.alfari-member-menu-item>a{
    margin-left:0;
  }
}

@media(max-width:700px){
  body:not(.alfari-app-mode) .brand,
  body:not(.alfari-app-mode) .brand-link{
    width:145px;
    max-width:145px;
    flex-basis:145px;
  }
  body:not(.alfari-app-mode) .alfari-logo-horizontal-header{
    width:145px;
  }
  body:not(.alfari-app-mode) :where(.goal-grid,.offer-grid,.alfari-offer-grid,.alfari-difference-grid){
    gap:14px!important;
  }
  body:not(.alfari-app-mode) :where(.goal-card,.offer-grid>a,.alfari-offer-card,.alfari-premium-summary,.alfari-premium-steps>li){
    padding:20px 17px!important;
  }
}

/* 5.5.0 – konzentrierter Einstieg in den pluginverwalteten Planfinder. */
body:not(.alfari-app-mode) .alfari-planfinder-stage{
  padding:clamp(34px,6vw,72px) 0;
  background:var(--alfari-ui-bg)!important;
  color:var(--alfari-ui-on-dark);
}
body:not(.alfari-app-mode) .alfari-planfinder-disclosure{
  width:min(100%,1120px);
  margin:0 auto;
}
body:not(.alfari-app-mode) .alfari-planfinder-disclosure>summary{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px 24px;
  align-items:center;
  min-height:88px;
  padding:22px 72px 22px 26px;
  border:1px solid var(--alfari-ui-line);
  border-radius:16px;
  background:#fff;
  color:var(--alfari-ui-text);
  box-shadow:var(--alfari-ui-shadow);
  cursor:pointer;
  list-style:none;
  touch-action:manipulation;
}
body:not(.alfari-app-mode) .alfari-planfinder-disclosure>summary::-webkit-details-marker{
  display:none;
}
body:not(.alfari-app-mode) .alfari-planfinder-disclosure>summary::after{
  position:absolute;
  top:50%;
  right:26px;
  display:grid;
  width:40px;
  height:40px;
  transform:translateY(-50%);
  place-items:center;
  border-radius:50%;
  background:var(--alfari-ui-green);
  color:#fff;
  content:"+";
  font-size:1.65rem;
  font-weight:750;
  line-height:1;
}
body:not(.alfari-app-mode) .alfari-planfinder-disclosure[open]>summary::after{
  content:"−";
}
body:not(.alfari-app-mode) .alfari-planfinder-disclosure>summary:hover{
  border-color:var(--alfari-ui-green);
}
body:not(.alfari-app-mode) .alfari-planfinder-disclosure>summary:focus-visible{
  outline:3px solid rgba(53,109,32,.55);
  outline-offset:4px;
}
body:not(.alfari-app-mode) .alfari-planfinder-summary-title{
  color:var(--alfari-ui-text)!important;
  font-size:clamp(1.25rem,2.4vw,1.65rem);
  font-weight:850;
  line-height:1.2;
}
body:not(.alfari-app-mode) .alfari-planfinder-summary-text{
  grid-column:1;
  color:var(--alfari-ui-muted)!important;
  font-size:1rem;
  line-height:1.55;
}
body:not(.alfari-app-mode) .alfari-planfinder-workspace{
  min-width:0;
  margin-top:16px;
}

@media(max-width:620px){
  body:not(.alfari-app-mode) .alfari-planfinder-stage{
    padding:28px 0;
  }
  body:not(.alfari-app-mode) .alfari-planfinder-disclosure>summary{
    min-height:0;
    padding:20px 64px 20px 18px;
    border-radius:14px;
  }
  body:not(.alfari-app-mode) .alfari-planfinder-disclosure>summary::after{
    right:16px;
    width:38px;
    height:38px;
  }
  body:not(.alfari-app-mode) .alfari-planfinder-summary-title{
    font-size:1.2rem;
  }
  body:not(.alfari-app-mode) .alfari-planfinder-summary-text{
    font-size:.95rem;
  }
}

@media(max-width:380px){
  body:not(.alfari-app-mode) .brand{
    flex-basis:127px;
    width:127px;
    max-width:127px;
  }
  body:not(.alfari-app-mode) .alfari-logo-lockup-header{
    width:125px;
    height:29px;
  }
  body:not(.alfari-app-mode) .alfari-logo-lockup-header .alfari-logo-art{
    transform:scale(.5);
  }
}

/* 5.3.6 – verständliche Produktführung ohne Geschäftslogik im Theme. */
body:not(.alfari-app-mode) .alfari-difference,
body:not(.alfari-app-mode) .alfari-offer-comparison,
body:not(.alfari-app-mode) .alfari-trainer-focus{
  padding:clamp(64px,8vw,104px) 0;
}
body:not(.alfari-app-mode) .alfari-trainer-focus{
  background:var(--alfari-ui-bg);
}
body:not(.alfari-app-mode) .alfari-trainer-focus>.wrap{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  align-items:stretch;
  gap:22px;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-heading{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  min-width:0;
  padding:clamp(28px,4vw,46px);
  border:1px solid var(--alfari-ui-line);
  border-radius:var(--alfari-ui-radius);
  background:#fff;
  color:var(--alfari-ui-text);
  box-shadow:var(--alfari-ui-shadow);
}
body:not(.alfari-app-mode) .alfari-trainer-focus-heading h2{
  margin:.35rem 0 1rem;
  color:var(--alfari-ui-text)!important;
  font-size:clamp(2rem,4.3vw,3.3rem);
  line-height:1.08;
  text-wrap:balance;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-heading>p:not(.kicker){
  margin:0;
  color:var(--alfari-ui-muted)!important;
  font-size:clamp(1.02rem,1.7vw,1.16rem);
  line-height:1.7;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-heading .button{
  min-height:52px;
  margin-top:26px;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-grid article{
  min-width:0;
  padding:clamp(24px,3vw,32px);
  border:1px solid var(--alfari-ui-line);
  border-radius:var(--alfari-ui-radius);
  background:var(--alfari-ui-panel-soft);
  color:var(--alfari-ui-text);
}
body:not(.alfari-app-mode) .alfari-trainer-focus-grid article>span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:34px;
  margin-bottom:18px;
  border-radius:999px;
  background:#e6efe1;
  color:var(--alfari-ui-green-hover);
  font-size:.88rem;
  font-weight:850;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-grid h3{
  margin:0 0 .65rem;
  color:var(--alfari-ui-text)!important;
  font-size:clamp(1.2rem,2.2vw,1.48rem);
  line-height:1.2;
}
body:not(.alfari-app-mode) .alfari-trainer-focus-grid p{
  margin:0;
  color:var(--alfari-ui-muted)!important;
  line-height:1.65;
}
body:not(.alfari-app-mode) .goal-icon{
  color:var(--alfari-ui-green)!important;
  font-size:1rem!important;
  font-weight:900;
  letter-spacing:.06em;
}
body:not(.alfari-app-mode) .alfari-difference{
  background:var(--alfari-ui-panel-soft);
  color:var(--alfari-ui-text);
}
body:not(.alfari-app-mode) .alfari-difference-heading,
body:not(.alfari-app-mode) .alfari-offer-heading{
  width:min(100%,780px);
  margin:0 auto clamp(30px,5vw,48px);
  text-align:center;
}
body:not(.alfari-app-mode) :where(.alfari-difference-heading,.alfari-offer-heading) h2{
  margin:.35rem 0 .8rem;
  font-size:clamp(2rem,4.5vw,3.15rem);
  line-height:1.08;
  text-wrap:balance;
}
body:not(.alfari-app-mode) :where(.alfari-difference-heading,.alfari-offer-heading)>p:last-child{
  margin:0 auto;
  max-width:690px;
  font-size:clamp(1.05rem,2vw,1.2rem);
  line-height:1.65;
}
body:not(.alfari-app-mode) .alfari-difference-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
body:not(.alfari-app-mode) .alfari-difference-grid article{
  min-width:0;
  padding:clamp(24px,3vw,34px);
  border:1px solid var(--alfari-ui-line);
  border-radius:var(--alfari-ui-radius);
  background:#fff;
  color:var(--alfari-ui-text);
  box-shadow:0 10px 28px rgba(0,0,0,.08);
}
body:not(.alfari-app-mode) .alfari-difference-grid article>span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  min-height:36px;
  margin-bottom:18px;
  border-radius:999px;
  background:#e6efe1;
  color:var(--alfari-ui-green-hover);
  font-weight:850;
}
body:not(.alfari-app-mode) .alfari-difference-grid h3{
  margin:0 0 .65rem;
  color:var(--alfari-ui-text);
  font-size:clamp(1.25rem,2.4vw,1.55rem);
  line-height:1.2;
}
body:not(.alfari-app-mode) .alfari-difference-grid p{
  margin:0;
  color:var(--alfari-ui-muted);
  line-height:1.65;
}
body:not(.alfari-app-mode) .alfari-offer-comparison{
  background:var(--alfari-ui-bg);
  color:var(--alfari-ui-on-dark);
}
body:not(.alfari-app-mode) .alfari-offer-heading :where(h2,p){
  color:inherit;
}
body:not(.alfari-app-mode) .alfari-offer-heading>p:last-child{
  color:var(--alfari-ui-on-dark-muted);
}
body:not(.alfari-app-mode) .alfari-offer-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  width:min(100%,980px);
  margin:0 auto;
}
body:not(.alfari-app-mode) .alfari-offer-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:clamp(26px,4vw,42px);
  border:1px solid var(--alfari-ui-line);
  border-radius:var(--alfari-ui-radius);
  background:#fff;
  color:var(--alfari-ui-text);
  box-shadow:var(--alfari-ui-shadow);
}
body:not(.alfari-app-mode) .alfari-offer-card.is-premium{
  border-top:6px solid var(--alfari-ui-green);
}
body:not(.alfari-app-mode) .alfari-offer-active-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin:10px 0 0;
  padding:5px 10px;
  border:1px solid #8fae7c;
  border-radius:999px;
  background:#edf5e8;
  color:#244918;
  font-size:.8rem;
  font-weight:850;
}
body:not(.alfari-app-mode) [data-alfari-premium-state="active"]{
  border-color:#8fae7c;
}
body:not(.alfari-app-mode) [data-alfari-premium-state="active"] [data-alfari-premium-action="manage"]{
  background:#252a28!important;
  border-color:#252a28!important;
  color:#fff!important;
}
body:not(.alfari-app-mode) .alfari-offer-eyebrow{
  margin:0 0 .45rem;
  color:var(--alfari-ui-green);
  font-size:.82rem;
  font-weight:850;
  letter-spacing:.07em;
  text-transform:uppercase;
}
body:not(.alfari-app-mode) .alfari-offer-card h3{
  margin:0;
  color:var(--alfari-ui-text);
  font-size:clamp(1.55rem,3vw,2rem);
  line-height:1.15;
}
body:not(.alfari-app-mode) .alfari-offer-price{
  display:flex;
  align-items:baseline;
  gap:10px;
  min-height:74px;
  margin:20px 0;
}
body:not(.alfari-app-mode) .alfari-offer-price strong{
  color:var(--alfari-ui-text);
  font-size:clamp(2.2rem,5vw,3.2rem);
  line-height:1;
}
body:not(.alfari-app-mode) .alfari-offer-price span{
  color:var(--alfari-ui-muted);
  line-height:1.5;
}
body:not(.alfari-app-mode) .alfari-offer-price .alfari-offer-price-note{
  font-size:1rem;
  font-weight:700;
}
body:not(.alfari-app-mode) .alfari-offer-card ul{
  display:grid;
  gap:12px;
  margin:0 0 28px;
  padding:0;
  list-style:none;
}
body:not(.alfari-app-mode) .alfari-offer-card li{
  position:relative;
  padding-left:30px;
  color:var(--alfari-ui-text);
  line-height:1.55;
}
body:not(.alfari-app-mode) .alfari-offer-card li::before{
  position:absolute;
  top:0;
  left:0;
  color:var(--alfari-ui-green);
  content:"✓";
  font-weight:900;
}
body:not(.alfari-app-mode) .alfari-offer-card .button{
  width:100%;
  min-height:52px;
  margin-top:auto;
  text-align:center;
}
body:not(.alfari-app-mode) .alfari-offer-principles{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  width:min(100%,980px);
  margin:24px auto 0;
  padding:0;
  list-style:none;
}
body:not(.alfari-app-mode) .alfari-offer-principles li{
  position:relative;
  min-width:0;
  padding:15px 16px 15px 43px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:12px;
  background:rgba(255,255,255,.06);
  color:var(--alfari-ui-on-dark)!important;
  font-size:.92rem;
  font-weight:720;
  line-height:1.5;
}
body:not(.alfari-app-mode) .alfari-offer-principles li::before{
  position:absolute;
  top:17px;
  left:17px;
  color:#b8f25a;
  content:"✓";
  font-weight:900;
}
body:not(.alfari-app-mode) .alfari-offer-note{
  width:min(100%,760px);
  margin:24px auto 0;
  color:var(--alfari-ui-on-dark-muted);
  font-size:.94rem;
  line-height:1.55;
  text-align:center;
}
body:not(.alfari-app-mode) .book-product-cover{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  width:min(100%,180px);
  aspect-ratio:5/8;
  margin:0 auto 24px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.15);
  border-radius:6px;
  background:var(--alfari-ui-bg);
  color:#fff;
  box-shadow:0 14px 28px rgba(0,0,0,.2);
}
body:not(.alfari-app-mode) .book-product-cover.has-image img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
body:not(.alfari-app-mode) .book-product-cover.has-image{
  aspect-ratio:auto;
  border:0;
  background:transparent;
}
body:not(.alfari-app-mode) .book-product-cover.has-image picture{
  display:block;
  width:100%;
}
body:not(.alfari-app-mode) .book-product-cover.is-series-cover{
  position:relative;
  gap:7px;
  padding:24px 20px;
}
body:not(.alfari-app-mode) .book-product-cover.is-series-cover::before{
  position:absolute;
  top:22px;
  right:20px;
  left:20px;
  height:3px;
  background:var(--alfari-ui-green);
  content:"";
}
body:not(.alfari-app-mode) .book-cover-brand{
  margin-bottom:auto;
  padding-top:18px;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.18em;
}
body:not(.alfari-app-mode) .book-product-cover strong{
  color:#fff!important;
  font-size:1.45rem;
  line-height:1.05;
}
body:not(.alfari-app-mode) .book-product-cover small{
  color:var(--alfari-ui-on-dark-muted)!important;
  font-size:.82rem;
  line-height:1.3;
}
body.alfari-books-context-page:not(.alfari-app-mode) .book-page-intro{
  display:grid;
  grid-template-columns:minmax(180px,260px) minmax(0,1fr);
  align-items:center;
  gap:clamp(26px,5vw,54px);
  margin:28px 0 40px;
  padding:clamp(24px,4vw,38px);
  border:1px solid var(--alfari-ui-border);
  border-top:5px solid var(--alfari-ui-green);
  border-radius:16px;
  background:#f3f5f2;
  box-shadow:0 16px 36px rgba(16,22,20,.1);
}
body.alfari-books-context-page:not(.alfari-app-mode) .book-page-cover .book-product-cover{
  width:min(100%,260px);
  margin:0 auto;
}
body.alfari-books-context-page:not(.alfari-app-mode) .book-page-summary{
  min-width:0;
}
body.alfari-books-context-page:not(.alfari-app-mode) .book-page-summary h2{
  margin:.25rem 0 1rem;
  color:var(--alfari-ui-text)!important;
  font-size:clamp(1.8rem,4vw,2.65rem)!important;
  line-height:1.12;
}
body.alfari-books-context-page:not(.alfari-app-mode) .book-page-summary>p:not(.book-product-label):not(.book-page-status){
  margin:0;
  color:var(--alfari-ui-text-soft)!important;
  font-size:1.06rem;
  line-height:1.7;
}
body.alfari-books-context-page:not(.alfari-app-mode) .book-page-summary .book-page-subtitle{
  margin:0 0 12px!important;
  color:var(--alfari-ui-text)!important;
  font-weight:800;
  line-height:1.5;
}
body.alfari-books-context-page:not(.alfari-app-mode) .book-page-status{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin:20px 0 0;
  padding:8px 12px;
  border:1px solid #cfd5d1;
  border-radius:999px;
  background:#fff;
  color:var(--alfari-ui-text)!important;
  font-size:.92rem;
  font-weight:800;
  line-height:1.35;
}
body.alfari-books-context-page:not(.alfari-app-mode) .book-page-status span{
  width:10px;
  height:10px;
  flex:0 0 10px;
  border-radius:50%;
  background:var(--alfari-ui-green);
}
body.alfari-books-context-page:not(.alfari-app-mode) .book-page-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}
body.alfari-books-context-page:not(.alfari-app-mode) .book-page-actions .button{
  min-height:52px;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-book-subtitle,.book-detail-subtitle){
  margin:0 0 18px;
  color:var(--alfari-ui-text)!important;
  font-size:1.06rem!important;
  line-height:1.55;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-promise,.book-detail-promise){
  margin:24px 0 28px;
  padding:22px 24px;
  border:0;
  border-left:5px solid var(--alfari-ui-green);
  border-radius:0 12px 12px 0;
  background:#eef1ed;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-promise,.book-detail-promise) p{
  margin:0;
  color:var(--alfari-ui-text)!important;
  font-size:clamp(1.1rem,2.2vw,1.3rem)!important;
  font-weight:800;
  line-height:1.55;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-value-grid,.book-value-grid){
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:22px 0 34px;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-value-grid,.book-value-grid) article{
  min-width:0;
  padding:22px;
  border:1px solid var(--alfari-ui-border);
  border-top:4px solid var(--alfari-ui-green);
  border-radius:12px;
  background:#f3f5f2;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-value-grid,.book-value-grid) h3{
  margin:0 0 10px;
  color:var(--alfari-ui-text)!important;
  font-size:1.25rem!important;
  line-height:1.25;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-value-grid,.book-value-grid) p{
  margin:0;
  color:var(--alfari-ui-text-soft)!important;
  font-size:1rem!important;
  line-height:1.65;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-boundary,.book-detail-boundary){
  margin:30px 0;
  padding:24px;
  border:1px solid var(--alfari-ui-border);
  border-left:5px solid var(--alfari-ui-green);
  border-radius:12px;
  background:#f3f5f2;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-boundary,.book-detail-boundary) h2{
  margin-top:0!important;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-boundary,.book-detail-boundary) p{
  margin-bottom:0;
}

/*
 * 5.3.9 – mobile Buch- und Leseprobenansicht.
 *
 * Die Klassen kennzeichnen ausschließlich öffentliche Buchseiten. Inhalte,
 * Verfügbarkeit, Bestellwege und der schwebende Trainer bleiben bei den
 * zuständigen Plugins; das Theme hält Arbeitsbreite und Scrollraum frei.
 */
body.alfari-books-context-page:not(.alfari-app-mode) .page-wrap{
  width:min(100% - 32px,940px);
}
body.alfari-books-context-page:not(.alfari-app-mode) .page-card{
  overflow:hidden;
}
body.alfari-books-context-page:not(.alfari-app-mode) :where(
  .entry-content,
  .book-product-card,
  .book-samples,
  .book-free-entry,
  .page-cta-buy
){
  min-width:0;
  overflow-wrap:anywhere;
}

@media(max-width:760px){
  body:not(.alfari-app-mode) .alfari-trainer-focus>.wrap,
  body:not(.alfari-app-mode) .alfari-trainer-focus-grid,
  body:not(.alfari-app-mode) .alfari-difference-grid,
  body:not(.alfari-app-mode) .alfari-offer-grid,
  body:not(.alfari-app-mode) .alfari-offer-principles{
    grid-template-columns:1fr;
  }
  body:not(.alfari-app-mode) .alfari-difference,
  body:not(.alfari-app-mode) .alfari-offer-comparison,
  body:not(.alfari-app-mode) .alfari-trainer-focus{
    padding:54px 0;
  }
  body:not(.alfari-app-mode) .alfari-trainer-focus-heading,
  body:not(.alfari-app-mode) .alfari-trainer-focus-grid article{
    padding:24px 18px;
  }
  body:not(.alfari-app-mode) .alfari-trainer-focus-heading .button{
    width:100%;
    white-space:normal;
    text-align:center;
  }
  body:not(.alfari-app-mode) .alfari-offer-card{
    padding:26px 20px;
  }
  body:not(.alfari-app-mode) .book-product-cover{
    width:150px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .page-main{
    padding:24px 0 42px!important;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .page-wrap{
    width:min(100% - 24px,940px);
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .page-card{
    padding:24px 17px max(132px,calc(112px + env(safe-area-inset-bottom)))!important;
    border-radius:14px!important;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .page-card>h1{
    margin:12px 0 24px;
    font-size:clamp(2rem,9.4vw,2.5rem)!important;
    line-height:1.08;
    letter-spacing:-.025em;
    text-wrap:balance;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .entry-content{
    font-size:1rem!important;
    line-height:1.7;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .entry-content :where(p,li){
    font-size:1rem!important;
    line-height:1.7;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .entry-content h2,
  body.alfari-books-context-page:not(.alfari-app-mode) :where(.book-free-entry,.book-samples,.page-cta-buy)>h2{
    font-size:clamp(1.55rem,7.4vw,2rem)!important;
    line-height:1.18;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .entry-content h3{
    font-size:clamp(1.3rem,6vw,1.65rem)!important;
    line-height:1.22;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-product-menu{
    margin-top:34px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-product-menu>h2{
    margin:30px 0 18px;
    font-size:clamp(1.9rem,8.5vw,2.3rem)!important;
    line-height:1.12;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-product-grid{
    gap:18px;
    margin:18px 0 28px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) :where(.book-product-card,.book-samples,.book-free-entry){
    padding:20px 16px!important;
    border-radius:12px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-product-card h3{
    margin:.35rem 0 .75rem;
    font-size:clamp(1.55rem,7vw,1.85rem)!important;
    line-height:1.18;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-product-cover{
    width:min(100%,170px);
    margin-bottom:20px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-page-intro{
    grid-template-columns:1fr;
    gap:22px;
    margin:22px 0 32px;
    padding:22px 16px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-page-cover .book-product-cover{
    width:min(100%,210px);
    margin:0 auto;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-page-summary{
    text-align:left;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-page-summary h2{
    font-size:clamp(1.7rem,8vw,2.15rem)!important;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-page-summary>p:not(.book-product-label):not(.book-page-status){
    font-size:1rem;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-page-status{
    white-space:normal;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-page-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-page-actions .button{
    width:100%;
    min-width:0;
    white-space:normal;
    text-align:center;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-promise,.book-detail-promise){
    padding:18px 17px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-value-grid,.book-value-grid){
    grid-template-columns:1fr;
    gap:12px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-value-grid,.book-value-grid) article,
  body.alfari-books-context-page:not(.alfari-app-mode) :where(.band3-boundary,.book-detail-boundary){
    padding:18px 17px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-product-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    padding-top:18px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) :where(
    .book-product-actions .button,
    .book-samples .button,
    .book-free-entry .button,
    .page-cta-buy .button
  ){
    width:100%;
    min-width:0;
    min-height:52px;
    padding:13px 16px;
    white-space:normal;
    text-align:center;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .page-cta-buy{
    margin-top:32px;
    padding:22px 16px!important;
    border-radius:12px;
  }
  body.alfari-books-context-page:not(.alfari-app-mode) .book-checkout-note{
    margin-bottom:0;
    padding:14px 15px;
    font-size:.95rem;
    line-height:1.6;
  }
}

@media(prefers-reduced-motion:reduce){
  body:not(.alfari-app-mode) *,body:not(.alfari-app-mode) *::before,body:not(.alfari-app-mode) *::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}

/* 5.4.7 – öffentliche Übungsbibliothek: Orientierung, Lesbarkeit und Mobile First. */
body.alfari-exercise-library-page:not(.alfari-app-mode) .page-wrap{
  width:min(100% - 32px,1360px);
}
body.alfari-exercise-library-page:not(.alfari-app-mode) .page-card{
  padding-bottom:max(128px,calc(104px + env(safe-area-inset-bottom)));
}
.alfari-exercise-guide,
.alfari-exercise-next-step{
  margin:clamp(24px,4vw,48px) 0;
  padding:clamp(22px,3.5vw,38px);
  border:1px solid var(--alfari-line);
  border-radius:18px;
  background:var(--alfari-surface-2);
  color:var(--alfari-text);
}
.alfari-exercise-guide__heading{
  max-width:820px;
}
.alfari-exercise-guide :where(h2,strong),
.alfari-exercise-next-step h2{
  color:var(--alfari-text)!important;
}
.alfari-exercise-guide :where(p,span),
.alfari-exercise-next-step p{
  color:var(--alfari-muted)!important;
}
.alfari-exercise-guide__steps{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:26px 0;
  padding:0;
  list-style:none;
  counter-reset:alfari-exercise-guide;
}
.alfari-exercise-guide__steps li{
  min-width:0;
  padding:20px;
  border:1px solid var(--alfari-line);
  border-radius:14px;
  background:var(--alfari-surface);
  counter-increment:alfari-exercise-guide;
}
.alfari-exercise-guide__steps li::before{
  display:grid;
  width:34px;
  height:34px;
  margin-bottom:14px;
  place-items:center;
  border-radius:50%;
  background:var(--alfari-anthracite);
  color:#fff;
  content:counter(alfari-exercise-guide);
  font-weight:850;
}
.alfari-exercise-guide__steps strong,
.alfari-exercise-guide__steps span{
  display:block;
}
.alfari-exercise-guide__steps span{
  margin-top:8px;
  font-size:.96rem;
  line-height:1.6;
}
.alfari-exercise-guide__actions .button,
.alfari-exercise-next-step .button{
  min-height:52px;
}
body.alfari-exercise-library-page .alfari-exercise-library{
  scroll-margin-top:128px;
}
body.alfari-exercise-library-page .alfari-exercise-library__header h2{
  color:var(--alfari-text)!important;
  text-wrap:balance;
}
body.alfari-exercise-library-page .alfari-exercise-card{
  border:1px solid var(--alfari-line)!important;
  background:var(--alfari-surface)!important;
  box-shadow:0 10px 28px rgba(18,23,20,.09);
}
body.alfari-exercise-library-page .alfari-exercise-card__body h3{
  color:var(--alfari-text)!important;
  overflow-wrap:anywhere;
}
body.alfari-exercise-library-page .alfari-exercise-card__body>.alfari-exercise-button{
  min-height:52px!important;
  margin-top:18px;
}
body.alfari-exercise-library-page :where(
  .alfari-exercise-library__controls,
  [data-alfari-exercise-filters]
){
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));
  gap:14px;
  margin:0 0 26px;
  padding:18px;
  border:1px solid var(--alfari-line);
  border-radius:14px;
  background:var(--alfari-surface-2);
}
body.alfari-exercise-library-page :where(
  .alfari-exercise-library__controls,
  [data-alfari-exercise-filters]
) :where(label,input,select,button){
  min-width:0;
  color:var(--alfari-text);
}
body.alfari-exercise-library-page :where(
  .alfari-exercise-library__controls,
  [data-alfari-exercise-filters]
) :where(input,select,button){
  min-height:52px;
}
body.alfari-exercise-detail-page .alfari-exercise-single{
  padding-bottom:max(52px,calc(30px + env(safe-area-inset-bottom)));
}
body.alfari-exercise-detail-page .alfari-exercise-single :where(h1,h2,h3,p,li,a){
  overflow-wrap:anywhere;
}
body.alfari-exercise-detail-page .alfari-exercise-sections>section{
  box-shadow:0 5px 18px rgba(18,23,20,.06);
}
body.alfari-exercise-detail-page .alfari-exercise-button{
  min-height:52px!important;
}

@media(max-width:980px){
  .alfari-exercise-guide__steps{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:700px){
  body.alfari-exercise-library-page:not(.alfari-app-mode) .page-wrap{
    width:min(100% - 20px,1360px);
  }
  body.alfari-exercise-library-page:not(.alfari-app-mode) .page-card{
    padding-inline:16px!important;
  }
  .alfari-exercise-guide,
  .alfari-exercise-next-step{
    margin:22px 0;
    padding:20px 16px;
    border-radius:14px;
  }
  .alfari-exercise-guide__steps{
    grid-template-columns:minmax(0,1fr);
    gap:11px;
    margin:20px 0;
  }
  .alfari-exercise-guide__steps li{
    padding:17px;
  }
  .alfari-exercise-guide__actions,
  .alfari-exercise-next-step .page-actions{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:10px;
  }
  .alfari-exercise-guide__actions .button,
  .alfari-exercise-next-step .button{
    width:100%;
    min-width:0;
    white-space:normal;
    text-align:center;
  }
  body.alfari-exercise-library-page .alfari-exercise-card__body{
    padding:18px 16px;
  }
  body.alfari-exercise-library-page :where(
    .alfari-exercise-library__controls,
    [data-alfari-exercise-filters]
  ){
    grid-template-columns:minmax(0,1fr);
    padding:14px;
  }
  body.alfari-exercise-detail-page .alfari-exercise-page{
    padding-bottom:max(112px,calc(86px + env(safe-area-inset-bottom)));
  }
  body.alfari-exercise-detail-page .alfari-exercise-single__header h1{
    font-size:clamp(2rem,11vw,2.8rem)!important;
  }
  body.alfari-exercise-detail-page .alfari-exercise-video video{
    max-height:62vh;
    object-fit:contain;
  }
}

/* 5.4.8 – öffentlicher Qualitätslauf: Bedienung, Fokus und interne Wege. */
body:not(.alfari-app-mode) .skip-link{
  position:fixed;
  top:10px;
  left:10px;
  z-index:10000;
  width:auto;
  height:auto;
  transform:translateY(-180%);
  padding:11px 16px;
  border:3px solid var(--alfari-ui-green);
  border-radius:9px;
  background:#fff;
  color:var(--alfari-ui-text);
  font-weight:850;
  text-decoration:none;
}
body:not(.alfari-app-mode) .skip-link:focus{
  left:10px;
  top:10px;
  transform:translateY(0);
}
body:not(.alfari-app-mode) .screen-reader-text{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
}
.header-control-icon{
  display:block;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body:not(.alfari-app-mode) .menu-toggle{
  gap:8px;
}
body:not(.alfari-app-mode) .header-submenu-toggle{
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
  margin-left:2px;
}
body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>li>a{
  font-size:15px;
}
body:not(.alfari-app-mode) .search-form button{
  min-height:50px;
}
body:not(.alfari-app-mode) .offer-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));
}
body:not(.alfari-app-mode) .offer-grid>a{
  align-items:flex-start;
  min-width:0;
}
body:not(.alfari-app-mode) .offer-number{
  display:grid;
  width:42px;
  height:42px;
  flex:0 0 42px;
  place-items:center;
  border-radius:50%;
  background:var(--alfari-ui-bg);
  color:#fff!important;
  font-size:.9rem!important;
  font-weight:850;
  line-height:1;
}
body:not(.alfari-app-mode) .offer-grid :where(h3,p){
  overflow-wrap:anywhere;
}
body:not(.alfari-app-mode) .alfari-empty-search{
  margin-top:24px;
  padding:clamp(20px,3vw,30px);
  border:1px solid var(--alfari-ui-line);
  border-radius:14px;
  background:var(--alfari-ui-panel-soft);
}
body:not(.alfari-app-mode) .alfari-empty-search>p{
  margin-top:0;
  color:var(--alfari-ui-muted)!important;
}

@media(max-width:1180px){
  body:not(.alfari-app-mode) .header-submenu-toggle{
    margin-right:0;
  }
}

@media(max-width:620px){
  body:not(.alfari-app-mode) .header-actions .search-toggle{
    display:grid!important;
  }
  body:not(.alfari-app-mode) .menu-toggle-label{
    display:none;
  }
  body:not(.alfari-app-mode) .offer-grid{
    grid-template-columns:minmax(0,1fr);
  }
  body:not(.alfari-app-mode) .alfari-empty-search .page-actions{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:10px;
  }
}

@media(forced-colors:active){
  body:not(.alfari-app-mode) :where(a,button,input,select,textarea):focus-visible{
    outline:3px solid CanvasText!important;
  }
  body:not(.alfari-app-mode) :where(.button,.goal-card,.offer-grid>a,.page-card){
    border:1px solid CanvasText!important;
  }
}

/* 5.4.9 – mobile Lesbarkeit und eindeutige öffentliche Wortmarke. */
body:not(.alfari-app-mode),
body:not(.alfari-app-mode) :where(
  h1,h2,h3,h4,h5,h6,p,li,dt,dd,a,button,input,select,textarea,
  label,legend,small,strong,b,figcaption,blockquote
){
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}
body:not(.alfari-app-mode) :where(code,pre,kbd,samp){
  font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace!important;
}
body:not(.alfari-app-mode) .alfari-logo-lockup-footer{
  width:min(100%,250px);
  height:55px;
}
body:not(.alfari-app-mode) .alfari-logo-lockup-footer .alfari-logo-art{
  width:250px;
  gap:0;
}

@media(max-width:620px){
  body:not(.alfari-app-mode) .hero{
    padding-block:28px!important;
  }
  body:not(.alfari-app-mode) .hero-grid{
    width:min(100% - 24px,1420px);
    min-height:0!important;
    gap:22px;
  }
  body:not(.alfari-app-mode) .hero-copy{
    padding:26px 18px 30px!important;
    border-radius:14px!important;
  }
  body:not(.alfari-app-mode) .hero-claim{
    margin:0 0 22px!important;
    font-size:clamp(.92rem,4.2vw,1.02rem)!important;
    line-height:1.4!important;
    letter-spacing:.035em!important;
  }
  body:not(.alfari-app-mode) .hero h1{
    margin:0!important;
    max-width:none!important;
    font-size:clamp(2rem,8.5vw,2.35rem)!important;
    line-height:1.06!important;
    letter-spacing:-.035em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
    text-wrap:balance;
  }
  body:not(.alfari-app-mode) .hero h1 span{
    margin-top:.14em;
  }
  body:not(.alfari-app-mode) .hero-line{
    margin:22px 0 18px!important;
  }
  body:not(.alfari-app-mode) .hero-lead{
    margin-bottom:18px!important;
    font-size:clamp(1.16rem,5.2vw,1.34rem)!important;
    line-height:1.38!important;
  }
  body:not(.alfari-app-mode) .hero-text{
    margin-bottom:24px!important;
    font-size:1rem!important;
    line-height:1.65!important;
  }
  body:not(.alfari-app-mode) .hero-benefits{
    gap:10px;
  }
  body:not(.alfari-app-mode) .hero-benefits li{
    width:100%;
    font-size:.95rem!important;
  }
  body:not(.alfari-app-mode) .page-card>h1{
    font-size:clamp(2rem,8.7vw,2.45rem)!important;
    line-height:1.12!important;
    overflow-wrap:anywhere;
  }
  body:not(.alfari-app-mode) :where(.page-card,.offer-grid>a,.goal-card) :where(p,li){
    font-size:1rem!important;
  }
  body:not(.alfari-app-mode) .site-footer{
    padding-bottom:max(128px,calc(104px + env(safe-area-inset-bottom)))!important;
    font-size:1rem!important;
  }
  body:not(.alfari-app-mode) .footer-grid{
    gap:30px!important;
  }
  body:not(.alfari-app-mode) .footer-intro{
    padding-right:82px;
  }
  body:not(.alfari-app-mode) .footer-intro>p{
    margin-top:16px;
    font-size:1rem!important;
    line-height:1.55!important;
  }
  body:not(.alfari-app-mode) .site-footer h2{
    font-size:1rem!important;
    line-height:1.4!important;
  }
  body:not(.alfari-app-mode) .site-footer a{
    font-size:1rem!important;
    line-height:1.45!important;
  }
  body:not(.alfari-app-mode) .alfari-logo-lockup-footer{
    width:min(100%,235px);
    height:46px;
  }
  body:not(.alfari-app-mode) .alfari-logo-lockup-footer .alfari-logo-art{
    width:250px;
    transform:scale(.78);
  }
  body:not(.alfari-app-mode) :where(
    .alfari-avatar-fab,
    .alfari-trainer-fab,
    .alfari-assistant-fab,
    [data-alfari-avatar-fab],
    [data-alfari-trainer-fab]
  ){
    width:68px!important;
    height:68px!important;
    min-width:68px!important;
    min-height:68px!important;
    max-width:68px!important;
    max-height:68px!important;
    padding:3px!important;
    border:2px solid var(--alfari-ui-green)!important;
    border-radius:50%!important;
    background:#fff!important;
    box-shadow:0 12px 28px rgba(0,0,0,.24)!important;
  }
  body:not(.alfari-app-mode) :where(
    .alfari-avatar-fab,
    .alfari-trainer-fab,
    .alfari-assistant-fab,
    [data-alfari-avatar-fab],
    [data-alfari-trainer-fab]
  ) img{
    width:100%!important;
    height:100%!important;
    border-radius:50%!important;
    object-fit:cover!important;
  }
}

/*
 * 5.7.18 – Der öffentliche Kopf verwendet das Originalbild direkt.
 * So bleibt die Wortmarke auch in Browsern sichtbar, die eine externe
 * Bildreferenz innerhalb eines als IMG geladenen SVG nicht auflösen.
 */
body:not(.alfari-app-mode) :where(
  .alfari-logo-horizontal-header,
  .alfari-logo-horizontal-footer
){
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center 82%!important;
}
body:not(.alfari-app-mode) .brand-link{
  width:100%!important;
  height:54px;
  min-height:54px!important;
  overflow:hidden;
}
body:not(.alfari-app-mode) .footer-logo-link{
  display:block;
  width:min(100%,235px);
  height:62px;
  overflow:hidden;
}

@media(max-width:620px){
  body:not(.alfari-app-mode) .header-row{
    width:min(100% - 24px,1420px);
    gap:8px!important;
  }
  body:not(.alfari-app-mode) .brand{
    flex:1 1 132px!important;
    width:auto!important;
    min-width:96px;
    max-width:145px!important;
  }
  body:not(.alfari-app-mode) .brand-link{
    width:100%!important;
    height:42px;
    min-height:42px!important;
  }
  body:not(.alfari-app-mode) :where(.menu-toggle,.search-toggle){
    flex:0 0 46px;
  }
}

/*
 * 5.7.22 – Verbindlicher letzter Darstellungsstandard für öffentliche
 * Untermenüs. Diese Regeln lösen ältere Varianten eindeutig ab.
 */
body:not(.alfari-app-mode) .header-submenu-toggle{color:#f7f8f5!important}
body:not(.alfari-app-mode) .header-submenu-toggle:focus-visible{outline:3px solid #b6d40e!important;outline-offset:3px!important}
body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu{min-width:0;list-style:none}
body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu li{min-width:0;margin:0}
body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu a{display:flex!important;align-items:center;width:100%;min-width:0;min-height:52px;padding:13px 15px!important;border-radius:8px;font-size:16px!important;font-weight:750!important;line-height:1.4!important;white-space:normal!important;overflow-wrap:anywhere;text-decoration:none!important}
@media(min-width:1181px){
  body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu{width:clamp(290px,24vw,350px)!important;max-height:min(72vh,620px);padding:10px!important;overflow-y:auto;overscroll-behavior:contain;border:1px solid #bfc7c2!important;border-radius:12px!important;background:#fff!important;box-shadow:0 20px 48px rgba(0,0,0,.24)!important}
  body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu a{color:#171d1b!important}
  body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu a:hover,body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu a:focus-visible{background:#edf3e8!important;color:#234b17!important}
  body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu>.current-menu-item>a,body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu a[aria-current="page"]{border-left:4px solid #487f27;background:#e4efdd!important;color:#1f4915!important}
}
@media(max-width:1180px){
  body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu{width:100%!important;max-height:none!important;margin:4px 0 12px!important;padding:7px 8px!important;overflow:visible!important;border:1px solid #59625e!important;border-radius:10px!important;background:#252c29!important;box-shadow:none!important}
  body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu li+li{border-top:1px solid rgba(255,255,255,.14)}
  body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu a{min-height:56px;color:#f7f8f5!important}
  body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu a:hover,body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu a:focus-visible{background:#39423e!important;color:#fff!important}
  body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu>.current-menu-item>a,body:not(.alfari-app-mode) .primary-nav .alfari-header-menu-group>.sub-menu a[aria-current="page"]{border-left:4px solid #8dc66a;background:#33422e!important;color:#fff!important}
}

/*
 * 5.7.23 – Reflow bei starker Textvergrößerung.
 * Die öffentliche Oberfläche bleibt bei einer effektiven Breite von 400px
 * vollständig lesbar. Inhalte werden nicht abgeschnitten und Aktionen dürfen
 * in der Höhe mit ihrem Text wachsen.
 */
@media(max-width:400px){
  body:not(.alfari-app-mode){overflow-x:hidden}
  body:not(.alfari-app-mode) :where(.wrap,.page-wrap,.page-card,.entry-content,article,section,form,fieldset,label){min-width:0!important;max-width:100%!important}
  body:not(.alfari-app-mode) :where(h1,h2,h3,h4,p,li,a,button,label,legend,summary,dt,dd){overflow-wrap:anywhere;word-break:normal}
  body:not(.alfari-app-mode) :where(h1,.page-card h1){font-size:clamp(2rem,12vw,2.65rem)!important;line-height:1.12!important}
  body:not(.alfari-app-mode) :where(h2,.why h2){font-size:clamp(1.65rem,9vw,2.1rem)!important;line-height:1.18!important}
  body:not(.alfari-app-mode) :where(.page-card,.alfari-book-card,.alfari-trainer-focus-card){padding-left:18px!important;padding-right:18px!important}
  body:not(.alfari-app-mode) main :where(.button,button,input[type="submit"],input[type="button"]),
  body:not(.alfari-app-mode) .search-form button{width:100%;max-width:100%;height:auto!important;min-height:56px;white-space:normal!important;line-height:1.35!important;text-align:center}
  body:not(.alfari-app-mode) :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){width:100%!important;max-width:100%!important;min-width:0!important;font-size:1rem!important}
  body:not(.alfari-app-mode) :where(.hero-buttons,.page-actions,.book-actions,.form-actions,.search-form){display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%;gap:12px!important}
  body:not(.alfari-app-mode) .search-form label{min-width:0}
}

/* 5.7.24 – Kompakte Header- und Dialogsteuerung trotz Inhalts-Reflow. */
@media(max-width:400px){
  body:not(.alfari-app-mode) :where(.menu-toggle,.search-toggle,.header-submenu-toggle,.public-nav-close,.public-search-close,.public-nav-backdrop,.public-search-backdrop){width:auto!important;max-width:none;height:auto!important;white-space:normal}
  body:not(.alfari-app-mode) :where(.menu-toggle,.search-toggle){width:46px!important;min-width:46px!important;min-height:46px!important;padding:0!important}
  body:not(.alfari-app-mode) :where(.public-nav-close,.public-search-close){min-height:50px!important;padding:10px 14px!important}
  body:not(.alfari-app-mode) .header-submenu-toggle{min-width:48px!important;min-height:48px!important}
}
@media(forced-colors:active){
  body:not(.alfari-app-mode) :where(.button,button,input,select,textarea,summary){border:1px solid ButtonText}
  body:not(.alfari-app-mode) :where(.button,a,button,input,select,textarea,summary):focus-visible{outline:3px solid Highlight!important;outline-offset:3px!important}
}

/*
 * 5.7.25 – Öffentliche Navigation und Suche bei geringer Bildschirmhöhe.
 * Beide Dialogflächen besitzen einen eigenen, kontrollierten Scrollbereich.
 */
@media(max-width:1180px) and (max-height:600px){
  body:not(.alfari-app-mode) .primary-nav{
    height:auto!important;
    max-height:calc(100dvh - 68px)!important;
    padding-bottom:max(18px,env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
  }
  body:not(.alfari-app-mode) .public-nav-close{
    position:sticky!important;
    top:0!important;
    z-index:2;
    background:#252c29!important;
  }
  body:not(.alfari-app-mode) .search-panel.open{
    max-height:calc(100dvh - 68px)!important;
    padding-bottom:max(16px,env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
  }
  body:not(.alfari-app-mode) .search-panel.open>.wrap{
    align-items:start;
  }
  body:not(.alfari-app-mode) .public-search-close{
    position:sticky!important;
    top:0!important;
    z-index:2;
  }
}

/* 5.7.29 – Mobiler Footer ohne Reserve für entfernte Floating-Avatare. */
@media(max-width:700px){
  body:not(.alfari-app-mode) .site-footer{
    padding-bottom:max(28px,calc(20px + env(safe-area-inset-bottom)))!important;
  }
  body:not(.alfari-app-mode) .footer-intro{
    min-width:0;
    padding-right:0!important;
  }
  body:not(.alfari-app-mode) .footer-navigation ul{
    gap:4px!important;
  }
  body:not(.alfari-app-mode) .footer-navigation a{
    display:flex!important;
    align-items:center;
    width:100%;
    min-width:0;
    min-height:44px!important;
    margin:0!important;
    padding:8px 0!important;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  body:not(.alfari-app-mode) .copyright{
    margin-top:24px!important;
    padding-top:18px!important;
    overflow-wrap:anywhere;
  }
}


/* 6.13.3 – ROOT CAUSE FIX
 * Die alte 5.7.46-Regel hat jede öffentliche Card/Article/Slot-Fläche
 * pauschal auf Anthrazit gesetzt. Das wird ausdrücklich aufgehoben.
 * Dunkle Darstellung gilt nur noch für explizit deklarierte Dark Surfaces.
 */
body:not(.alfari-app-mode) :where(
  .alfari-card--dark,
  .alfari-dark-card,
  .alfari-focus-card,
  .alfari-premium-card,
  [data-alfari-card="dark"]
){
  border-color:#4a514e!important;
  background:#202724!important;
  color:#e8ecef!important;
}
body:not(.alfari-app-mode) :where(
  .alfari-card--dark,
  .alfari-dark-card,
  .alfari-focus-card,
  .alfari-premium-card,
  [data-alfari-card="dark"]
) :where(h1,h2,h3,h4,h5,h6,strong,b,label,legend,summary){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
}
body:not(.alfari-app-mode) :where(
  .alfari-card--dark,
  .alfari-dark-card,
  .alfari-focus-card,
  .alfari-premium-card,
  [data-alfari-card="dark"]
) :where(p,li,small,figcaption,dd,dt,span:not(.button):not([class*="button"])){
  color:#e8ecef!important;
  -webkit-text-fill-color:#e8ecef!important;
  opacity:1!important;
}
body:not(.alfari-app-mode) :where(
  .page-kicker,.kicker,.badge,[class*="label"]
){
  color:#6fa323!important;
  -webkit-text-fill-color:#6fa323!important;
}

body:not(.alfari-app-mode) :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  background:#fff!important;
  color:#202326!important;
  -webkit-text-fill-color:#202326!important;
}
body:not(.alfari-app-mode) :where(.button,button,input[type="submit"],input[type="button"]){
  -webkit-text-fill-color:currentColor!important;
}
@media(max-width:640px){
  body:not(.alfari-app-mode) :where(.page-card,.alfari-card,[data-alfari-download-item],[class*="card"],article){
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body:not(.alfari-app-mode) :where(.page-card,.alfari-card,[data-alfari-download-item],[class*="card"],article) :where(h2,h3,h4){
    font-size:clamp(1.25rem,6.3vw,1.65rem)!important;
    line-height:1.22!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }
}

/* 6.23.3 TOOLS ROOT FIX */
body:not(.alfari-app-mode) .alfari-tools-page{background:#f7f8f5!important;color:#1f2328!important;overflow-x:hidden!important}
body:not(.alfari-app-mode) .alfari-tools-page .alfari-tools-hero{background:#fff!important;background-image:none!important;color:#1f2328!important}
body:not(.alfari-app-mode) .alfari-tools-page .alfari-tools-hero :is(h1,h2,h3,strong){color:#1f2328!important;-webkit-text-fill-color:#1f2328!important}
body:not(.alfari-app-mode) .alfari-tools-page .alfari-tools-hero p{color:#4b5563!important;-webkit-text-fill-color:#4b5563!important}
@media(max-width:759px){
body:not(.alfari-app-mode) .alfari-tools-page :is(.alfari-public-slot,.alfari-public-slot>div,[class*="tool-grid"],[class*="tools-grid"],[class*="calculator-grid"],[class*="rechner-grid"]){display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-auto-flow:row!important;gap:1rem!important;width:100%!important;max-width:100%!important;min-width:0!important}
body:not(.alfari-app-mode) .alfari-tools-page :is(article,[class*="tool-card"],[class*="calculator-card"],[class*="rechner-card"],.alfari-public-slot a,.alfari-public-slot button){display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;transform:none!important}
body:not(.alfari-app-mode) .alfari-tools-page :is(h1,h2,h3,h4,p,a,span,strong,label,small,li,button){writing-mode:horizontal-tb!important;text-orientation:mixed!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;min-width:0!important;max-width:100%!important}
}
@media(min-width:760px) and (max-width:1099px){body:not(.alfari-app-mode) .alfari-tools-page :is([class*="tool-grid"],[class*="tools-grid"]){grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(min-width:1100px){body:not(.alfari-app-mode) .alfari-tools-page :is([class*="tool-grid"],[class*="tools-grid"]){grid-template-columns:repeat(3,minmax(0,1fr))!important}}


/* 6.23.5 – ALFARI TOOLS COLOR SYSTEM
   Light, readable public tools surface. */
body.alfari-tools-runtime-repaired,
body.alfari-tools-runtime-repaired main{
 background:#f7f8f5!important;
 color:#1f2328!important;
}
body.alfari-tools-runtime-repaired .alfari-tools-runtime-hero{
 background:#fff!important;
 background-image:none!important;
 border:1px solid #dfe4dc!important;
 color:#1f2328!important;
}
body.alfari-tools-runtime-repaired .alfari-tools-runtime-hero :is(h1,h2,h3,h4,strong,b){
 color:#1f2328!important;-webkit-text-fill-color:#1f2328!important;opacity:1!important
}
body.alfari-tools-runtime-repaired .alfari-tools-runtime-hero :is(p,span,small){
 color:#4b5563!important;-webkit-text-fill-color:#4b5563!important;opacity:1!important
}
body.alfari-tools-runtime-repaired .alfari-tools-runtime-grid > *{
 background:#fff!important;
 background-image:none!important;
 color:#1f2328!important;
 border:1px solid #dfe4dc!important;
 box-shadow:0 8px 22px rgba(31,35,40,.06)!important;
}
body.alfari-tools-runtime-repaired .alfari-tools-runtime-grid > * :is(h1,h2,h3,h4,strong,b,span){
 color:#1f2328!important;-webkit-text-fill-color:#1f2328!important;opacity:1!important
}
body.alfari-tools-runtime-repaired .alfari-tools-runtime-grid > * :is(p,small){
 color:#4b5563!important;-webkit-text-fill-color:#4b5563!important;opacity:1!important
}
/* Active/selected tool only */
body.alfari-tools-runtime-repaired .alfari-tools-runtime-grid > *.is-active,
body.alfari-tools-runtime-repaired .alfari-tools-runtime-grid > *[aria-current="true"],
body.alfari-tools-runtime-repaired .alfari-tools-runtime-grid > *[aria-selected="true"]{
 background:#6fa323!important;
 border-color:#6fa323!important;
 color:#fff!important;
}
body.alfari-tools-runtime-repaired .alfari-tools-runtime-grid > *.is-active *,
body.alfari-tools-runtime-repaired .alfari-tools-runtime-grid > *[aria-current="true"] *,
body.alfari-tools-runtime-repaired .alfari-tools-runtime-grid > *[aria-selected="true"] *{
 color:#fff!important;-webkit-text-fill-color:#fff!important
}

/* 6.23.6 exact tools intro colors */
body .alfari-tools-exact-intro{background:#fff!important;background-color:#fff!important;background-image:none!important;color:#1f2328!important;border:1px solid #dfe4dc!important;opacity:1!important;filter:none!important}
body .alfari-tools-exact-intro :is(h1,h2,h3,h4,strong,b){color:#1f2328!important;-webkit-text-fill-color:#1f2328!important;opacity:1!important}
body .alfari-tools-exact-intro :is(p,span,small){color:#4b5563!important;-webkit-text-fill-color:#4b5563!important;opacity:1!important}

/* 6.23.7 – verified runtime intro card palette */
body .alfari-tools-runtime-intro-card{background:#fff!important;background-color:#fff!important;background-image:none!important;color:#1f2328!important;border:1px solid #dfe4dc!important;opacity:1!important;filter:none!important}
body .alfari-tools-runtime-intro-card :is(h1,h2,h3,h4,strong,b){color:#1f2328!important;-webkit-text-fill-color:#1f2328!important;opacity:1!important}
body .alfari-tools-runtime-intro-card :is(p,span,small){color:#4b5563!important;-webkit-text-fill-color:#4b5563!important;opacity:1!important}


/* 6.30.1 – MOBILE NAV SOURCE/CASCADE CLOSURE
   Canonical public mobile renderer. Replaces conflicting historical mobile declarations. */
@media(max-width:1180px){
 body:not(.alfari-app-mode) #primary-nav.primary-nav{
   left:auto!important;right:0!important;top:72px!important;
   width:min(94vw,440px)!important;max-width:440px!important;
   height:calc(100dvh - 72px)!important;max-height:calc(100dvh - 72px)!important;
   padding:20px 18px 28px!important;overflow-y:auto!important;overflow-x:hidden!important;
   background:#0f1412!important;color:#fff!important;
 }
 body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu{
   display:grid!important;grid-template-columns:1fr!important;justify-content:stretch!important;
   width:100%!important;max-width:none!important;gap:0!important;margin:0!important;padding:0!important;
 }
 body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>li{
   display:grid!important;grid-template-columns:minmax(0,1fr) 52px!important;
   align-items:center!important;width:100%!important;max-width:none!important;
   margin:0!important;padding:0!important;border-bottom:1px solid rgba(255,255,255,.12)!important;
 }
 body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>li:not(.alfari-header-menu-group){
   grid-template-columns:1fr!important;
 }
 body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>li>a{
   width:100%!important;min-width:0!important;min-height:64px!important;
   padding:14px 12px!important;margin:0!important;
   color:#fff!important;background:transparent!important;border:0!important;border-radius:0!important;
   font-size:17px!important;font-weight:800!important;line-height:1.2!important;
 }
 body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>li>a :is(span,strong,small){
   color:#fff!important;
 }
 body:not(.alfari-app-mode) #primary-nav .header-submenu-toggle{
   display:grid!important;place-items:center!important;width:52px!important;height:52px!important;
   min-width:52px!important;min-height:52px!important;margin:0!important;padding:0!important;
   color:#8fcf2f!important;background:transparent!important;border:0!important;
 }
 body:not(.alfari-app-mode) #primary-nav .header-submenu-toggle :is(svg,path,polyline,line){
   color:#8fcf2f!important;stroke:#8fcf2f!important;
 }
 body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>.current-menu-item>a,
 body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>.current-menu-ancestor>a{
   color:#fff!important;background:#252c29!important;border-left:4px solid #8fcf2f!important;border-radius:14px!important;
 }
 body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>.alfari-member-menu-item{
   grid-template-columns:1fr!important;border-bottom:0!important;
 }
 body:not(.alfari-app-mode) #primary-nav>.alfari-generation-one-menu>.alfari-member-menu-item>a{
   width:100%!important;min-height:72px!important;margin:14px 0 0!important;padding:16px!important;
   border:1px solid #8fcf2f!important;border-radius:16px!important;background:#5b8f20!important;
   color:#fff!important;font-size:19px!important;font-weight:900!important;
 }
 body:not(.alfari-app-mode) #primary-nav>.alfari-premium-nav-direct{
   display:grid!important;grid-template-columns:minmax(0,1fr) 28px!important;gap:12px!important;align-items:center!important;
   width:100%!important;min-height:104px!important;margin:14px 0 0!important;padding:18px!important;
   box-sizing:border-box!important;border:2px solid #8fcf2f!important;border-radius:18px!important;
   background:#111715!important;color:#fff!important;text-decoration:none!important;
 }
 body:not(.alfari-app-mode) #primary-nav>.alfari-premium-nav-direct strong{color:#fff!important;font-size:20px!important}
 body:not(.alfari-app-mode) #primary-nav>.alfari-premium-nav-direct small{color:#d8ddda!important;font-size:14px!important}
 body:not(.alfari-app-mode) #primary-nav>.alfari-premium-nav-direct .alfari-nav-arrow{color:#8fcf2f!important;font-size:32px!important}
 body:not(.alfari-app-mode) #primary-nav .public-nav-close{color:#fff!important}
 /* Use the actual menu-open state already maintained by main.js. */
 body.alfari-public-nav-open :is(.trainer-pill,.mini-trainer,.trainer-widget,[data-alfari-floating-trainer],[data-alfari-trainer-fab],.alfari-trainer-fab,.alfari-trainer-widget,[class*="floating-trainer"],[class*="trainer-widget"]){
   left:10px!important;right:auto!important;
 }
}
@media(max-width:620px){
 body:not(.alfari-app-mode) #primary-nav.primary-nav{top:68px!important;height:calc(100dvh - 68px)!important;max-height:calc(100dvh - 68px)!important}
}

/* 6.30.2 LIVE CLOSURE */
@media(max-width:1180px){
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav.primary-nav>.alfari-generation-one-menu>li>a,
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav.primary-nav>.alfari-generation-one-menu>li>a:visited,
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav.primary-nav>.alfari-generation-one-menu>li>a *,
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav.primary-nav>.alfari-generation-one-menu>.alfari-member-menu-item>a,
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav.primary-nav>.alfari-generation-one-menu>.alfari-member-menu-item>a *{color:#fff!important;-webkit-text-fill-color:#fff!important}
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav .header-submenu-toggle,
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav .header-submenu-toggle *{color:#8fcf2f!important;-webkit-text-fill-color:#8fcf2f!important;stroke:#8fcf2f!important}
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav .public-nav-close{position:sticky!important;top:0!important;z-index:4!important;display:flex!important;visibility:visible!important;opacity:1!important;width:100%!important;min-height:56px!important;margin:0 0 12px!important;padding:10px 6px!important;background:#0f1412!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav>.alfari-premium-nav-direct strong{display:block!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:20px!important;line-height:1.15!important}
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav>.alfari-premium-nav-direct small{display:block!important;margin-top:5px!important;color:#d8ddda!important;-webkit-text-fill-color:#d8ddda!important;font-size:14px!important;line-height:1.35!important}
body:not(.alfari-app-mode).alfari-public-nav-open #primary-nav>.alfari-premium-nav-direct .alfari-nav-arrow{color:#8fcf2f!important;-webkit-text-fill-color:#8fcf2f!important}
body.alfari-public-nav-open :is(.trainer-pill,.mini-trainer,.trainer-widget,[data-alfari-floating-trainer],[data-alfari-trainer-fab],.alfari-trainer-fab,.alfari-trainer-widget,[class*="floating-trainer"],[class*="trainer-widget"],[class*="trainer-launch"],[class*="trainer-avatar"]){left:10px!important;right:auto!important;inset-inline-start:10px!important;inset-inline-end:auto!important;bottom:12px!important;transform:none!important;max-width:min(160px,42vw)!important}
}