/* Deine GEO Agentur — Design-System v2 (22.09.2026). Farben nur über Variablen. */
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/inter-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/poppins-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/poppins-latin-700-normal.woff2) format("woff2")}

:root{--bg:#fff;--bg-soft:#F8FAFC;--ink:#0B1220;--text:#334155;--muted:#64748B;--line:#E2E8F0;--line-soft:#F1F5F9;
--primary:#1D4ED8;--primary-light:#3B82F6;--primary-dark:#1E3A8A;--primary-soft:#EFF6FF;--green:#047857;--green-soft:#ECFDF5;--amber:#B45309;--amber-soft:#FFFBEB;--red:#B91C1C;--red-soft:#FEF2F2;
--dark:#0B1220;--dark-2:#111B2E;--radius:16px;--radius-sm:10px;--radius-lg:24px;
--shadow-sm:0 1px 2px rgba(11,18,32,.04),0 1px 3px rgba(11,18,32,.06);--shadow:0 4px 6px -1px rgba(11,18,32,.05),0 10px 20px -5px rgba(11,18,32,.08);--shadow-lg:0 20px 40px -12px rgba(29,78,216,.18),0 8px 16px -8px rgba(11,18,32,.08);
--maxw:1180px;--maxw-narrow:780px;--head-h:70px;
--font-head:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;--font-body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif}

*,*:before,*:after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-body);color:var(--text);background:var(--bg);line-height:1.7;font-size:1.03rem;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{max-width:100%;height:auto;display:block}
h1,h2,h3,h4{font-family:var(--font-head);color:var(--ink);line-height:1.18;letter-spacing:-.022em;margin:0 0 .55em;font-weight:700;text-wrap:balance;overflow-wrap:break-word;hyphens:auto}
h1{font-size:clamp(2rem,4.6vw,3.35rem)}h2{font-size:clamp(1.5rem,3vw,2.2rem)}h3{font-size:1.18rem;font-weight:600}
p{margin:0 0 1.05em}a{color:var(--primary);text-underline-offset:.18em}a:hover{color:var(--primary-dark)}
strong,b{color:var(--ink);font-weight:600}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;background:rgba(15,23,42,.06);color:inherit;padding:.1em .35em;border-radius:6px}
::selection{background:#BFDBFE;color:var(--ink)}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;z-index:200;background:var(--ink);color:#fff;padding:.6rem 1rem;border-radius:0 0 8px 0}.skip:focus{left:0}
:focus-visible{outline:3px solid var(--primary-light);outline-offset:2px;border-radius:4px}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px;width:100%}.wrap.narrow,.narrowish{max-width:var(--maxw-narrow)}
.section{padding:clamp(3.2rem,7vw,5.8rem) 0}.section-soft{background:var(--bg-soft)}
.section-gradient{background:linear-gradient(180deg,#fff 0%,var(--primary-soft) 55%,#fff 100%)}
.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.1em;font-size:.74rem;font-weight:700;color:var(--primary);margin:0 0 .7rem;font-family:var(--font-body)}
.kicker{display:block;font-size:.68rem;margin-bottom:.3rem}
.lead{font-size:clamp(1.06rem,1.6vw,1.2rem);color:var(--muted);max-width:66ch}
.muted{color:var(--muted)}.center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}
.sec-head{max-width:760px;margin:0 0 2.2rem}.center .sec-head,.sec-head.center{margin-left:auto;margin-right:auto}
.note-small{font-size:.88rem;color:var(--muted)}
.display{font-size:clamp(2rem,4.2vw,3rem)}

/* Buttons */
.btn,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;text-decoration:none;padding:.9rem 1.6rem;border-radius:12px;font-weight:600;font-size:1rem;transition:transform .18s cubic-bezier(.34,1.4,.64,1),box-shadow .18s,background .18s,border-color .18s,color .18s;cursor:pointer;border:0;font-family:var(--font-body);line-height:1.3}
.btn{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);color:#fff!important;box-shadow:0 4px 14px rgba(29,78,216,.28)}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(29,78,216,.34)}
.btn-ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn-ghost:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-2px)}
.btn-sm{padding:.6rem 1.05rem;font-size:.9rem;border-radius:10px}.btn-block{display:flex;width:100%}
.actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin:1.4rem 0 0}
.tel{font-weight:600;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}.tel:hover{color:var(--primary)}
.more{display:inline-block;margin-top:.6rem;font-weight:600;color:var(--primary)}

/* Kopf + Mega-Menü */
#kopf{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.head-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:var(--head-h);position:relative}
.brand{font-family:var(--font-head);font-weight:700;font-size:1.14rem;letter-spacing:-.03em;color:var(--ink);text-decoration:none;white-space:nowrap}.brand em{font-style:normal;color:var(--primary)}
.brand-inv{color:#fff}.brand-inv em{color:#93C5FD}
.mainnav{flex:1;display:flex;justify-content:center}
.nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:.15rem}
.nav-top{text-decoration:none;color:var(--text);font-weight:500;display:inline-flex;align-items:center;gap:.3rem;padding:.55rem .8rem;border-radius:9px;background:none;border:0;font:inherit;font-size:.97rem;cursor:pointer;line-height:1.2}
.nav-top:hover,.has-mega.open>.nav-top,.nav-top[aria-current]{color:var(--ink);background:var(--bg-soft)}
.chev{width:14px;height:14px;transition:transform .2s}.has-mega.open .chev{transform:rotate(180deg)}
.mega{position:absolute;left:22px;right:22px;top:calc(100% + 1px);z-index:60;background:#fff;border:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);box-shadow:0 24px 48px -24px rgba(11,18,32,.28);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .16s,transform .16s,visibility 0s .16s}
.has-mega.open .mega{opacity:1;visibility:visible;transform:none;transition:opacity .16s,transform .16s}
.mega-inner{padding:1.5rem 1.6rem 1.3rem}
.mega-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem 1.6rem}
.mega-h{font-family:var(--font-head);font-weight:700;font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .5rem .5rem}
.mega-col ul{list-style:none;margin:0;padding:0}
.mega-col a{display:flex;gap:.7rem;align-items:center;padding:.5rem;border-radius:10px;text-decoration:none;color:var(--ink);transition:background .15s}.mega-col a:hover{background:var(--primary-soft)}
.mega-col a b{display:block;font-weight:600;font-size:.95rem;line-height:1.3}.mega-col a small{display:block;color:var(--muted);font-size:.83rem;line-height:1.35}
.mega-ico{flex:0 0 34px;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:var(--primary);background:var(--primary-soft)}.mega-ico svg{width:18px;height:18px}
.mega-col a:hover .mega-ico{background:var(--primary);color:#fff}
.mega-over{display:inline-block;margin:1rem 0 0 .5rem;font-weight:600;font-size:.92rem;text-decoration:none}
.head-act{display:flex;align-items:center;gap:.6rem}
.burger{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;padding:12px 11px;flex-direction:column;justify-content:space-between}
.burger span{display:block;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}
.nav-open .burger span:nth-child(1){transform:translateY(8px) rotate(45deg)}.nav-open .burger span:nth-child(2){opacity:0}.nav-open .burger span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
@media(max-width:1023px){
 .burger{display:flex}.head-cta{display:none}
 .mainnav{position:fixed;left:0;right:0;top:var(--head-h);bottom:0;background:#fff;overflow:auto;padding:1rem 22px 2rem;display:none;justify-content:flex-start}
 .nav-open .mainnav{display:block}
 .nav-list{flex-direction:column;align-items:stretch;gap:0}
 .nav-list>li{border-bottom:1px solid var(--line-soft)}
 .nav-top{width:100%;justify-content:space-between;padding:1rem .2rem;font-size:1.05rem}
 .mega{position:static;border:0;box-shadow:none;opacity:1;visibility:visible;transform:none;display:none;border-radius:0}
 .has-mega.open .mega{display:block}
 .mega-inner{padding:.2rem 0 1rem}.mega-cols{grid-template-columns:1fr;gap:.6rem}
}

/* Breadcrumbs + Heros */
.crumbs{display:flex;flex-wrap:wrap;gap:.35rem;font-size:.86rem;color:var(--muted);margin:0 0 1.2rem}
.crumbs span+span:before{content:"›";margin-right:.35rem;color:#94A3B8}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--primary)}
.hero-plain{padding:clamp(2.4rem,5vw,4rem) 0 clamp(1.6rem,3vw,2.4rem);background:radial-gradient(1200px 400px at 85% -10%,var(--primary-soft),transparent 60%),#fff;border-bottom:1px solid var(--line-soft)}
.hero-slim h1{font-size:clamp(1.9rem,4vw,2.9rem)}
.meta-line{font-size:.9rem;color:var(--muted);margin:.4rem 0 0}.meta-line a{color:var(--ink);font-weight:600;text-decoration:none}
.cine{position:relative;min-height:min(78vh,720px);display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--dark)}
.cine-img{position:absolute;inset:0}.cine-img img{width:100%;height:100%;object-fit:cover}
.cine-img:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,18,32,.9) 0%,rgba(11,18,32,.72) 45%,rgba(11,18,32,.25) 100%)}
.cine-inner{position:relative;width:100%;max-width:var(--maxw);margin:0 auto;padding:clamp(4rem,10vw,7rem) 22px clamp(3rem,7vw,5rem)}
.hero-text{max-width:680px}.cine h1,.cine h2{color:#fff}.cine .lead{color:#CBD5E1}.cine .eyebrow{color:#93C5FD}
.cine .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}.cine .btn-ghost:hover{background:#fff;color:var(--ink)}
.cine-center{align-items:center;text-align:center;min-height:auto}.cine-center .cine-img:after{background:rgba(11,18,32,.8)}.cta-cine{max-width:760px;margin:0 auto}.cta-cine .actions{justify-content:center}.cine .tel{color:#fff}
.trust{list-style:none;margin:1.6rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;font-size:.95rem}
.trust li{position:relative;padding-left:1.3rem;color:inherit}.trust li:before{content:"✓";position:absolute;left:0;color:#34D399;font-weight:700}.trust em{font-style:normal;color:#93C5FD;font-weight:600}

/* Karten + Raster */
.grid{display:grid;gap:1.3rem}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.g2,.g3{grid-template-columns:1fr}}
.card{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow-sm);color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}
a.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:#BFDBFE;color:inherit}
.card h3{margin-top:.2rem}.card p:last-child{margin-bottom:0}
.ico{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--primary-soft);color:var(--primary);margin-bottom:1rem}.ico svg{width:22px;height:22px}
.num{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--primary);color:#fff;font-weight:700;font-family:var(--font-head);margin-bottom:.9rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.6rem,4vw,3.5rem);align-items:center;margin-top:3rem}.split.rev>.pic{order:2}
@media(max-width:860px){.split{grid-template-columns:1fr}.split.rev>.pic{order:0}}
.pic{margin:0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:var(--ratio,16/10);background:var(--bg-soft)}.pic img{width:100%;height:100%;object-fit:cover}
.band{position:relative;margin:0;max-height:520px;overflow:hidden}.band img{width:100%;height:clamp(260px,40vw,520px);object-fit:cover}
.band-caption{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(0deg,rgba(11,18,32,.85),transparent);color:#fff;padding:3rem 0 1.4rem}.band-caption p{margin:0;font-weight:500;max-width:640px}

/* Kennzahlen */
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.metrics.boxed .metric{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem 1.4rem;box-shadow:var(--shadow-sm)}
.metric-value{font-family:var(--font-head);font-weight:700;font-size:clamp(1.7rem,3vw,2.3rem);color:var(--primary);line-height:1.1}
.metric-label{font-weight:600;color:var(--ink);margin-top:.35rem}.metric-note{font-size:.86rem;color:var(--muted)}
@media(max-width:860px){.metrics{grid-template-columns:repeat(2,1fr)}}

/* Antwortbox, Tipp, Hinweis */
.answer{background:var(--primary-soft);border:1px solid #BFDBFE;border-left:4px solid var(--primary);border-radius:var(--radius-sm);padding:1.1rem 1.3rem;margin:0 0 1.8rem}.answer p{margin:0}.answer p+p{margin-top:.6rem}
.tip{background:var(--amber-soft);border:1px solid #FDE68A;border-radius:var(--radius-sm);padding:1rem 1.2rem;margin:1.4rem 0}.tip>b{display:block;color:var(--amber);margin-bottom:.25rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.07em}.tip p:last-child{margin-bottom:0}
.note-box{margin-top:2.4rem;background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem 1.4rem;font-size:.95rem}
.disclaimer{font-size:.86rem;color:var(--muted);border-top:1px solid var(--line);padding-top:1rem;margin-top:2rem}
.bridge{background:#fff;border:1px dashed #BFDBFE;border-radius:var(--radius-sm);padding:.8rem 1.1rem;font-size:.95rem}
.bridge a{font-weight:600;text-decoration:none}

/* Listen */
.checks,.minus{list-style:none;padding:0;margin:0 0 1rem}
.checks li,.minus li{position:relative;padding-left:1.7rem;margin:.45rem 0}
.checks li:before{content:"";position:absolute;left:0;top:.42em;width:1.05rem;height:1.05rem;border-radius:50%;background:var(--green-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23047857' stroke-width='3'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/70% no-repeat}
.minus li:before{content:"";position:absolute;left:.1rem;top:.78em;width:.8rem;height:2px;background:var(--amber)}
.principle{display:flex;gap:1rem;align-items:flex-start;padding:1.2rem 0;border-bottom:1px solid var(--line-soft)}
.check-badge{flex:0 0 34px;height:34px;border-radius:50%;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-weight:700}
.steps{list-style:none;margin:0;padding:0;counter-reset:s}
.steps>li{display:grid;grid-template-columns:52px 1fr;gap:1.2rem;padding:1.6rem 0;border-bottom:1px solid var(--line)}
.step-nr{width:46px;height:46px;border-radius:14px;background:var(--primary);color:#fff;display:grid;place-items:center;font-family:var(--font-head);font-weight:700;font-size:1.15rem}
.step-head{display:flex;flex-wrap:wrap;gap:.3rem 1rem;align-items:baseline}.step-head h3{margin:0}.step-dauer{font-size:.86rem;font-weight:600;color:var(--primary);background:var(--primary-soft);padding:.15rem .6rem;border-radius:99px}
.step-body p{margin-top:.5rem}

/* Preise */
.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;align-items:stretch}
.price{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.8rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}
.price.hl{border:2px solid var(--primary);box-shadow:var(--shadow-lg)}
.badge{position:absolute;top:-12px;left:1.6rem;background:var(--primary);color:#fff;font-size:.74rem;font-weight:700;padding:.25rem .7rem;border-radius:99px;letter-spacing:.03em}
.price .sub{color:var(--muted);font-size:.93rem}.amount{font-family:var(--font-head);font-weight:700;font-size:1.7rem;color:var(--ink);margin:.4rem 0 .2rem}
.amount-note{font-size:.85rem;color:var(--muted)}.price .checks{margin-top:.6rem;flex:1}
@media(max-width:900px){.pricing{grid-template-columns:1fr}}

/* Kontakt */
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.6rem 0}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem;box-shadow:var(--shadow-sm)}
.contact-card .k{display:block;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;font-weight:700;color:var(--muted);margin-bottom:.3rem}
.contact-card a{font-weight:600;font-size:1.05rem;text-decoration:none;word-break:break-word}.contact-card p{margin:.4rem 0 0;font-size:.9rem;color:var(--muted)}
@media(max-width:760px){.contact-grid{grid-template-columns:1fr}}

/* Schlüssel-Wert */
.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem;margin:0 0 1.8rem}
.kv>div{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.8rem 1rem;margin:0}
.kv small,.kv dt{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:700}
.kv b,.kv dd{display:block;margin:0;color:var(--ink);font-weight:600;overflow-wrap:anywhere}

/* Tabellen */
.tablewrap{overflow-x:auto;margin:1.4rem 0;border:1px solid var(--line);border-radius:var(--radius);-webkit-overflow-scrolling:touch}
.compare{width:100%;border-collapse:collapse;font-size:.95rem;min-width:560px}
.compare th,.compare td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.compare thead th{background:var(--bg-soft);font-family:var(--font-head);color:var(--ink);font-size:.9rem}
.compare tbody tr:last-child td{border-bottom:0}.compare td:first-child{font-weight:600;color:var(--ink)}
.tag{display:inline-block;font-size:.76rem;font-weight:700;padding:.15rem .55rem;border-radius:99px;background:var(--bg-soft);color:var(--text)}
.tag-suche{background:var(--primary-soft);color:var(--primary-dark)}.tag-abruf{background:var(--green-soft);color:var(--green)}.tag-training{background:var(--amber-soft);color:var(--amber)}

/* FAQ */
.faq{margin:2.4rem 0}.faq details{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;margin:.6rem 0;overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:1rem 3rem 1rem 1.2rem;font-weight:600;color:var(--ink);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:1.1rem;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--primary);font-weight:400}
.faq details[open] summary:after{content:"–"}.faq details>div{padding:0 1.2rem 1rem}.faq details>div p:last-child{margin:0}

/* Fließtext */
.prose{max-width:var(--maxw-narrow)}.prose h2{margin-top:2.2rem;scroll-margin-top:calc(var(--head-h) + 16px)}.prose h3{margin-top:1.6rem}
.prose ul:not(.checks):not(.minus),.prose ol{padding-left:1.3rem}.prose li{margin:.35rem 0}
.prose img{border-radius:var(--radius)}.prose blockquote{margin:1.6rem 0;padding:.4rem 0 .4rem 1.3rem;border-left:3px solid var(--primary);color:var(--ink);font-size:1.08rem}
.prose table{width:100%;border-collapse:collapse;margin:1.4rem 0;font-size:.95rem;display:block;overflow-x:auto}
.prose .tablewrap table,.tablewrap table{display:table;margin:0;overflow:visible}
.prose .tablewrap th,.prose .tablewrap td{border:0;border-bottom:1px solid var(--line)}
.prose th,.prose td{border:1px solid var(--line);padding:.6rem .8rem;text-align:left;vertical-align:top}.prose th{background:var(--bg-soft);color:var(--ink)}
.post-img{margin:0 0 2rem}.post-img img{width:100%;border-radius:var(--radius-lg);aspect-ratio:16/9;object-fit:cover}
.pillbar{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin:1rem 0}
.pill{font-size:.84rem;background:var(--bg-soft);border:1px solid var(--line);border-radius:99px;padding:.18rem .7rem}.pill-l{font-size:.84rem;color:var(--muted);margin-right:.2rem}

/* Glossar-Hub */
.gl-tools{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:1.6rem}
.gl-search input{width:min(420px,100%);padding:.85rem 1.1rem;border:1px solid var(--line);border-radius:12px;font:inherit;background:#fff;box-shadow:var(--shadow-sm)}
.gl-search input:focus{outline:2px solid var(--primary-light);border-color:transparent}
.az{display:flex;flex-wrap:wrap;gap:.2rem}.az a,.az span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;font-weight:600;font-size:.88rem;text-decoration:none}
.az a{background:var(--primary-soft);color:var(--primary)}.az a:hover{background:var(--primary);color:#fff}.az span{color:#CBD5E1}
.chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.1rem}
.chip{display:inline-flex;gap:.35rem;align-items:center;font:inherit;font-size:.88rem;font-weight:500;padding:.38rem .85rem;border-radius:99px;border:1px solid var(--line);background:#fff;color:var(--text);cursor:pointer;text-decoration:none}
.chip small{color:var(--muted)}.chip:hover{border-color:var(--primary);color:var(--primary)}.chip.is-on{background:var(--primary);border-color:var(--primary);color:#fff}.chip.is-on small{color:#DBEAFE}
.letter-h{font-size:1.5rem;margin:2.2rem 0 .8rem;padding-bottom:.4rem;border-bottom:2px solid var(--line-soft);scroll-margin-top:calc(var(--head-h) + 16px)}
.termlist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}
.termlist a{display:block;padding:.85rem 1rem;border:1px solid var(--line);border-radius:var(--radius-sm);text-decoration:none;background:#fff;transition:border-color .15s,box-shadow .15s}
.termlist a:hover{border-color:#93C5FD;box-shadow:var(--shadow)}.termlist b{display:block;color:var(--ink)}.termlist small{display:block;color:var(--muted);font-size:.86rem;line-height:1.45;margin-top:.15rem}
.termlist-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.termlist{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.termlist,.termlist-2{grid-template-columns:1fr}}

/* Verzeichnis */
.vcard h3{margin:.2rem 0 .4rem}.vprice{display:inline-block;margin-top:.8rem;font-size:.85rem;font-weight:600;color:var(--ink);background:var(--bg-soft);border-radius:99px;padding:.2rem .7rem}
.procon .pro h3{color:var(--green)}.procon .con h3{color:var(--amber)}

/* Ratgeber-Karten */
.pcard{padding:0;overflow:hidden;display:flex;flex-direction:column}.pcard-img{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--bg-soft)}
.pcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.pcard:hover .pcard-img img{transform:scale(1.04)}
.pcard-body{display:flex;flex-direction:column;gap:.35rem;padding:1.2rem 1.3rem 1.3rem;flex:1}.pcard h3{margin:0;font-size:1.1rem}.pcard .muted{font-size:.93rem}
.pcard-meta{margin-top:auto;padding-top:.5rem;font-size:.82rem;color:var(--muted)}
.pager{display:flex;gap:.4rem;justify-content:center;margin-top:2.4rem}.pager a,.pager span{min-width:40px;height:40px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--line);text-decoration:none;font-weight:600}
.pager span{background:var(--primary);color:#fff;border-color:var(--primary)}
.wissen-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.wissen-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:inherit;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s}
.wissen-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);color:inherit}
.wc-img{display:block;aspect-ratio:16/9;overflow:hidden}.wc-img img{width:100%;height:100%;object-fit:cover}
.wc-body{display:flex;flex-direction:column;gap:.3rem;padding:1.2rem 1.3rem}.wc-t{font-family:var(--font-head);font-weight:700;color:var(--ink);font-size:1.12rem}.wc-d{color:var(--muted);font-size:.93rem}.wc-more{color:var(--primary);font-weight:600;margin-top:.3rem}
@media(max-width:900px){.wissen-grid{grid-template-columns:1fr}}

/* Zweispaltig mit Sidebar */
.has-side{padding-top:2.2rem}
.layout-2col{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.layout-2col>.prose{min-width:0}
.sidebar{position:sticky;top:calc(var(--head-h) + 18px);display:flex;flex-direction:column;gap:1rem}
.sb-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.15rem 1.2rem;box-shadow:var(--shadow-sm)}
.sb-card>strong{display:block;font-family:var(--font-head);font-size:.95rem;color:var(--ink);margin-bottom:.6rem}
.sb-text{font-size:.9rem;color:var(--muted);margin:.35rem 0 .9rem;line-height:1.6}
.sb-toc ol{list-style:none;margin:0;padding:0;counter-reset:toc;max-height:min(44vh,400px);overflow:auto}
.sb-toc li{counter-increment:toc;margin:0}
.sb-toc a{display:block;padding:.34rem .3rem .34rem 1.8rem;position:relative;font-size:.89rem;color:var(--text);text-decoration:none;border-left:2px solid var(--line-soft);line-height:1.45}
.sb-toc a:before{content:counter(toc);position:absolute;left:.6rem;color:var(--muted);font-size:.72rem;top:.45rem}
.sb-toc a:hover{color:var(--primary);border-left-color:var(--primary);background:var(--primary-soft)}
.sb-buch{background:linear-gradient(165deg,var(--primary-soft) 0%,#fff 62%);border-color:#DBEAFE;text-align:center;padding:1.3rem 1.2rem}
.sb-buch-img{display:block;margin:0 auto 1rem;max-width:140px}
.sb-buch-img img,.buchref-img img{border-radius:5px;box-shadow:0 12px 26px -8px rgba(11,18,32,.38),0 2px 6px rgba(11,18,32,.12);transition:transform .25s}
.sb-buch-img:hover img,.buchref-img:hover img{transform:translateY(-3px) rotate(-1.2deg)}
.sb-buch strong{display:block;font-family:var(--font-head);font-size:1.2rem;color:var(--ink);letter-spacing:-.02em}
.sb-buch .sb-text{text-align:left}
.sb-contact{padding:0;overflow:hidden}.sb-contact img{width:100%;aspect-ratio:4/3;object-fit:cover}
.sb-contact .sb-body{padding:1rem 1.2rem 1.25rem}
.sb-name{display:block;font-family:var(--font-head);font-weight:700;color:var(--ink)}.sb-fn{display:block;font-size:.82rem;color:var(--muted);margin-bottom:.7rem}
.sb-contact strong{display:block;font-family:var(--font-head);color:var(--ink)}
.sb-tel{display:block;text-align:center;margin-top:.65rem;font-size:.9rem;font-weight:600;color:var(--ink);text-decoration:none}
.sb-links{list-style:none;margin:0;padding:0}.sb-links li+li{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--line-soft)}
.sb-links a{font-size:.9rem;color:var(--text);text-decoration:none;line-height:1.45;display:block}.sb-links a:hover{color:var(--primary)}
@media(max-width:1080px){
 .layout-2col{grid-template-columns:1fr}.sidebar{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .sb-toc{display:none}
}
@media(max-width:640px){.sidebar{grid-template-columns:1fr}}

/* Autorenbox + Buch */
.authorbox{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;margin:2.6rem 0 0}
.a-head{display:grid;grid-template-columns:84px 1fr;gap:1.2rem;align-items:start}
.a-img{width:84px;height:84px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:var(--shadow-sm)}
.a-head strong{display:block;font-family:var(--font-head);font-size:1.1rem;color:var(--ink);margin-bottom:.3rem}
.a-text{margin:0 0 .6rem;font-size:.94rem;line-height:1.62}
.a-links{margin:0;font-size:.9rem;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.a-links a{text-decoration:none;font-weight:600}.a-links span{color:#CBD5E1}
.a-date{margin:.5rem 0 0;font-size:.82rem;color:var(--muted)}
.buchref{display:grid;grid-template-columns:112px 1fr;gap:1.3rem;align-items:start;margin-top:1.4rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.buchref-img{display:block}.buchref-img img{width:112px}
.buchref-body>strong{display:block;font-family:var(--font-head);font-size:1.04rem;color:var(--ink);line-height:1.3;margin-bottom:.4rem}
.buchref-text{margin:0 0 .45rem;font-size:.92rem;line-height:1.6}.buchref-meta{margin:0 0 .8rem;font-size:.82rem;color:var(--muted)}
.buchref-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin:0}
@media(max-width:560px){.a-head{grid-template-columns:1fr}.buchref{grid-template-columns:88px 1fr;gap:1rem}.buchref-img img{width:88px}}

/* Floating CTA */
.floatcta{position:fixed;left:0;right:0;bottom:0;z-index:70;padding:0 14px 14px;pointer-events:none;animation:fcIn .28s cubic-bezier(.34,1.3,.64,1)}
.floatcta[hidden]{display:none}@keyframes fcIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.fc-in{pointer-events:auto;max-width:760px;margin:0 auto;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 40px -12px rgba(11,18,32,.3);padding:.65rem .7rem .65rem 1.1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.fc-txt{margin:0;line-height:1.35;min-width:0}.fc-txt strong{display:block;font-family:var(--font-head);font-size:.96rem}.fc-txt span{font-size:.85rem;color:var(--muted)}
.fc-act{display:flex;align-items:center;gap:.35rem;margin:0;flex:0 0 auto}
.fc-x{background:none;border:0;color:var(--muted);font-size:1.5rem;line-height:1;cursor:pointer;padding:.1rem .45rem;border-radius:8px}.fc-x:hover{color:var(--ink);background:var(--bg-soft)}
@media(max-width:600px){.fc-txt span{display:none}.fc-txt strong{font-size:.88rem}}

/* Werkzeuge */
.toolform{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.6rem;max-width:620px}
.toolform input{flex:1 1 260px;padding:.9rem 1.1rem;border:1px solid var(--line);border-radius:12px;font:inherit;font-size:1.05rem;background:#fff;box-shadow:var(--shadow-sm)}
.toolcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem;box-shadow:var(--shadow-sm)}
.toolcard label{display:block;font-weight:600;color:var(--ink);font-size:.93rem;margin-bottom:1rem}
.toolcard input,.toolcard textarea{display:block;width:100%;margin-top:.35rem;padding:.7rem .85rem;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:.93rem;font-weight:400;background:var(--bg-soft)}
.toolcard textarea{font-family:ui-monospace,Menlo,monospace;font-size:.84rem}
.ll-head{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.8rem;flex-wrap:wrap}
.codeout{margin:0;background:var(--dark);color:#E2E8F0;border-radius:var(--radius-sm);padding:1rem 1.1rem;font-size:.84rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;min-height:320px;max-height:560px;overflow:auto}
.llms-grid{align-items:start;margin-bottom:3rem}
.cc-summary{border-radius:var(--radius);padding:1.1rem 1.3rem;margin:0 0 1.2rem;font-size:1.02rem}.cc-summary.good{background:var(--green-soft);border:1px solid #A7F3D0}.cc-summary.bad{background:var(--red-soft);border:1px solid #FECACA}
.cc-facts{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-wrap:wrap;gap:.5rem}.cc-facts li{background:var(--bg-soft);border:1px solid var(--line);border-radius:99px;padding:.3rem .8rem;font-size:.88rem}
.st{display:inline-block;font-size:.8rem;font-weight:700;padding:.2rem .6rem;border-radius:99px}.st-ok{background:var(--green-soft);color:var(--green)}.st-no{background:var(--red-soft);color:var(--red)}.st-part{background:var(--amber-soft);color:var(--amber)}
#cc-out{margin-bottom:3rem}

/* Abschluss-CTA + 404 */
.closing{background:var(--dark);color:#CBD5E1;position:relative;overflow:hidden}.closing h2{color:#fff}.closing .lead{color:#94A3B8}.closing .tel{color:#fff}
.glow:before{content:"";position:absolute;width:720px;height:720px;left:50%;top:-360px;transform:translateX(-50%);background:radial-gradient(circle,rgba(59,130,246,.28),transparent 60%);pointer-events:none}
.closing .wrap{position:relative}
.pageerr{padding:clamp(4rem,10vw,8rem) 0}

/* Fuß */
#fuss{background:var(--dark);color:#94A3B8;padding:3.6rem 0 1.4rem;font-size:.94rem}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2rem}
.foot-brand p{margin:.9rem 0}.foot-contact a,.foot-links a{color:#CBD5E1;text-decoration:none}.foot-contact a:hover,.foot-links a:hover{color:#fff}
.foot-h{font-family:var(--font-head);font-weight:700;color:#fff;margin:0 0 .8rem;font-size:.95rem}
.foot-links{list-style:none;margin:0;padding:0}.foot-links li{margin:.4rem 0}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem;border-top:1px solid rgba(148,163,184,.2);margin-top:2.6rem;padding-top:1.2rem;font-size:.86rem}
.foot-bottom p{margin:0}.foot-legal{display:flex;gap:1.2rem}.foot-legal a{color:#94A3B8;text-decoration:none}.foot-legal a:hover{color:#fff}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.foot-grid{grid-template-columns:1fr}}

/* Scroll-Reveal nur mit JS und ohne reduzierte Bewegung */
@media (prefers-reduced-motion:no-preference){
 .js .reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
 .js .reveal.in{opacity:1;transform:none}
 .js .reveal-d1{transition-delay:.06s}.js .reveal-d2{transition-delay:.12s}.js .reveal-d3{transition-delay:.18s}.js .reveal-d4{transition-delay:.24s}
}
@media print{#kopf,#fuss,.sidebar,.floatcta,.closing{display:none!important}}
