/* Authoritative shared components. Reference: approved homepage, 12.09.2026.
   No page-specific variants for the same component. */
body.aai2026{
 --aai-card-line:#dce6ed;--aai-card-radius:14px;
 --aai-card-shadow:0 3px 8px rgba(25,57,82,.025),0 12px 28px rgba(25,57,82,.045);
 --aai-cta:linear-gradient(135deg,#fb7725,#f35a12);
 --aai-cta-shadow:0 2px 3px rgba(146,61,16,.07),0 6px 14px rgba(227,95,25,.13);
}
/* FAQ: same markup, geometry, typography, icon and interaction on every page. */
body.aai2026 .faq-card.aai-faq{
 box-sizing:border-box;width:100%;max-width:60rem;padding:0;margin-top:1.5rem;
 border:1px solid #dbe5ec;border-radius:14px;box-shadow:var(--aai-card-shadow);
 background:#fff;overflow:hidden;color:#4a4a4a;
 font-family:Geist,system-ui,sans-serif;font-size:1rem;font-weight:300;line-height:1.7;letter-spacing:normal;
}
body.aai2026 .aai-faq .faq-row{padding:0;margin:0;border:0;border-bottom:1px solid var(--hairline);border-radius:0;background:none;box-shadow:none}
body.aai2026 .aai-faq .faq-row:last-child{border-bottom:0}
body.aai2026 .aai-faq .faq-row.open{background:#f8fbfd}
body.aai2026 .aai-faq .faq-q{
 box-sizing:border-box;appearance:none;width:100%;max-width:none;min-height:0;margin:0;
 display:flex;align-items:center;justify-content:space-between;gap:1.5rem;
 padding:1.2rem 1.7rem;border:0;border-radius:0;box-shadow:none;
 background:none;color:#204f6b;text-align:left;text-transform:none;letter-spacing:normal;
 font-family:inherit;font-size:1.02rem;font-weight:500;line-height:normal;cursor:pointer;
 transition:background var(--transition-base);
}
body.aai2026 .aai-faq .faq-q::before,body.aai2026 .aai-faq .faq-q::after{content:none}
body.aai2026 .aai-faq .faq-q > span:not(.sign){font:inherit;color:inherit}
body.aai2026 .aai-faq .faq-q:hover{background:#f6fafc}
body.aai2026 .aai-faq .faq-row.open .faq-q{background:#fbfdff}
body.aai2026 .aai-faq .faq-q:focus-visible{outline:3px solid #148aad;outline-offset:-3px}
body.aai2026 .aai-faq .faq-q .sign{
 box-sizing:border-box;flex:0 0 auto;width:1.55rem;height:1.55rem;padding:0;margin:0;
 border:1px solid #3fe0b0;border-radius:50%;background:transparent;color:var(--green-tx);
 display:flex;align-items:center;justify-content:center;font-family:inherit;font-size:1.05rem;font-weight:400;line-height:1;
 box-shadow:none;transform:none;transition:var(--transition-base);
}
body.aai2026 .aai-faq .faq-q .sign::before,body.aai2026 .aai-faq .faq-q .sign::after{content:none}
body.aai2026 .aai-faq .faq-row.open .sign{background:#3fe0b0;color:#08422c;transform:rotate(45deg)}
body.aai2026 .aai-faq .faq-a{
 box-sizing:border-box;display:grid;grid-template-rows:0fr;opacity:0;
 width:auto;max-width:74ch;height:auto;min-height:0;margin:0;padding:0 1.7rem;
 border:0;background:none;color:#4a4a4a;font-family:inherit;font-size:.97rem;font-weight:300;line-height:1.72;letter-spacing:normal;
 transition:grid-template-rows .25s var(--ease),opacity .25s var(--ease),padding-bottom .25s var(--ease);
}
body.aai2026 .aai-faq .faq-a-inner{overflow:hidden;min-height:0;padding:0;margin:0;color:inherit;font:inherit}
body.aai2026 .aai-faq .faq-row.open .faq-a{grid-template-rows:1fr;opacity:1;padding-bottom:1.4rem}
body.aai2026 .aai-faq .faq-a-inner :is(p,li){font:inherit;color:inherit;max-width:none;letter-spacing:normal}
body.aai2026 .aai-faq .faq-a-inner p{margin:0 0 .8rem;padding:0}
body.aai2026 .aai-faq .faq-a-inner p:last-child{margin-bottom:0}
body.aai2026 .aai-faq .faq-a-inner a{color:#0a4d7c;text-decoration:underline;text-underline-offset:3px}
body.aai2026 .faq__wrapper:empty{display:none}
/* The same feature card and sample player keep the homepage surface everywhere. */
body.aai2026 .section .contentbox_text{
 background:linear-gradient(150deg,#fff,#fdfefe);border:1px solid var(--aai-card-line);
 border-radius:var(--aai-card-radius);box-shadow:var(--aai-card-shadow);
}
body.aai2026 .section .contentbox_text h3{color:#164f70}
body.aai2026 .section .contentbox_text > i{color:#2382a3}
body.aai2026 .section .contentbox_text p:not(.small):not(.font-bigger){color:#4a4a4a;font-family:Geist,system-ui,sans-serif;font-size:.96rem;font-weight:300;line-height:1.65}
body.aai2026 :is(.step-card .step-num,.hilfe-schritt-nr){border-radius:10px;background:linear-gradient(135deg,#1b617f,#104e6e);box-shadow:0 4px 10px rgba(16,70,96,.12)}
body.aai2026 .contentbox_hero_audioplayer.contentbox_hero_audioplayer{
 background:rgba(255,255,255,.94);border:1px solid #d6e4ec;border-radius:12px;
 /* Legacy style.css forces white with !important on subpages. */
 background-color:rgba(255,255,255,.94) !important;
 box-shadow:0 2px 6px rgba(22,57,83,.025),0 7px 16px rgba(22,57,83,.035);
 padding:.7rem .95rem;gap:.85rem;
}
body.aai2026 .contentbox_hero_audioplayer.contentbox_hero_audioplayer:hover,
body.aai2026 .contentbox_hero_audioplayer.contentbox_hero_audioplayer.playing{background:#fff;background-color:#fff !important;border-color:#75adca !important;box-shadow:0 5px 16px rgba(22,57,83,.08) !important}
body.aai2026 :is(.section,.vl-page) .contentbox_hero_audioplayer p.inhalt{color:#0a4d7c;font-family:Geist,system-ui,sans-serif;font-size:.95rem;font-weight:500;line-height:1.35;margin:0;padding:0}
body.aai2026 :is(.section,.vl-page) .contentbox_hero_audioplayer .play-circle{background:#edf5f9;border-color:#c2dce9}
body.aai2026 :is(.section,.vl-page) .contentbox_hero_audioplayer:hover .play-circle{background:#0b6089;border-color:#0b6089}
/* CTA appearances are shared; compact navigation and explicit sizes keep their roles. */
body.aai2026 .section .cto,
body.aai2026 .vl-page .vl-primary{background:var(--aai-cta);border:0;border-radius:8px;box-shadow:var(--aai-cta-shadow);color:#fff}
body.aai2026 .section .cto:hover,
body.aai2026 .vl-page .vl-primary:hover{background:linear-gradient(135deg,#f66b1a,#e94f0b);box-shadow:0 3px 6px rgba(146,61,16,.07),0 9px 18px rgba(227,95,25,.16)}
body.aai2026 .vl-page .vl-primary{padding:.78rem 1.45rem;min-height:0;font-size:.87rem;font-weight:500;line-height:1.7;letter-spacing:.07em;text-transform:uppercase;gap:.5rem}
body.aai2026 .section .cto.secondary,
body.aai2026 .section .cto-ghost{border:1px solid #b7cbd9;background:#fff;color:#205675;border-radius:8px;box-shadow:none}
body.aai2026 .section .cto.secondary:hover,
body.aai2026 .section .cto-ghost:hover{border-color:#689ab7;background:#f5f9fc;color:#174b6d}
@media(prefers-reduced-motion:reduce){body.aai2026 .aai-faq :is(.faq-q,.faq-a,.sign){transition:none}}

/* Service cards: consistent inner space above headings and icons. */
body.aai2026 .section .gen-services > .contentbox_text{padding:1.5rem;}

/* Compact step labels and breathing room below the music catalogue. */
body.aai2026 .hilfe-schritt-nr{align-self:flex-start;display:inline-flex;align-items:center;width:auto;min-height:1.8rem;padding:.25rem .65rem;line-height:1.3;color:#fff;}
body.aai2026 .section:has(> .mk-kats){padding-bottom:6rem;}
@media(max-width:767px){body.aai2026 .section:has(> .mk-kats){padding-bottom:4rem;}}
