/* MG Value Experts GmbH — zentrales Stylesheet */
:root{
  --navy:#23276b;
  --navy-deep:#1a1d54;
  --ink:#13153a;
  --gold:#c9a24e;
  --gold-dark:#ad8636;
  --gold-soft:rgba(194,160,97,.14);
  --bg:#ffffff;
  --bg-alt:#f4f5fa;
  --line:#e4e6f0;
  --text:#1d1f36;
  --muted:#535670;
  --radius:12px;
  --shadow:0 14px 44px rgba(19,21,58,.10);
  --font-head:'Plus Jakarta Sans',sans-serif;
  --font-body:'Inter',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{overflow-x:clip;overscroll-behavior-x:none;max-width:100%}
body{font-family:var(--font-body);color:var(--text);background:var(--bg);line-height:1.68;font-size:16.5px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4{font-family:var(--font-head);line-height:1.16;color:var(--ink);font-weight:800;letter-spacing:-.018em}
h3,h4{letter-spacing:-.01em}
p{letter-spacing:.002em}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy);text-decoration:none}
.container{max-width:1180px;margin:0 auto;padding:0 24px}

/* ---------- Navigation ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(16,18,50,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.09);transition:box-shadow .25s}
.nav.scrolled{box-shadow:0 8px 28px rgba(0,0,0,.28)}
.nav-inner{max-width:1340px;margin:0 auto;padding:0 26px;height:106px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.nav-logo{display:flex;align-items:center;min-width:0;flex:0 0 auto}
.nav-logo-img{height:92px;width:auto;display:block}
.nav-links{display:flex;align-items:center;gap:17px;list-style:none}
.nav-links>li{position:relative}
.nav-links a{font-size:14.6px;font-weight:600;color:rgba(255,255,255,.82);transition:color .2s;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:#fff}
.nav-links a.active{border-bottom:2px solid var(--gold);padding-bottom:3px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--font-head);font-weight:700;font-size:15.5px;padding:14px 26px;border-radius:6px;cursor:pointer;border:0;transition:background .2s,transform .15s,box-shadow .2s;text-align:center}
.btn-gold{background:var(--gold);color:#fff;position:relative;overflow:hidden}
.btn-gold::after{content:"";position:absolute;top:0;left:-85%;width:55%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-20deg);transition:left .55s ease}
.btn-gold:hover::after{left:135%}
.btn-gold:hover{background:var(--gold-dark);transform:translateY(-1px)}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--navy-deep);transform:translateY(-1px)}
.btn-outline{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55)}
.btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn-outline-navy{background:transparent;color:var(--navy);border:1.5px solid var(--navy)}
.btn-outline-navy:hover{background:var(--navy);color:#fff}
.nav .btn{padding:11px 20px;font-size:14.5px}
.nav-burger{display:none;background:none;border:0;cursor:pointer;padding:8px}
.nav-burger svg{width:26px;height:26px;stroke:#fff}
.nav-burger .ic-x{display:none}
.nav.menu-open .nav-burger .ic-bars{display:none}
.nav.menu-open .nav-burger .ic-x{display:block}
.mobile-menu{display:none;position:fixed;top:82px;left:0;right:0;bottom:0;background:#fff;z-index:99;padding:28px 24px;overflow-y:auto}
.mobile-menu.open{display:block}
.mobile-menu a{display:block;padding:15px 4px;font-family:var(--font-head);font-weight:700;font-size:19px;color:var(--ink);border-bottom:1px solid var(--line)}
.mobile-menu .btn{width:100%;margin-top:22px}

/* ---------- Hero ---------- */
.hero{background:var(--ink);position:relative;overflow:hidden;padding:172px 0 118px;color:#fff}
.hero-bg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center 26%;filter:brightness(.5)}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(94deg,rgba(13,15,44,.94) 0%,rgba(13,15,44,.82) 36%,rgba(16,19,58,.45) 62%,rgba(15,17,48,.18) 90%);pointer-events:none}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:140px;z-index:1;background:linear-gradient(to top,rgba(10,12,36,.55),transparent);pointer-events:none}
.hero .container{position:relative;z-index:2}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;position:relative}
.hero-inner{position:relative;max-width:660px}
.hero h1{color:#fff;font-size:clamp(1.9rem,3.35vw,3.05rem);letter-spacing:-.01em}
.hero h1 .hl{display:block;white-space:nowrap}
.hero h1 .gold{color:var(--gold)}
.hero-sub{margin:22px 0 32px;font-size:18px;color:rgba(255,255,255,.82);max-width:540px}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap}
.hero-points{display:flex;gap:22px;margin-top:34px;flex-wrap:wrap}
.hero-point{display:flex;align-items:center;gap:9px;font-size:14.5px;color:rgba(255,255,255,.85);font-weight:500}
.hero-point svg{width:17px;height:17px;stroke:var(--gold);flex:0 0 auto}
.hero-media{position:relative}
.hero-media img{border-radius:var(--radius);box-shadow:0 24px 70px rgba(0,0,0,.42);position:relative;z-index:1}
.hero-media::after{content:"";position:absolute;inset:22px -22px -22px 22px;border:2px solid rgba(194,160,97,.5);border-radius:var(--radius);z-index:0}
.img-caption{position:absolute;left:16px;bottom:16px;z-index:2;background:rgba(19,21,58,.86);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-family:var(--font-head);font-weight:700;font-size:15px;line-height:1.25;padding:11px 18px;border-radius:9px;border:1px solid rgba(194,160,97,.35)}
.img-caption small{display:block;font-size:11px;color:var(--gold);font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin-top:2px}
@keyframes heroIn{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.hero-inner h1{animation:heroIn .7s ease .05s backwards}
.hero-inner .hero-sub{animation:heroIn .7s ease .22s backwards}
.hero-inner .hero-ctas{animation:heroIn .7s ease .38s backwards}
.hero-inner .hero-points{animation:heroIn .7s ease .54s backwards}
.hero .hero-media{animation:heroIn .85s ease .45s backwards}

/* ---------- Trust Strip ---------- */
.trust-strip{max-width:1180px;margin:-52px auto 0;padding:0 24px;position:relative;z-index:5}
.trust-grid{background:#fff;border-radius:var(--radius);box-shadow:0 8px 40px rgba(0,0,0,.13);display:grid;grid-template-columns:repeat(4,1fr)}
.trust-cell{padding:32px 16px;text-align:center;border-right:1px solid var(--line)}
.trust-cell:last-child{border-right:0}
.trust-num{font-family:var(--font-head);font-weight:800;font-size:clamp(2.1rem,3.75vw,3rem);color:var(--navy);line-height:1.05}
.trust-num em{font-style:normal;color:var(--gold)}
.trust-label{font-size:14px;color:var(--muted);margin-top:6px;font-weight:500}

/* ---------- Sections ---------- */
.section{padding:96px 0}
.section-alt{background:var(--bg-alt)}
.section-dark{background:linear-gradient(157deg,#0a0c26 0%,#111347 46%,#1e2258 100%);color:#fff;position:relative;overflow:hidden}
.section-dark::before{content:"";position:absolute;inset:0;background:radial-gradient(760px 420px at 88% 4%,rgba(201,162,78,.16),transparent 60%);pointer-events:none}
.section-dark .container{position:relative}
.section-dark h2,.section-dark h3{color:#fff}
.section-dark .section-head-center .lead{color:rgba(255,255,255,.78)}
.section-dark .icon-card,.section-dark .path-card,.section-dark .fee-card{color:var(--text)}
.section-dark .icon-card h3,.section-dark .path-card-body h3,.section-dark .fee-card h3{color:var(--ink)}
.section-dark .icon-card p,.section-dark .path-card-body p,.section-dark .fee-card p{color:var(--muted)}
.section-dark a.quick-card{color:var(--text)}
.section-dark .feature-body p{color:rgba(255,255,255,.8)}
.section-dark .feature-list li{color:rgba(255,255,255,.92)}
.section-dark .feature-row .link-more{color:var(--gold)}
.section-dark .feature-body .btn-navy{background:var(--gold);color:#fff}
.section-dark .feature-body .btn-navy:hover{background:var(--gold-dark)}
.section-head-split{display:grid;grid-template-columns:50% 50%;gap:40px;align-items:start;margin-bottom:56px}
.section-head-split h2{font-size:clamp(1.7rem,2.6vw,2.35rem)}
.section-head-split .lead{color:var(--muted);padding-top:6px;font-size:17px}
.section-dark .section-head-split .lead{color:rgba(255,255,255,.78)}
.section-head-center{text-align:center;max-width:720px;margin:0 auto 56px}
.section-head-center h2{font-size:clamp(1.7rem,2.6vw,2.35rem)}
.section-head-center .lead{color:var(--muted);margin-top:14px;font-size:17px}

/* Logo-Strip */
.logo-strip{padding:54px 0 58px;border-bottom:1px solid var(--line)}
.logo-strip.strip-dark{background:linear-gradient(150deg,var(--ink),var(--navy) 92%);border-bottom:0;position:relative;overflow:hidden}
.logo-strip.strip-dark::before{content:"";position:absolute;inset:0;background:radial-gradient(600px 300px at 12% 0%,rgba(194,160,97,.12),transparent 60%);pointer-events:none}
.logo-strip.strip-dark .logo-strip-label{color:var(--gold);position:relative}
.logo-strip.strip-dark .logo-cell{border:0;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.logo-strip-label{text-align:center;font-size:13.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:30px}
.logo-strip-head{text-align:center;max-width:660px;margin:0 auto 34px}
.logo-strip-head h2{font-size:clamp(1.5rem,2.2vw,2rem);margin-bottom:12px}
.logo-strip-head p{color:var(--muted);font-size:16px}
.logo-wall{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;max-width:1180px;margin:0 auto;--cols:6}
.logo-wall .logo-cell{flex:0 0 calc((100% - (var(--cols) - 1) * 14px) / var(--cols));height:104px;padding:14px 16px}
.logo-wall .logo-cell img{max-height:56px}
.logo-wall .logo-cell img.logo-tall{max-height:74px}
.logo-row{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;max-width:980px;margin:0 auto}
@keyframes logoScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.logo-cell{background:#fff;border:1px solid var(--line);border-radius:10px;height:112px;display:flex;align-items:center;justify-content:center;padding:16px 26px;transition:box-shadow .25s,transform .25s}
.logo-cell:hover{box-shadow:0 12px 34px rgba(19,21,58,.10);transform:translateY(-2px)}
.logo-cell img{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain}

/* Zwei-Wege-Karten */
.path-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.path-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.path-card:hover{transform:translateY(-5px);box-shadow:0 22px 60px rgba(19,21,58,.16)}
.path-card-img{height:250px;overflow:hidden;position:relative}
.path-card-img img{width:100%;height:100%;object-fit:cover}
.path-card-img .path-tag{position:absolute;left:20px;bottom:20px;background:rgba(19,21,58,.82);color:#fff;font-family:var(--font-head);font-weight:700;font-size:13.5px;padding:8px 16px;border-radius:6px;backdrop-filter:blur(6px)}
.path-card-body{padding:34px 34px 38px;display:flex;flex-direction:column;flex:1}
.path-card-body h3{font-size:24px;margin-bottom:12px}
.path-card-body p{color:var(--muted);margin-bottom:18px}
.path-list{list-style:none;margin:0 0 26px}
.path-list li{display:flex;gap:11px;align-items:flex-start;padding:7px 0;font-size:15.5px}
.path-list svg{width:19px;height:19px;stroke:var(--gold);flex:0 0 auto;margin-top:3px}
.path-card-body .btn{margin-top:auto;align-self:flex-start}

/* Feature Rows (Leistungen) */
.feature-row{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;min-height:340px;margin-bottom:76px}
.feature-row:last-child{margin-bottom:0}
.feature-row.flipped{direction:rtl}
.feature-row.flipped>*{direction:ltr}
.feature-img{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.feature-img img{width:100%;height:360px;object-fit:cover}
.feature-body h3{font-size:27px;margin-bottom:14px}
.feature-body p{color:var(--muted);margin-bottom:18px}
.feature-list{list-style:none;margin-bottom:24px}
.feature-list li{display:flex;gap:11px;align-items:flex-start;padding:6px 0;font-size:15.5px}
.feature-list svg{width:19px;height:19px;stroke:var(--gold);flex:0 0 auto;margin-top:3px}
.link-more{font-weight:700;font-family:var(--font-head);color:var(--navy);display:inline-flex;align-items:center;gap:7px}
.link-more svg{width:17px;height:17px;stroke:currentColor;transition:transform .2s}
.link-more:hover svg{transform:translateX(4px)}

/* Icon-Karten mit Bildhintergrund-Sektion */
.icon-card{background:#fff;border-radius:var(--radius);padding:34px 30px;box-shadow:var(--shadow)}
.icon-card .ic{width:52px;height:52px;border-radius:12px;background:var(--gold-soft);display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.icon-card .ic svg{width:26px;height:26px;stroke:var(--gold-dark)}
.icon-card h3{font-size:19px;margin-bottom:10px}
.icon-card p{color:var(--muted);font-size:15px}
.card-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
a.quick-card{display:flex;flex-direction:column;color:var(--text);transition:transform .25s,box-shadow .25s}
a.quick-card:hover{transform:translateY(-5px);box-shadow:0 22px 60px rgba(19,21,58,.16)}
a.quick-card .link-more{margin-top:auto;padding-top:14px;font-size:14.5px}
.card-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.card-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:26px}

/* Prozess-Stepper */
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:step}
.step{background:#fff;border-radius:var(--radius);padding:32px 26px;box-shadow:var(--shadow);position:relative}
.step-num{width:44px;height:44px;border-radius:50%;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-weight:800;font-size:18px;margin-bottom:18px}
.step h3{font-size:18px;margin-bottom:9px}
.step p{color:var(--muted);font-size:14.5px}

/* Dark CTA */
.cta-section{position:relative;overflow:hidden}
.cta-section .cta-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(.32)}
.cta-section .cta-overlay{position:absolute;inset:0;background:linear-gradient(120deg,rgba(19,21,58,.88),rgba(35,39,107,.62))}
.cta-inner{position:relative;text-align:center;padding:104px 24px;max-width:780px;margin:0 auto;color:#fff}
.cta-inner h2{color:#fff;font-size:clamp(1.7rem,2.8vw,2.4rem);margin-bottom:16px}
.cta-inner p{color:rgba(255,255,255,.84);font-size:17.5px;margin-bottom:32px}
.cta-inner .hero-ctas{justify-content:center}

/* Team */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.team-grid-4{grid-template-columns:repeat(4,1fr);gap:24px}
.team-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.team-card-img{aspect-ratio:4/4.6;overflow:hidden;background:var(--bg-alt)}
.team-card-img img{width:100%;height:100%;object-fit:cover;object-position:top center}
.team-card-body{padding:26px 26px 30px}
.team-card-body h3{font-size:20px}
.team-role{color:var(--gold-dark);font-weight:700;font-size:13.5px;letter-spacing:.06em;text-transform:uppercase;margin:6px 0 12px;font-family:var(--font-head)}
.team-card-body p{color:var(--muted);font-size:14.8px}
.team-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--navy),var(--ink));color:var(--gold);font-family:var(--font-head);font-weight:800;font-size:64px;letter-spacing:.04em}
.team-initials svg{width:112px;height:112px;stroke:var(--gold);opacity:.85}

/* Hero-Karten (statt Foto) */
.hero-cards{display:flex;flex-direction:column;gap:16px;position:relative}
.hc{border-radius:var(--radius);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.hc-main{background:rgba(255,255,255,.97);box-shadow:0 24px 70px rgba(0,0,0,.4);padding:26px 28px;color:var(--text);animation:heroIn .85s ease .45s backwards}
.hc-head{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:6px}
.hc-head span{font-family:var(--font-head);font-weight:700;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--gold-dark)}
.hc-head b{font-family:var(--font-head);font-size:14px;color:var(--muted);font-weight:600}
.hc-row{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.hc-row:last-child{border-bottom:0}
.hc-row span{color:var(--muted)}
.hc-row b{color:var(--ink);text-align:right}
.hc-ok{color:#2e7d4f!important;display:inline-flex;align-items:center;gap:6px}
.hc-ok svg{width:15px;height:15px;stroke:#2e7d4f}
.hc-badges{display:flex;flex-wrap:wrap;gap:9px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:16px 18px;animation:heroIn .85s ease .6s backwards}
.hc-badges span{background:rgba(255,255,255,.1);border:1px solid rgba(194,160,97,.45);border-radius:99px;padding:7px 14px;font-size:12.5px;font-weight:600;color:rgba(255,255,255,.92);font-family:var(--font-head)}

/* Digital-Sektion in heller Variante */
.digital-light .chip{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.digital-light .chip:hover{background:#fff;border-color:var(--gold)}
.digital-light .chip b{color:var(--ink)}
.digital-light .chip span{color:var(--muted)}
.digital-light .chip-ic{background:var(--gold-soft)}
.digital-light .chip-ic svg{stroke:var(--gold-dark)}

/* Onepage-Style Hero */
.hero.hero-op{background:var(--ink);padding:128px 0 58px}
.hero.hero-op::before{background:linear-gradient(94deg,rgba(13,15,44,.95) 0%,rgba(13,15,44,.84) 38%,rgba(16,19,58,.5) 66%,rgba(15,17,48,.28) 95%)}
.hero.hero-op::after{display:none}
.hero-op .hero-grid{align-items:center;gap:52px}
.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(194,160,97,.5);border-radius:99px;padding:8px 18px;background:rgba(13,15,44,.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font-family:var(--font-head);font-weight:700;font-size:13.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:30px;animation:heroIn .7s ease 0s backwards}
.hero-eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--gold);flex:0 0 auto}
.hero-op h1{font-size:clamp(1.8rem,2.75vw,2.7rem)}
.hero-op .hero-sub{margin:18px 0 24px;font-size:17px}
.hero-op .hero-eyebrow{margin-bottom:22px}
.btn-pill{border-radius:99px!important;padding:16px 30px}
.hero-checks{display:flex;flex-wrap:wrap;gap:11px;margin-top:30px;animation:heroIn .7s ease .54s backwards}
.hero-checks span{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-head);font-size:15.5px;font-weight:700;color:#fff;letter-spacing:-.005em;
  background:rgba(255,255,255,.07);border:1px solid rgba(194,160,97,.42);border-radius:999px;padding:11px 20px 11px 14px;backdrop-filter:blur(4px)}
.hero-checks span.is-lead{background:linear-gradient(120deg,rgba(194,160,97,.26),rgba(194,160,97,.12));border-color:rgba(194,160,97,.75)}
.hero-checks svg{width:19px;height:19px;stroke:var(--gold);stroke-width:2.4;flex:0 0 auto}

/* Kartei-Stapel rechts: Akten-Register + geöffnetes Gutachten */
.doc-stack{position:relative;display:flex;flex-direction:column;gap:0;width:100%;max-width:452px;margin-left:auto;transform:perspective(1600px) rotateY(-11deg) rotateX(3deg);transform-style:preserve-3d;transform-origin:right center;will-change:transform}
@keyframes stackIn{from{opacity:0}to{opacity:1}}
.doc-mini{display:block;position:relative;background:linear-gradient(180deg,#ffffff 0%,#f2f3f8 100%);border:1px solid #e2e4ee;border-bottom:0;border-radius:7px 7px 0 0;box-shadow:0 -6px 18px rgba(0,0,0,.14);margin-bottom:-3px;transition:transform .42s cubic-bezier(.22,.9,.3,1)}
.dm-top{display:flex;align-items:center;gap:11px;padding:11px 16px 13px;cursor:default}
.dm-body{position:absolute;top:calc(100% - 1px);left:-1px;right:-1px;background:#fff;border:1px solid #e2e4ee;border-top:0;border-radius:0 0 11px 11px;opacity:1;pointer-events:none;padding:2px 16px 12px;box-shadow:none;transition:box-shadow .42s cubic-bezier(.22,.9,.3,1)}
.dm-body::before{content:"";display:block;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--gold),rgba(201,162,78,.12));margin:2px 0 4px}
.dm-body .doc-row{padding:5px 0;font-size:12.6px}
.dm-body .doc-row b{min-width:0;overflow-wrap:anywhere}
.dm-body .doc-row i{min-width:14px}
.dm-body .dm-link{display:inline-flex;align-items:center;gap:6px;padding:6px 0 10px;font-family:var(--font-head);font-weight:700;font-size:12.8px;color:var(--navy)}
.dm-body .dm-link svg{width:14px;height:14px;stroke:currentColor;transition:transform .2s}
.dm-body .dm-link:hover svg{transform:translateX(3px)}
.doc-stack{pointer-events:none}
.doc-mini:hover .dm-chev{transform:rotate(180deg)}
.dm-chev{transition:transform .3s}
.doc-mini:nth-child(1){width:100%;z-index:1}
.doc-mini:nth-child(2){width:100%;z-index:2}
.doc-mini:nth-child(3){width:100%;z-index:3}
.doc-mini:nth-child(4){width:100%;z-index:4}
.doc-mini:nth-child(5){width:100%;z-index:5}
.doc-mini .dm-ic{width:30px;height:30px;flex:0 0 auto;border-radius:8px;background:var(--gold-soft);display:flex;align-items:center;justify-content:center}
.doc-mini .dm-ic svg{width:16px;height:16px;stroke:var(--gold-dark)}
.doc-mini b{font-family:var(--font-head);font-size:13.8px;color:var(--ink);font-weight:700;flex:1;min-width:0;white-space:nowrap}
.doc-mini small{font-family:var(--font-head);font-size:11.5px;font-weight:700;color:var(--gold-dark);white-space:nowrap}
.doc-mini .dm-chev{width:15px;height:15px;stroke:#a7aabf;flex:0 0 auto}
.doc-main{background:#fff;border-radius:0 0 12px 12px;box-shadow:0 34px 70px rgba(0,0,0,.5);padding:18px 22px 16px;border:1.5px solid rgba(201,162,78,.6);position:relative;z-index:6;transform:translateZ(38px)}
.doc-head svg{width:56px;height:17px;margin-bottom:6px}
.doc-head b{display:block;font-family:var(--font-head);font-size:15.5px;color:var(--ink)}
.doc-head span{font-size:12px;color:var(--muted)}
.doc-rule{height:2px;background:linear-gradient(90deg,var(--gold),rgba(194,160,97,.15));border-radius:2px;margin:11px 0 12px}
.doc-title{display:flex;gap:11px;align-items:flex-start;margin-bottom:8px}
.doc-title .dm-ic{width:34px;height:34px;flex:0 0 auto;border-radius:9px;background:var(--gold-soft);display:flex;align-items:center;justify-content:center}
.doc-title .dm-ic svg{width:18px;height:18px;stroke:var(--gold-dark)}
.doc-title b{display:block;font-family:var(--font-head);font-size:17.5px;color:var(--ink);line-height:1.2}
.doc-title span{font-size:12.5px;color:var(--muted)}
.doc-row{display:flex;align-items:baseline;gap:10px;padding:6px 0;font-size:13.2px}
.doc-row span{color:var(--muted);flex:0 0 auto}
.doc-row i{flex:1;border-bottom:1.5px dotted #cfd2e2;transform:translateY(-3px)}
.doc-row b{color:var(--ink);font-weight:700;text-align:right}
.doc-chart{position:relative;border:1px solid var(--line);border-radius:10px;padding:12px 14px 11px;margin-top:8px}
.doc-chart small{display:block;font-family:var(--font-head);font-weight:700;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:9px}
.doc-bars{display:flex;align-items:flex-end;gap:8px;height:44px}
.doc-bars i{flex:1;background:linear-gradient(180deg,#2c3178,#191c54);border-radius:4px;transform-origin:bottom;animation:barGrow 1s cubic-bezier(.2,.7,.3,1) backwards}
.doc-bars i:nth-child(1){height:38%;animation-delay:1s}
.doc-bars i:nth-child(2){height:55%;animation-delay:1.12s}
.doc-bars i:nth-child(3){height:47%;animation-delay:1.24s}
.doc-bars i:nth-child(4){height:88%;animation-delay:1.36s}
.doc-bars i:nth-child(5){height:66%;animation-delay:1.48s}
@keyframes barGrow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.doc-stamp{position:absolute;right:10px;bottom:8px;width:74px;height:74px;border:2px dashed rgba(169,136,73,.75);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;transform:rotate(-12deg);background:rgba(250,245,234,.94)}
.doc-stamp svg{width:12px;height:12px;stroke:var(--gold-dark)}
.doc-stamp b{font-family:var(--font-head);font-size:10.5px;color:var(--gold-dark)}
.doc-stamp small{font-size:7px;letter-spacing:.06em;color:var(--gold-dark);font-weight:700}

/* Hero-Statistiken (echte Referenzzahlen) */
.hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;position:relative}
.hs-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);padding:24px 22px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:transform .3s,border-color .3s,background .3s}
.hs-card:hover{transform:translateY(-4px);border-color:rgba(194,160,97,.6);background:rgba(255,255,255,.1)}
.hs-card b{display:block;font-family:var(--font-head);font-weight:800;font-size:clamp(1.9rem,2.6vw,2.5rem);color:var(--gold);line-height:1.05;margin-bottom:7px}
.hs-card span{font-size:13.8px;color:rgba(255,255,255,.82);line-height:1.45;display:block}
.hs-badges{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:9px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.13);border-radius:var(--radius);padding:15px 17px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.hs-badges span{background:rgba(194,160,97,.14);border:1px solid rgba(194,160,97,.45);border-radius:99px;padding:6px 14px;font-size:12.5px;font-weight:700;color:#e9d9b8;font-family:var(--font-head)}
.hero-stats .hs-card:nth-child(1){animation:heroIn .7s ease .4s backwards}
.hero-stats .hs-card:nth-child(2){animation:heroIn .7s ease .52s backwards}
.hero-stats .hs-card:nth-child(3){animation:heroIn .7s ease .64s backwards}
.hero-stats .hs-card:nth-child(4){animation:heroIn .7s ease .76s backwards}
.hero-stats .hs-badges{animation:heroIn .7s ease .9s backwards}

/* Objektarten-Tags (dunkle Sektion) — symmetrisches Grid mit Hover */
.objekt-tags{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.objekt-tags span{background:rgba(255,255,255,.08);border:1px solid rgba(194,160,97,.4);border-radius:10px;padding:11px 10px;font-size:13.8px;font-weight:600;color:rgba(255,255,255,.92);text-align:center;transition:background .25s,transform .25s,border-color .25s,color .25s;cursor:default}
.objekt-tags span:hover{background:rgba(194,160,97,.22);border-color:var(--gold);color:#fff;transform:translateY(-3px)}

/* Netzwerk-Banner (Über uns) */
.network-banner{margin-top:34px;background:linear-gradient(140deg,var(--ink),var(--navy));border-radius:var(--radius);padding:38px 40px;color:#fff;display:grid;grid-template-columns:1fr 1.1fr;gap:30px;align-items:center;position:relative;overflow:hidden}
.network-banner::before{content:"";position:absolute;inset:0;background:radial-gradient(500px 260px at 90% 10%,rgba(194,160,97,.18),transparent 60%);pointer-events:none}
.network-banner h3{color:#fff;font-size:21px;margin-bottom:8px;position:relative}
.network-banner p{color:rgba(255,255,255,.78);font-size:15px;position:relative}
.city-tags{display:flex;flex-wrap:wrap;gap:9px;position:relative}
.city-tags span{background:rgba(255,255,255,.09);border:1px solid rgba(194,160,97,.4);border-radius:99px;padding:7px 15px;font-size:13.5px;font-weight:600;color:rgba(255,255,255,.92)}
@media (max-width:900px){.network-banner{grid-template-columns:1fr;padding:28px 22px}}

/* Accordion (FAQ / Unterlagen) */
.acc{border:1px solid var(--line);border-radius:10px;background:#fff;margin-bottom:14px;overflow:hidden}
.acc-btn{width:100%;background:none;border:0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;font-family:var(--font-head);font-weight:700;font-size:16.5px;color:var(--ink);text-align:left}
.acc-btn svg{width:20px;height:20px;stroke:var(--gold-dark);flex:0 0 auto;transition:transform .3s}
.acc.open .acc-btn svg{transform:rotate(45deg)}
.acc-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.acc.open .acc-body{grid-template-rows:1fr}
.acc-body>div{overflow:hidden}
.acc-body-inner{padding:0 24px 22px;color:var(--muted);font-size:15.5px}
.acc-body-inner ul{margin:8px 0 0 18px}
.acc-body-inner li{margin-bottom:6px}

/* Formulare */
.form-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:44px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-field{display:flex;flex-direction:column;gap:7px}
.form-field.full{grid-column:1/-1}
.form-field label{font-weight:600;font-size:14.5px;color:var(--ink)}
.form-field input,.form-field select,.form-field textarea{font-family:var(--font-body);font-size:15.5px;padding:13px 15px;border:1.5px solid var(--line);border-radius:6px;background:#fbfbfd;color:var(--text);width:100%;transition:border-color .2s}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--navy)}
.form-field textarea{min-height:120px;resize:vertical}
.input-invalid{border-color:#cc3344!important}
.field-error{display:none;color:#cc3344;font-size:13.5px}
.form-consent{display:flex;gap:11px;align-items:flex-start;font-size:14px;color:var(--muted);grid-column:1/-1}
.form-consent input{width:17px;height:17px;margin-top:3px;flex:0 0 auto;accent-color:var(--navy)}
.form-note{font-size:13.5px;color:var(--muted);grid-column:1/-1}

/* Kontakt-Infokarten */
.contact-info{display:flex;flex-direction:column;gap:18px}
.contact-line{display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:10px;padding:20px 22px;box-shadow:var(--shadow)}
.contact-line svg{width:21px;height:21px;stroke:var(--gold-dark);flex:0 0 auto;margin-top:2px}
.contact-line b{display:block;font-family:var(--font-head);font-size:15px;color:var(--ink)}
.contact-line span,.contact-line a{font-size:15px;color:var(--muted)}
.contact-line a:hover{color:var(--navy)}

/* Honorar-Karten */
.fee-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:40px 36px;display:flex;flex-direction:column;position:relative;overflow:hidden}
.fee-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gold)}
.fee-card h3{font-size:21px;margin-bottom:6px}
.fee-sub{color:var(--gold-dark);font-weight:700;font-size:13.5px;text-transform:uppercase;letter-spacing:.07em;font-family:var(--font-head);margin-bottom:16px}
.fee-card p{color:var(--muted);font-size:15.3px;margin-bottom:16px}
.fee-card .path-list{margin-bottom:24px}
.fee-card .btn,.fee-card .link-more{margin-top:auto;align-self:flex-start}

/* Unterseiten-Hero */
.page-hero{background:linear-gradient(148deg,var(--ink) 0%,var(--navy) 75%),var(--ink);position:relative;overflow:hidden;padding:150px 0 72px;color:#fff}
.page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 360px at 85% 10%,rgba(194,160,97,.15),transparent 65%);pointer-events:none}
.page-hero h1{color:#fff;font-size:clamp(1.8rem,3vw,2.6rem);position:relative}
.page-hero .sub{color:rgba(255,255,255,.82);font-size:17.5px;max-width:640px;margin-top:16px;position:relative}
.crumb{position:relative;font-size:13.5px;color:rgba(255,255,255,.6);margin-bottom:18px;font-weight:600}
.crumb a{color:rgba(255,255,255,.75)}

/* Footer */
footer{background:var(--ink);color:rgba(255,255,255,.75);padding:70px 0 0;font-size:14.8px}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1.15fr 1fr 1.1fr;gap:38px;padding-bottom:52px}
.footer-grid h4{color:#fff;font-size:15.5px;margin-bottom:18px}
.footer-grid ul{list-style:none}
.footer-grid li{margin-bottom:10px}
.footer-grid a{color:rgba(255,255,255,.72)}
.footer-grid a:hover{color:var(--gold)}
.footer-brand{display:flex;align-items:center;gap:11px;margin-bottom:18px}
.footer-brand svg{width:38px;height:38px}
.footer-brand-name{font-family:var(--font-head);font-weight:800;font-size:18px;color:#fff;line-height:1.05}
.footer-brand-name small{display:block;font-size:10px;font-weight:600;color:var(--gold);letter-spacing:.14em;text-transform:uppercase}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;font-size:13.5px;color:rgba(255,255,255,.55)}
.footer-bottom a{color:rgba(255,255,255,.62)}
.footer-bottom a:hover{color:var(--gold)}
.footer-credit a{color:rgba(255,255,255,.5)}
.footer-partner{display:inline-flex;align-items:center;gap:12px;margin-top:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:9px 16px 9px 9px;transition:background .2s}
.footer-partner:hover{background:rgba(255,255,255,.1)}
.footer-partner img{width:58px;height:58px;border-radius:8px;border:1px solid rgba(255,255,255,.16);flex:0 0 auto}
.footer-partner span{font-size:12.5px;color:rgba(255,255,255,.6);line-height:1.35}
.footer-partner b{color:#fff;font-family:var(--font-head);font-weight:700}

/* Scroll-Reveal */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}

/* ---------- Leistungs-Kacheln (scharfes Bild + Textpanel) ---------- */
.service-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-tile{position:relative;border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.service-tile:hover{transform:translateY(-5px);box-shadow:0 22px 60px rgba(19,21,58,.16)}
.service-tile-img{height:200px;background-size:cover;background-position:center;flex:0 0 auto}
.service-tile-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.service-tile-body h3{color:var(--ink);font-size:20px;margin-bottom:9px;line-height:1.25}
.service-tile-body p{font-size:14.5px;color:var(--muted);margin-bottom:16px}
.service-tile-body .tile-link{margin-top:auto;display:inline-flex;align-items:center;gap:7px;font-family:var(--font-head);font-weight:700;font-size:14px;color:var(--navy)}
.service-tile-body .tile-link svg{width:15px;height:15px;stroke:currentColor;transition:transform .2s}
.service-tile:hover .tile-link svg{transform:translateX(4px)}

/* ---------- Kompakte Feature-Chips (Digital-Sektion) ---------- */
.chip-list{display:flex;flex-direction:column;gap:14px}
.chip{display:flex;gap:16px;align-items:flex-start;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);border-radius:12px;padding:18px 20px;transition:background .25s,transform .25s,border-color .25s}
.chip:hover{background:rgba(255,255,255,.10);border-color:rgba(194,160,97,.5);transform:translateX(6px)}
.chip-ic{width:42px;height:42px;flex:0 0 auto;border-radius:10px;background:rgba(194,160,97,.18);display:flex;align-items:center;justify-content:center}
.chip-ic svg{width:22px;height:22px;stroke:var(--gold)}
.chip b{display:block;font-family:var(--font-head);font-size:16px;color:#fff;margin-bottom:2px}
.chip span{font-size:14.3px;color:rgba(255,255,255,.72);line-height:1.5}

/* ---------- Stepper-Animation ---------- */
.steps-wrap{position:relative}
.steps-line{position:absolute;top:54px;left:6%;right:6%;height:2px;background:rgba(35,39,107,.12);z-index:0}
.section-dark .steps-line{background:rgba(255,255,255,.16)}
.section-dark .step h3{color:var(--ink)}
.section-dark .step-num{background:var(--gold);color:var(--ink)}
.steps-line i{display:block;height:100%;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 1.6s cubic-bezier(.4,0,.2,1)}
.steps-wrap.visible .steps-line i{transform:scaleX(1)}
.steps-grid{position:relative;z-index:1}
.step{transition:opacity .6s ease,transform .6s ease;opacity:0;transform:translateY(34px)}
.steps-wrap.visible .step{opacity:1;transform:none}
.steps-wrap.visible .step:nth-child(1){transition-delay:.05s}
.steps-wrap.visible .step:nth-child(2){transition-delay:.35s}
.steps-wrap.visible .step:nth-child(3){transition-delay:.65s}
.steps-wrap.visible .step:nth-child(4){transition-delay:.95s}
.steps-wrap.visible .step-num{animation:stepPulse .9s ease .2s}
@keyframes stepPulse{0%{box-shadow:0 0 0 0 rgba(194,160,97,.55)}100%{box-shadow:0 0 0 18px rgba(194,160,97,0)}}

/* ---------- Multistep-Formular ---------- */
.ms-section{position:relative;overflow:hidden;padding:96px 0;color:#fff}
.ms-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(.48)}
.ms-overlay{position:absolute;inset:0;background:linear-gradient(115deg,rgba(19,21,58,.94) 8%,rgba(35,39,107,.72) 60%,rgba(19,21,58,.55))}
.ms-grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.ms-side h2{color:#fff;font-size:clamp(1.7rem,2.7vw,2.4rem);margin-bottom:16px}
.ms-side p{color:rgba(255,255,255,.84);margin-bottom:22px}
.ms-card{background:rgba(255,255,255,.98);border-radius:var(--radius);box-shadow:0 24px 70px rgba(0,0,0,.4);padding:36px;color:var(--text)}
.ms-progress{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:13.5px;font-weight:600;color:var(--muted)}
.ms-bar{height:6px;border-radius:3px;background:#ececf3;overflow:hidden;margin-bottom:26px}
.ms-bar i{display:block;height:100%;width:100%;background:var(--gold);border-radius:3px;transform:scaleX(.25);transform-origin:left;transition:transform .4s ease}
.ms-step{display:none}
.ms-step.active{display:block}
.ms-q{font-family:var(--font-head);font-weight:800;font-size:20px;color:var(--ink);margin-bottom:18px}
.ms-tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ms-tiles>*{min-width:0}
.ms-tile{position:relative}
.ms-tile label{width:100%;overflow-wrap:break-word;hyphens:auto}
.ms-tile input{position:absolute;opacity:0;pointer-events:none}
.ms-tile label{display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;background:#f5f5f7;border:1.5px solid #ddd;border-radius:10px;padding:18px 12px;cursor:pointer;font-weight:600;font-size:14.5px;color:#222;transition:border-color .2s,background .2s,transform .15s}
.ms-tile label:hover{border-color:var(--navy);transform:translateY(-1px)}
.ms-tile input:checked+label{border-color:var(--gold);background:#faf5ea;box-shadow:0 0 0 1px var(--gold)}
.ms-tile svg{width:26px;height:26px;stroke:var(--gold-dark)}
/* Kacheln mit Bildhintergrund (Schritt 1) */
.ms-tile.img label{position:relative;overflow:hidden;color:#fff;background:var(--ink);border-color:rgba(35,39,107,.25);min-height:104px;justify-content:flex-end;padding:16px 12px 14px}
.ms-tile.img .ms-tile-bg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center;filter:brightness(.68);transition:transform .45s ease}
.ms-tile.img label::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(13,15,44,.88) 18%,rgba(13,15,44,.28) 70%)}
.ms-tile.img label span{position:relative;z-index:2;font-weight:700;text-shadow:0 1px 6px rgba(0,0,0,.4)}
.ms-tile.img label:hover .ms-tile-bg{transform:scale(1.07)}
.ms-tile.img input:checked+label{border-color:var(--gold);box-shadow:0 0 0 1.5px var(--gold);background:var(--ink)}
.ms-tile.img input:checked+label::after{background:linear-gradient(to top,rgba(13,15,44,.9) 18%,rgba(169,136,73,.35))}
.ms-nav{display:flex;justify-content:space-between;align-items:center;margin-top:22px;gap:14px}
.ms-back{background:none;border:0;cursor:pointer;font-family:var(--font-head);font-weight:600;font-size:14.5px;color:var(--muted);display:inline-flex;align-items:center;gap:6px;padding:8px 4px}
.ms-back:hover{color:var(--navy)}
.ms-back svg{width:15px;height:15px;stroke:currentColor}
.ms-trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:20px}
.ms-trust span{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;color:rgba(255,255,255,.8);font-weight:500}
.ms-trust svg{width:15px;height:15px;stroke:var(--gold);flex:0 0 auto}

/* ---------- Page-Hero mit Bild ---------- */
.page-hero.has-img{background:var(--ink)}
.ph-bg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center 30%;filter:brightness(.6)}
.page-hero::before{z-index:1}
.page-hero.has-img::before{background:linear-gradient(100deg,rgba(15,17,48,.95) 12%,rgba(21,24,70,.78) 55%,rgba(25,29,84,.4) 100%)}
.page-hero .container{position:relative;z-index:2}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
  .hero-grid{grid-template-columns:1fr;gap:44px}
  .hero h1 .hl{white-space:normal}
  .hero-media::after{display:none}
  .card-grid-4,.steps-grid{grid-template-columns:1fr 1fr}
  .team-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .service-tiles{grid-template-columns:1fr 1fr}
  .ms-grid{grid-template-columns:1fr;gap:40px}
  .steps-line{display:none}
}
@media (max-width:1300px){
  .nav-links{gap:13px}
  .nav-links a{font-size:13.8px}
  .nav-logo-img{height:78px}
  .nav-inner{height:94px}
  .nav .btn{padding:10px 15px;font-size:13.5px}
}
@media (max-width:1180px){
  .nav-links{display:none}
  .nav .btn-gold{display:none}
  .nav-burger{display:block}
  .nav-inner{height:82px}
  .nav-logo-img{height:70px}
  .nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:#101232}
  .section-head-split{grid-template-columns:1fr;gap:16px;margin-bottom:40px}
  .path-grid,.card-grid-3,.card-grid-2{grid-template-columns:1fr}
  .feature-row{grid-template-columns:1fr;gap:26px;min-height:0;margin-bottom:56px}
  .feature-row.flipped{direction:ltr}
  .feature-row>*,.card-grid-2>*,.card-grid-3>*,.card-grid-4>*,.path-grid>*,.team-grid>*{min-width:0}
  h2,h3{overflow-wrap:break-word;hyphens:auto}
  .feature-img img{height:260px}
  .form-grid{grid-template-columns:1fr}
  .trust-grid{grid-template-columns:1fr 1fr}
  .trust-cell:nth-child(2){border-right:0}
  .trust-cell:nth-child(1),.trust-cell:nth-child(2){border-bottom:1px solid var(--line)}
}
@media (max-width:640px){
  .section{padding:64px 0}
  .hero{padding:136px 0 84px}
  .team-grid,.card-grid-4,.steps-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .form-card{padding:28px 22px}
  .logo-row{grid-template-columns:1fr 1fr;gap:14px;max-width:100%}
  .logo-cell{height:84px;padding:16px 18px}
  .service-tiles{grid-template-columns:1fr}
  .service-tile-img{height:190px}
  .ms-card{padding:26px 20px}
  .ms-tiles{grid-template-columns:1fr 1fr}
  .ms-tile label{padding:14px 8px;font-size:13.5px}
  .hero-stats{grid-template-columns:1fr 1fr;gap:10px}
  .hs-card{padding:18px 16px}
  .hero-op .hero-grid{gap:16px}
  .doc-stack{max-width:300px;margin:20px auto 0;transform:perspective(1300px) rotateY(-7deg) rotateX(2.5deg) scale(.9);transform-origin:center top}
  .doc-main{transform:translateZ(26px)}
  .dm-top{gap:8px;padding:9px 13px 11px}
  .doc-mini b{font-size:11.5px}
  .doc-mini small{font-size:10px}
  .doc-mini .dm-ic{width:26px;height:26px}
  .doc-mini .dm-ic svg{width:14px;height:14px}
  .hero-checks{gap:8px;margin-top:24px}
  .hero-checks span{font-size:13.5px;line-height:1.25;padding:9px 15px 9px 11px;gap:8px}
  .hero-checks svg{width:16px;height:16px}
  .objekt-tags{grid-template-columns:1fr 1fr}
  .nav-logo{height:60px}
  .nav-logo-img{height:82px}
}

/* ---------- Zielgruppen-Panel (Direkt zum passenden Thema) ---------- */
.aud-panel{background:linear-gradient(152deg,var(--ink),var(--navy) 95%);border-radius:var(--radius);overflow:hidden;position:relative;margin-bottom:26px}
.aud-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(680px 340px at 8% 0%,rgba(194,160,97,.16),transparent 62%);pointer-events:none}
.aud-intro{position:relative;padding:36px 40px 4px}
.aud-intro h3{color:#fff;font-size:clamp(1.15rem,1.65vw,1.42rem);font-weight:700;line-height:1.4;max-width:820px}
.aud-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);padding:26px 40px 38px;gap:2px}
.aud-item{display:flex;gap:15px;align-items:flex-start;padding:22px 22px 22px 0;border-top:1px solid rgba(255,255,255,.12);transition:background .2s}
.aud-grid .aud-item:nth-child(-n+3){border-top:0}
.aud-item:hover{background:rgba(255,255,255,.04)}
.aud-item>svg{width:26px;height:26px;stroke:var(--gold);flex:0 0 auto;margin-top:2px}
.aud-item b{display:block;font-family:var(--font-head);font-size:16.5px;font-weight:700;color:#fff;margin-bottom:5px}
.aud-item span{display:block;font-size:14.2px;line-height:1.5;color:rgba(255,255,255,.66)}
.aud-item:hover b{color:var(--gold)}
@media (max-width:900px){
  .aud-intro{padding:28px 24px 0}
  .aud-grid{grid-template-columns:1fr;padding:14px 24px 26px}
  .aud-grid .aud-item:nth-child(-n+3){border-top:1px solid rgba(255,255,255,.12)}
  .aud-grid .aud-item:first-child{border-top:0}
  .aud-item{padding:18px 0}
}

/* ---------- Dokument-Feature (Bautenstandsbericht) ---------- */
.doc-feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}
.doc-sheet{background:linear-gradient(150deg,#eef0f7,#e2e5f0);border-radius:var(--radius);padding:44px 52px;display:flex;justify-content:center}
.doc-sheet img{width:100%;max-width:330px;background:#fff;border:1px solid var(--line);box-shadow:0 22px 54px rgba(19,21,58,.22);transform:rotate(-1.6deg)}
@media (max-width:900px){
  .doc-feature{grid-template-columns:1fr;gap:32px}
  .doc-sheet{padding:28px 24px}
  .doc-sheet img{max-width:280px}
}

/* ---------- Leistungen-Dropdown ---------- */
.drop-chev{width:13px;height:13px;margin-left:5px;vertical-align:-1px;opacity:.75;transition:transform .2s}
.has-drop:hover .drop-chev,.has-drop:focus-within .drop-chev{transform:rotate(180deg)}
.drop-panel{position:absolute;top:100%;left:-18px;padding-top:16px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s,transform .18s,visibility .18s;z-index:120}
.has-drop:hover .drop-panel,.has-drop:focus-within .drop-panel{opacity:1;visibility:visible;transform:none}
.drop-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 26px;background:#fff;border-radius:12px;box-shadow:0 22px 60px rgba(10,12,40,.34);border:1px solid var(--line);padding:16px 18px;min-width:600px}
.drop-grid a{display:block;font-size:14.5px!important;font-weight:600;color:var(--ink)!important;padding:9px 12px;border-radius:7px;white-space:nowrap;transition:background .15s,color .15s}
.drop-grid a:hover{background:var(--bg-alt);color:var(--navy)!important}
/* Mobile: Unterpunkte eingerueckt unter "Leistungen" */
.mm-subs{border-left:2px solid var(--gold);margin:2px 0 10px 6px;padding-left:14px}
.mobile-menu a.mm-sub{font-family:var(--font-body);font-size:15.5px;font-weight:500;color:var(--muted);padding:10px 2px;border-bottom:1px solid var(--line)}
.mm-subs a.mm-sub:last-child{border-bottom:0}

/* Anker unter der fixierten Navigation freihalten */
[id]{scroll-margin-top:124px}
@media (max-width:900px){[id]{scroll-margin-top:96px}}

/* Regionalseiten: Wahrzeichen soll durch das Overlay erkennbar bleiben */
.page-hero.ph-landmark .ph-bg{filter:brightness(1.06) saturate(1.05)}
.page-hero.ph-landmark::before{background:linear-gradient(100deg,rgba(12,14,42,.93) 0%,rgba(15,18,55,.66) 46%,rgba(20,24,72,.26) 100%)}

/* ---------- Objektarten als 4x5-Raster ---------- */
.objekt-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.objekt-grid span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:54px;padding:7px 8px;
  background:rgba(255,255,255,.06);border:1px solid rgba(194,160,97,.32);border-radius:9px;
  font-family:var(--font-head);font-size:12.2px;font-weight:600;line-height:1.25;letter-spacing:-.005em;color:rgba(255,255,255,.92);overflow-wrap:anywhere;hyphens:auto}
@media (max-width:1024px){.objekt-grid{gap:9px}
  .objekt-grid span{min-height:52px;font-size:13.4px;padding:9px 10px}}
@media (max-width:600px){.objekt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .objekt-grid span{min-height:50px;font-size:12.8px;padding:8px 8px}}

/* ---------- Auftraggeber-Laufband: zwei gegenlaeufige Reihen, ohne Rahmen ---------- */
.logo-marquee{position:relative;max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:12px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.lm-row{overflow:hidden}
.lm-track{display:flex;width:max-content;animation:logoScroll 58s linear infinite}
.lm-track.lm-reverse{animation-direction:reverse}
.lm-item{flex:0 0 auto;width:172px;height:66px;margin-right:46px;display:flex;align-items:center;justify-content:center}
.lm-img{max-width:100%;max-height:46px;width:auto;height:auto;object-fit:contain}
.lm-img.lm-tall{max-height:62px}
@media (prefers-reduced-motion:reduce){.lm-track{animation:none}}
@media (max-width:640px){
  .logo-marquee{gap:8px}
  .lm-track{animation-duration:40s}
  .lm-item{width:138px;height:58px;margin-right:32px}
  .lm-img{max-height:38px}
  .lm-img.lm-tall{max-height:52px}
}

/* ---------- Zertifizierungen (Über uns) ---------- */
.zert-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;max-width:1000px;margin:0 auto}
.zert-cell{background:#fff;border:1px solid var(--line);border-radius:12px;height:112px;display:flex;align-items:center;justify-content:center;padding:18px 20px;transition:box-shadow .25s,transform .25s}
.zert-cell:hover{box-shadow:0 12px 34px rgba(19,21,58,.10);transform:translateY(-2px)}
.zert-cell img{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain}
@media (max-width:900px){.zert-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.zert-cell{height:96px;padding:14px}}
@media (max-width:520px){.zert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.zert-cell{height:86px;padding:12px}}

/* ---------- Siegel neben der Seiten-Überschrift ---------- */
.ph-head{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.ph-head h1{flex:1 1 380px;margin:0}
.ph-seal{flex:0 0 auto;width:158px;background:#fff;border-radius:12px;padding:12px 16px;box-shadow:0 10px 30px rgba(0,0,0,.28)}
@media (max-width:640px){.ph-head{gap:18px}.ph-seal{width:124px;padding:10px 12px}}

/* ---------- Leadmagnet-Karten ---------- */
.lm-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.lm-grid.lm-grid-1{grid-template-columns:minmax(0,720px);justify-content:center}
.lm-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.lm-cover{background:linear-gradient(150deg,#eef0f7,#e2e5f0);padding:30px 30px 0;display:flex;justify-content:center}
.lm-cover img{width:100%;max-width:238px;border:1px solid var(--line);border-top-left-radius:6px;border-top-right-radius:6px;box-shadow:0 -2px 30px rgba(19,21,58,.20)}
.lm-body{padding:30px 28px 30px}
.lm-body h3{font-size:20px;margin-bottom:10px}
.lm-body>p{color:var(--muted);font-size:15px;margin-bottom:22px}
.lm-form{display:flex;flex-direction:column;gap:14px}
.lm-form .form-field{display:flex;flex-direction:column}
.lm-form .btn{width:100%;margin-top:4px}
.lm-form .form-consent{font-size:13.5px}
@media (max-width:900px){
  .lm-grid,.lm-grid.lm-grid-1{grid-template-columns:1fr}
  .lm-cover{padding:24px 24px 0}
  .lm-cover img{max-width:198px}
  .lm-body{padding:26px 22px 26px}
}

/* ---------- ProvenExpert-Bewertungen ---------- */
.pe-wrap{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;max-width:1000px;margin:0 auto}
.pe-score{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:38px 40px;text-align:center}
.pe-stars{color:var(--gold);font-size:30px;letter-spacing:4px;line-height:1}
.pe-num{font-family:var(--font-head);font-weight:800;font-size:clamp(2.4rem,4vw,3.2rem);color:var(--ink);line-height:1.1;margin-top:12px}
.pe-num span{font-size:.42em;font-weight:700;color:var(--muted)}
.pe-count{color:var(--muted);font-size:15px;margin-top:6px;margin-bottom:20px}
#proSealWidget{display:flex;justify-content:center;min-height:180px}
@media (max-width:900px){.pe-wrap{grid-template-columns:1fr;gap:28px}.pe-score{padding:30px 24px}}
