/*
 * Immocompany – Redesign v3.1 "Editorial Ivory"
 * Setzt den abgestimmten HTML-Entwurf um. Wird als LETZTES Stylesheet geladen.
 * Schriften lokal (fonts.css): Cormorant Garamond (Headlines), Archivo/Jost (Text).
 */
:root{
  --black:#211D15; --green:#211D15; --green-mid:#39332A; --green-light:#8B8271;
  --gold:#8F7134; --gold-light:#C6A15B; --gold-hover:#6E5626;
  --cream:#F7F4ED; --cream-dark:#EFEAE0; --white:#FFFFFF;
  --text:#211D15; --text-mid:#6B6355; --text-muted:#8B8271;
  --border:rgba(33,29,21,.12); --border-strong:rgba(33,29,21,.2);
  --shadow:0 1px 3px rgba(33,29,21,.06); --shadow-lg:0 18px 50px rgba(33,29,21,.13);
  --radius:2px; --radius-lg:2px;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Archivo','Jost',system-ui,sans-serif;
}
body{background:var(--cream);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}
p,li,a,span,input,textarea,select,button,label,dt,dd{font-family:var(--sans)}
h1,h2,h3{font-family:var(--serif)!important;font-weight:600;letter-spacing:0}
h1{letter-spacing:-.01em}
em{font-style:italic}

.section{padding:76px 0}
.section.alt-bg{background:var(--black);color:var(--cream)}
.section-inner{max-width:1140px;margin:0 auto;padding:0 48px}

.section-label{
  font-family:var(--sans)!important;font-size:12px;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:var(--gold);
  display:flex;align-items:center;gap:12px;margin-bottom:18px;background:none;padding:0;
}
.section-label::before{content:"";width:28px;height:1px;background:var(--gold);display:inline-block;flex:none}
.section.alt-bg .section-label,.alt-bg .section-label{color:var(--gold-light)}
.section.alt-bg .section-label::before{background:var(--gold-light)}

.section h2{font-size:clamp(28px,3.4vw,36px);line-height:1.18;color:var(--text);margin:0 0 14px}
.section.alt-bg h2,.alt-bg h2{color:var(--cream)}
.section p{font-size:15.5px;line-height:1.75;color:var(--text-mid)}
.section.alt-bg p,.alt-bg p{color:rgba(247,244,237,.72)}

.topbar{background:#211D15;color:rgba(247,244,237,.8);font-family:var(--sans)}
.topbar a{color:rgba(247,244,237,.8)}.topbar a:hover{color:var(--gold-light)}
.topbar-hours{color:rgba(247,244,237,.55)}
nav{background:rgba(247,244,237,.96);font-family:var(--sans);border-bottom:1px solid var(--border)}
nav.scrolled{background:rgba(247,244,237,.98);box-shadow:var(--shadow)}
.nav-links a{color:var(--text);border-radius:2px;font-size:14.5px}
.nav-links a:hover{color:var(--gold);background:transparent}
.nav-cta{background:#211D15!important;color:#F7F4ED!important;border-radius:2px!important;font-family:var(--sans);font-weight:500}
.nav-cta:hover{background:var(--gold)!important;color:#F7F4ED!important}
nav.nav-over-hero:not(.scrolled){background:rgba(247,244,237,.96);border-bottom-color:var(--border)}
nav.nav-over-hero:not(.scrolled) .nav-links a{color:var(--text)}
nav.nav-over-hero:not(.scrolled) .nav-links a:hover{color:var(--gold)}
nav.nav-over-hero:not(.scrolled) .nav-cta{background:#211D15!important;color:#F7F4ED!important}
nav.nav-over-hero:not(.scrolled) .nav-cta:hover{background:var(--gold)!important}
.mobile-menu{background:var(--cream)}
.mobile-menu a{color:var(--text);font-family:var(--sans)}

.hero,.hero-home{
  background:var(--cream);
  display:grid;grid-template-columns:1fr 480px;align-items:stretch;
  border-bottom:1px solid var(--border);min-height:auto;
}
.hero-left{padding:64px 56px 26px 8%;max-width:760px;display:flex;flex-direction:column;gap:24px;justify-content:center;text-align:left}
.hero-left *{text-align:left}
.hero-visual{
  background-image:linear-gradient(rgba(23,20,15,.12),rgba(23,20,15,.28)),url('../img/hero-bg.jpg');
  background-size:cover;background-position:center;min-height:560px;
}
.hero h1{font-family:var(--serif)!important;font-weight:600;font-size:clamp(34px,4vw,52px);line-height:1.12;color:var(--text)!important;text-wrap:balance;margin:0}
.hero h1 em{color:var(--gold);font-style:italic}
.hero-badge{
  align-self:flex-start;font-family:var(--sans);font-size:12px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold);background:transparent;border:1px solid rgba(143,113,52,.4);
  border-radius:100px;padding:7px 18px
}
.hero-badge-dot{background:var(--gold)}
.hero-sub,.hero p{font-family:var(--sans);color:var(--text-mid)!important;font-size:16px;line-height:1.7;margin:0}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:4px}
.hero .btn-primary{background:var(--gold);color:#F7F4ED;border-radius:2px;font-family:var(--sans);font-weight:500}
.hero .btn-primary:hover{background:var(--gold-hover)}
.hero .btn-secondary{border:1px solid var(--border-strong);color:var(--text);border-radius:2px;font-family:var(--sans);background:transparent}
.hero .btn-secondary:hover{background:rgba(33,29,21,.04)}
.hero-scroll{display:none}
/* Statistiken unter dem Text, mit feiner Trennlinie darüber */
.hero-stats{grid-column:1;padding:24px 56px 34px 8%;max-width:760px;
  display:flex;gap:48px;align-items:flex-start;border-top:1px solid var(--border)}
.hero-stat-val{font-family:var(--serif)!important;font-weight:600;font-size:30px;color:var(--text)}
.hero-stat-lab{font-family:var(--sans);color:var(--text-mid);font-size:12.5px}
.hero-stat-div{display:none}
@media(max-width:900px){
  .hero,.hero-home{grid-template-columns:1fr}
  .hero-left{padding:48px 24px 24px;max-width:none}
  .hero-visual{min-height:280px;order:-1}
  .hero-stats{padding:20px 24px 32px;margin:0}
}

.btn-primary{background:var(--gold);color:#F7F4ED;border-radius:2px;font-family:var(--sans);font-weight:500;box-shadow:none}
.btn-primary:hover{background:var(--gold-hover);color:#F7F4ED}
.btn-secondary{border-radius:2px;font-family:var(--sans);font-weight:500}

.stat-num{font-family:var(--serif)!important;font-weight:600;color:var(--text)}
.stat-label{font-family:var(--sans);color:rgba(247,244,237,.6);font-size:12.5px}

.trust-strip{background:var(--white);border-bottom:1px solid var(--border)}
.trust-item{border-right:1px solid var(--border)}
.trust-val{font-family:var(--serif)!important;color:var(--text)!important;font-size:26px}
.trust-lab{color:var(--text-mid)!important;font-family:var(--sans)}
.trust-divider{display:none}

.help-card,.service-card,.card,.blog-card,.review-card,.team-card,.process-step{
  border-radius:2px;box-shadow:none;border:1px solid var(--border);background:var(--white)
}
.help-card{padding:32px 30px}
.help-card h3,.service-card h3,.card h3{font-family:var(--serif)!important;font-weight:600;font-size:22px;color:var(--text)}
.help-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--gold-light)}
.help-link{color:var(--gold);font-family:var(--sans);font-weight:600}

.quote-band{background:#17140F}
.quote-band-text{font-family:var(--serif)!important;font-weight:500;font-style:italic;color:var(--cream)}
.quote-band-author{font-family:var(--sans);color:var(--gold-light)}
.quote-band-portrait{border-color:var(--gold-light)}

.review-name{font-family:var(--sans);font-weight:600;color:var(--text)}
.review-text{font-family:var(--serif)!important;font-size:17px;line-height:1.6;color:var(--text)}
.review-stars{color:var(--gold)}

.standort-chip,.location-link{border:1px solid var(--border);border-radius:2px;background:var(--white);color:var(--text);font-family:var(--sans)}
.standort-chip:hover{border-color:var(--gold);color:var(--gold)}

.faq-item{border:1px solid var(--border);border-radius:2px;background:var(--white)}
.faq-question,.faq-item button{font-family:var(--sans);font-weight:600;color:var(--text)}
.faq-answer p{font-family:var(--sans);color:var(--text-mid)}

.team-name{font-family:var(--serif)!important;font-weight:600;font-size:20px}
.team-role{font-family:var(--sans);color:var(--gold)}
.team-photo{border-radius:2px;border-color:var(--gold-light)}
.team-avatar{border-radius:2px;background:#EFEAE0;color:var(--gold);font-family:var(--serif)!important}

.form-input,input[type=text],input[type=email],input[type=tel],textarea,select{
  border-radius:2px;border:1px solid var(--border-strong);font-family:var(--sans);background:#fff
}
.form-input:focus{border-color:var(--gold);outline:none}

footer{background:#17140F;color:rgba(247,244,237,.7)}
.footer-col h4{font-family:var(--sans);color:var(--gold-light);letter-spacing:.08em}
footer a{font-family:var(--sans);color:rgba(247,244,237,.7)}
footer a:hover{color:var(--gold-light)}
.footer-social .social-btn{border-radius:2px;border-color:rgba(247,244,237,.18)}
.footer-social .social-btn svg{display:block}
.footer-widerruf-btn{border-color:rgba(247,244,237,.35);border-radius:2px}
.footer-widerruf-btn:hover{border-color:var(--gold-light)}

.sticky-mobile-cta,.sticky-cta-split{border-radius:0}
.sticky-cta-wert{background:var(--gold);color:#fff}
.sticky-cta-call{background:#211D15;color:#fff}
.sticky-cta-wa:hover{background:#1f8a5b;color:#fff}

.ex-badge{background:var(--gold);color:#211D15;border-radius:2px}
.ex-preis,.ex-fact-val{font-family:var(--serif)!important;color:var(--text)}
.ex-hero-content h1{font-family:var(--serif)!important}
.ex-legal-box,.ex-gal-item{border-radius:2px}
.ex-legal-box{background:var(--cream)}

a{color:var(--gold)}a:hover{color:var(--gold-hover)}
