/* Ausgelagert aus dem gemeinsamen Inline-Stylesheet (identisch auf 29 Seiten), 17.09.2026. Das <link> steht an der Stelle des frueheren <style>, die Kaskade bleibt gleich. */

*{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#111111;--ink2:#1c2b42;--ink3:#243355;
  --cream:#f7f4ef;--off:#ede9e0;
  --gold:#b8935a;--gold2:#d4ae78;--gold3:#f0d9a8;
  --w:#fff;--muted:#4f5563;--border:#e5e0d8;
  --accent:#1a3a5c;--accent2:#234d7a;
  --green:#1a5c3a;--green2:#e8f5ee;--green3:#22c55e
}
body{font-family:'Segoe UI',system-ui,sans-serif;background:var(--cream);color:var(--ink);overflow-x:clip;max-width:100vw;font-size:15px;line-height:1.6}
.page{display:none;animation:fadeIn .3s ease}
.page.active{display:block}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.15)}}@keyframes spin{to{transform:rotate(360deg)}}

/* Professional inline icon system */
.pf-icon{
  width:1.15em;
  height:1.15em;
  display:inline-block;
  vertical-align:-.18em;
  stroke:currentColor;
  fill:none;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  flex-shrink:0;
}
.pf-icon-lg{
  width:2rem;
  height:2rem;
  color:var(--gold);
}
.pf-icon-box{
  width:42px;
  height:42px;
  margin:0 auto .7rem;
  border:1px solid rgba(184,147,90,.24);
  border-radius:8px;
  background:rgba(184,147,90,.08);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--gold);
}
.pf-icon-box .pf-icon{width:21px;height:21px}
.pf-emoji-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1.25em;
  height:1.25em;
  margin-right:.28em;
  color:var(--gold);
  vertical-align:-.22em;
}
.pf-emoji-icon .pf-icon{
  width:1.05em;
  height:1.05em;
}
.pf-emoji-icon.is-success{color:#22c55e}
.pf-emoji-icon.is-danger{color:#991b1b}
.pf-emoji-icon.is-warning{color:#b8935a}

/* FLOATING BADGE */
.floating-badge{position:fixed;bottom:1.5rem;left:1.5rem;z-index:999;background:var(--w);border:1px solid var(--border);padding:.55rem .85rem;display:flex;align-items:center;gap:.6rem;box-shadow:0 4px 20px rgba(0,0,0,.1);cursor:pointer;transition:transform .2s}
.floating-badge:hover{transform:translateY(-2px)}
.fb-stars{color:#f59e0b;font-size:12px;line-height:1;margin-bottom:1px}
.fb-text{font-size:11px;font-weight:700;color:var(--ink)}
.fb-count{font-size:9.5px;color:var(--muted)}

/* TOPBAR */
.topbar{background:var(--ink2);height:36px;display:flex;align-items:center;justify-content:space-between;padding:0 2.5rem}
.tb-l{display:flex;gap:1.5rem}
.tb-i{display:flex;align-items:center;gap:5px;color:rgba(255,255,255,.88);font-size:11.5px}
.tb-i a{color:rgba(255,255,255,.8);text-decoration:none;font-weight:500}
.tb-i svg{width:11px;height:11px;stroke:var(--gold2);fill:none;stroke-width:2}
.tb-ctas{display:flex;gap:.5rem;align-items:center}
.tb-cta1{background:var(--gold);color:var(--w);border:none;padding:0 1rem;height:24px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.tb-cta1:hover{background: #785b30}
.tb-cta2{background:transparent;color:var(--gold);border:1px solid rgba(184,147,90,.4);padding:0 1rem;height:24px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.tb-cta2:hover{border-color:var(--gold2)}

/* NAV */
nav{background:var(--ink2);height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 2.5rem;position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(255,255,255,.07)}
.logo{display:flex;align-items:center;gap:13px;cursor:pointer;text-decoration:none}
/* SVG logo from the image */
.logo-svg{flex-shrink:0}
.logo-words{}
.logo-name{line-height:1.1}
.logo-pfaller{display:block;font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--gold2);opacity:.9;margin-bottom:3px}
.logo-main{display:block;font-size:18px;font-weight:700;letter-spacing:.02em;color:var(--w);line-height:1}
.logo-tagline{color:var(--gold2);font-size:8px;letter-spacing:.22em;text-transform:uppercase;opacity:.7;display:flex;align-items:center;gap:6px;margin-top:5px}
.logo-tagline::before{content:"";display:block;width:16px;height:1px;background:var(--gold2);opacity:.6}
.logo-tagline{color:var(--gold2);font-size:9px;letter-spacing:.16em;text-transform:uppercase;opacity:.8;display:block;margin-top:1px}
.nav-center{display:flex}
.nav-btn{background:none;border:none;color:#fff;font-size:13.5px;padding:0 .9rem;height:66px;cursor:pointer;letter-spacing:.02em;transition:color .2s;white-space:nowrap}
.nav-btn:hover,.nav-btn.active{color:var(--w)}
.nav-btn.active{border-bottom:2px solid var(--gold);color:var(--gold2)}
.nav-right{display:flex;align-items:center;gap:.85rem}
.nav-phone{color:var(--gold2);font-size:12.5px;font-weight:600}
.btn-nav{background:var(--gold);color:var(--w);border:none;padding:0 1.3rem;height:36px;font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;cursor:pointer}
.btn-nav:hover{background: #785b30}

/* ===== HERO - GENERAL ===== */
.hero{background:var(--ink2);color:var(--w);overflow:hidden;padding:3.5rem 0 3rem;position:relative;overflow:hidden;min-height:480px;display:flex;align-items:center}
.hero::before{content:'';position:absolute;top:-120px;right:-120px;width:550px;height:550px;border:90px solid rgba(184,147,90,.06);border-radius:50%}
.hero::after{content:'';position:absolute;bottom:-60px;right:60px;width:220px;height:220px;border:45px solid rgba(184,147,90,.04);border-radius:50%}
.hero-content{position:relative;z-index:1;max-width:620px}
.hero-kicker{display:inline-flex;align-items:center;gap:8px;background:rgba(184,147,90,.14);border:1px solid rgba(184,147,90,.28);padding:5px 14px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--gold);margin-bottom:1.4rem}
.hero-kicker::before{content:'';width:5px;height:5px;background:var(--gold);border-radius:50%}
.hero h1{font-size:3rem;font-weight:700;line-height:1.1;margin-bottom:1rem;letter-spacing:-.025em}
.hero h1 em{font-style:normal;color:var(--gold2)}
.hero-lead{color:rgba(255,255,255,.90);font-size:.975rem;line-height:1.78;margin-bottom:2rem;max-width:520px}
.hero-btns{display:flex;gap:.85rem;flex-wrap:wrap;margin-bottom:2.5rem}
.btn-gold{background:var(--gold);color:#fff;border:none;padding:.6rem 1.4rem;font-size:.8rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border-radius:4px;transition:background .2s}
.btn-gold:hover{background: #785b30}
.btn-ghost{background:none;border:1.5px solid rgba(255,255,255,.28);color:var(--w);padding:.85rem 1.8rem;font-size:13px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.btn-ghost:hover{border-color:rgba(255,255,255,.6)}

/* Hero trust badges */
.hero-trust{display:flex;gap:.7rem 1.2rem;flex-wrap:wrap}
.ht-badge{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;color:rgba(255,255,255,.75);white-space:nowrap}
.ht-badge svg{width:13px;height:13px;stroke:var(--gold2);fill:none;stroke-width:2;flex-shrink:0}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.09);margin-top:3rem}
.stat{background:rgba(255,255,255,.04);padding:1.1rem 1.5rem}
.stat-num{font-size:1.7rem;font-weight:700;color:var(--gold2)}
.stat-label{font-size:10px;color:rgba(255,255,255,.78);letter-spacing:.08em;text-transform:uppercase;margin-top:2px}

/* HERO SIDE - QUICK FORM */
.hero-inner{max-width:1100px;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;position:relative;z-index:1;margin:0 auto;padding:0 2.5rem}
.qf{background:rgba(10,18,28,.75);border:1px solid rgba(184,147,90,.3);padding:1.8rem;backdrop-filter:blur(4px)}
.qf-title{font-size:1rem;font-weight:700;color:#fff;margin-bottom:1.2rem;padding-bottom:.65rem;border-bottom:1px solid rgba(184,147,90,.3)}
.qf-title span{color:var(--gold2)}
.qf-lbl{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.95);display:block;margin-bottom:.3rem}
.qf-sel,.qf-inp{width:100%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);color:#fff;padding:.6rem .85rem;font-size:13.5px;outline:none;margin-bottom:.8rem;font-family:inherit}
.qf-sel option{background:var(--ink2)}
.qf-btn{width:100%;background:var(--gold);color:var(--w);border:none;padding:.78rem;font-size:12.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;margin-bottom:.55rem}
.qf-btn:hover{background: #785b30}
.qf-or{text-align:center;font-size:11px;color:rgba(255,255,255,.85);margin-bottom:.55rem}
.qf-phone{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:var(--gold2);padding:.66rem;font-size:13.5px;font-weight:600;cursor:pointer;font-family:inherit}
.qf-note{font-size:10px;color:rgba(255,255,255,.85);text-align:center;margin-top:.55rem}
.qf-note strong{color:rgba(255,255,255,.90)}

/* TRUST BAR */
.trust-bar{display:flex;align-items:center;gap:0;flex-wrap:nowrap;background:var(--ink2);padding:.6rem max(1.5rem,calc((100% - 1100px)/2 + 1.5rem));border-bottom:1px solid rgba(184,147,90,.15);overflow-x:auto}
.ti{display:flex;align-items:center;gap:6px;color:rgba(255,255,255,.9);font-size:11.5px;padding:0 1rem}.ti svg{stroke:#22c55e;fill:none;stroke-width:2;width:13px;height:13px;flex-shrink:0}
.ti svg{width:12px;height:12px;stroke:var(--gold2);fill:none;stroke-width:2;flex-shrink:0}
.ts{width:1px;height:16px;background:rgba(255,255,255,.15);flex-shrink:0}


.grg-tag{background:rgba(184,147,90,.1);border:1px solid rgba(184,147,90,.25);padding:3px 10px;font-size:10.5px;color:var(--gold2);display:flex;align-items:center;gap:5px;font-weight:600;margin-left:auto}

/* STATS STRIP */
.stats-strip .ss-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.09)}
.stat-big{background:var(--ink2);padding:1.6rem 1.4rem;text-align:center}
.stat-big-num{font-size:1.7rem;font-weight:800;color:var(--w);letter-spacing:-.02em}
.stat-big-label{font-size:.7rem;color:rgba(255,255,255,.75);text-transform:uppercase;letter-spacing:.1em;margin-top:.15rem}

/* ===== LEISTUNGSPORTFOLIO - NEW DESIGN ===== */
.services-section{padding:5rem 2.5rem;background:var(--w)}
.services-header{text-align:center;margin-bottom:3.5rem}
.section-eye{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:.4rem}
.section-h{font-size:1.55rem;font-weight:700;color:var(--ink);letter-spacing:-.02em;line-height:1.2}
.section-sub{color:var(--muted);font-size:.9rem;max-width:500px;margin:0 auto;line-height:1.65}
.divider-center{width:48px;height:2px;background:var(--gold);margin:.8rem auto 0}

/* NEW service cards - icon-forward, larger, more visual */
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem;max-width:1100px;margin:0 auto;padding:0 2.5rem}
.sv-card{background:#0f1e30;border:1px solid rgba(255,255,255,.07);padding:1.2rem 1.1rem;cursor:pointer;position:relative;overflow:hidden;transition:all .22s;border-bottom:2px solid transparent}
.sv-card:hover{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12);border-bottom-color:var(--gold2);transform:translateY(-2px)}
.sv-card:hover .sv-num{font-size:2rem;font-weight:800;color:rgba(28,43,66,.06);position:absolute;top:.5rem;right:.8rem;line-height:1}
.sv-card:hover .sv-icon-wrap{width:32px;height:32px;background:var(--off);border:1px solid var(--border);border-radius:5px;display:flex;align-items:center;justify-content:center;margin-bottom:.65rem}
.sv-card:hover .sv-icon-wrap svg{stroke:var(--gold2)}
.sv-card:hover h3{color:var(--w)}
.sv-card:hover .sv-desc{color:rgba(255,255,255,.82)}
.sv-card:hover .sv-link{font-size:.75rem;font-weight:600;color:var(--gold);display:inline-flex;align-items:center;gap:3px}
.sv-card:hover .sv-link::after{transform:translateX(5px)}
.sv-card-featured{border-top:2px solid var(--gold)!important;background:var(--off)}
.sv-card-featured .sv-num{font-size:2rem;font-weight:800;color:rgba(28,43,66,.06);position:absolute;top:.5rem;right:.8rem;line-height:1}
.sv-card-featured .sv-icon-wrap{width:32px;height:32px;background:var(--off);border:1px solid var(--border);border-radius:5px;display:flex;align-items:center;justify-content:center;margin-bottom:.65rem}
.sv-card-featured .sv-icon-wrap svg{stroke:var(--gold2)}
.sv-card-featured h3{color:#fff;font-size:1.05rem;font-weight:800;text-shadow:0 1px 4px rgba(0,0,0,.3)}
.sv-card-featured .sv-desc{color:rgba(255,255,255,.88)}
.sv-card-featured .sv-link{font-size:.75rem;font-weight:600;color:var(--gold);display:inline-flex;align-items:center;gap:3px}
.sv-card-featured:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(26,26,46,.3)}

.sv-num{font-size:2rem;font-weight:800;color:rgba(28,43,66,.06);position:absolute;top:.5rem;right:.8rem;line-height:1}
.sv-icon-wrap{width:32px;height:32px;background:var(--off);border:1px solid var(--border);border-radius:5px;display:flex;align-items:center;justify-content:center;margin-bottom:.65rem}
.sv-icon-wrap svg{width:24px;height:24px;stroke:var(--accent);fill:none;stroke-width:1.5;transition:stroke .25s}
.sv-badge{display:inline-block;background:var(--gold);color:var(--w);font-size:9.5px;padding:2px 9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;margin-bottom:.6rem}
.sv-card h3{font-size:1.05rem;font-weight:700;color:var(--ink);margin-bottom:.5rem;line-height:1.3;transition:color .25s}
.sv-desc{font-size:.83rem;color:var(--muted);line-height:1.6;margin-bottom:1.2rem;transition:color .25s}
.sv-link{font-size:.75rem;font-weight:600;color:var(--gold);display:inline-flex;align-items:center;gap:3px}
.sv-link::after{content:'→';transition:transform .2s;display:inline-block}

/* ZWEI HAUPT-HIGHLIGHTS */
.main-highlights{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--ink2)}

/* WFL HIGHLIGHT */
.hl-wfl{padding:3.5rem 2.5rem 3.5rem 2.5rem;border-right:1px solid rgba(255,255,255,.08);position:relative;overflow:hidden}
.hl-wfl::before{content:'';position:absolute;bottom:-60px;right:-60px;width:200px;height:200px;border:40px solid rgba(184,147,90,.06);border-radius:50%}
.hl-rnd{padding:3.5rem 2.5rem;position:relative;overflow:hidden;background:linear-gradient(145deg,var(--accent) 0%,var(--ink2) 100%)}
.hl-eyebrow{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold2);margin-bottom:.65rem;font-weight:600}
.hl-h{font-size:1.65rem;font-weight:700;color:var(--w);line-height:1.2;margin-bottom:.75rem;letter-spacing:-.015em}
.hl-h em{font-style:normal;color:var(--gold)}
.hl-p{color:rgba(255,255,255,.88);font-size:.875rem;line-height:1.72;margin-bottom:1.3rem}
.hl-bullets{list-style:none;margin-bottom:1.5rem}
.hl-bullets li{padding:.35rem 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:.845rem;color:rgba(255,255,255,.75);display:flex;gap:.65rem;align-items:flex-start}
.hl-bullets li:last-child{border:none}
.hl-bullets li::before{content:'✓';color:var(--gold2);font-weight:700;flex-shrink:0;margin-top:.05rem}

/* RND METRICS */
.rnd-metrics{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.2rem}
.rnd-metric{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:1rem 1.1rem}
.rnd-m-val{font-size:1.5rem;font-weight:700;color:var(--gold2);line-height:1}
.rnd-m-lbl{font-size:.75rem;color:rgba(255,255,255,.78);line-height:1.4;margin-top:.25rem}
.calc-mini{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);padding:1.1rem 1.2rem}
.calc-mini label{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:rgba(255,255,255,.75);display:block;margin-bottom:.3rem}
.calc-mini input{width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:var(--w);padding:.5rem .75rem;font-size:14px;outline:none;margin-bottom:.7rem;font-family:inherit}
.calc-mini-result{display:flex;justify-content:space-between;align-items:center;gap:.5rem}
.cm-val{font-size:1.4rem;font-weight:700;color:var(--gold2)}
.cm-sub{font-size:.72rem;color:rgba(255,255,255,.72)}
.cm-cta{background:var(--gold);color:var(--w);border:none;padding:.55rem 1rem;font-size:11px;font-weight:700;cursor:pointer;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}

/* FALLBEISPIELE */
.cases{background:var(--off);padding:4rem 2.5rem}
.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.2rem}
.case-card{background:var(--w);border:1px solid var(--border);overflow:hidden;transition:transform .2s,box-shadow .2s}
.case-card:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(0,0,0,.1)}
.case-img{background:linear-gradient(145deg,var(--ink2),var(--accent));height:120px;display:flex;align-items:center;justify-content:center;position:relative}
.case-img-bg{width:90px;height:76px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center}
.case-img-bg svg{width:34px;height:34px;stroke:rgba(255,255,255,.35);fill:none;stroke-width:1.2}
.case-tag{position:absolute;bottom:0;left:0;right:0;background:var(--green3);color:var(--w);text-align:center;padding:.35rem;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.case-body{padding:1.3rem}
.case-type{font-size:10px;font-weight:700;color:var(--gold);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.3rem}
.case-detail{font-size:.82rem;color:var(--muted);line-height:1.5;margin-bottom:.6rem}
.case-amount{font-size:1.35rem;font-weight:700;color:var(--green);margin-bottom:.15rem}
.case-amount-lbl{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}

/* GRG STRIP */
.grg-section{background:var(--green2);border-top:3px solid var(--green3);border-bottom:3px solid var(--green3);padding:1.8rem 2.5rem;display:flex;align-items:center;justify-content:center;gap:2rem;flex-wrap:wrap}
.grg-icon{width:46px;height:46px;background:var(--green3);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px;color:var(--w)}
.grg-text h3{font-size:1rem;font-weight:700;color:var(--green)}
.grg-text p{font-size:.83rem;color:#2d6a4f;line-height:1.55;max-width:440px}
.grg-cta{background:var(--green);color:var(--w);border:none;padding:.72rem 1.7rem;font-size:12.5px;font-weight:700;cursor:pointer;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}

/* REVIEWS */
.reviews{background:var(--w);padding:4rem 2.5rem}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-top:2rem}
.rv{background:var(--cream);border:1px solid var(--border);padding:1.6rem;position:relative}
.rv::before{content:'"';position:absolute;top:.5rem;right:1rem;font-size:3.8rem;color:var(--off);line-height:1;font-weight:700}
.rv-stars{color:#f59e0b;font-size:12.5px;margin-bottom:.6rem}
.rv-text{font-size:.84rem;color:#444;line-height:1.7;margin-bottom:.8rem;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;font-style:italic}
.rv-name{font-size:.8rem;font-weight:700;color:var(--accent)}
.rv-role{font-size:.72rem;color:var(--gold);font-weight:500}
.rating-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1.6rem}
.rating-big{display:flex;align-items:baseline;gap:.5rem}
.rating-num{font-size:2.7rem;font-weight:700;color:var(--ink);line-height:1}
.r-stars{color:#f59e0b;font-size:14px}
.r-count{font-size:.77rem;color:var(--muted);margin-top:2px}
.g-badge{display:flex;align-items:center;gap:.5rem;background:var(--off);border:1px solid var(--border);padding:.38rem .8rem;font-size:.76rem;color:var(--muted);transition:bottom .25s ease}

/* ABOUT */
.about{background:var(--off);padding:4rem 2.5rem;display:grid;grid-template-columns:1.1fr .9fr;gap:3.5rem;align-items:start}
.about-p{font-size:.875rem;color:#444;line-height:1.8;margin-bottom:.85rem}
.cert-box{background:var(--w);border:1px solid var(--border);padding:1.4rem}
.cert-title{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--gold)}
.cert-row{display:flex;align-items:flex-start;gap:.8rem;padding:.62rem 0;border-bottom:1px solid var(--border)}
.cert-row:last-child{border:none}
.cert-icon{width:31px;height:31px;background:var(--ink2);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:10px;font-weight:700;color:var(--gold2);letter-spacing:.02em}

.cert-name{font-size:.84rem;font-weight:700;color:var(--ink);line-height:1.3}
.cert-desc{font-size:.74rem;color:var(--muted);line-height:1.4;margin-top:.1rem}

/* PROCESS */
.process{background:var(--ink2);padding:4rem 2.5rem;position:relative;overflow:hidden}
.process::before{content:'';position:absolute;left:-80px;bottom:-80px;width:300px;height:300px;border:50px solid rgba(184,147,90,.05);border-radius:50%}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin-top:2.5rem}
.process-steps::before{content:'';position:absolute;top:20px;left:calc(12.5% + 9px);right:calc(12.5% + 9px);height:1px;background:rgba(255,255,255,.12)}
.ps{text-align:center;padding:0 .7rem;position:relative;z-index:1}
.ps-num{width:40px;height:40px;background:var(--gold);display:flex;align-items:center;justify-content:center;margin:0 auto 1.1rem;font-size:.95rem;font-weight:700;color:var(--w)}
.ps h4{font-size:.9rem;font-weight:700;color:var(--w);margin-bottom:.35rem}
.ps p{font-size:.79rem;color:rgba(255,255,255,.82);line-height:1.55}

/* FAQ */
.faq{background:var(--w);padding:4rem 2.5rem}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);margin-top:2rem}
.faq-item{background:var(--w);padding:1.3rem 1.5rem}
.faq-q{font-size:.9rem;font-weight:700;color:var(--accent);margin-bottom:.38rem}
.faq-a{font-size:.82rem;color:var(--muted);line-height:1.65}

/* CONTACT */
.contact-section{background:var(--ink2);padding:2.8rem 0}
.contact-inner{max-width:1100px;margin:0 auto;padding:0 2.5rem;display:grid;grid-template-columns:1fr 1.35fr;gap:3rem}
.cs-h{font-size:1.45rem;font-weight:700;color:var(--w);margin-bottom:.5rem;letter-spacing:-.015em}
.cs-p{color:rgba(255,255,255,.88);font-size:.875rem;margin-bottom:1.8rem;line-height:1.65}
.ci-row{display:flex;align-items:center;gap:.9rem;margin-bottom:1.1rem}
.ci-box{width:36px;height:36px;background:rgba(184,147,90,.16);border:1px solid rgba(184,147,90,.28);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ci-box svg{width:15px;height:15px;stroke:var(--gold2);fill:none;stroke-width:1.5}
.ci-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:rgba(255,255,255,.72)}
.ci-val{font-size:.88rem;color:var(--w);font-weight:600}
.why-box{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);padding:1rem 1.2rem;margin-top:1.3rem}
.why-title{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--gold2);font-weight:600;margin-bottom:.45rem}
.why-items{font-size:.81rem;color:rgba(255,255,255,.84);line-height:1.72}
.contact-form{background:var(--w);padding:2rem;border:1px solid var(--border)}
.form-title{font-size:.95rem;font-weight:700;color:var(--accent);margin-bottom:1.2rem;padding-bottom:.55rem;border-bottom:2px solid var(--gold)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-bottom:.85rem}
.f-lbl{display:block;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.28rem;font-weight:600}
.f-inp{width:100%;background:var(--off);border:1px solid var(--border);padding:.58rem .88rem;font-size:14px;color:var(--ink);outline:none;font-family:inherit}
.f-inp:focus{border-color:var(--accent);background:var(--w)}
.f-sel{width:100%;background:var(--off);border:1px solid var(--border);padding:.58rem .88rem;font-size:14px;color:var(--ink);margin-bottom:.85rem;outline:none;font-family:inherit}
.f-ta{width:100%;background:var(--off);border:1px solid var(--border);padding:.58rem .88rem;font-size:14px;color:var(--ink);min-height:80px;margin-bottom:.85rem;outline:none;font-family:inherit;resize:vertical}
.f-sub{width:100%;background:var(--accent);color:var(--w);border:none;padding:.82rem;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.f-sub:hover{background:var(--accent2)}
.f-note{font-size:10px;color:var(--muted);text-align:center;margin-top:.5rem}

.contact-main-grid {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 3rem;
  align-items: start;
}
.contact-form-shell {
  background: var(--w);
  border: 1px solid var(--border);
  padding: 2rem;
}
.contact-info-col {
  min-width: 0;
}
@media(max-width:900px) {
  #page-kontakt > div:first-child {
    padding-top: 2rem !important;
    padding-bottom: 1.55rem !important;
  }
  #page-kontakt > div:first-child h1 {
    font-size: 1.45rem !important;
    line-height: 1.18 !important;
  }
  #page-kontakt > div:first-child p {
    font-size: .84rem !important;
    line-height: 1.55 !important;
    margin: 0 !important;
  }
  #page-kontakt > div:nth-of-type(2) {
    padding-top: 1.35rem !important;
    padding-bottom: 6.2rem !important;
  }
  .contact-main-grid {
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }
  .contact-form-shell {
    order: 1;
    padding: 1.05rem !important;
    border-radius: 8px;
    box-shadow: 0 10px 28px rgba(28,43,66,.06);
  }
  .contact-info-col {
    order: 2;
  }
  .contact-form-shell h2,
  .contact-form-shell h3 {
    font-size: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .form-row {
    grid-template-columns: 1fr !important;
    gap: .62rem !important;
    margin-bottom: .62rem !important;
  }
  .f-lbl {
    font-size: 11.5px !important;
    margin-bottom: .22rem !important;
  }
  .f-inp,
  .f-sel,
  .f-ta {
    font-size: 16px !important;
    min-height: 46px;
    padding: .68rem .78rem !important;
    margin-bottom: .68rem !important;
    border-radius: 6px;
    background: #fbfaf7 !important;
  }
  .f-ta {
    min-height: 92px !important;
  }
  #page-kontakt button[type="submit"],
  #home-contact-form button[type="submit"] {
    min-height: 50px;
    padding: .78rem .9rem !important;
    font-size: .82rem !important;
    line-height: 1.25;
  }
  #page-kontakt form > div[style*="display:flex;align-items:flex-start"],
  #home-contact-form > div[style*="display:flex;align-items:flex-start"] {
    margin-bottom: .85rem !important;
  }
  #page-kontakt form label[for^="dsgvo"],
  #home-contact-form label[for^="dsgvo"] {
    font-size: .7rem !important;
    line-height: 1.42 !important;
  }
  #page-kontakt form > div:last-child,
  #home-contact-form > div:last-child {
    font-size: .68rem !important;
    line-height: 1.35 !important;
    flex-wrap: wrap;
  }
  .contact-info-col > div {
    margin-bottom: .8rem !important;
  }
  .contact-info-col a {
    min-height: 46px;
    border-radius: 6px;
  }
}
@media(max-width:520px) {
  .contact-form-shell {
    padding: .9rem !important;
  }
  .f-inp,
  .f-sel,
  .f-ta {
    margin-bottom: .55rem !important;
  }
  .form-row {
    gap: .5rem !important;
    margin-bottom: .5rem !important;
  }
}

/* SUBPAGES */
.subhero{background:var(--ink2);padding:3.5rem 2.5rem 2.5rem;position:relative;overflow:hidden}
.subhero::before{content:'';position:absolute;right:-80px;top:-80px;width:300px;height:300px;border:50px solid rgba(184,147,90,.07);border-radius:50%}
.breadcrumb{display:flex;align-items:center;gap:7px;font-size:11.5px;color:rgba(255,255,255,.70);margin-bottom:.9rem;position:relative;z-index:1}
.breadcrumb span{color:var(--gold)}
.subhero-inner{position:relative;z-index:1}
.subhero-eye{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:.55rem;font-weight:600}
.subhero h1{font-size:2.3rem;font-weight:700;color:var(--w);line-height:1.15;letter-spacing:-.02em;margin-bottom:.75rem;word-break:break-word;overflow-wrap:break-word;hyphens:auto}
.subhero-lead{color:rgba(255,255,255,.90);font-size:.925rem;max-width:580px;line-height:1.75;margin-bottom:1.6rem}
.subhero-actions{display:flex;gap:.85rem;flex-wrap:wrap}
.two-col{display:grid;grid-template-columns:2fr 1fr;gap:2.5rem;align-items:start;padding:2.5rem 2.5rem;background:var(--w)}
.info-block{margin-bottom:1.8rem}
.info-block h2{font-size:1.15rem;font-weight:700;color:var(--ink);margin-bottom:.62rem;letter-spacing:-.01em}
.info-block p{font-size:.875rem;color:#444;line-height:1.76;margin-bottom:.7rem}
.checklist{list-style:none;margin:.4rem 0 1rem}
.checklist li{padding:.38rem 0;font-size:.86rem;color:#333;display:flex;align-items:flex-start;gap:8px;border-bottom:1px solid var(--border)}
.checklist li:last-child{border:none}
.check-icon{width:16px;height:16px;background:var(--green2);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;font-size:9px;color:var(--green);font-weight:700}
.tag-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:.55rem}
.tag{background:var(--off);border:1px solid var(--border);padding:3px 10px;font-size:11px;color:var(--muted)}
.sidebar-card{background:var(--w);border:1px solid var(--border);padding:1.4rem;margin-bottom:1.1rem}
.sc-label{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:.42rem}
.sc-h{font-size:1.4rem;font-weight:700;color:var(--ink);margin-bottom:.32rem}
.sc-p{font-size:.82rem;color:var(--muted);line-height:1.55;margin-bottom:.9rem}
.sc-cta{width:100%;background:var(--accent);color:var(--w);border:none;padding:.7rem;font-size:13px;font-weight:600;cursor:pointer}
.sc-cta:hover{background:var(--accent2)}
.sc-featured{border-top:3px solid var(--gold)}
.pstep{display:flex;gap:.85rem;margin-bottom:.95rem;align-items:flex-start}
.pstep-num{width:29px;height:29px;background:var(--ink2);color:var(--w);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pstep-content h4{font-size:.87rem;font-weight:700;color:var(--ink);margin-bottom:.13rem}
.pstep-content p{font-size:.78rem;color:var(--muted);line-height:1.5}
.immo-selector{background:var(--w);padding:2.5rem 2.5rem;border-bottom:1px solid var(--border)}
.immo-sel-h{font-size:1.2rem;font-weight:700;color:var(--ink);margin-bottom:1.4rem;text-align:center}
.immo-icons{display:flex;justify-content:center;gap:1px;background:var(--border);flex-wrap:wrap}
.ii{background:var(--cream);padding:1.3rem 1.5rem;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.55rem;transition:background .2s;min-width:120px;flex:1}
.ii:hover,.ii.active{background:var(--ink2)}
.ii:hover .ii-lbl,.ii.active .ii-lbl{color:var(--gold2)}
.ii svg path,.ii svg rect,.ii svg polyline{stroke:var(--muted);fill:none;stroke-width:1.5;transition:stroke .2s}
.ii:hover svg path,.ii:hover svg rect,.ii.active svg path,.ii.active svg rect{stroke:var(--gold2)}
.ii-lbl{font-size:11.5px;font-weight:600;color:var(--muted);text-align:center;transition:color .2s}

footer{background:#0c1220;padding:1.5rem 2.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.6rem}
footer p{color:rgba(255,255,255,.65);font-size:.77rem}
.foot-links{display:flex;gap:1.5rem}
.foot-links a{color:rgba(255,255,255,.62);font-size:.77rem;text-decoration:none}
.foot-links a:hover{color:var(--gold2)}


/* Team hover */
.team-section img { transition: transform 0.25s, box-shadow 0.25s; }
.team-section img:hover { transform: scale(1.05); box-shadow: 0 8px 24px rgba(0,0,0,0.15); }
/* Gallery hover */
.gallery-img { overflow: hidden; }
.gallery-img img { transition: transform 0.4s; }
.gallery-img img:hover { transform: scale(1.05); }

/* ===== VERBESSERUNGEN ===== */

/* 1. Scroll-Animationen */
.fade-in {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}
.fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Dezente Premium-Animationen */
@keyframes pfHeroRise {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes pfSoftPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(184,147,90,.16); }
  50% { box-shadow: 0 0 0 8px rgba(184,147,90,0); }
}
.hero-content h1,
.hero-mobile-eye,
.hero-mobile-tagline,
.hero-proof-item,
.hero-btns {
  animation: pfHeroRise .65s cubic-bezier(.2,.72,.24,1) both;
}
.hero-mobile-eye { animation-delay: .03s; }
.hero-content h1 { animation-delay: .08s; }
.hero-mobile-tagline { animation-delay: .13s; }
.hero-proof-item:nth-child(1) { animation-delay: .18s; }
.hero-proof-item:nth-child(2) { animation-delay: .26s; }
.hero-proof-item:nth-child(3) { animation-delay: .34s; }
.hero-btns { animation-delay: .42s; }
.hero-proof-icon,
.home-service-icon,
.wfl-guide-icon {
  transition: transform .28s cubic-bezier(.2,.72,.24,1), border-color .28s, background .28s;
}
.hero-proof-item:hover .hero-proof-icon,
.home-service-card:hover .home-service-icon,
.wfl-guide-card:hover .wfl-guide-icon {
  transform: translateY(-2px);
  border-color: rgba(212,174,120,.58);
}
.btn-gold:hover,
.btn-ghost:hover,
.btn-nav:hover,
.home-service-link:hover {
  transform: translateY(-2px);
}
.hero-proof-item.primary .hero-proof-icon {
  animation: pfSoftPulse 2.8s ease-in-out 1.2s infinite;
}
.pf-motion-ready .pf-reveal {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity .62s cubic-bezier(.2,.72,.24,1), transform .62s cubic-bezier(.2,.72,.24,1), box-shadow .25s, border-color .25s;
  transition-delay: var(--pf-delay, 0ms);
}
.pf-motion-ready .pf-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.pf-motion-ready .pf-reveal-left {
  transform: translateX(-22px);
}
.pf-motion-ready .pf-reveal-right {
  transform: translateX(22px);
}
.pf-motion-ready .pf-reveal-left.is-visible,
.pf-motion-ready .pf-reveal-right.is-visible {
  transform: translateX(0);
}
.stat-big {
  transition: background .28s, transform .28s, box-shadow .28s;
}
.stat-big:hover {
  transform: translateY(-3px);
  background: #22344f;
  box-shadow: 0 18px 34px rgba(0,0,0,.18);
}
.stat-big-num {
  font-variant-numeric: tabular-nums;
}
.home-service-link svg,
.btn-gold,
.btn-ghost {
  transition: transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.home-service-card:hover .home-service-link svg {
  transform: translateX(3px);
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
  .pf-motion-ready .pf-reveal,
  .pf-motion-ready .pf-reveal-left,
  .pf-motion-ready .pf-reveal-right {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* 2. Nav-Schatten beim Scrollen */
nav.scrolled {
  box-shadow: 0 4px 24px rgba(0,0,0,0.35);
}

/* 3. Button-Hover — unified for ALL buttons */
.btn-gold, .btn-ghost, .btn-nav, .qf-btn, .f-sub, .sc-cta, .grg-cta, .cm-cta, .tb-cta1, .tb-cta2,
button[style*="background:var(--gold)"],
button[style*="background:var(--ink2)"],
button[style*="background:#0a1520"],
a[style*="border:1px solid rgba(184,147,90"] {
  transition: background 0.2s, transform 0.15s, box-shadow 0.2s, border-color 0.2s !important;
  cursor: pointer;
}
/* Gold buttons: lift + gold shadow */
.btn-gold:hover, .qf-btn:hover, .tb-cta1:hover, .btn-nav:hover, .grg-cta:hover, .cm-cta:hover,
button[style*="background:var(--gold)"]:hover {
  /* background bewusst entfernt: --gold2 (#d4ae78) mit weisser Schrift
     ergibt 2,06:1 und hebelte die Barrierefreiheits-Korrektur von
     06/2026 (pf-slim.css) genau im Hover-Zustand wieder aus.
     Die Rueckmeldung uebernehmen jetzt Versatz und Schatten. */
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(184,147,90,0.4);
}
/* Dark buttons: gold border + subtle lift */
button[style*="background:var(--ink2)"]:hover,
button[style*="background:#0a1520"]:hover {
  background: #1a3050 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(0,0,0,0.3);
  border-color: rgba(184,147,90,.4) !important;
}
/* Ghost/outline buttons: border brightens */
.btn-ghost:hover, .tb-cta2:hover,
a[style*="border:1px solid rgba(184,147,90"]:hover {
  border-color: var(--gold2) !important;
  color: var(--gold2) !important;
  transform: translateY(-1px);
}
/* Form submit (accent color) */
.f-sub:hover, .sc-cta:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(26,58,92,0.3);
}
/* Sticky CTA button */
#sticky-cta button:hover {
  background: #785b30 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(184,147,90,0.4);
}
#sticky-cta a:hover {
  border-color: rgba(255,255,255,.5) !important;
  color: #fff !important;
}

/* 7. Ruhigerer Conversion-Layer: eine klare Leiste statt mehrere konkurrierende Helfer */
#sticky-cta {
  border-top-width: 1px !important;
  padding: .68rem 2rem !important;
  background: rgba(20,31,49,.97) !important;
  backdrop-filter: blur(10px);
}
#sticky-cta > div {
  max-width: 1080px !important;
}
#sticky-cta .sticky-trust {
  min-width: 0;
}
#sticky-cta button,
#sticky-cta a {
  min-height: 42px;
}
#whatsapp-btn {
  display: none !important;
}
@media(max-width:900px) {
  #scroll-top {
    display: none !important;
  }
  #sticky-cta .sticky-trust {
    display: none !important;
  }
  #sticky-cta {
    padding: .62rem 1rem !important;
  }
  #sticky-cta > div {
    justify-content: center !important;
  }
  #sticky-cta a {
    display: none !important;
  }
  #sticky-cta > div > div:last-child {
    width: 100% !important;
    max-width: 520px !important;
    display: grid !important;
    grid-template-columns: .9fr 1.25fr !important;
    gap: .55rem !important;
  }
  #sticky-cta a[href^="tel:"] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    padding: .55rem .75rem !important;
    color: #fff !important;
    background: rgba(255,255,255,.07) !important;
    border: 1px solid rgba(184,147,90,.35) !important;
    border-radius: 4px !important;
    font-size: .78rem !important;
    white-space: nowrap !important;
  }
  #sticky-cta a[href^="tel:"] svg {
    width: 15px !important;
    height: 15px !important;
  }
  #sticky-cta button {
    width: 100% !important;
    min-height: 46px !important;
    padding: .55rem .8rem !important;
    font-size: .78rem !important;
  }
}

/* 8. Mehr Premium-Ruhe in den langen Startseitenabschnitten */
#page-home .sec-leistungen,
#page-home .process {
  padding-top: 4.4rem !important;
  padding-bottom: 4.6rem !important;
}
#page-home .cases,
#page-home .reviews,
#page-home .about,
#page-home .faq {
  padding-top: 4.7rem !important;
  padding-bottom: 4.7rem !important;
}
#page-home .grid-4,
#page-home .process-steps,
#page-home .faq-grid {
  margin-top: 2.6rem !important;
}
#page-home .section-h,
#page-home h2 {
  letter-spacing: 0 !important;
}
#page-home .rv-slide,
#page-home .case-card,
#page-home .contact-form {
  box-shadow: 0 10px 32px rgba(28,43,66,.06);
}
#page-home .stat-big {
  padding-top: 1.35rem !important;
  padding-bottom: 1.35rem !important;
}

/* 9. Tablet-Navigation: Desktop-Menü passt bei ~1000px nicht mehr sauber */
@media(max-width:1120px) {
  #mobile-menu-btn {
    display: flex !important;
    margin-left: auto;
  }
  .nav-center,
  .nav-right {
    display: none !important;
  }
  .nav-center.open {
    display: flex !important;
    flex-direction: column;
    position: fixed;
    top: 66px;
    left: 0;
    right: 0;
    background: var(--ink2);
    padding: .4rem 0;
    z-index: 9999;
    border-top: 2px solid rgba(184,147,90,.3);
    box-shadow: 0 12px 32px rgba(0,0,0,.5);
    max-height: calc(100vh - 66px);
    overflow-y: auto;
  }
  .nav-center.open .nav-btn {
    height: 48px !important;
    padding: 0 1.2rem !important;
    font-size: 13.5px !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
    width: 100%;
    text-align: left;
    color: var(--gold2) !important;
  }
  .nav-center.open .nav-dd {
    width: 100%;
    display: flex;
    flex-direction: column;
  }
  .nav-center.open .nav-dd-menu {
    display: block !important;
    position: static !important;
    transform: none !important;
    width: 100% !important;
    border: none !important;
    box-shadow: none !important;
    background: rgba(0,0,0,.18) !important;
    padding: .2rem 0 .3rem !important;
  }
  .nav-center.open .nav-dd-menu .dd-item {
    padding: .45rem 1.2rem .45rem 2rem !important;
    min-height: 40px !important;
  }
  .nav-center.open .nav-dd-menu .dd-item svg,
  .nav-center.open .nav-dd-menu .dd-item span,
  .nav-center.open .nav-dd-menu .dd-sep,
  .nav-center.open .nav-dd-menu .dd-service {
    display: none !important;
  }
  .nav-center.open .nav-dd-menu .dd-item b {
    font-size: .76rem !important;
    color: rgba(255,255,255,.72) !important;
    font-weight: 500 !important;
  }
  .nav-center.open .nav-dd-menu .dd-lbl {
    padding: .35rem 2rem .15rem !important;
    font-size: .5rem !important;
    color: rgba(184,147,90,.5) !important;
  }
  #mobile-menu-btn span {
    width: 22px !important;
  }
}
@media(min-width:901px) and (max-width:1120px) {
  .nav-center.open {
    top: 122px !important;
    max-height: calc(100vh - 122px) !important;
  }
}
@media(min-width:601px) and (max-width:900px) {
  .nav-center.open {
    top: 106px !important;
    max-height: calc(100vh - 106px) !important;
  }
}
@media(max-width:600px) {
  .nav-center.open {
    top: 66px !important;
    max-height: calc(100vh - 66px) !important;
  }
}
@media(max-width:400px) {
  .nav-center.open {
    top: 52px !important;
    max-height: calc(100vh - 52px) !important;
  }
}
/* Logo hover */
.logo:hover { opacity: .85; }
.logo { transition: opacity .2s; }

/* 4. Google-Badge position - weiter unten und kleiner damit es weniger stört */
.floating-badge {
  bottom: 1rem !important;
  left: 1rem !important;
  font-size: 10px;
}

/* 5. Hero Stats vollständig anzeigen */
.hero-stats {
  margin-top: 2rem;
}

/* 6. Doppelter Footer fix - nur Footer der aktiven Page zeigen */
.page:not(.active) footer{display:none!important}
/* Footer links hover */
footer a:hover { color: var(--gold2) !important; text-decoration: underline !important; }
a[onclick*="showPage"] { cursor: pointer; }
a[onclick*="showPage"]:hover { opacity: .8; }


/* 7. Service Card hover - Cursor pointer überall */
.sv-card, .case-card {
  cursor: pointer;
}

/* ===== MOBILE RESPONSIVE ===== */

/* ══════════════════════════════════════════════════
   COMPREHENSIVE MOBILE + TABLET STYLES
   Tablet: max-width 900px
   Mobile: max-width 600px
   Small mobile: max-width 400px
══════════════════════════════════════════════════ */

/* ── GLOBAL ── */

/* ══════════════════════════════════════════════════
   MOBILE RESPONSIVE — CLASS-BASED (RELIABLE)
   Breakpoints: 900px tablet, 600px mobile, 400px small
══════════════════════════════════════════════════ */

/* Fix overflow root cause — comprehensive */
html, body { overflow-x: clip !important; max-width: 100vw !important; width: 100% !important; }
* { box-sizing: border-box; }
img, video, iframe, table { max-width: 100%; }
.page { overflow-x: hidden; max-width: 100vw; }
/* Prevent decorative circles from causing overflow */
.hero, .subhero, .hl-wfl, .hl-rnd, .process, section { overflow: hidden; }
/* Prevent any inline-styled container from overflowing */
div[style*="position:relative"], div[style*="position:absolute"] { max-width: 100vw; }
/* Nav and fixed elements */
nav, .topbar, #sticky-cta { max-width: 100vw !important; width: 100% !important; }
/* Trust bar: allow wrapping on small screens */
@media(max-width:900px) {
  .trust-bar { flex-wrap: wrap !important; overflow-x: hidden !important; }
  .trust-bar .ti { white-space: normal !important; }
}

/* ── HAMBURGER BUTTON ── */
#mobile-menu-btn { display: none; }
@media(max-width:900px) {
  #mobile-menu-btn { display: flex !important; margin-left: auto; }
  .nav-center, .nav-right { display: none !important; }
  .nav-center.open {
    display: flex !important;
    flex-direction: column;
    position: fixed;
    top: 62px; left: 0; right: 0;
    background: var(--ink2);
    padding: .4rem 0;
    z-index: 9999;
    border-top: 2px solid rgba(184,147,90,.3);
    box-shadow: 0 12px 32px rgba(0,0,0,.5);
    max-height: calc(100vh - 62px);
    overflow-y: auto;
  }
  .nav-center.open .nav-btn {
    height: 48px !important;
    padding: 0 1.2rem !important;
    font-size: 13.5px !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
    width: 100%;
    text-align: left;
    color: var(--gold2) !important;
  }
  .nav-center.open .nav-dd { width: 100%; display:flex;flex-direction:column; }
  .nav-center.open .nav-dd-menu {
    display: block !important;
    position: static !important;
    transform: none !important;
    width: 100% !important;
    border: none !important;
    border-top: none !important;
    box-shadow: none !important;
    background: rgba(0,0,0,.18) !important;
    padding: .2rem 0 .3rem !important;
  }
  .nav-center.open .nav-dd-menu .dd-item {
    padding: .45rem 1.2rem .45rem 2rem !important;
    border-left: none !important;
    min-height: 40px !important;
  }
  .nav-center.open .nav-dd-menu .dd-item svg { display: none !important; }
  .nav-center.open .nav-dd-menu .dd-item b {
    font-size: .76rem !important;
    color: rgba(255,255,255,.7) !important;
    font-weight: 500 !important;
  }
  .nav-center.open .nav-dd-menu .dd-item span {
    display: none !important;
  }
  .nav-center.open .nav-dd-menu .dd-lbl {
    padding: .35rem 2rem .15rem !important;
    font-size: .5rem !important;
    color: rgba(184,147,90,.5) !important;
  }
  .nav-center.open .nav-dd-menu .dd-sep {
    display: none !important;
  }
  .nav-center.open .nav-dd-menu .dd-service {
    display: none !important;
  }
  .logo-city { display: none; }
}

/* ── ALL SECTIONS: safe padding ── */
@media(max-width:900px) {
  section, .contact-section { padding-top: 2rem !important; padding-bottom: 2rem !important; }
  section > div, .contact-inner { padding-left: 1.2rem !important; padding-right: 1.2rem !important; }
}
@media(max-width:600px) {
  section > div, .contact-inner { padding-left: 1rem !important; padding-right: 1rem !important; }
}

/* ── HERO ── */



/* ── TRUST BAR ── */
@media(max-width:600px) {
  .trust-bar { gap: .5rem !important; padding: .6rem 1rem !important; font-size: .72rem !important; flex-wrap: wrap !important; }
  .ts { display: none !important; }
}

/* ── STATS STRIP ── */
@media(max-width:900px) {
  .grid-4-stats { grid-template-columns: 1fr 1fr !important; }
}
@media(max-width:400px) {
  .stat-big-num { font-size: 1.3rem !important; }
}

/* ── 4-COL GRIDS → 2-col tablet, 1-col mobile ── */
@media(max-width:900px) {
  .grid-4 { grid-template-columns: 1fr 1fr !important; gap: .8rem !important; }
}
@media(max-width:500px) {
  .grid-4 { grid-template-columns: 1fr !important; }
}

/* ── 2-COL GRIDS → 1-col ── */
@media(max-width:900px) {
  .grid-2 { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .grid-2-sm { grid-template-columns: 1fr 1fr !important; }
}
@media(max-width:400px) {
  .grid-2-sm { grid-template-columns: 1fr !important; }
}

/* ── LEISTUNGEN SECTION ── */
@media(max-width:900px) {
  .sec-leistungen > div > div[style*="margin-bottom"] { margin-bottom: 1.2rem !important; }
  .sec-leistungen > div > .grid-4 > div { padding: 1.2rem 1rem !important; }
}

/* ── FALLBEISPIELE CAROUSEL ── */
@media(max-width:900px) {
  .case-slide { flex: 0 0 calc(50% - .6rem) !important; min-width: calc(50% - .6rem) !important; }
  .case-slide div[style*="height:160px"] { height: 130px !important; }
}
@media(max-width:600px) {
  .case-slide { flex: 0 0 100% !important; min-width: 100% !important; }
}

/* ── REVIEWS CAROUSEL ── */
@media(max-width:900px) {
  .rv-slide { flex: 0 0 calc(50% - .6rem) !important; min-width: calc(50% - .6rem) !important; }
}
@media(max-width:600px) {
  .rv-slide { flex: 0 0 100% !important; min-width: 100% !important; }
}
@media(max-width:900px) {
  #rv-track { padding: 0 !important; }
  .rv-carousel { padding: 0 !important; overflow: hidden; }
}

/* ── ABOUT SECTION ── */
@media(max-width:900px) {
  .sec-about > div { padding: 0 1.2rem !important; }
}

/* ── SACHVERSTÄNDIGER SECTION ── */
@media(max-width:900px) {
  .sec-sach > div { padding: 0 1.2rem !important; }
  .sec-sach div[style*="grid-template-columns:1fr 1fr;gap:.5rem"] { grid-template-columns: 1fr 1fr !important; }
}

/* ── PROCESS ── */
@media(max-width:900px) {
  .sec-process > div { padding: 0 1.2rem !important; }
  .sec-process div[style*="position:absolute;top:22px"] { display: none !important; }
  .sec-process .grid-4 { grid-template-columns: 1fr 1fr !important; }
}
@media(max-width:500px) {
  .sec-process .grid-4 { grid-template-columns: 1fr !important; }
  .sec-process div[style*="flex-direction:column;align-items:center"] { flex-direction: row !important; align-items: flex-start !important; text-align: left !important; }
}

/* ── FAQ ── */
@media(max-width:900px) {
  .sec-faq > div { padding: 0 1.2rem !important; }
  .sec-faq h2 { font-size: 1.3rem !important; }
}

/* ── CONTACT ── */
@media(max-width:900px) {
  .contact-section { padding: 2rem 0 !important; }
  .contact-inner { grid-template-columns: 1fr !important; gap: 1.5rem !important; padding: 0 1.2rem !important; }
  .cs-h { font-size: 1.25rem !important; }
}

/* ── SUBPAGES ── */
@media(max-width:900px) {
  .subhero { min-height: auto !important; padding: 2rem 1.2rem 1.8rem !important; }
  .subhero h1 { font-size: 1.7rem !important; line-height: 1.15 !important; margin-bottom: .6rem !important; }
  .subhero-lead { font-size: .82rem !important; line-height: 1.65 !important; margin-bottom: 1rem !important; max-width: 100% !important; }
  .subhero-eye { font-size: .65rem !important; margin-bottom: .35rem !important; }
  .subhero-actions { gap: .5rem !important; }
  .subhero-actions .btn-gold, .subhero-actions .btn-ghost { font-size: .78rem !important; padding: .6rem 1rem !important; }
  .subhero-inner { padding: 0 !important; }
  .two-col { grid-template-columns: 1fr !important; padding: 1.5rem 1.2rem !important; }
  .subhero-inner, .breadcrumb { padding: 0 1.2rem !important; }
  .cta-strip-inner { flex-direction: column !important; gap: .8rem !important; }
}
@media(max-width:600px) {
  .two-col { padding: 1.2rem 1rem !important; }
  .subhero-inner, .breadcrumb { padding: 0 1rem !important; }
}

/* ── FOOTER ── */
@media(max-width:900px) {
  #site-footer > div[style*="grid-template-columns"] { grid-template-columns: 1fr 1fr !important; gap: 1.5rem !important; }
}
@media(max-width:600px) {
  #site-footer > div[style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
  #site-footer { padding: 2rem 1rem 0 !important; }
}

/* ── STICKY BAR ── */
@media(max-width:600px) {
  #sticky-cta { padding: .6rem 1rem !important; }
  #sticky-cta .sticky-trust { display: none !important; }
  #sticky-cta > div > div:last-child { grid-template-columns: .85fr 1.2fr !important; gap: .45rem !important; }
  #sticky-cta a[href^="tel:"],
  #sticky-cta button { font-size: .72rem !important; padding: .5rem .55rem !important; min-height: 44px !important; }
  #sticky-cta a[href^="tel:"] svg { width: 14px !important; height: 14px !important; }
}

/* ── GLOBAL HEADING SIZES MOBILE ── */
@media(max-width:600px) {
  .section-h { font-size: 1.3rem !important; }
  h2 { font-size: 1.3rem !important; }
}

/* ── GENERAL OVERFLOW PREVENTION ── */
@media(max-width:900px) {
  img { max-width: 100%; height: auto; }
  iframe, video { max-width: 100%; }
  [style*="min-width:calc(33"] { min-width: 0 !important; }
}
/* Ensure case/rv carousels don't overflow */
.sec-cases > div { overflow: hidden; }
#rv-track-wrapper { overflow: hidden; }
/* All inline-grid 4-col cards responsive */
@media(max-width:900px) {
  div[style*="grid-template-columns:repeat(4,1fr)"] { grid-template-columns: 1fr 1fr !important; gap: .8rem !important; }
  div[style*="grid-template-columns:1fr 1.35fr"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:1.1fr .9fr"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:1fr 1.1fr"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:1.1fr 1fr"] { grid-template-columns: 1fr !important; }
}
@media(max-width:500px) {
  div[style*="grid-template-columns:repeat(4,1fr)"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:repeat(3,1fr)"] { grid-template-columns: 1fr !important; }
}
/* Subpage two-col grids */
@media(max-width:900px) {
  .two-col { grid-template-columns: 1fr !important; }
}
/* ── HERO MOBILE COMPREHENSIVE ── */
@media(max-width:900px){
  /* removed conflicting rule */
  .hero::before,.hero::after{display:none !important}
  .hero-inner{grid-template-columns:1fr !important;gap:1.5rem !important;padding:0 !important;width:100% !important;max-width:100% !important}
  .qf{width:100% !important;box-sizing:border-box !important;margin:0 !important}
  .hero-content{max-width:100% !important}
  .hero-kicker{font-size:10px !important;padding:4px 10px !important;white-space:normal !important;max-width:100% !important}
  .hero-kicker img{height:28px !important;margin-right:6px !important}
  /* removed conflicting rule */
  .hero-lead{font-size:.875rem !important;margin-bottom:1.4rem !important;max-width:100% !important}
  .hero-btns{flex-direction:column !important;gap:.6rem !important;margin-bottom:1.4rem !important}
  .hero-btns .btn-gold,.hero-btns .btn-ghost{width:100% !important;text-align:center !important;padding:.75rem 1rem !important;font-size:.82rem !important}
  .hero-trust{gap:.5rem !important;flex-wrap:wrap !important}
  .ht-badge{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;color:rgba(255,255,255,.75);white-space:nowrap}
  .hero-stats{grid-template-columns:1fr 1fr 1fr !important;margin-top:1.5rem !important;gap:0 !important}
  .hero-stat{padding:.7rem .4rem !important}
  .hero-stat-num{font-size:1.2rem !important}
}
@media(max-width:600px){
  /* removed */
  /* removed conflicting rule */
  .hero-stats{margin-top:1.2rem !important}
  .hero-stat-num{font-size:1.1rem !important}
  .hero-stat-label{font-size:.62rem !important}
}
@media(max-width:900px){
  .g-badge{bottom:.8rem !important;left:.8rem !important;padding:.4rem .65rem !important;font-size:.72rem !important}
  .fb-text{font-size:.72rem !important}
  .fb-stars{font-size:10px !important}
}
@media(max-width:600px){
  .g-badge{display:none !important}
}

.hero-proof-list {
  display: grid;
  gap: .65rem;
  margin-bottom: 1.55rem !important;
  max-width: 610px;
}
.hero-proof-item {
  display: flex !important;
  align-items: flex-start;
  gap: .72rem !important;
  padding: .74rem .86rem !important;
  background: linear-gradient(90deg, rgba(10,18,28,.82), rgba(255,255,255,.055));
  border: 1px solid rgba(184,147,90,.30);
  border-left: 3px solid var(--gold);
  border-radius: 8px;
  box-shadow: 0 12px 28px rgba(0,0,0,.20);
  backdrop-filter: blur(5px);
}
.hero-proof-item.primary {
  background: linear-gradient(90deg, rgba(184,147,90,.20), rgba(10,18,28,.72));
  border-color: rgba(212,174,120,.48);
  box-shadow: 0 16px 36px rgba(0,0,0,.26);
}
.hero-proof-icon {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(184,147,90,.16);
  border: 1px solid rgba(184,147,90,.34);
  border-radius: 8px;
  color: var(--gold2);
}
.hero-proof-icon svg {
  width: 17px;
  height: 17px;
  stroke: currentColor;
  stroke-width: 2;
  fill: none;
}
.hero-proof-copy {
  min-width: 0;
}
.hero-proof-label {
  display: block;
  color: var(--gold2);
  font-size: .58rem;
  font-weight: 850;
  letter-spacing: .12em;
  line-height: 1.2;
  text-transform: uppercase;
  margin-bottom: .22rem;
}
.hero-proof-text {
  display: block;
  color: #fff;
  font-size: .88rem;
  font-weight: 700;
  line-height: 1.35;
  text-shadow: 0 1px 3px rgba(0,0,0,.28);
}
@media(max-width:900px) {
  .hero-proof-list {
    gap: .55rem !important;
    margin-bottom: 1.25rem !important;
  }
  .hero-bullets > .hero-proof-item {
    padding: .68rem .74rem !important;
    font-size: initial !important;
    line-height: initial !important;
  }
  .hero-proof-icon {
    width: 32px;
    height: 32px;
    flex-basis: 32px;
  }
  .hero-proof-text {
    font-size: .82rem;
  }
}
@media(max-width:420px) {
  .hero-proof-text {
    font-size: .78rem;
  }
  .hero-proof-label {
    font-size: .54rem;
  }
}

.about-founder-card {
  background: var(--w);
  border: 1px solid var(--border);
  border-left: 3px solid rgba(184,147,90,.55);
  border-radius: 8px;
  padding: 1.35rem 1.45rem;
  margin-bottom: 2.25rem;
  display: flex;
  align-items: center;
  gap: 1.2rem;
  box-shadow: 0 10px 28px rgba(28,43,66,.05);
}
.about-founder-photo {
  width: 92px;
  height: 92px;
  border-radius: 8px;
  object-fit: cover;
  object-position: center 15%;
  flex: 0 0 92px;
  border: 1px solid rgba(184,147,90,.28);
}
.about-founder-copy {
  flex: 1;
  min-width: 0;
}
.about-founder-role {
  font-size: .64rem;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: .25rem;
  font-weight: 800;
}
.about-founder-name {
  font-size: 1.05rem;
  font-weight: 780;
  color: var(--ink);
  margin-bottom: .45rem;
}
.about-founder-copy p {
  font-size: .86rem;
  color: var(--muted);
  line-height: 1.7;
  margin: 0 0 .85rem;
  max-width: 690px;
}
.about-founder-tags {
  display: flex;
  gap: .45rem;
  flex-wrap: wrap;
}
.about-founder-tags span {
  display: inline-flex;
  align-items: center;
  gap: .34rem;
  font-size: .72rem;
  color: var(--ink2);
  background: rgba(184,147,90,.08);
  border: 1px solid rgba(184,147,90,.16);
  border-radius: 999px;
  padding: .28rem .58rem;
}
.about-founder-tags svg {
  width: 12px;
  height: 12px;
  stroke: var(--gold);
  stroke-width: 2.2;
  fill: none;
  flex: 0 0 12px;
}
@media(max-width:700px) {
  .about-founder-card {
    align-items: flex-start;
    padding: 1rem;
    gap: .85rem;
  }
  .about-founder-photo {
    width: 72px;
    height: 72px;
    flex-basis: 72px;
  }
  .about-founder-name {
    font-size: .98rem;
  }
  .about-founder-copy p {
    font-size: .82rem;
  }
  .about-founder-tags span {
    font-size: .68rem;
  }
}

.home-process-head {
  text-align: center;
  margin-bottom: 2.5rem;
}
.home-process-wrap {
  position: relative;
}
.home-process-line {
  position: absolute;
  top: 22px;
  left: calc(12.5% + 11px);
  right: calc(12.5% + 11px);
  height: 1px;
  background: linear-gradient(90deg,var(--gold) 0%,rgba(184,147,90,.3) 100%);
  z-index: 0;
}
.home-process-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 1.5rem;
  position: relative;
  z-index: 1;
}
.home-process-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.home-process-num {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--gold);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .85rem;
  font-weight: 800;
  color: #0a1520;
  margin-bottom: 1.1rem;
  flex-shrink: 0;
  box-shadow: 0 0 0 6px rgba(184,147,90,.15);
}
.home-process-card {
  padding: 1.2rem 1rem;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 10px;
  width: 100%;
  transition: border-color .2s;
}
.home-process-card.final {
  background: rgba(184,147,90,.18);
  border-color: rgba(184,147,90,.4);
}
.home-process-title {
  font-size: .88rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: .5rem;
}
.home-process-text {
  font-size: .77rem;
  color: rgba(255,255,255,.8);
  line-height: 1.65;
}
.home-process-card.final .home-process-text {
  color: rgba(255,255,255,.85);
}
@media(max-width:900px) {
  .sec-process {
    padding-top: 1.8rem !important;
    padding-bottom: 1.9rem !important;
  }
  .sec-process .home-process-head {
    margin-bottom: 1rem !important;
  }
  .sec-process .home-process-head h2 {
    font-size: 1.24rem !important;
  }
  .sec-process .home-process-line {
    display: none;
  }
  .sec-process .home-process-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: .65rem !important;
  }
  .sec-process .home-process-step {
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
    gap: .52rem;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    padding: .72rem .72rem .76rem !important;
    min-height: 142px;
  }
  .sec-process .home-process-step:last-child {
    background: rgba(184,147,90,.13);
    border-color: rgba(184,147,90,.28);
  }
  .sec-process .home-process-num {
    width: 28px;
    height: 28px;
    flex-basis: 28px;
    margin: 0 !important;
    box-shadow: none;
    font-size: .72rem;
  }
  .sec-process .home-process-card,
  .sec-process .home-process-card.final {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
  }
  .sec-process .home-process-title {
    font-size: .8rem;
    margin-bottom: .18rem;
    line-height: 1.25;
  }
  .sec-process .home-process-text {
    font-size: .68rem;
    line-height: 1.36;
    color: rgba(255,255,255,.68);
  }
}
@media(max-width:420px) {
  .sec-process .home-process-grid {
    gap: .5rem !important;
  }
  .sec-process .home-process-step {
    padding: .62rem .58rem .66rem !important;
    min-height: 132px;
  }
  .sec-process .home-process-title {
    font-size: .74rem;
  }
  .sec-process .home-process-text {
    font-size: .64rem;
    line-height: 1.32;
  }
}




/* Mobile-Unterseiten 2026-05: kompaktere Blöcke, keine abgeschnittenen Raster */
@media(max-width:700px) {
  .page:not(#page-home) {
    overflow-x: hidden !important;
  }
  .page:not(#page-home) section,
  .page:not(#page-home) .contact-section {
    padding-top: 1.75rem !important;
    padding-bottom: 1.85rem !important;
  }
  .page:not(#page-home) section > div,
  .page:not(#page-home) .contact-inner,
  .page:not(#page-home) .subhero-inner,
  .page:not(#page-home) .breadcrumb {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    box-sizing: border-box !important;
  }
  .page:not(#page-home) .subhero {
    min-height: auto !important;
    padding: 4.6rem 0 2.05rem !important;
  }
  .page:not(#page-home) .subhero h1 {
    font-size: clamp(1.65rem, 7.2vw, 2.05rem) !important;
    line-height: 1.08 !important;
    margin-bottom: .72rem !important;
  }
  .page:not(#page-home) .subhero-lead {
    font-size: .95rem !important;
    line-height: 1.58 !important;
    margin-bottom: 1.05rem !important;
  }
  .page:not(#page-home) .subhero-eye,
  .page:not(#page-home) section div[style*="letter-spacing:.16em"],
  .page:not(#page-home) section div[style*="letter-spacing: .16em"] {
    font-size: .68rem !important;
    line-height: 1.35 !important;
    letter-spacing: .13em !important;
  }
  .page:not(#page-home) .subhero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .52rem !important;
    max-width: 330px !important;
  }
  .page:not(#page-home) .subhero-actions .btn-gold,
  .page:not(#page-home) .subhero-actions .btn-ghost {
    width: 100% !important;
    min-height: 44px !important;
    padding: .72rem .9rem !important;
    font-size: .76rem !important;
  }

  .page:not(#page-home) .trust-bar {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .42rem !important;
    padding: .58rem 1rem !important;
    overflow: hidden !important;
  }
  .page:not(#page-home) .trust-bar .ts,
  .page:not(#page-home) .trust-bar .grg-tag {
    display: none !important;
  }
  .page:not(#page-home) .trust-bar .ti {
    min-width: 0 !important;
    min-height: 32px !important;
    justify-content: center !important;
    padding: .4rem .45rem !important;
    border: 1px solid rgba(184,147,90,.24) !important;
    border-radius: 4px !important;
    background: rgba(255,255,255,.04) !important;
    font-size: .7rem !important;
    line-height: 1.16 !important;
    letter-spacing: .01em !important;
    white-space: normal !important;
    text-align: center !important;
  }

  .page:not(#page-home) .grid-2,
  .page:not(#page-home) div[style*="grid-template-columns:1.4fr .6fr"],
  .page:not(#page-home) div[style*="grid-template-columns:1.15fr .85fr"],
  .page:not(#page-home) div[style*="grid-template-columns:1.1fr .9fr"],
  .page:not(#page-home) div[style*="grid-template-columns:1.05fr .95fr"],
  .page:not(#page-home) div[style*="grid-template-columns:.85fr 1.15fr"],
  .page:not(#page-home) div[style*="grid-template-columns:1fr 1.35fr"],
  .page:not(#page-home) div[style*="grid-template-columns:1fr 1.5fr"],
  .page:not(#page-home) div[style*="grid-template-columns:1fr 1.6fr"] {
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }
  .page:not(#page-home) .grid-4,
  .page:not(#page-home) .grid-2-sm,
  .page:not(#page-home) div[style*="grid-template-columns:repeat(4,1fr)"],
  .page:not(#page-home) div[style*="grid-template-columns:repeat(3,1fr)"],
  .page:not(#page-home) div[style*="grid-template-columns:1fr 1fr"] {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .58rem !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }
  .page:not(#page-home) .grid-4 > *,
  .page:not(#page-home) .grid-2-sm > *,
  .page:not(#page-home) div[style*="grid-template-columns:repeat(4,1fr)"] > *,
  .page:not(#page-home) div[style*="grid-template-columns:repeat(3,1fr)"] > *,
  .page:not(#page-home) div[style*="grid-template-columns:1fr 1fr"] > * {
    min-width: 0 !important;
    max-width: 100% !important;
    padding: .72rem !important;
    overflow-wrap: anywhere !important;
    hyphens: auto !important;
  }
  .page:not(#page-home) .grid-4 h3,
  .page:not(#page-home) .grid-4 h4,
  .page:not(#page-home) .grid-2-sm h3,
  .page:not(#page-home) .grid-2-sm h4,
  .page:not(#page-home) div[style*="grid-template-columns"] h3,
  .page:not(#page-home) div[style*="grid-template-columns"] h4 {
    font-size: .88rem !important;
    line-height: 1.2 !important;
  }
  .page:not(#page-home) .grid-4 p,
  .page:not(#page-home) .grid-2-sm p,
  .page:not(#page-home) div[style*="grid-template-columns"] p,
  .page:not(#page-home) div[style*="grid-template-columns"] div {
    overflow-wrap: anywhere !important;
  }
  .page:not(#page-home) div[style*="height:310px"] {
    height: 210px !important;
  }
  .page:not(#page-home) img {
    max-width: 100% !important;
  }
  .page:not(#page-home) table {
    display: block !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
  .page:not(#page-home) .grid-2:not(.grid-2-sm) {
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }
}

@media(max-width:380px) {
  .page:not(#page-home) .grid-4,
  .page:not(#page-home) .grid-2-sm,
  .page:not(#page-home) div[style*="grid-template-columns:repeat(4,1fr)"],
  .page:not(#page-home) div[style*="grid-template-columns:repeat(3,1fr)"],
  .page:not(#page-home) div[style*="grid-template-columns:1fr 1fr"] {
    gap: .45rem !important;
  }
  .page:not(#page-home) .grid-4 > *,
  .page:not(#page-home) .grid-2-sm > *,
  .page:not(#page-home) div[style*="grid-template-columns:repeat(4,1fr)"] > *,
  .page:not(#page-home) div[style*="grid-template-columns:repeat(3,1fr)"] > *,
  .page:not(#page-home) div[style*="grid-template-columns:1fr 1fr"] > * {
    padding: .62rem !important;
  }
}

/* Finaler mobiler Footer: gilt für Startseite und alle Unterseiten */
@media(max-width:700px) {
  #site-footer {
    padding: 1rem .85rem 0 !important;
  }
  #site-footer .footer-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .65rem !important;
    padding-bottom: .95rem !important;
  }
  #site-footer .footer-brand {
    grid-column: 1 / -1 !important;
    text-align: left !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: .8rem !important;
    padding: .8rem !important;
  }
  #site-footer .footer-brand p {
    display: none !important;
  }
  #site-footer .footer-brand a,
  #site-footer .footer-brand a:hover {
    text-decoration: none !important;
  }
  #site-footer .footer-brand .logo-brand {
    margin: 0 !important;
    transform: scale(.8) !important;
    transform-origin: left center !important;
  }
  #site-footer .footer-grid > div:not(.footer-brand) {
    min-width: 0 !important;
    gap: .24rem !important;
    padding: .78rem !important;
    border: 1px solid rgba(255,255,255,.075) !important;
    border-radius: 9px !important;
    background: rgba(255,255,255,.028) !important;
  }
  #site-footer .footer-grid > div:nth-child(2),
  #site-footer .footer-grid > div:nth-child(5) {
    grid-column: 1 / -1 !important;
  }
  #site-footer .footer-grid > div:nth-child(2) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .36rem .7rem !important;
  }
  #site-footer .footer-grid > div:nth-child(2) > div:first-child {
    grid-column: 1 / -1 !important;
  }
  #site-footer .footer-grid > div:not(.footer-brand) > div:first-child {
    margin: 0 0 .48rem !important;
    padding: 0 0 .36rem !important;
    font-size: .7rem !important;
    letter-spacing: .14em !important;
    line-height: 1 !important;
    text-align: left !important;
  }
  #site-footer .footer-grid > div:not(.footer-brand) a {
    min-height: 42px !important;
    padding: .14rem 0 !important;
    font-size: .78rem !important;
    line-height: 1.25 !important;
    text-align: left !important;
    text-decoration: none !important;
    overflow-wrap: anywhere !important;
  }
  #site-footer .footer-grid > div:not(.footer-brand) a:hover {
    text-decoration: none !important;
  }
  #site-footer .footer-grid > div:nth-child(5) a {
    min-height: 34px !important;
    padding: .42rem .52rem !important;
    border: 1px solid rgba(184,147,90,.18) !important;
    border-radius: 7px !important;
    background: rgba(184,147,90,.06) !important;
  }
  #site-footer .footer-bottom {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .5rem !important;
    padding: .8rem 0 5.8rem !important;
    font-size: .68rem !important;
    line-height: 1.42 !important;
    text-align: left !important;
  }
}

