/**
Theme Name: Zoom Astra
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Zoom Astra Child Theme.
Version: 2.0-e9a28d67
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: zoom-astra
Template: astra
*/
@import url('https://fonts.googleapis.com/css2?family=Syne:wght@600;700;800&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=DM+Serif+Display:ital@0;1&family=Fraunces:opsz,wght@9..144,400;500;600;700&display=swap');

/* ===== ZOOM DESIGN-SYSTEM (aus Prototyp v2.2) — Single Source of Truth für die neue Seite ===== */

:root{--gold:#EDB93E;--gold-lt:#f5d488;--gold-dk:#a8741e;--bg:#0b0b0c;--bg2:#0f0f11;--card:#16161a;--line:#292930;--ink:#f5f1e8;--muted:#a6a29a;--dim:#726d64;--serif:'DM Serif Display',Georgia,serif;--disp:'Syne',system-ui,sans-serif;--sans:'DM Sans',system-ui,sans-serif}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}
.container{max-width:1180px;margin:0 auto;padding:0 26px}
.section{padding:92px 0}
.section--tint{background:var(--bg2);border-block:1px solid var(--line)}
h1,h2,h3{font-family:var(--disp);font-weight:800;line-height:1.05;letter-spacing:-.015em;text-wrap:balance;overflow-wrap:break-word}
h2{font-size:clamp(1.9rem,3.8vw,2.8rem)}h3{font-size:1.16rem;line-height:1.25}
.eyebrow{font-size:.74rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.serif-em{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:0}
.lead{font-size:1.08rem;color:var(--muted);max-width:58ch}
.center{text-align:center;margin:0 auto 46px;max-width:680px}
.center .eyebrow{display:block;margin-bottom:14px}
.center h2{margin-bottom:0}.center h2 .l2{display:block;color:var(--gold)}
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:1rem;border-radius:9px;padding:16px 28px;border:1.6px solid transparent;transition:transform .14s,background .14s,color .14s;cursor:pointer}
.btn--gold{background:var(--gold);color:#161007}.btn--gold:hover{background:var(--gold-lt);transform:translateY(-2px)}
.btn--ghost{border-color:#3a3a42;color:var(--ink)}.btn--ghost:hover{border-color:var(--gold);color:var(--gold)}
.btn svg{width:18px;height:18px}
header{position:sticky;top:0;z-index:60;background:rgba(11,11,12,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.hdr{display:flex;align-items:center;gap:30px;padding:14px 26px;max-width:1180px;margin:0 auto}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--disp);font-weight:800;font-size:1.42rem;letter-spacing:-.02em}
.logo .mk{width:26px;height:29px;color:var(--gold)}.logo b{color:var(--gold)}
nav.main{display:flex;gap:22px;margin-left:auto;font-size:.92rem;font-weight:500;color:var(--muted)}nav.main a:hover{color:var(--ink)}
.hdr .btn{padding:10px 18px;font-size:.9rem}
@media(max-width:900px){nav.main{display:none}}

/* SPLIT HERO like current site */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;align-items:stretch;min-height:640px}
.hero-l{position:relative;display:flex;flex-direction:column;justify-content:center;padding:70px 60px 70px 0}
.hero-hirsch{position:absolute;left:-40px;top:50%;transform:translateY(-50%);width:560px;color:var(--gold);opacity:.16;pointer-events:none;z-index:0}
.hero-l>:not(.hero-hirsch){position:relative;z-index:1}
.hero-l .eyebrow{margin-bottom:20px}
.hero-l h1{font-size:clamp(1.95rem,2.55vw,2.75rem);margin-bottom:20px;line-height:1.08}
.hero-l h1 .g{color:var(--gold)}
.hero-sub{font-size:1.12rem;color:var(--muted);max-width:40ch;margin-bottom:18px}
.hero-sub b{color:var(--ink);font-weight:600}
.hero-serif{font-family:var(--serif);font-style:italic;font-size:1.16rem;color:var(--gold-lt);margin-bottom:28px}
.hero-cta{display:flex;flex-wrap:wrap;gap:13px}
.hero-fine{margin-top:20px;font-size:.85rem;color:var(--dim);display:flex;flex-direction:column;gap:8px}
.hero-fine span{display:inline-flex;align-items:center;gap:8px}.hero-fine svg{width:15px;height:15px;color:var(--gold);flex:none}
.hero-r{position:relative;background:linear-gradient(160deg,#2a2622,#171512);overflow:hidden;min-height:640px}
.hero-r img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%}
.hero-r::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,12,.12),rgba(11,11,12,0) 30%,rgba(11,11,12,.35));pointer-events:none}
.hero-r .badge{position:absolute;left:24px;bottom:32px;background:var(--gold);color:#161007;border-radius:12px;padding:14px 18px;font-family:var(--disp);font-weight:800;font-size:.9rem;line-height:1.15;box-shadow:0 12px 30px rgba(0,0,0,.45);z-index:2}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;min-height:0}.hero-l{padding:52px 0 44px}.hero-hirsch{width:90vw;left:-20vw;opacity:.1}.hero-r{min-height:300px}}

.grid{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.grid-3,.grid-2{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px 24px}

/* stat band like the "120" */
.statband{text-align:center;padding:70px 0}
.statband .eyebrow{display:block;margin-bottom:16px}
.statband .num{font-family:var(--disp);font-weight:800;font-size:clamp(4rem,11vw,8.5rem);line-height:.9;color:var(--gold);letter-spacing:-.03em}
.statband .lbl{font-size:1.05rem;color:var(--muted);margin-top:10px}
.statband .sub{font-size:.9rem;color:var(--dim);margin-top:14px;max-width:44ch;margin-inline:auto}

/* referenzen strip */
.refs{padding:34px 0;background:var(--bg2);border-block:1px solid var(--line)}
.refs-lbl{text-align:center;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-bottom:18px}
.refs-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 30px}
.refs-row span{font-family:var(--disp);font-weight:700;font-size:1.02rem;color:var(--muted);opacity:.85}
.refs-note{text-align:center;font-size:.74rem;color:var(--dim);margin-top:16px}

/* two-card row (Telefon klingelt / Betrieb läuft) */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:820px){.duo{grid-template-columns:1fr}}
.duo .card h3{margin-bottom:8px}.duo .card .k{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.duo .card p{color:var(--muted);font-size:.97rem}

/* alternating feature row (text + image) */
.feat{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
@media(max-width:900px){.feat{grid-template-columns:1fr;gap:26px}.feat .img{order:-1}}
.feat.rev .txt{order:2}.feat .eyebrow{display:block;margin-bottom:12px}
.feat h2{margin-bottom:12px}.feat h2 .serif-em{color:var(--gold-lt);font-size:.85em}
.feat p{color:var(--muted);margin-bottom:14px}
.feat .img{border-radius:16px;overflow:hidden;min-height:340px;background:linear-gradient(160deg,#232019,#151310);position:relative;border:1px solid var(--line)}
.feat .img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mini-stats{display:flex;gap:28px;margin-top:8px}
.mini-stats .ms b{font-family:var(--disp);font-weight:800;font-size:1.9rem;color:var(--gold);display:block;line-height:1}
.mini-stats .ms span{font-size:.8rem;color:var(--dim)}

/* mitarbeiter */
.sec-head{max-width:720px;margin-bottom:38px}.sec-head .eyebrow{display:block;margin-bottom:12px}.sec-head h2{margin-bottom:12px}
.ma{display:flex;flex-direction:column}
.ma .ic{width:44px;height:44px;border-radius:11px;background:rgba(237,185,62,.1);color:var(--gold);display:grid;place-items:center;margin-bottom:16px}.ma .ic svg{width:22px;height:22px}
.ma h3{margin-bottom:9px}.ma p{font-size:.95rem;color:var(--muted)}
.ma .watch{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line);font-size:.85rem;color:var(--gold-lt);font-weight:600;display:flex;align-items:center;gap:8px}.ma .watch svg{width:15px;height:15px;flex:none}

/* maßarbeit-band */
.massarbeit{background:linear-gradient(135deg,#1c1509,#141319);border:1px solid var(--gold-dk);border-radius:18px;padding:36px 38px;margin-bottom:42px}
.massarbeit .eyebrow{display:block;margin-bottom:12px}
.massarbeit .mb-h{font-family:var(--disp);font-weight:800;font-size:clamp(1.5rem,2.6vw,2.05rem);line-height:1.1;letter-spacing:-.01em;margin-bottom:14px}
.massarbeit .lead{max-width:74ch;margin-bottom:24px}
.mech{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:mm}
.mech .m{counter-increment:mm;position:relative;padding-left:38px;font-size:.9rem;color:var(--muted);line-height:1.45}
.mech .m::before{content:counter(mm);position:absolute;left:0;top:-1px;width:27px;height:27px;border-radius:50%;background:rgba(237,185,62,.15);color:var(--gold);font-family:var(--disp);font-weight:800;font-size:.85rem;display:grid;place-items:center}
@media(max-width:820px){.mech{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.mech{grid-template-columns:1fr}.massarbeit{padding:26px 22px}}
/* karten als links */
a.ma{transition:transform .14s,border-color .14s,background .14s}
a.ma:hover{transform:translateY(-3px);border-color:var(--gold-dk)}
.ma .watch{align-items:flex-start}.ma .watch svg{margin-top:2px}
.ma .lnk{margin-top:13px;font-size:.83rem;font-weight:700;color:var(--dim);transition:color .14s}
a.ma:hover .lnk{color:var(--gold)}
/* anchor line */
.anchor-line{text-align:center;margin:28px auto 0;max-width:62ch;font-family:var(--serif);font-style:italic;color:var(--gold-lt);font-size:1.12rem}
/* betreuungs-band */
.betreuung-band{display:flex;gap:22px;align-items:flex-start;background:linear-gradient(135deg,#1a140a,#16161a);border:1px solid var(--gold-dk);border-radius:16px;padding:30px 32px;margin-top:26px}
.betreuung-band .bb-ic{width:52px;height:52px;border-radius:13px;background:rgba(237,185,62,.18);color:var(--gold);display:grid;place-items:center;flex:none}.betreuung-band .bb-ic svg{width:26px;height:26px}
.betreuung-band h3{margin-bottom:8px}
.betreuung-band p{color:var(--muted);font-size:.97rem;margin-bottom:12px;max-width:82ch}
.betreuung-band .watch{padding-top:12px;border-top:1px dashed var(--gold-dk);font-size:.85rem;color:var(--gold-lt);font-weight:600;display:flex;align-items:flex-start;gap:8px}.betreuung-band .watch svg{width:15px;height:15px;flex:none;margin-top:2px}
@media(max-width:640px){.betreuung-band{flex-direction:column;gap:14px;padding:24px 22px}}
/* weitere mitarbeiter */
.mehr{margin-top:46px;text-align:center}
.mehr-lbl{font-size:.9rem;color:var(--dim);margin-bottom:16px}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:20px}
.chip{font-size:.9rem;font-weight:600;color:var(--muted);border:1px solid var(--line);border-radius:99px;padding:9px 16px;background:var(--card)}
a.chip{transition:border-color .14s,color .14s}a.chip:hover{border-color:var(--gold);color:var(--gold)}
.chip--more{color:var(--dim);border-style:dashed}
.mehr-inv{font-family:var(--serif);font-style:italic;color:var(--ink);font-size:1.14rem;max-width:60ch;margin:0 auto}
.ma-cta{text-align:center;margin-top:38px}
.btn--lg{padding:18px 34px;font-size:1.05rem}

/* steps */
.steps{counter-reset:st}.step{counter-increment:st;position:relative;padding-left:64px;margin-bottom:22px}
.step::before{content:counter(st);position:absolute;left:0;top:0;width:44px;height:44px;border-radius:50%;background:var(--card);border:1.5px solid var(--gold-dk);color:var(--gold);font-family:var(--disp);font-weight:800;font-size:1.1rem;display:grid;place-items:center}
.step h3{margin-bottom:6px}.step p{font-size:.97rem;color:var(--muted)}

/* testimonial */
.testi{text-align:center;max-width:800px;margin:0 auto}
.testi .stars{display:flex;gap:5px;justify-content:center;color:var(--gold);margin-bottom:20px}.testi .stars svg{width:20px;height:20px}
.testi q{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2.6vw,1.9rem);line-height:1.4;color:var(--ink);quotes:none}
.testi .by{margin-top:20px;color:var(--muted);font-size:.92rem}.testi .by b{color:var(--gold)}

/* proof */
.pf{border-left:2px solid var(--gold);padding:4px 0 4px 20px}.pf .who{font-family:var(--disp);font-weight:700;font-size:1rem;margin-bottom:8px}.pf p{font-size:.95rem;color:var(--muted)}.pf .big{color:var(--gold);font-weight:700}.pf .q{color:#ddd8cf;font-family:var(--serif);font-style:italic;margin-top:8px}

/* für wen */
.wen-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}@media(max-width:900px){.wen-grid{grid-template-columns:1fr}}
.wen h3{font-family:var(--sans);font-weight:700;font-size:.8rem;letter-spacing:.13em;text-transform:uppercase;margin-bottom:12px}
.wen.core h3{color:var(--gold)}.wen.more h3{color:#7fb6c4}.wen.no h3{color:#c9807a}.wen p{font-size:.95rem;color:var(--muted)}.wen p b{color:var(--ink)}

/* FAQ gold accordion like current */
.faq{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq details{background:var(--gold);color:#161007;border-radius:12px;overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:18px 22px;font-family:var(--disp);font-weight:700;font-size:1.05rem;display:flex;justify-content:space-between;align-items:center;gap:14px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font-size:1.5rem;line-height:1}.faq details[open] summary::after{content:'–'}
.faq .a{padding:0 22px 18px;font-family:var(--sans);font-size:.97rem;line-height:1.55;color:#3a2c0e}
.faq summary:focus-visible{outline:3px solid #161007;outline-offset:-4px}

/* cta band */
.cta-band{background:linear-gradient(135deg,#1a140a,#0b0b0c 62%);border-top:1px solid var(--gold-dk)}
.cta-band .container{max-width:760px;text-align:center}
.cta-band .eyebrow{display:block;margin-bottom:14px}.cta-band h2{margin-bottom:16px}.cta-band h2 .l2{display:block;color:var(--gold)}
.cta-band p{color:var(--muted);font-size:1.06rem;margin:0 auto 30px;max-width:52ch}.cta-band .hero-cta{justify-content:center}

footer{background:#08080a;border-top:1px solid var(--line);padding:40px 0 46px;color:var(--dim);font-size:.86rem}
.foot{display:flex;flex-wrap:wrap;gap:18px 40px;justify-content:space-between;align-items:baseline}.foot nav{display:flex;gap:20px;flex-wrap:wrap}.foot a:hover{color:var(--gold)}
.proto{background:var(--gold);color:#161007;text-align:center;font-size:.8rem;font-weight:600;padding:7px 16px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:640px){.hero-l h1{font-size:2rem}.section{padding:60px 0}.container{padding:0 20px}}


/* ===== Elementor/Astra Overrides — Marken-Design erzwingen ===== */
html body{background:var(--bg)!important;color:var(--ink)!important;font-family:var(--sans)!important}
.elementor-canvas .site-content,.elementor-canvas .ast-container{max-width:none;padding:0}
.elementor-widget-heading .elementor-heading-title{color:inherit!important;font-family:var(--disp)!important;font-weight:800!important;letter-spacing:-.015em!important;line-height:1.05!important}
.elementor-widget-text-editor{color:var(--muted)!important;font-family:var(--sans)!important}
.elementor-widget-text-editor .lead{color:var(--muted)!important}
.elementor-button{border-radius:9px!important;font-family:var(--sans)!important;font-weight:700!important;text-shadow:none!important;transition:transform .14s,background .14s}
.elementor-button.btn--gold,.elementor-button.btn--gold:visited{background:var(--gold)!important;color:#161007!important;fill:#161007!important}
.elementor-button.btn--gold:hover{background:var(--gold-lt)!important;color:#161007!important;transform:translateY(-2px)}
.elementor-button.btn--ghost{background:transparent!important;border:1.6px solid #3a3a42!important;color:var(--ink)!important}
.elementor-button.btn--ghost:hover{border-color:var(--gold)!important;color:var(--gold)!important}
.elementor-element.cta-band,.elementor-section.cta-band{background:linear-gradient(135deg,#1a140a,#0b0b0c 62%)!important}
.elementor-element.section--tint{background:var(--bg2)!important}

/* ===== ZW-ELEMENTOR-LAYER START ===== */
/* Bildet die Zoom-Prototyp-Komponenten auf Elementors Container/Widget-DOM ab.
   Container tragen die Klasse direkt (.e-con.KLASSE / .KLASSE); Widgets: .KLASSE .elementor-... */

/* --- Layout-Wrapper --- */
.zw-sec{padding-block:112px;align-items:center}
.e-con.zw-sec>.zw-wrap,.e-con.zw-sec>.zw-hero-wrap{width:100%;max-width:1280px;margin-inline:auto}
.zw-sec.zw-hero{padding:0}
.zw-sec.refs{padding-block:38px}
.zw-wrap{max-width:1280px;width:100%;margin-inline:auto;padding-inline:26px;gap:30px}
.cta-band .zw-wrap{max-width:760px;text-align:center;align-items:center}
.e-con.section--tint{background:var(--bg2)!important;border-block:1px solid var(--line)}
.e-con.refs{background:var(--bg2)!important;border-block:1px solid var(--line)}
.e-con.cta-band{background:linear-gradient(135deg,#1a140a,#0b0b0c 62%)!important;border-top:1px solid var(--gold-dk)}
@media(max-width:640px){.zw-sec{padding-block:60px}.zw-wrap{padding-inline:20px}}

/* --- Eyebrow / Headings / Serif --- */
.eyebrow .elementor-heading-title{font-family:var(--sans)!important;font-size:.74rem!important;font-weight:700!important;letter-spacing:.2em!important;text-transform:uppercase;color:var(--gold)!important;line-height:1.4!important}
.zw-hero-h1 .elementor-heading-title{font-size:clamp(1.8rem,2.2vw,2.4rem)!important;line-height:1.07!important;max-width:15ch}
.sec-head{max-width:940px}
.sec-head .elementor-widget{margin-bottom:12px}
.center{text-align:center;max-width:680px;margin-inline:auto!important;align-items:center}

/* --- Text-Widgets --- */
.hero-sub .elementor-widget-container{font-size:1.12rem;color:var(--muted)!important;max-width:42ch}
.hero-sub b{color:var(--ink)!important;font-weight:600}
.hero-serif .elementor-widget-container{font-family:var(--serif)!important;font-style:italic;font-size:1.16rem;color:var(--gold-lt)!important}
.hero-fine .elementor-widget-container{font-size:.85rem;color:var(--dim)!important;line-height:1.8}
.lead .elementor-widget-container{font-size:1.08rem;color:var(--muted)!important;max-width:66ch}

/* --- Buttons --- */
.btn--gold .elementor-button{background:var(--gold)!important;color:#161007!important;fill:#161007!important;border-radius:9px!important;padding:15px 26px!important;font-weight:700!important;border:1.6px solid transparent!important}
.btn--gold .elementor-button:hover{background:var(--gold-lt)!important;color:#161007!important;transform:translateY(-2px)}
.btn--ghost .elementor-button{background:transparent!important;border:1.6px solid #3a3a42!important;color:var(--ink)!important;border-radius:9px!important;padding:15px 26px!important;font-weight:700!important}
.btn--ghost .elementor-button:hover{border-color:var(--gold)!important;color:var(--gold)!important}
.btn--lg .elementor-button{padding:18px 34px!important;font-size:1.05rem!important}
.hero-cta{gap:13px;flex-wrap:wrap}

/* --- Hero split (boxed) --- */
.zw-hero-wrap{max-width:1280px;padding-inline:26px;gap:0}
.zw-hero-grid{align-items:stretch!important;min-height:540px;gap:40px}
.zw-hero-l{justify-content:center;padding-block:64px}
.zw-hero-l>.elementor-element{width:100%}
.zw-hero-r{position:relative;overflow:hidden;border-radius:16px;min-height:520px}
.zw-hero-r>.elementor-widget-image{position:absolute!important;inset:0;width:100%;height:100%}
.zw-hero-r>.elementor-widget-image>.elementor-widget-container{position:absolute;inset:0;height:100%;width:100%}
.zw-hero-img img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 15%;max-width:none!important}
.badge .elementor-widget-container>span,.badge span{position:absolute;left:22px;bottom:22px;z-index:2;background:var(--gold);color:#161007;border-radius:12px;padding:12px 16px;font-family:var(--disp);font-weight:800;font-size:.9rem;line-height:1.2;box-shadow:0 12px 30px rgba(0,0,0,.45)}
@media(max-width:900px){.zw-hero-grid{flex-direction:column!important;gap:22px}.zw-hero-l,.zw-hero-r{width:100%!important}.zw-hero-l{padding:40px 0!important}.zw-hero-r{min-height:300px}}

/* --- Cards --- */
.card{background:var(--card)!important;border:1px solid var(--line)!important;border-radius:14px!important}
.duo .k .elementor-widget-container,.k .elementor-widget-container{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)!important;font-weight:700}
.zw-duo{gap:18px;flex-wrap:wrap}

/* --- Statband --- */
.statband{text-align:center;gap:8px}
.zw-statnum .elementor-heading-title{font-size:clamp(4rem,11vw,8rem)!important;color:var(--gold)!important;line-height:.9!important;letter-spacing:-.03em!important}
.zw-statlbl .elementor-widget-container{font-size:1.05rem;color:var(--muted)!important}
.zw-statsub .elementor-widget-container{font-size:.9rem;color:var(--dim)!important;max-width:46ch;margin-inline:auto}

/* --- Referenzen --- */
.refs-lbl .elementor-widget-container{text-align:center;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)!important}
.refs-row{gap:12px 30px;flex-wrap:wrap;justify-content:center}
.zw-ref .elementor-widget-container>span,.zw-ref span{font-family:var(--disp);font-weight:700;font-size:1.02rem;color:var(--muted)!important;opacity:.85}
.refs-note .elementor-widget-container{text-align:center;font-size:.74rem;color:var(--dim)!important}

/* --- Feature rows --- */
.zw-feat{gap:44px;align-items:center;flex-wrap:wrap}
.feat-img{min-height:340px;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:linear-gradient(160deg,#232019,#151310)}
.feat-img .elementor-widget-image,.feat-img .elementor-widget-image>.elementor-widget-container,.zw-feat-img img{height:100%;width:100%}
.zw-feat-img img{object-fit:cover;min-height:340px}
.mini-stats{gap:28px;flex-direction:row!important}
.zw-ms-num .elementor-heading-title{font-size:1.9rem!important;color:var(--gold)!important;line-height:1!important}
.zw-ms-lbl .elementor-widget-container{font-size:.8rem;color:var(--dim)!important}
@media(max-width:900px){.zw-feat{gap:26px}.feat-img{order:-1}}

/* --- Massarbeit-Band --- */
.massarbeit{background:linear-gradient(135deg,#1c1509,#141319)!important;border:1px solid var(--gold-dk)!important;border-radius:18px!important;margin-bottom:6px}
.mb-h .elementor-heading-title{font-size:clamp(1.5rem,2.6vw,2.05rem)!important;line-height:1.1!important}
.mech{gap:18px;flex-wrap:wrap;counter-reset:mm}
.mech-m{counter-increment:mm;position:relative;flex:1 1 40%;min-width:220px}
.mech-m .elementor-widget-container{padding-left:38px;font-size:.9rem;color:var(--muted)!important;line-height:1.45}
.mech-m .elementor-widget-container::before{content:counter(mm);position:absolute;left:0;top:-2px;width:27px;height:27px;border-radius:50%;background:rgba(237,185,62,.15);color:var(--gold);font-family:var(--disp);font-weight:800;font-size:.85rem;display:grid;place-items:center}

/* --- Mitarbeiter-Karten --- */
.zw-grid-3{gap:18px;flex-wrap:wrap}
.zw-grid-2{gap:44px;flex-wrap:wrap}
.card.ma{transition:transform .14s,border-color .14s;cursor:pointer}
.card.ma:hover{transform:translateY(-3px);border-color:var(--gold-dk)!important}
.card.ma a,a.card.ma,.card.ma .elementor-widget-container a{text-decoration:none}
.card.ma:hover .lnk span,.card.ma:hover .lnk .elementor-widget-container>span,.card.ma:hover .lnk a{color:var(--gold)!important}
.ma-ic .elementor-widget-container{width:44px;height:44px;border-radius:11px;background:rgba(237,185,62,.12)}
.ma .watch .elementor-widget-container,.watch .elementor-widget-container{margin-top:6px;padding-top:12px;border-top:1px dashed var(--line);font-size:.85rem;color:var(--gold-lt)!important;font-weight:600}
.lnk .elementor-widget-container>span,.lnk span,.lnk a{font-size:.83rem;font-weight:700;color:var(--dim)!important;text-decoration:none}
.card.ma:hover .lnk span,.card.ma:hover .lnk a{color:var(--gold)!important}
.anchor-line .elementor-widget-container{text-align:center;max-width:62ch;margin-inline:auto;font-family:var(--serif)!important;font-style:italic;color:var(--gold-lt)!important;font-size:1.12rem}

/* --- Betreuungs-Band --- */
.betreuung-band{gap:22px;background:linear-gradient(135deg,#1a140a,#16161a)!important;border:1px solid var(--gold-dk)!important;border-radius:16px!important;align-items:flex-start!important}
.bb-ic .elementor-widget-container{width:52px;height:52px;border-radius:13px;background:rgba(237,185,62,.18)}
.betreuung-band .watch .elementor-widget-container{border-top-color:var(--gold-dk)}

/* --- Weitere / Chips --- */
.mehr{text-align:center;gap:16px;margin-top:20px}
.mehr-lbl .elementor-widget-container{font-size:.9rem;color:var(--dim)!important}
.chips{gap:10px;flex-wrap:wrap;justify-content:center}
.chip .elementor-widget-container>a,.chip .elementor-widget-container>span,.chip a,.chip span{display:inline-block;font-size:.9rem;font-weight:600;color:var(--muted)!important;border:1px solid var(--line);border-radius:99px;padding:9px 16px;background:var(--card);transition:border-color .14s,color .14s}
.chip .elementor-widget-container>a:hover{border-color:var(--gold);color:var(--gold)!important}
.chip--more span{border-style:dashed!important;color:var(--dim)!important}
.mehr-inv .elementor-widget-container{font-family:var(--serif)!important;font-style:italic;color:var(--ink)!important;font-size:1.14rem;max-width:60ch;margin-inline:auto}
.ma-cta{text-align:center;align-items:center;margin-top:10px}

/* --- Steps / Checklist --- */
.steps{counter-reset:st;gap:22px}
.step{counter-increment:st;position:relative;padding-left:64px!important}
.step::before{content:counter(st);position:absolute;left:0;top:0;width:44px;height:44px;border-radius:50%;background:var(--card);border:1.5px solid var(--gold-dk);color:var(--gold);font-family:var(--disp);font-weight:800;font-size:1.1rem;display:grid;place-items:center}
.zw-checklist .elementor-widget-container ul{list-style:none;display:flex;flex-direction:column;gap:12px}
.zw-checklist li{position:relative;padding-left:30px;color:var(--muted);font-size:.97rem}
.zw-checklist li::before{content:'✓';position:absolute;left:0;top:0;color:var(--gold);font-weight:800}

/* --- Testimonial --- */
.testi{text-align:center;max-width:800px;margin-inline:auto;gap:16px}
.stars .elementor-widget-container{color:var(--gold);font-size:1.3rem;letter-spacing:3px}
.testi-q .elementor-heading-title{font-family:var(--serif)!important;font-style:italic;font-weight:400!important;font-size:clamp(1.3rem,2.6vw,1.9rem)!important;line-height:1.4!important;color:var(--ink)!important}
.by .elementor-widget-container{color:var(--muted)!important;font-size:.92rem}

/* --- Proof / Für wen --- */
.pf{border-left:2px solid var(--gold);padding-left:20px!important}
.pf-who .elementor-heading-title{font-size:1rem!important}
.pf .big,.big{color:var(--gold)!important;font-weight:700}
.wen-h.wen-core .elementor-heading-title{color:var(--gold)!important}
.wen-h.wen-more .elementor-heading-title{color:#7fb6c4!important}
.wen-h.wen-no .elementor-heading-title{color:#c9807a!important}
.wen-h .elementor-heading-title{font-family:var(--sans)!important;font-weight:700!important;font-size:.8rem!important;letter-spacing:.13em!important;text-transform:uppercase;line-height:1.3!important}
.wen b{color:var(--ink)!important}

/* --- FAQ Akkordeon (details/summary, kein Plugin) --- */
.faq{max-width:920px;margin-inline:auto;gap:12px}
.faq-item{background:transparent!important;padding:0!important;border-radius:0!important;border:0!important}
.zw-faq{background:var(--gold);border-radius:12px;overflow:hidden}
.zw-faq summary{cursor:pointer;list-style:none;padding:18px 24px;font-family:var(--disp);font-weight:700;font-size:1.06rem;color:#161007!important;display:flex;justify-content:space-between;align-items:center;gap:14px}
.zw-faq summary::-webkit-details-marker{display:none}
.zw-faq summary::after{content:'+';font-size:1.6rem;line-height:1;color:#161007;flex:none}
.zw-faq[open] summary::after{content:'\2013'}
.zw-faq-a{padding:2px 24px 20px;font-family:var(--sans);font-size:.98rem;line-height:1.6;color:#3a2c0e!important}
.zw-faq-a p{color:#3a2c0e!important;margin:0 0 8px}
.zw-faq-a p:last-child{margin-bottom:0}
.zw-faq summary:focus-visible{outline:3px solid #161007;outline-offset:-4px}
/* --- Flex-Item-Breiten mit Gap-Ausgleich (verhindert Umbruch durch gap) --- */
.zw-hero-grid>.zw-hero-l{flex:0 1 calc(54% - 20px)!important;width:auto!important}
.zw-hero-grid>.zw-hero-r{flex:1 1 calc(46% - 20px)!important;width:auto!important}
.zw-grid-3>.e-con{flex:0 1 calc(33.333% - 12px)!important;width:auto!important}
.zw-grid-2>.e-con{flex:1 1 calc(50% - 22px)!important;width:auto!important}
.zw-duo>.e-con{flex:1 1 calc(50% - 9px)!important;width:auto!important}
.zw-feat>.e-con{flex:1 1 calc(50% - 22px)!important;width:auto!important}
@media(max-width:900px){.zw-grid-3>.e-con,.zw-grid-2>.e-con,.zw-duo>.e-con,.zw-feat>.e-con,.zw-hero-grid>.e-con{flex-basis:100%!important}}
/* solide Band-Hintergründe (Gradients greifen im e-con nicht zuverlässig) */
.massarbeit{background-color:#1b1407!important}
.betreuung-band{background-color:#181510!important}
.e-con.cta-band{background-color:#140f07!important}
.zw-hero-r{background-color:#211d18!important}
.feat-img{background-color:#1c1913!important}
/* --- Astra Header/Footer dunkel branden --- */
.site-header, .ast-main-header-wrap, .ast-primary-header-bar, .main-header-bar, .ast-above-header-wrap, .ast-below-header-wrap{background:#0b0b0c!important;background-color:#0b0b0c!important}
.ast-primary-header-bar{border-bottom:1px solid #292930!important;box-shadow:none!important}
.main-header-bar{border-bottom:0!important}
.site-header .menu-item > a, .ast-builder-menu a.menu-link, .main-header-menu a{color:#c9c5bd!important;font-family:'DM Sans',sans-serif!important;font-weight:500!important}
.site-header .menu-item > a:hover, .ast-builder-menu a.menu-link:hover, .main-header-menu a:hover, .current-menu-item > a, .current-menu-ancestor > a{color:#EDB93E!important}
.site-title a, .site-title, .ast-site-title-wrap a, .site-branding a{color:#f5f1e8!important;font-family:'Syne',sans-serif!important;font-weight:800!important;letter-spacing:-.02em}
.ast-builder-menu .sub-menu, .main-header-menu .sub-menu{background:#16161a!important;border-color:#292930!important;box-shadow:0 12px 30px rgba(0,0,0,.5)!important}
.ast-builder-menu .sub-menu .menu-item > a{color:#c9c5bd!important}
.ast-header-navigation-arrow, .ast-menu-toggle, .main-header-menu .menu-item .sub-menu li a{color:#c9c5bd}
/* mobile menu drawer + toggle */
.ast-mobile-header-wrap, .ast-mobile-popup-drawer .menu-item a{background:#0b0b0c!important;color:#c9c5bd!important}
[class*="ast-mobile-menu-buttons"] svg, .ast-mobile-menu-trigger-minimal{color:#EDB93E!important}
/* Footer dunkel */
.site-footer, .ast-small-footer, .footer-sml-layout, .ast-footer-copyright, [data-section="section-footer-builder"]{background:#08080a!important;color:#726d64!important}
.site-footer a{color:#a6a29a!important}
.site-footer a:hover{color:#EDB93E!important}
/* --- WPForms auf Marke (Kontakt) --- */
.wpforms-container .wpforms-field-label{color:#c9c5bd!important;font-family:'DM Sans',sans-serif!important;font-weight:600!important}
.wpforms-container input[type=text], .wpforms-container input[type=email], .wpforms-container input[type=tel], .wpforms-container textarea, .wpforms-container select{background:#0f0f11!important;border:1px solid #33333a!important;color:#f5f1e8!important;border-radius:8px!important}
.wpforms-container input::placeholder, .wpforms-container textarea::placeholder{color:#726d64!important}
.wpforms-container .wpforms-field-sublabel{color:#726d64!important}
.wpforms-container button.wpforms-submit{background:#EDB93E!important;color:#161007!important;border:0!important;border-radius:9px!important;font-weight:700!important;font-family:'DM Sans',sans-serif!important;padding:15px 30px!important;font-size:1rem!important}
.wpforms-container button.wpforms-submit:hover{background:#f5d488!important;transform:translateY(-2px)}
/* ===== FIXES 05.07. (Ingo-Feedback) ===== */
/* 1) Content full-bleed: Sektions-Hintergründe bis zum Rand, Inhalt zentriert via .zw-wrap (behebt „klebt links / boxed") */
.site-content .ast-container{max-width:100%!important;padding-left:0!important;padding-right:0!important}
.site-content .elementor,.site-content .entry-content{width:100%!important;max-width:100%!important}
.site-content{padding-top:0!important}
/* 2) FAQ-Antworten lesbar (dunkel auf Gold) — starker Selektor schlägt globalen text-editor-muted */
.faq-item .faq-a,.faq-item .faq-a .elementor-widget-container,.faq-item .faq-a .elementor-widget-container p,.faq-item .faq-a p{color:#231a05!important}
.faq-item .faq-q .elementor-heading-title{color:#161007!important}
/* 3) Astra-Default-Footer aus → eigener Footer via mu-plugin */
footer.site-footer,.ast-small-footer,.site-footer{display:none!important}
/* 4) Eigener Footer */
.zw-site-footer{background:#08080a;border-top:1px solid #292930;color:#8a8680;font-family:'DM Sans',sans-serif;font-size:.92rem}
.zw-site-footer .zwf-inner{max-width:1180px;margin:0 auto;padding:56px 26px 26px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:36px}
.zw-site-footer h4{font-family:'Syne',sans-serif;font-weight:700;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:#EDB93E;margin:0 0 14px}
.zw-site-footer .zwf-brand b{font-family:'Syne',sans-serif;font-weight:800;font-size:1.32rem;color:#f5f1e8;display:block;margin-bottom:12px;letter-spacing:-.01em}
.zw-site-footer .zwf-brand p{line-height:1.6;max-width:36ch;color:#8a8680;margin:0}
.zw-site-footer ul{list-style:none;margin:0;padding:0}
.zw-site-footer li{margin-bottom:9px}
.zw-site-footer a{color:#a6a29a;text-decoration:none}
.zw-site-footer a:hover{color:#EDB93E}
.zw-site-footer .zwf-copy{border-top:1px solid #1b1b21;padding:18px 26px 26px;max-width:1180px;margin:0 auto;font-size:.82rem;color:#726d64}
@media(max-width:860px){.zw-site-footer .zwf-inner{grid-template-columns:1fr 1fr;gap:28px}}
@media(max-width:520px){.zw-site-footer .zwf-inner{grid-template-columns:1fr}}

/* ---- Echo Knowledge Base: Artikel-Lesbarkeit auf weißem Grund ---- */
#eckb-article-content,#eckb-article-content p,#eckb-article-content li,#eckb-article-content td,#eckb-article-content span:not([class]){color:#26262a!important}
#eckb-article-content{font-family:var(--sans);font-size:1.03rem;line-height:1.72}
#eckb-article-content p{margin:0 0 1.05em;color:#26262a!important}
#eckb-article-content strong,#eckb-article-content b{color:#14161c!important;font-weight:700}
#eckb-article-content h2{font-family:var(--disp)!important;font-weight:700!important;font-size:1.55rem!important;line-height:1.22!important;color:#14161c!important;margin:1.85em 0 .5em!important;letter-spacing:-.01em}
#eckb-article-content h3{font-family:var(--disp)!important;font-weight:700!important;font-size:1.2rem!important;color:#14161c!important;margin:1.45em 0 .4em!important}
#eckb-article-content a{color:#9a6a12!important;text-decoration:underline;text-underline-offset:2px}
#eckb-article-content a:hover{color:#c88a1a!important}
#eckb-article-content ul,#eckb-article-content ol{margin:0 0 1.05em 1.2em;color:#26262a!important}
#eckb-article-content li{margin:.3em 0;color:#26262a!important}
/* TOC: klarere Abgrenzung, aktiver Eintrag gold */
.eckb-article-toc .eckb-article-toc__header{color:#14161c!important;font-family:var(--disp)!important}
.eckb-article-toc a,.eckb-article-toc li{color:#4a4a4a!important}
.eckb-article-toc a:hover,.eckb-article-toc .eckb-active-toc a{color:#9a6a12!important}
/* ---- Header-Logo (Bild statt Schriftzug) ---- */
.custom-logo,.site-header .custom-logo,.ast-site-identity img.custom-logo,.site-logo-img .custom-logo{max-height:52px!important;width:auto!important;height:auto!important}
.ast-site-title-wrap,.site-title,.site-description{display:none!important}
@media(max-width:600px){.custom-logo,.site-logo-img .custom-logo{max-height:42px!important}}
/* ---- Headings: Syne (serifenlos, klar & am besten lesbar — Ingos Wahl) ---- */
h1,h2,h3,.elementor-widget-heading .elementor-heading-title{font-weight:700!important;letter-spacing:0!important;line-height:1.14!important}
.zw-hero-h1 .elementor-heading-title,.sec-head h2{line-height:1.16!important;font-weight:700!important}
/* dekorative Riesen-Zahlen kräftig */
.zw-statnum .elementor-heading-title,.statband .num,.mini-stats .ms b{font-weight:800!important;line-height:.92!important;letter-spacing:-.02em!important}
/* ---- FAQ-Block zentrieren (Elementor drückt ihn sonst nach links) ---- */
.faq{margin-left:auto!important;margin-right:auto!important;align-self:center!important}
/* ---- Footer-Logo (Bild statt Schriftzug) ---- */
.zwf-brand .zwf-logo{max-width:210px;width:100%;height:auto;margin-bottom:14px;display:block}
/* ===== ZW-ELEMENTOR-LAYER END ===== */

