/*
Theme Name: FREQQ
Theme URI: https://freqq.de
Author: FREQQ
Author URI: https://freqq.de
Description: Custom-Theme fuer FREQQ - der kostenlose KI-Newsletter & Blog fuer den DACH-Raum. 1:1 aus dem finalen HTML-Entwurf uebertragen.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: freqq
*/

/* Inter, selbst gehostet (statt Google Fonts CDN) - datenschutzfreundlich, kein IP-Transfer an Google.
   Variable Font, deckt Gewicht 300-900 in einer Datei ab; latin-Subset reicht fuer Deutsch (inkl. Umlaute/ß). */
@font-face{
  font-family:'Inter';font-style:normal;font-weight:300 900;font-display:swap;
  src:url('assets/fonts/inter-latin-var.woff2') format('woff2-variations'),
      url('assets/fonts/inter-latin-var.woff2') format('woff2');
}

:root{--black:#111;--white:#FAFAFA;--mint:#99DBC0;--teal:#2a3836;--red:#f3b4b4;
--grey-bg:#F5F5F5;--grey-text:#555;--grey-muted:#888;--grey-border:#E5E5E5;
--radius-sm:8px;--radius-md:14px;--radius-lg:24px;--radius-full:999px;--container:1200px;--container-narrow:820px;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
html{font-size:18px;}
body{font-family:'Inter',sans-serif;font-size:19px;line-height:1.6;color:var(--black);background:var(--white);-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;}
h1,h2,h3,h4{font-weight:800;line-height:1.12;letter-spacing:-.02em;color:var(--black);}
h1{font-size:clamp(2.4rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;}
h2{font-size:clamp(1.8rem,3.2vw,2.6rem);}
h3{font-size:clamp(1.2rem,2vw,1.5rem);}
.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 1.5rem;}
.container-narrow{width:100%;max-width:var(--container-narrow);margin:0 auto;padding:0 1.5rem;}
section{padding:6rem 0;}
.section-tight{padding:4rem 0;}
.section-grey{background:var(--grey-bg);}
.eyebrow{font-size:.85rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);display:block;margin-top:1.2rem;}
.text-mint{color:#0f5238;}
.muted{color:var(--grey-text);}
/* Startseiten-Bausteine (neuer Text) */
.hero-benefit{margin:1.5rem auto 0;font-size:.96rem;color:#1a3a2d;max-width:48ch;}
.stat-band{text-align:center;}
.stat-band .num{font-size:clamp(3rem,7vw,5rem);font-weight:900;letter-spacing:-.04em;color:var(--teal);line-height:1;}
.stat-band .txt{font-size:1.15rem;font-weight:700;max-width:32ch;margin:.8rem auto 0;}
.stat-band .src{font-size:.78rem;color:var(--grey-muted);margin-top:1rem;}
.tip-box{max-width:680px;margin:1.8rem auto;background:#eef6f2;border:1px solid #d2e7dd;border-left:4px solid var(--mint);border-radius:var(--radius-md);padding:18px 24px;}
.tip-head{display:flex;align-items:center;gap:.55rem;margin:0 0 .45rem;font-weight:800;color:var(--teal);font-size:1.02rem;}
.tip-head svg,.tip-head i{width:22px;height:22px;flex:none;color:#0f5238;}
.tip-body{color:var(--grey-text);font-size:.98rem;line-height:1.65;}
.tip-box>svg{width:44px;height:44px;padding:10px;box-sizing:border-box;background:var(--mint);color:var(--teal);border-radius:var(--radius-sm);flex:none;}
.tip-box b{color:var(--teal);font-weight:800;}
.tip-box a{color:#0f5238;font-weight:700;text-decoration:underline;text-underline-offset:2px;}
.ki-cap{font-size:.72rem;color:var(--grey-muted);margin-top:.7rem;text-align:center;font-weight:500;}
.quote-attr{max-width:780px;margin:1rem auto 0;font-size:.88rem;color:var(--grey-muted);}
.quote-sub{max-width:780px;margin:.6rem auto 0;font-weight:700;color:var(--black);}
.txtlink,.topic-link{display:inline-flex;align-items:center;gap:.5rem;padding:.78rem 1.6rem;border:none;border-radius:999px;background:var(--black);color:#fff;font-weight:700;font-size:.92rem;text-decoration:none;margin-top:1.4rem;transition:transform .15s,background .2s;}
.txtlink:hover,.topic-link:hover{background:var(--teal);transform:translateY(-1px);}
.share-quiet{text-align:center;}
.share-quiet p{max-width:60ch;margin:0 auto;color:var(--grey-text);}
/* Headlines generell überlaufsicher (auch echtes Mobil) */
h1,h2,h3{overflow-wrap:break-word;}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.6rem;border-radius:var(--radius-full);font-weight:700;font-size:.95rem;font-family:inherit;cursor:pointer;border:none;transition:transform .15s,background .2s,color .2s;white-space:nowrap;}
.btn:hover{transform:translateY(-1px);}
.btn-primary{background:var(--black);color:var(--white);}
.btn-primary:hover{background:var(--teal);}
.btn-mint{background:var(--mint);color:var(--black);}
.btn-mint:hover{background:#7fcfaf;}
.btn-white{background:var(--white);color:var(--black);}
.nav-cta{padding:.85rem 1.6rem;font-size:1.02rem;font-weight:800;letter-spacing:.01em;box-shadow:0 0 0 2px rgba(255,255,255,.18),0 6px 18px rgba(0,0,0,.35);}
.nav-cta:hover{box-shadow:0 0 0 2px rgba(255,255,255,.3),0 8px 22px rgba(0,0,0,.45);}
.btn-outline{background:transparent;color:var(--black);border:1.5px solid var(--black);}
.btn-outline:hover{background:var(--black);color:var(--white);}

/* LOGO + Q-MOTIV */
.logo svg{height:30px;width:auto;fill:currentColor;display:block;}
.qmotif{position:absolute;right:-180px;bottom:-185px;width:440px;pointer-events:none;}
.bg-light .qmotif{color:rgba(17,17,17,.035);}
.bg-dark .qmotif,.cta-band .qmotif{color:rgba(180,230,206,.055);}
.cta-band .qmotif{right:-185px;bottom:-195px;width:460px;}

/* CANVA-HINTERGRÜNDE (rotierte PNGs aus /CI/) */
.bg-light{position:relative;overflow:hidden;
 background-color:#cfeeda;
 background-image:url('assets/img/bg-white-landscape.png');
 background-size:cover;background-position:center;background-repeat:no-repeat;}
.bg-dark{position:relative;overflow:hidden;color:#fff;
 background-color:#16201d;
 background-image:url('assets/img/bg-black-landscape.png');
 background-size:cover;background-position:center;background-repeat:no-repeat;}
/* SVG-Blobs und Q-Motiv-Overlay werden vom PNG ersetzt */
.bg-light .blob,.bg-dark .blob,.bg-light .qmotif,.bg-dark .qmotif{display:none;}
.blob{position:absolute;inset:0;pointer-events:none;}
.bg-light>.container,.bg-dark>.container{position:relative;}

/* NAV */
.nav{position:sticky;top:0;z-index:100;background:var(--black);color:#fff;border-bottom:1px solid rgba(255,255,255,.06);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;max-width:var(--container);margin:0 auto;gap:1.5rem;}
.logo{display:inline-flex;align-items:center;color:var(--white);}
.nav-links{display:flex;align-items:center;gap:1.75rem;font-size:.95rem;}
.nav-links a{color:#fff;opacity:.85;transition:.15s;position:relative;}
.nav-links a:hover{opacity:1;color:var(--mint);}
.nav-links .btn{opacity:1;}
.nav-links .btn-mint{color:var(--black);}
.nav-item{position:relative;}
.nav-item.has-dropdown>a::after{content:'▾';font-size:.7em;margin-left:.3em;opacity:.7;}
.nav-dropdown{position:absolute;top:100%;left:0;background:var(--black);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:.5rem 0;min-width:180px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.15s;margin-top:.5rem;}
.nav-item:hover .nav-dropdown{opacity:1;visibility:visible;transform:translateY(0);}
.nav-dropdown a{display:block;padding:.55rem 1rem;font-size:.9rem;}
.nav-disabled{opacity:.35!important;cursor:not-allowed;}
.nav-burger{display:none;font-size:1.8rem;color:#fff;line-height:1;padding:.25rem .5rem;background:none;border:none;cursor:pointer;}
.nav-drawer{display:none;flex-direction:column;gap:.4rem;background:#000;padding:1rem 1.5rem 1.5rem;}
.nav-drawer.open{display:flex;}
.nav-drawer a{color:#fff;font-size:1.02rem;font-weight:600;padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.08);}
.nav-drawer .nav-drawer-sub{padding-left:1rem;font-size:.9rem;font-weight:400;opacity:.75;}
@media(max-width:960px){.nav-links{display:none;}.nav-burger{display:inline-flex;}}

/* HERO */
.hero{position:relative;overflow:hidden;padding:6rem 0 5rem;text-align:center;}
.hero h1{max-width:20ch;margin:0 auto 1.25rem;}
.hero-sub{font-size:clamp(1.05rem,1.6vw,1.2rem);color:#1a3a2d;max-width:44ch;margin:0 auto 2.5rem;}

/* E-MAIL-FORM (Variante 1: Pille, schwarzer Button) */
.email-form{display:flex;align-items:center;background:var(--white);border:2px solid var(--black);border-radius:var(--radius-full);padding:5px;max-width:520px;margin:0 auto;overflow:hidden;}
.email-form input{flex:1;border:none;outline:none;background:transparent;padding:.8rem 1.2rem;font-size:.95rem;font-family:inherit;min-width:0;}
.email-form input::placeholder{color:var(--grey-muted);}
.email-form .btn{padding:.8rem 1.5rem;font-size:.92rem;}
.email-micro{margin-top:.65rem;font-size:.78rem;color:var(--grey-text);text-align:center;max-width:520px;margin-left:auto;margin-right:auto;}
.email-micro a{color:var(--grey-muted);font-size:.73rem;text-decoration:underline;text-underline-offset:2px;}

/* FEATURE-BAR */
.feature-bar{background:var(--white);padding:2rem 0;border-top:1px solid var(--grey-border);border-bottom:1px solid var(--grey-border);}
.feature-bar-inner{display:flex;align-items:center;justify-content:center;gap:2.5rem;flex-wrap:wrap;}
.feature-bar-label{font-weight:800;font-size:.95rem;}
.feature-bar-items{display:flex;gap:2rem;flex-wrap:wrap;justify-content:center;}
.feature-bar-item{display:inline-flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:500;}
.feature-bar-item svg{width:20px;height:20px;color:var(--teal);}

/* GRID / KARTEN */
.grid{display:grid;gap:1.5rem;}
.grid-4{grid-template-columns:repeat(4,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
@media(max-width:1000px){.grid-4{grid-template-columns:repeat(2,1fr);}.grid-3{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.grid-4,.grid-3{grid-template-columns:1fr;}}
.card{background:var(--white);border:1px solid var(--grey-border);border-radius:var(--radius-md);overflow:hidden;transition:.2s;display:flex;flex-direction:column;cursor:pointer;}
.card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.08);}
.card-image{aspect-ratio:16/10;}
.card-image.v1{background:linear-gradient(135deg,#99DBC0,#2a3836);}
.card-image.v2{background:linear-gradient(135deg,#2a3836,#111);}
/* Karten-Slider (CSS scroll-snap + JS-Pfeile). Mobil: wischen. */
.card-slider{position:relative;}
.card-slider .cs-track{display:flex;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:4px 2px 10px;}
.card-slider .cs-track::-webkit-scrollbar{display:none;}
.card-slider .cs-track>.card{flex:0 0 calc((100% - 4.5rem)/4);scroll-snap-align:start;}
.card-slider.cs-3 .cs-track>.card{flex:0 0 calc((100% - 3rem)/3);}
.cs-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:999px;border:none;background:var(--black);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;box-shadow:0 6px 18px rgba(0,0,0,.22);transition:background .15s,opacity .15s;}
.cs-arrow:hover{background:var(--teal);}
.cs-arrow svg{width:22px;height:22px;}
.cs-arrow:disabled{opacity:.3;cursor:default;}
.cs-prev{left:-28px;}
.cs-next{right:-28px;}
@media(max-width:768px){.cs-arrow{display:none !important;}.card-slider .cs-track{scroll-snap-type:x proximity;}.card-slider .cs-track>.card,.card-slider.cs-3 .cs-track>.card{flex:0 0 82%;}}
.card-image.v3{background:linear-gradient(135deg,#FAFAFA,#99DBC0);}
.card-image.v4{background:linear-gradient(135deg,#111,#99DBC0);}
/* Marken-Cover als Kachelbild (wenn kein echtes Beitragsbild gesetzt ist). */
.card-image.card-cover{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:9% 9% 17%;color:#fff;background-color:#16201d;background-image:url('assets/img/bg-black-landscape.png');background-size:cover;background-position:center;background-repeat:no-repeat;container-type:inline-size;overflow:hidden;}
.card-image.card-cover .cc-title{text-align:center;font-size:clamp(1.25rem,11.5cqi,1.85rem);font-weight:900;line-height:1.1;letter-spacing:-.02em;color:#fff;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.card-image.card-cover .cc-logo{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);line-height:0;}
.card-image.card-cover .cc-logo svg{height:clamp(.72rem,3.7cqi,.95rem);width:auto;fill:#fff;display:block;}
.card-body{padding:1.25rem;display:flex;flex-direction:column;gap:.6rem;flex:1;}
.pill{display:inline-block;background:var(--mint);color:var(--black);font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:.3rem .7rem;border-radius:var(--radius-full);align-self:flex-start;}
.pill-outline{background:transparent;color:var(--black);border:1.5px solid var(--black);}
.card-title{font-size:1.05rem;font-weight:700;line-height:1.35;}
.card-meta{font-size:.82rem;color:var(--grey-muted);margin-top:auto;display:flex;gap:.8rem;}
.card-meta-dot::before{content:'•';margin-right:.4rem;}

/* WARUM FREQQ */
.reason-card{background:var(--white);border:1px solid var(--grey-border);border-radius:var(--radius-md);padding:2rem;transition:.2s;}
.reason-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.08);}
.reason-icon{width:48px;height:48px;border-radius:var(--radius-sm);background:var(--mint);display:flex;align-items:center;justify-content:center;margin:0 auto 1.2rem;color:var(--teal);}
.reason-icon svg{width:24px;height:24px;}
.reason-card h3{margin-bottom:.6rem;}
.reason-card p{color:var(--grey-text);font-size:.98rem;}

/* SOCIAL ICONS (Original-Logos) */
.social-grid{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap;margin-top:2rem;}
.sicon{width:56px;height:56px;border-radius:var(--radius-full);background:var(--black);color:#fff;display:inline-flex;align-items:center;justify-content:center;transition:.2s;}
.sicon:hover{background:#000;transform:translateY(-2px);}
.sicon svg{width:22px;height:22px;fill:currentColor;}
.sicon.sm{width:40px;height:40px;}.sicon.sm svg{width:16px;height:16px;}

/* BANNER / CTA */
.banner{padding:4rem 0;text-align:center;color:#fff;}
.cta-band{position:relative;overflow:hidden;background-image:radial-gradient(120% 130% at 0% 0%,rgba(255,255,255,.07),transparent 52%),linear-gradient(115deg,#16201d,#2a3836,#3c5a4d,#1d2b27,#34453f,#16201d);background-size:300% 300%;animation:flow 8s ease-in-out infinite;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}
@keyframes flow{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.banner-black{background:var(--black);}
.banner h2{font-size:clamp(1.5rem,2.6vw,2.05rem);font-weight:800;letter-spacing:-.02em;margin-bottom:.6rem;}
.banner p{margin-bottom:1.7rem;font-size:1.02rem;font-weight:500;opacity:.92;max-width:54ch;margin-left:auto;margin-right:auto;}
.banner .container{position:relative;}

/* INTRO-BANNER */
.intro-banner{position:relative;overflow:hidden;color:#fff;padding:4.5rem 0;
 background:radial-gradient(55% 50% at 20% 22%,rgba(140,210,182,.16),transparent 60%),linear-gradient(150deg,#2f403a,#1e2c28 50%,#121815);}
.intro-banner .container{position:relative;}
.intro-text{max-width:720px;margin:0 auto;font-size:clamp(1.25rem,2.3vw,1.8rem);font-weight:700;line-height:1.5;display:flex;flex-direction:column;gap:.55rem;text-align:center;align-items:center;}
.intro-answer{margin-top:1.1rem;}
.intro-hl{color:var(--mint);font-weight:900;}
.intro-detail{font-size:clamp(.95rem,1.4vw,1.05rem);font-weight:400;line-height:1.7;margin-top:1.9rem;opacity:.92;max-width:60ch;text-align:center;}

/* ZITAT (Style A) */
.quote-section{padding:5rem 0;}
.quote-block{max-width:780px;margin:0 auto;background:var(--teal);color:#fff;border-left:6px solid var(--mint);padding:3.4rem 3.4rem;border-radius:0 var(--radius-lg) var(--radius-lg) 0;font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:500;line-height:1.7;}
@media(max-width:600px){.quote-block{padding:2.4rem 1.8rem;}}

/* SPLIT / BULLETS / MOCKUP */
.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:2.5rem;}}
.bullet-list{display:flex;flex-direction:column;gap:.9rem;margin-top:1.5rem;}
.bullet-list li{display:flex;gap:.8rem;align-items:flex-start;font-size:1rem;color:var(--grey-text);}
.bullet-list li::before{content:'';width:22px;height:22px;border-radius:50%;background:var(--mint);flex-shrink:0;margin-top:2px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5 5L20 6.5'/%3E%3C/svg%3E");background-size:13px;background-repeat:no-repeat;background-position:center;}
.mockup-wrap{display:flex;justify-content:center;}
.mockup{max-width:340px;width:100%;aspect-ratio:3/4;background:linear-gradient(135deg,#FAFAFA,#E8F5EE);border:1px solid var(--grey-border);border-radius:var(--radius-md);padding:1.5rem;display:flex;flex-direction:column;gap:.55rem;box-shadow:0 8px 24px rgba(0,0,0,.08);}
.mockup .mb{display:inline-flex;align-items:center;padding-bottom:.7rem;border-bottom:1px solid var(--grey-border);}
.mockup .mb svg{height:18px;width:auto;fill:#111;}
.ml{height:10px;background:var(--grey-border);border-radius:4px;}
.ml.s{width:40%;}.ml.m{width:70%;}.ml.l{width:95%;}.ml.a{background:var(--mint);}

/* CTA-INLINE */
.cta-inline{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--grey-border);display:flex;flex-direction:column;align-items:center;gap:1.1rem;}
.cta-inline-line{font-size:1.15rem;font-weight:700;}

/* TOPIC BLOCKS */
.topic-block{margin-bottom:4rem;}.topic-block:last-child{margin-bottom:0;}
.topic-header{margin-bottom:1.5rem;}.topic-header h3{margin-bottom:.3rem;}.topic-header p{color:var(--grey-text);}
/* .topic-link siehe gemeinsame .txtlink,.topic-link-Regel oben */

/* FAQ */
.faq{max-width:820px;margin:2.5rem auto 0;}
.faq details{border-bottom:1px solid var(--grey-border);padding:1.25rem 0;}
.faq summary{font-weight:700;font-size:1.05rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem;}
.faq summary h3{margin:0;font:inherit;letter-spacing:normal;color:inherit;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:'+';font-size:1.5rem;color:var(--grey-muted);transition:.2s;}
.faq details[open] summary::after{transform:rotate(45deg);}
.faq details p{margin-top:.8rem;color:var(--grey-text);font-size:.98rem;line-height:1.7;}

/* FOOTER */
.footer{background:var(--black);color:#fff;padding:3.5rem 0 2rem;}
.footer-inner{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:2.5rem;margin-bottom:2.5rem;}
@media(max-width:800px){.footer-inner{grid-template-columns:1fr;gap:2rem;}}
.footer h4,.footer-col-title{font-size:.95rem;margin-bottom:1rem;font-weight:800;color:#fff;letter-spacing:-.01em;}
.footer-claim{font-size:.95rem;opacity:.75;margin-top:1rem;max-width:30ch;}
.footer-col a{display:block;color:#aaa;font-size:.92rem;padding:.35rem 0;}
.footer-col a:hover{color:var(--mint);}
.footer .sicon{width:40px;height:40px;background:rgba(255,255,255,.08);}
.footer .sicon svg{width:16px;height:16px;}
.footer-socials{display:flex;gap:.7rem;margin-top:.4rem;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem;font-size:.85rem;opacity:.6;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;}
.footer-nl{display:flex;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-full);overflow:hidden;max-width:300px;margin-top:1rem;}
.footer-nl input{flex:1;border:none;background:transparent;color:#fff;padding:.7rem 1rem;font-size:.85rem;font-family:inherit;outline:none;min-width:0;}
.footer-nl input::placeholder{color:#888;}
.footer-nl button{border:none;background:var(--mint);color:#111;font-family:inherit;font-weight:700;font-size:.8rem;padding:.7rem 1rem;cursor:pointer;white-space:nowrap;}
.footer-nl-label{font-size:.8rem;color:#aaa;margin-top:1.4rem;font-weight:700;}
/* Suchleiste Übersichten */
.searchbar{display:flex;align-items:center;gap:.6rem;background:var(--white);border:1.5px solid var(--grey-border);border-radius:var(--radius-full);padding:.7rem 1.2rem;max-width:460px;margin:0 auto 1.5rem;}
.searchbar svg{width:18px;height:18px;color:var(--grey-muted);flex:none;}
.searchbar input{flex:1;border:none;outline:none;background:transparent;font-family:inherit;font-size:.95rem;min-width:0;}
.search-empty{text-align:center;color:var(--grey-muted);padding:2rem 0;display:none;}

/* BLOG-FILTER / PAGINATION */
.filter-bar{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap;margin-bottom:3rem;}
.filter-btn{padding:.6rem 1.3rem;border-radius:var(--radius-full);background:var(--white);border:1.5px solid var(--grey-border);font-weight:600;font-size:.9rem;font-family:inherit;cursor:pointer;transition:.15s;}
.filter-btn:hover{border-color:var(--black);}
.filter-btn.active{background:var(--black);color:#fff;border-color:var(--black);}
.pagination{display:flex;justify-content:center;gap:.4rem;margin-top:4rem;}
.pagination-btn{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--white);border:1px solid var(--grey-border);font-weight:600;font-size:.9rem;font-family:inherit;cursor:pointer;}
.pagination-btn.active{background:var(--black);color:#fff;}
.pagination-btn:disabled{opacity:.3;cursor:not-allowed;}

/* ARTIKEL */
.article-layout{display:grid;grid-template-columns:300px 1fr;column-gap:4rem;grid-template-areas:"side main";align-items:start;padding:3rem 1.5rem 5rem;max-width:1120px;margin:0 auto;}
.art-side{grid-area:side;display:flex;flex-direction:column;gap:1.3rem;align-self:start;}
.art-audio{display:flex;flex-direction:column;gap:.5rem;background:#eef6f2;border:1px solid #d2e7dd;border-radius:var(--radius-md);padding:14px 16px;}
.art-audio-label{font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);}
.art-audio audio{width:100%;height:36px;}
.article-content{grid-area:main;}
@media(max-width:900px){.article-layout{grid-template-columns:1fr;grid-template-areas:"side" "main";column-gap:0;row-gap:2.2rem;}}
.ki-byline{font-size:.78rem;color:var(--grey-muted);font-weight:600;}
.art-cover{aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;position:relative;margin:0 0 2rem;display:flex;flex-direction:column;align-items:center;justify-content:space-between;color:#fff;text-align:center;padding:2.6cqi 6cqi;
 background-color:#16201d;background-image:url('assets/img/bg-black-landscape.png');background-size:cover;background-position:center;background-repeat:no-repeat;
 box-shadow:0 16px 44px rgba(17,17,17,.16);container-type:inline-size;}
.art-cover .qmotif{display:none;} /* Canva-PNG enthält das Q bereits */
.art-cover .ac-ic{display:none;} /* Icon ist jetzt im Kategorie-Pill */
.art-cover .ac-cat{display:inline-flex;align-items:center;gap:.5em;background:var(--mint);color:var(--black);padding:.5em .95em;border-radius:999px;font-size:2cqi;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;}
.art-cover .ac-cat svg,.art-cover .ac-cat i{width:1.2em;height:1.2em;}
.art-cover .ac-title{display:flex;flex-direction:column;align-items:center;gap:1.6cqi;}
.art-cover b{position:relative;font-size:9cqi;font-weight:900;letter-spacing:-.022em;line-height:1.04;max-width:16ch;color:#fff;}
.art-cover .ac-sub{font-size:3.4cqi;font-weight:600;line-height:1.2;max-width:30ch;color:rgba(255,255,255,.82);}
.art-cover .ac-logo{display:inline-flex;}
.art-cover .ac-logo svg{height:3.5cqi;width:auto;color:#fff;fill:currentColor;display:block;}
.tldr{background:#eef6f2;border:1px solid #d2e7dd;border-radius:14px;padding:20px 24px;margin:0 0 2rem;}
.tldr-h{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-bottom:.8rem;}
.tldr ul{list-style:none;display:flex;flex-direction:column;gap:.55rem;}
.tldr li{position:relative;padding-left:30px;font-size:.98rem;line-height:1.6;color:var(--black);}
.tldr li::before{content:'';position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:var(--mint);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5 5L20 6.5'/%3E%3C/svg%3E");background-size:12px;background-repeat:no-repeat;background-position:center;}
.inline-cta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:space-between;background:#eef6f2;border-left:4px solid var(--mint);border-radius:0 12px 12px 0;padding:14px 18px;margin:1.8rem 0;font-size:.96rem;color:var(--teal);}
.inline-cta a{color:#0f5238;font-weight:700;text-decoration:underline;text-underline-offset:2px;white-space:nowrap;}
.fomo-cta{position:relative;overflow:hidden;border-radius:var(--radius-lg);padding:2.2rem;text-align:center;color:#fff;margin:2.6rem 0;
 background:radial-gradient(60% 50% at 80% 12%,#3c5a4d,transparent 60%),linear-gradient(150deg,#2f403a,#1e2c28 55%,#121815);}
.fomo-cta .qmotif{right:-140px;bottom:-150px;width:300px;color:rgba(180,230,206,.06);}
.fomo-cta .fc-stat{position:relative;font-size:2.2rem;font-weight:900;color:var(--mint);letter-spacing:-.03em;}
.fomo-cta p{position:relative;color:#dfeee7;margin:.5rem 0 1.3rem;font-weight:600;}
.art-sources{margin-top:2.6rem;padding-top:1.4rem;border-top:1px solid var(--grey-border);}
.art-sources .as-h{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-bottom:.7rem;}
.art-sources ul{list-style:none;display:flex;flex-direction:column;gap:.7rem;}
.art-sources li{position:relative;padding-left:30px;font-size:.9rem;line-height:1.5;color:var(--grey-muted);}
.art-sources li::before{content:'';position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:var(--mint);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5 5L20 6.5'/%3E%3C/svg%3E");background-size:12px;background-repeat:no-repeat;background-position:center;}
.art-sources a{color:#0f5238;text-decoration:underline;text-underline-offset:2px;}
.freqq-box{border:1px solid var(--grey-border);border-radius:16px;padding:22px 26px;margin-top:2.2rem;background:#fff;}
.freqq-box h3{font-size:1.15rem;margin-bottom:.5rem;}
.freqq-box p{color:var(--grey-text);font-size:.96rem;margin-bottom:1rem;}
#readbar{position:fixed;top:0;left:0;height:4px;width:0;background:var(--mint);z-index:9998;transition:width .08s linear;display:none;}
.art-side-sticky{}
.article-sidebar{display:flex;flex-direction:column;gap:1.75rem;align-self:start;}
.article-meta{display:flex;flex-direction:column;gap:.5rem;font-size:.88rem;color:var(--grey-muted);padding-bottom:1.2rem;border-bottom:1px solid var(--grey-border);}
.article-meta strong{color:var(--black);}
.audio-block{background:var(--black);color:#fff;border-radius:var(--radius-md);padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.8rem;}
.audio-intro{font-size:.86rem;color:#cdd;line-height:1.5;}
.audio-player{display:flex;align-items:center;gap:.75rem;}
.audio-play{width:38px;height:38px;border-radius:50%;background:var(--mint);color:#111;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;}
.audio-play svg{width:16px;height:16px;}
.audio-bar{flex:1;height:6px;border-radius:3px;background:#333;position:relative;}
.audio-bar::after{content:"";position:absolute;left:0;top:0;height:100%;width:38%;background:var(--mint);border-radius:3px;}
.audio-time{font-size:.8rem;color:#999;}
.toc{background:var(--white);border:1px solid var(--grey-border);border-radius:var(--radius-md);padding:1.25rem;}
.toc-title{font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);margin-bottom:.9rem;}
.toc ol{counter-reset:toc;display:flex;flex-direction:column;gap:.55rem;list-style:none;padding:0;margin:0;}
.toc ol li{counter-increment:toc;font-size:.9rem;position:relative;}
.toc ol li a{display:block;color:var(--grey-text);padding-left:2rem;position:relative;transition:color .15s;}
.toc ol li a::before{content:counter(toc,decimal-leading-zero);position:absolute;left:0;font-weight:700;color:#2a8a63;font-size:.82rem;}
.toc ol li a:hover{color:#0f5238;}
.social-post{background:var(--white);border:1px solid var(--grey-border);border-radius:var(--radius-md);padding:1.1rem;cursor:zoom-in;}
.social-post-title{font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);margin-bottom:.8rem;}
.social-post-prev{aspect-ratio:4/5;border-radius:var(--radius-sm);padding:1rem;display:flex;flex-direction:column;justify-content:space-between;color:#fff;font-weight:800;font-size:.95rem;line-height:1.3;position:relative;overflow:hidden;
 background:radial-gradient(60% 50% at 80% 80%,#3c5a4d,transparent 60%),linear-gradient(150deg,#2f403a,#1a2622);}
.social-post-meta{font-size:.7rem;font-weight:500;opacity:.8;text-transform:uppercase;letter-spacing:.05em;}
.sidebar-social-label{font-size:.86rem;color:var(--grey-text);line-height:1.4;margin-bottom:.6rem;}
.article-content{font-size:1.08rem;line-height:1.75;max-width:70ch;}
.article-content>*+*{margin-top:1.25rem;}
.article-content h2{font-size:1.7rem;margin-top:2.6rem;margin-bottom:.4rem;}
.article-content h3{font-size:1.2rem;margin-top:1.8rem;}
.article-content p{color:var(--grey-text);}
.article-content strong{color:var(--black);font-weight:700;}
.article-content a:not(.btn):not(.author-box-link):not(.sicon){color:#0f5238;font-weight:600;text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:3px;transition:color .15s,text-decoration-color .15s;}
.article-content a:not(.btn):not(.author-box-link):not(.sicon):hover{color:var(--teal);text-decoration-color:var(--teal);}
.article-content ul{padding-left:0;color:var(--grey-text);display:flex;flex-direction:column;gap:.5rem;}
.article-content ul li{position:relative;padding-left:1.9rem;overflow-wrap:break-word;}
.article-content ul li::before{content:'';position:absolute;left:0;top:.45rem;width:20px;height:20px;border-radius:50%;background:var(--mint);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5 5L20 6.5'/%3E%3C/svg%3E");background-size:12px;background-repeat:no-repeat;background-position:center;}
.article-content ol{margin:0 0 0 0;padding-left:1.7rem;color:var(--grey-text);list-style:decimal;}
.article-content ol li{margin-bottom:.5rem;padding-left:.3rem;overflow-wrap:break-word;}
.article-content ol li::marker{font-weight:800;color:var(--teal);}
.article-content blockquote{position:relative;background:#f3f6f5;border-left:4px solid var(--mint);border-radius:0 12px 12px 0;padding:40px 56px 18px 22px;font-family:ui-monospace,Menlo,monospace;font-size:.92rem;font-style:normal;line-height:1.6;color:#1c2b27;}
.article-content blockquote::before{content:"PROMPT – ZUM KOPIEREN";position:absolute;top:14px;left:22px;font-family:'Inter',sans-serif;font-size:.62rem;font-weight:800;letter-spacing:.14em;color:var(--teal);opacity:.65;}
.article-content .table-wrap{overflow-x:auto;border:1px solid #e2ebe7;border-radius:12px;}
.article-content table{width:100%;border-collapse:collapse;font-size:.95rem;background:#fff;}
.article-content table th{background:#eef6f2;color:var(--teal);font-weight:800;text-align:left;padding:12px 14px;border-bottom:2px solid #d2e7dd;}
.article-content table td{padding:11px 14px;border-bottom:1px solid #eef2f0;color:var(--grey-text);vertical-align:top;}
.article-content table tr:last-child td{border-bottom:0;}
.article-content table strong{color:var(--black);}
.article-content .table-caption{font-size:.82rem;color:var(--grey-muted);margin-top:.5rem;font-style:italic;}
.prompt-copy{position:absolute;top:10px;right:10px;width:32px;height:32px;border:none;border-radius:8px;background:var(--mint);color:var(--teal);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:filter .15s;}
.prompt-copy:hover{filter:brightness(.93);}
.prompt-copy svg{width:16px;height:16px;}
.prompt-copy.done{background:var(--teal);color:var(--mint);}
.inline-banner{position:relative;overflow:hidden;color:#fff;border-radius:var(--radius-lg);padding:1.8rem;text-align:center;margin:2.4rem 0;box-shadow:0 14px 36px rgba(17,17,17,.16);
 background-image:radial-gradient(120% 130% at 0% 0%,rgba(255,255,255,.07),transparent 52%),linear-gradient(115deg,#16201d,#2a3836,#3c5a4d,#1d2b27,#34453f,#16201d);background-size:300% 300%;animation:flow 8s ease-in-out infinite;}
.inline-banner p{color:#fff;font-weight:600;font-size:1.1rem;margin-bottom:1.2rem;}
.inline-banner .ib-head{color:#fff;font-weight:800;font-size:clamp(1.25rem,2.4vw,1.6rem);line-height:1.22;letter-spacing:-.02em;margin:0 auto .45rem;max-width:26ch;}
.inline-banner .ib-sub{color:rgba(255,255,255,.82);font-weight:500;font-size:.92rem;line-height:1.5;margin:0 auto 1.1rem;max-width:44ch;}
.disclaimer{background:#eef6f2;border:1px solid #d2e7dd;border-left:4px solid var(--teal);border-radius:0 12px 12px 0;padding:14px 18px;font-size:.9rem;color:var(--teal);display:flex;gap:10px;align-items:flex-start;}
.disclaimer svg{flex:none;width:18px;height:18px;margin-top:2px;}
.badge-ki{display:inline-flex;align-items:center;gap:6px;background:var(--teal);color:var(--mint);font-size:.72rem;font-weight:700;padding:6px 12px;border-radius:999px;}
.share-block{margin-top:3rem;padding:2.4rem;background:var(--grey-bg);border-radius:var(--radius-lg);text-align:center;}
.share-block h3{margin-bottom:.5rem;}.share-block p{color:var(--grey-text);margin-bottom:1.4rem;}
.share-row{display:flex;justify-content:center;gap:.7rem;flex-wrap:wrap;}
.related{padding:4rem 0;background:var(--grey-bg);}
.lightbox{display:none;position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:10000;align-items:center;justify-content:center;padding:2rem;cursor:zoom-out;}
.lightbox.active{display:flex;}
.lightbox-content{max-width:460px;width:100%;aspect-ratio:4/5;border-radius:var(--radius-lg);padding:2.5rem;color:#fff;font-weight:800;font-size:1.6rem;line-height:1.3;display:flex;flex-direction:column;justify-content:space-between;
 background:radial-gradient(60% 50% at 80% 80%,#3c5a4d,transparent 60%),linear-gradient(150deg,#2f403a,#1a2622);}
.view{display:none;}.view.active{display:block;}
.pagehead{padding:80px 0 56px;}

/* CTA-Band: helle Schrift (Style-Guide-konform) */
.cta-band h2,.cta-band p,.banner.cta-band h2,.banner.cta-band p{color:#fff;}

/* USP-Bar: 3 USPs, je 1 Icon + 1 Wort */
.usp-bar{background:var(--white);border-top:1px solid var(--grey-border);border-bottom:1px solid var(--grey-border);padding:2.2rem 0;}
.usp-inner{display:flex;justify-content:center;gap:3.5rem;flex-wrap:wrap;}
.usp{display:flex;flex-direction:column;align-items:center;gap:.6rem;}
.usp .ic{width:48px;height:48px;border-radius:50%;background:var(--mint);color:var(--teal);display:flex;align-items:center;justify-content:center;}
.usp .ic svg{width:24px;height:24px;}
.usp span{font-weight:800;font-size:1.05rem;letter-spacing:-.01em;}
@media(max-width:600px){.usp-inner{gap:2rem;}}

/* FREQQ Grafik-/Bildstil (Style-Guide-Komponente, überall identisch) */
.fq-visual{position:relative;overflow:hidden;width:100%;min-height:340px;border-radius:var(--radius-lg);padding:1.9rem;color:#fff;display:grid;grid-template-columns:1fr;grid-auto-rows:1fr;gap:14px;align-content:stretch;
 background-color:#16201d;
 background-image:linear-gradient(150deg,rgba(18,24,21,.45),rgba(18,24,21,.72)),url('assets/img/bg-black-landscape.png');
 background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:0 16px 44px rgba(17,17,17,.16);}
.fq-visual .fq-head{grid-column:1 / -1;margin-bottom:.2rem;}
@media(max-width:600px){.fq-visual{grid-template-columns:1fr;}}
.fq-visual .qmotif{right:-130px;bottom:-150px;width:320px;color:rgba(180,230,206,.06);}
/* Statistik als Marken-Grafik */
.statcard{position:relative;overflow:hidden;max-width:760px;margin:0 auto;border-radius:var(--radius-lg);padding:3rem 2.6rem;text-align:center;color:#fff;
 background:radial-gradient(60% 50% at 82% 12%,#3c5a4d,transparent 60%),linear-gradient(150deg,#2f403a,#1e2c28 55%,#121815);box-shadow:0 16px 44px rgba(17,17,17,.16);}
.statcard .qmotif{right:-150px;bottom:-160px;width:360px;color:rgba(180,230,206,.06);}
.statcard .sc-num{font-size:clamp(3.4rem,7vw,5.4rem);font-weight:900;letter-spacing:-.04em;line-height:1;color:var(--mint);position:relative;}
.statcard .sc-txt{font-size:1.15rem;font-weight:700;max-width:34ch;margin:1rem auto 0;position:relative;}
.statcard .sc-src{font-size:.78rem;color:#9fb8ad;margin-top:1.2rem;position:relative;}
/* Neues Zitat-Design (ersetzt alten dunklen Kasten) */
.fq-quote{max-width:820px;margin:0 auto;text-align:center;position:relative;padding:0 1rem;}
.fq-quote::before{content:"\201C";display:block;font-family:Georgia,'Times New Roman',serif;font-size:4.4rem;line-height:1;color:var(--mint);margin-bottom:.5rem;}
.fq-quote blockquote{font-size:clamp(1.45rem,2.8vw,2.15rem);font-weight:800;letter-spacing:-.02em;line-height:1.32;color:var(--teal);}
.fq-quote .fq-attr{margin-top:1.4rem;font-size:.86rem;color:#7e8e87;font-weight:500;}
.fq-quote .fq-bridge{margin-top:1.5rem;font-size:1.05rem;font-weight:800;color:var(--black);}
.fq-quote .fq-logo{margin-top:1.1rem;line-height:0;}
.fq-quote .fq-logo svg{height:1.4rem;width:auto;fill:var(--black);display:inline-block;}
/* Zitat im Artikel: Prompt-Box-Styling der Blockquote neutralisieren. */
.article-content .fq-quote{margin:2.6rem auto;}
.article-content .fq-quote blockquote{background:none;border:0;border-radius:0;padding:0;font-family:'Inter',system-ui,sans-serif;}
.article-content .fq-quote blockquote::before{content:none;}
/* Hero-H1: Unterzeile kleiner unter dem Haupttitel. */
.h1-sub{display:block;margin-top:.55rem;font-size:.5em;font-weight:600;line-height:1.25;opacity:.82;letter-spacing:0;}
.fq-visual .fq-head{display:flex;align-items:center;justify-content:space-between;position:relative;}
.fq-visual .fq-head svg.lg{height:22px;width:auto;fill:#fff;}
.fq-visual .fq-kicker{font-size:.66rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--mint);}
.fq-row{display:flex;align-items:center;justify-content:flex-start;text-align:left;gap:14px;position:relative;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px 20px;}
.fq-row .ri{width:42px;height:42px;border-radius:12px;background:var(--mint);color:var(--teal);display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 0 0 5px rgba(153,219,192,.12);}
.fq-row .ri svg{width:21px;height:21px;}
.fq-row b{font-size:1rem;font-weight:800;display:block;letter-spacing:-.01em;}
.split.mirror{direction:rtl;}
.split.mirror>*{direction:ltr;}
@media(max-width:900px){.split.mirror{direction:ltr;}}

/* ===== Breadcrumb (dezent) ===== */
.breadcrumb{font-size:.85rem;color:var(--grey-muted);margin-bottom:1.2rem;display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;line-height:1.4;}
.breadcrumb a{color:var(--grey-text);border-bottom:1px solid transparent;transition:color .15s ease,border-color .15s ease;}
.breadcrumb a:hover{color:var(--black);border-bottom-color:var(--mint);}
.breadcrumb-sep{opacity:.45;user-select:none;}
.breadcrumb-current{color:var(--black);font-weight:500;}
.bg-dark .breadcrumb{color:#9ab;}
.bg-dark .breadcrumb a{color:#cfe6db;}
.bg-dark .breadcrumb a:hover{color:#fff;}
.bg-dark .breadcrumb-current{color:#fff;}

/* ===== Autoren-/Redaktionsbox (E-E-A-T) ===== */
/* Hintergrund direkt auf dem Element statt als absolut positioniertes ::before-Overlay.
   Der weisse Verlauf ersetzt das fruehere opacity:.2 und erzeugt optisch dasselbe Ergebnis.
   Grund: Overlay + overflow:hidden war ein Ausloeser fuer Safari-Zeichenfehler auf iOS
   (stehengebliebene Pixel beim Scrollen). Siehe iOS-Repaint-Block am Dateiende. */
.author-box{position:relative;margin-top:3rem;padding:2rem 2.2rem;border:1px solid var(--grey-border);border-radius:var(--radius-lg);
 background-color:#fff;
 background-image:linear-gradient(rgba(255,255,255,.8),rgba(255,255,255,.8)),url('assets/img/bg-white-landscape.png');
 background-size:cover,cover;background-position:center,center;background-repeat:no-repeat,no-repeat;}
.author-box::before{content:none;}
.author-box > *{position:relative;z-index:1;}
.author-box-head{font-size:1.25rem;font-weight:700;margin-bottom:.9rem;}
.author-box-list{list-style:none;padding:0;margin:0 0 1.3rem;display:flex;flex-direction:column;gap:.55rem;font-size:.97rem;color:var(--grey-text);line-height:1.55;}
.author-box-list li{display:block;padding-left:0;}
.author-box-list li::before{content:none !important;}
.author-box-list strong{color:var(--black);font-weight:600;}
.author-box-list a{color:#0f5238;border-bottom:1px solid var(--mint);}
.author-box-link{display:inline-flex;align-items:center;gap:.35rem;font-weight:600;font-size:.95rem;color:var(--black);border-bottom:1.5px solid var(--black);padding-bottom:2px;margin-bottom:1.6rem;transition:gap .2s ease;}
.author-box-link:hover{gap:.65rem;}
.author-box-divider{height:1px;background:var(--grey-border);margin:0 0 1.6rem;}
.author-box-cta{display:grid;grid-template-columns:1fr auto;column-gap:1.5rem;row-gap:1.1rem;align-items:center;}
.author-box-cta-text{font-weight:600;font-size:.98rem;max-width:32ch;margin:0;grid-column:1;grid-row:1;}
.author-box-cta>.btn{grid-column:2;grid-row:1;justify-self:end;}
.author-box-cta-social-hint{font-weight:600;font-size:.98rem;margin:0;grid-column:1;grid-row:2;text-align:left;}
.author-box-social{display:flex;gap:.55rem;margin-top:0;grid-column:2;grid-row:2;justify-self:center;}

/* ===== Standard-Content-Seiten (Impressum, Datenschutz, Redaktion-Body) ===== */
.legal-content{padding:2rem 0 5rem;}
.legal-content .container-narrow{max-width:var(--container-narrow);}
.legal-content h2{font-size:1.5rem;margin:2.5rem 0 .8rem;}
.legal-content h3{font-size:1.15rem;margin:1.8rem 0 .6rem;}
.legal-content p,.legal-content li{color:var(--grey-text);line-height:1.7;}
.legal-content ul,.legal-content ol{padding-left:1.4rem;margin:.6rem 0 1rem;}
.legal-content ul li{list-style:disc;margin-bottom:.35rem;}
.legal-content ol li{list-style:decimal;margin-bottom:.35rem;}
.legal-content a:not(.sicon):not(.btn):not(.nav-go.btn-mint){color:var(--black);border-bottom:1px solid var(--mint);font-weight:500;}
.legal-content a:not(.sicon):not(.btn):not(.nav-go.btn-mint):hover{background:rgba(153,219,192,.25);}
.legal-content .sicon{color:#fff;border-bottom:none;font-weight:inherit;}

/* Breadcrumb innerhalb zentrierter Heros mittig ausrichten */
.hero .breadcrumb{justify-content:center;}
.legal-content strong{color:var(--black);}
.info-card{background:var(--grey-bg);border-radius:var(--radius-md);padding:1.4rem 1.6rem;margin:1.6rem 0;border-left:3px solid var(--mint);}
.info-card p{color:var(--grey-text);}

/* ===== Status-Seiten (Danke / Bestätigt / Abgemeldet / 404) ===== */
.status-section{min-height:70vh;display:flex;align-items:center;padding:6rem 0 4rem;}
/* 404 bekommt den hellen Canva-Hintergrund */
#view-404 .status-section{position:relative;overflow:hidden;background-color:#cfeeda;background-image:url('assets/img/bg-white-landscape.png');background-size:cover;background-position:center;background-repeat:no-repeat;}
#view-404 .status-section > .container{position:relative;z-index:1;}
.status-section .container{max-width:620px;text-align:center;}
.status-icon{width:72px;height:72px;border-radius:999px;background:var(--mint);color:var(--black);display:inline-flex;align-items:center;justify-content:center;font-size:2rem;margin-bottom:1.5rem;}
.status-section h1{font-size:clamp(2rem,4.5vw,3rem);margin-bottom:.5rem;line-height:1.15;}
.status-section .status-sub{font-size:clamp(1.3rem,3.2vw,1.8rem);font-weight:800;line-height:1.2;letter-spacing:-.02em;color:var(--black);margin:0 0 1rem;}
.status-section .lead{color:var(--grey-text);font-size:1.1rem;margin-bottom:2rem;}
.status-section .btn-row{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;}
.status-section .info-card{text-align:left;margin:2rem auto;max-width:520px;}

/* ===== Formulare (Kontakt, Abmelden) ===== */
.form-card{background:#fff;border:1px solid var(--grey-border);border-radius:var(--radius-lg);padding:2rem;margin:2rem 0;}
.form-row{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.2rem;}
.form-row label{font-size:.9rem;font-weight:600;}
.form-row input,.form-row textarea,.form-row select{font-family:inherit;font-size:1rem;padding:.8rem 1rem;border:1px solid var(--grey-border);border-radius:var(--radius-sm);background:#fff;color:var(--black);}
.form-row input:focus,.form-row textarea:focus,.form-row select:focus{outline:none;border-color:var(--black);}
.form-row textarea{min-height:140px;resize:vertical;}
.form-row-checkbox{flex-direction:row;align-items:flex-start;gap:.6rem;font-size:.88rem;color:var(--grey-text);line-height:1.5;}
.form-row-checkbox input{margin-top:.2rem;width:auto;}
.form-help{font-size:.85rem;color:var(--grey-muted);margin-top:.3rem;}

/* =====================================================
   BULLETPROOF FIXES (am Ende, gewinnt die Cascade)
   ===================================================== */

/* 1. Autorenbox-Liste: kein Checkmark, normaler Inline-Flow */
.author-box-list li,
.article-content .author-box-list li,
.legal-content .author-box-list li {
  display: block !important;
  padding-left: 0 !important;
  gap: 0 !important;
  list-style: none !important;
  margin: 0 !important;
}
.author-box-list li + li {
  margin-top: 0.55rem !important;
}
.author-box-list li::before,
.article-content .author-box-list li::before,
.legal-content .author-box-list li::before {
  content: none !important;
  background: none !important;
  background-image: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* 2. Breadcrumb in zentrierten Heros = mittig
   Trick: inline-flex statt flex, dann zentriert das text-align:center
   der Hero das ganze Element. Plus margin auto als Absicherung. */
section.hero .breadcrumb,
.hero .breadcrumb,
.pagehead .breadcrumb {
  display: inline-flex !important;
  flex-wrap: wrap !important;
  gap: 0.45rem !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Container muss text-align:center haben (kommt von .hero), Wrapper
   um die Breadcrumb zentriert das inline-flex Element dann sauber. */
section.hero > .container,
.hero > .container,
.pagehead > .container {
  text-align: center;
}

/* Lead-Texte (<p class="muted"> mit max-width) als Block zentrieren.
   Ohne margin:0 auto kleben sie sonst am linken Rand des Containers. */
.hero .muted,
.pagehead .muted,
section.hero .container > p.muted,
section.hero .container > p[style*="max-width"] {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 3. Social-Icons innerhalb .legal-content: weiß auf schwarz */
.legal-content a.sicon,
.legal-content a.sicon:hover,
.legal-content a.sicon:focus,
.legal-content a.sicon:visited {
  color: #fff !important;
  border-bottom: none !important;
  background: var(--black) !important;
  font-weight: inherit !important;
}
.legal-content a.sicon svg,
.legal-content a.sicon svg path {
  fill: #fff !important;
  color: #fff !important;
}
.legal-content a.sicon:hover {
  background: #000 !important;
}

/* ============================================================ */
/*  MOBILE POLISH (≤768px)  – nur Mobile, kein Desktop-Einfluss */
/* ============================================================ */
@media (max-width:768px){
  /* Hero (Startseite) – Email-Form stapelt, alles ruhig zentriert */
  .hero{padding:3.5rem 1rem 3rem;}
  .hero h1{max-width:16ch;}
  .hero-sub{font-size:1.05rem;max-width:36ch;}
  .email-form{flex-direction:column;border-radius:22px;padding:8px;gap:8px;max-width:360px;}
  .email-form input{width:100%;text-align:center;padding:.95rem 1rem;font-size:1rem;}
  .email-form .btn{width:100%;padding:1rem 1.2rem;font-size:1rem;justify-content:center;}
  .hero-benefit{text-align:center;margin-top:1.2rem;}

  /* Nav-CTA – etwas kompakter, weiterhin gut sichtbar */
  .nav-cta{padding:.7rem 1.2rem;font-size:.95rem;box-shadow:0 0 0 1.5px rgba(255,255,255,.2),0 4px 12px rgba(0,0,0,.3);}

  /* Article-Hero · komplett umsortiert: H1 oben, Nav+Meta unten in kompakter Zeile */
  #view-article > section.bg-dark > .container{display:flex;flex-direction:column;}
  #view-article > section.bg-dark > .container > nav.breadcrumb{order:1;margin-top:0;}
  #view-article > section.bg-dark > .container > div:nth-child(3){order:2;} /* Pill */
  #view-article > section.bg-dark > .container > h1{order:3;}
  #view-article > section.bg-dark > .container > p:nth-of-type(1){order:4;font-size:.86rem !important;margin-top:1rem !important;} /* Veröffentlicht */
  #view-article > section.bg-dark > .container > p:nth-of-type(2){order:5;font-size:.78rem !important;margin-top:.4rem !important;} /* KI-Disclaimer */
  #view-article > section.bg-dark > .container > div:first-child{order:6;flex-wrap:nowrap !important;justify-content:space-between;align-items:center;gap:.6rem;margin-top:1.4rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.15);}
  #view-article > section.bg-dark > .container > div:first-child > a:first-child{font-size:.78rem !important;font-weight:500 !important;white-space:nowrap;}
  #view-article > section.bg-dark > .container > div:first-child > a:last-child{font-size:.74rem !important;font-weight:600 !important;padding:.35rem .75rem !important;white-space:nowrap;}

  /* Social-Post Sidebar · saubere Box & zentrierte Social-Icons */
  .social-post{padding:1rem;text-align:center;}
  .social-post-title{text-align:center;}
  .social-post-prev{aspect-ratio:1/1;min-height:180px;padding:.9rem;text-align:center;align-items:center;}
  .sidebar-social-label{text-align:left;font-size:.88rem;}
  #sidebarsocial{justify-content:center !important;}
  .art-side .sidebar-social-label{text-align:left;}
  .art-side .footer-socials{justify-content:flex-start;margin-left:0;padding-left:0;}

  /* Blockquote · Prompt-Box mit Platz für Label & Copy-Button */
  .article-content blockquote{padding:38px 50px 16px 18px !important;font-size:.88rem !important;}
  .article-content blockquote::before{top:10px !important;left:18px !important;font-size:.58rem !important;}
  .prompt-copy{top:6px !important;right:6px !important;width:28px !important;height:28px !important;}
  .prompt-copy svg{width:14px !important;height:14px !important;}

  /* Article-Cover (.art-cover) – Inhalt vertikal mittig gebündelt */
  .art-cover{aspect-ratio:auto;min-height:240px;padding:2rem 1.5rem;border-radius:18px;justify-content:center !important;gap:1.3rem;}
  .art-cover .ac-title{gap:.5rem;}
  .art-cover b{font-size:1.55rem;line-height:1.18;max-width:none;text-align:center;}
  .art-cover .ac-sub{font-size:.9rem;line-height:1.25;max-width:none;text-align:center;}
  .art-cover .ac-cat{font-size:.72rem;padding:.45em .9em;}
  .art-cover .ac-logo svg{height:1rem;}

  /* Inline-Banner (FOMO/CTA-Box im Artikel) zentrieren */
  .inline-banner{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.8rem 1.4rem;}
  .inline-banner > div{display:flex;flex-direction:column;align-items:center;gap:1.1rem;}
  .inline-banner p{margin:0;}

  /* === Globaler Overflow-Schutz für alle Content-Boxen === */
  .article-content,
  .article-content > *{max-width:100% !important;box-sizing:border-box;overflow-wrap:anywhere;}
  .article-content blockquote,
  .article-content .tldr,
  .article-content .inline-banner,
  .article-content .inline-cta,
  .article-content .tip-box,
  .article-content .fomo-cta,
  .article-content .disclaimer,
  .article-content .info-card,
  .article-content .share-block,
  .article-content .art-cover{width:100%;box-sizing:border-box;margin-left:auto;margin-right:auto;}

  /* === Boxen mit „Lauftext" mittig zentrieren === */
  .tldr,
  .inline-cta,
  .tip-box,
  .fomo-cta,
  .disclaimer,
  .info-card{text-align:center;}
  .tldr ul,.tldr ol{text-align:left;}
  .tldr li{justify-content:flex-start;}
  .disclaimer{flex-direction:column;align-items:center;gap:.6rem;}
  .inline-cta{flex-direction:column;align-items:center;gap:.8rem;}
  .tip-box{gap:.8rem;}
  .article-content .tip-box{text-align:left;}

  /* Blockquote bleibt links für Code/Prompts, aber nichts overflow'd */
  .article-content blockquote{overflow-x:hidden !important;}

  /* Autoren-Box – mobil komplett zentriert, klare Hierarchie */
  .author-box{padding:1.8rem 1.4rem;text-align:center;}
  .author-box-head{text-align:center;font-size:1.18rem;}
  .author-box-list{text-align:left;}
  .author-box-link{align-self:center;margin-bottom:1.4rem;}
  .author-box-divider{margin:0 0 1.4rem;}
  .author-box-cta{display:flex;flex-direction:column;align-items:center;gap:.9rem;}
  .author-box-cta > *{grid-column:auto !important;grid-row:auto !important;justify-self:center !important;width:100%;text-align:center !important;max-width:none;}
  .author-box-cta .btn{width:100%;justify-content:center;}
  .author-box-social{justify-content:center;gap:.6rem;}

  /* Cards – schlankeres Verhältnis auf Schmal */
  .card-image{aspect-ratio:16/9;}

  /* Footer Newsletter – Button volle Breite */
  .footer-nl{max-width:none;}
  .footer-nl input{padding:.85rem 1rem;}
  .footer-nl button{padding:.85rem 1.2rem;}
}


/* ============================================================ */
/*  WordPress-Anpassungen (nicht im Prototyp, fuer WP noetig)   */
/* ============================================================ */
/* Admin-Leiste (nur fuer eingeloggte Nutzer) verdeckt sonst die Sticky-Nav */
body.admin-bar .nav{top:32px;}
body.admin-bar #readbar{top:32px;}
/* ≤782px: WP-Admin-Leiste ist position:absolute (scrollt mit), daher Nav bei top:0 fixieren – sonst „verrutscht" sie beim Scrollen um 46px nach unten. */
@media screen and (max-width:782px){
  body.admin-bar .nav{top:0;}
  body.admin-bar #readbar{top:0;}
}

/* ============================================================
   iOS-SAFARI REPAINT-FIX  (02.08.2026)
   ------------------------------------------------------------
   Problem: Auf dem iPhone blieben beim Scrollen am Artikelende
   Pixel stehen - Share-Block, Autoren-Box, "Das koennte dich auch
   interessieren" und der Footer wirkten uebereinandergelegt.
   Kein Layoutfehler: Die Geometrie ueberlappt nachweislich nicht,
   und einmal Geraet drehen (= erzwungenes Neuzeichnen) raeumte es weg.

   Ursachen und Gegenmassnahmen:
   1) -webkit-overflow-scrolling:touch  -> ersatzlos entfernt (3 Stellen).
      Seit iOS 13 wirkungslos, erzeugt aber weiterhin eine eigene
      Compositing-Ebene, die Safari beim Scrollen nicht sauber neu zeichnet.
   2) .author-box hatte ein absolut positioniertes ::before-Overlay mit
      grossem Hintergrundbild in overflow:hidden -> auf Element-Hintergrund
      umgestellt (siehe oben).
   3) ENTFERNT am 03.08.2026: Das "Sicherheitsnetz" mit translateZ(0) +
      backface-visibility auf .share-block/.author-box/.related/.footer.
      Es hat eigene Compositing-Ebenen erzwungen - und genau die wurden
      auf dem iPhone teilweise gar nicht mehr gezeichnet (Autoren-Box,
      FAQ und Quellen fehlten komplett). Das Pflaster war schlimmer als
      die Krankheit. Die beiden echten Ursachen (1) und (2) bleiben
      behoben; die Scroll-Artefakte waren damit schon weg.
   ============================================================ */

/* ============================================================
   MOBILE-REGELN  (03.08.2026)
   ------------------------------------------------------------
   Diese Regeln lagen zuvor unter dem Prototyp-Selektor
   "#stage.mobile", den es im WordPress-Theme nie gab - sie waren
   auf dem Handy also wirkungslos. Uebernommen wurden nur die
   Regeln, deren Markup live tatsaechlich existiert (gegen 10
   Seitentypen geprueft). Reine Prototyp-Reste (#device, #view-*,
   .statcard, .freqq-box, .fomo-cta, .intro-*, .grid-2,
   .sidebar-social-icons, .stat-band) wurden ersatzlos geloescht.

   Bewusst NICHT uebernommen: ".nav{position:static}" - das war
   noetig, weil der Prototyp in einem Geraeterahmen mit eigenem
   Scrollcontainer lief. Auf der echten Seite ist der Sticky-Header
   gewollt.
   ============================================================ */
@media (max-width:768px){

  /* --- Typografie: Groessen runter, lange Woerter umbrechen --- */
  h1{font-size:1.85rem!important;line-height:1.18;}
  h2{font-size:1.4rem!important;}
  h3{font-size:1.12rem!important;}
  h1,h2,h3,p,li,span{overflow-wrap:break-word;hyphens:auto;}
  .article-content h2{font-size:1.3rem!important;margin-top:2rem;}
  .banner h2{font-size:1.45rem!important;}
  .fq-quote blockquote{font-size:1.4rem!important;}
  .split>div h2{margin-top:.2rem;}

  /* --- Abstaende --- */
  section{padding:3rem 0;}
  .container,.container-narrow{padding:0 24px;}
  .hero{padding:3rem 0 2.6rem;}
  .pagehead{padding:42px 0 30px;}
  .banner,.cta-band,.quote-section{padding:3rem 0;}
  .reason-card{padding:1.6rem;}
  .breadcrumb{font-size:.78rem;}

  /* --- Navigation + Logo --- */
  .nav-inner{padding:.85rem 24px;justify-content:flex-start;gap:0;}
  .nav-cta{padding:.7rem 1.2rem;font-size:.95rem;}
  .logo{margin-left:0;flex:none;}
  /* width:auto statt fester Breite - das viewBox liefert das
     Seitenverhaeltnis, sonst wird das Logo verzerrt. */
  .logo svg{height:24px;width:auto;}

  /* --- Split-Sektionen: Text vor Grafik --- */
  .mockup{max-width:100%;}
  .mockup-wrap{order:2;}
  .split>div:not(.mockup-wrap){order:1;}
  .fq-visual .fq-row{padding:14px 14px;gap:12px;}
  .fq-visual .fq-row .ri{width:42px;height:42px;}
  .fq-visual .fq-row .ri svg{width:21px;height:21px;}
  .fq-visual .fq-row b{font-size:.96rem;line-height:1.25;overflow-wrap:normal;}

  /* --- Teilen-Buttons untereinander --- */
  .share-row{flex-direction:column;gap:.55rem;align-items:stretch;}
  .share-row .btn{justify-content:center;width:100%;}

  /* --- Autoren-Box --- */
  .author-box-cta>.btn{width:100%;justify-self:stretch;text-align:center;}
  .author-box-cta-social-hint{text-align:left;}

  /* --- Footer + Filterleiste --- */
  .footer-socials{gap:.55rem;flex-wrap:wrap;}
  .footer-socials .social-link{flex:0 0 auto;}
  .footer-bottom{flex-direction:column;align-items:flex-start;}
  .filter-bar{gap:.5rem;}
  .filter-btn{padding:.5rem 1rem;font-size:.85rem;}
  .searchbar{font-size:.85rem;padding:.6rem 1rem;}

  /* --- Tabellen: seitlich scrollen statt Spalten zerquetschen ---
     Zwei Ursachen wirkten hier zusammen:
     1) .table-wrap hat zwar overflow-x:auto, die Tabelle stand aber
        auf width:100% und passte sich damit immer dem Container an -
        es gab also nie etwas zu scrollen.
     2) Die Regel ".article-content > *{overflow-wrap:anywhere}" weiter
        oben im Stylesheet vererbt sich bis in die Tabellenzellen und
        erzwingt Umbrueche mitten im Wort - aus "Juni 2026" wurde
        "Ju / ni / 20 / 26".
     Deshalb beides: Mindestbreite (Wrapper wird echt scrollbar) UND
     das Zeichen-Umbrechen in Zellen wieder abschalten. */
  /* ⚠️ Ohne diese beiden Zeilen zieht die breite Tabelle die ganze Seite
     auf: .article-content ist ein Grid-Kind (grid-area:main), und Grid-
     Elemente haben standardmaessig min-width:auto - sie schrumpfen also
     NICHT unter die Breite ihres Inhalts. Die 680px-Tabelle wuerde damit
     die Spalte und die ganze Seite breiter als das Display machen
     (horizontales Wegziehen auf dem Handy). min-width:0 hebt das auf,
     erst dadurch greift overflow-x:auto im .table-wrap wirklich. */
  .article-layout{min-width:0;}
  .article-content{min-width:0;}
  .article-content .table-wrap{max-width:100%;overflow-x:auto;}
  .article-content table{min-width:680px;}
  .article-content table th,
  .article-content table td{overflow-wrap:normal;word-break:normal;hyphens:none;}
}
