/* Muster 4 – Premium & Elegant (hellere Fassung: Anthrazit und Elfenbein im Wechsel) */
:root{
  --bg:#2b2f37; --bg-2:#343943; --text:#f3efe6; --muted:#b3afa6; --line:#454a55;
  --gold:#c9a96e; --gold-2:#e0c592;
  --ivory:#f6f2ea;
  --display:"Didot","Bodoni 72","Bodoni MT",Georgia,"Times New Roman",serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:300 17px/1.75 var(--sans);letter-spacing:.01em}
a{color:var(--gold-2)}
a:focus-visible{outline:1px solid var(--gold);outline-offset:4px}
h1,h2,h3{font-family:var(--display);font-weight:400;margin:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.muted{color:var(--muted)}

.praes{display:flex;justify-content:space-between;gap:12px;padding:7px 20px;background:#23262d;color:var(--muted);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.praes a{color:var(--gold-2);text-decoration:none}
.praes a:hover{text-decoration:underline}

.header{border-bottom:1px solid var(--line);background:#30343d}
.header__in{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 30px;padding:24px 20px}
.logo{font:400 18px var(--display);letter-spacing:.32em;color:var(--text);text-decoration:none}
.logo span{color:var(--gold)}
.logo--small{font-size:14px}
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:6px 30px}
.nav a{color:var(--muted);text-decoration:none;font-size:13px;letter-spacing:.16em;text-transform:uppercase}
.nav a:hover{color:var(--text)}
.nav .nav__cta{color:var(--gold-2);border-bottom:1px solid var(--gold)}

.hero{padding:clamp(80px,14vw,170px) 0 clamp(70px,10vw,130px);background:linear-gradient(180deg,#30343d 0%,#2b2f37 100%)}
.overline{color:var(--gold);font-size:12px;letter-spacing:.28em;text-transform:uppercase;margin:0 0 34px}
.hero h1{font-size:clamp(52px,11vw,136px);line-height:.98;letter-spacing:-.01em}
.hero h1 em{color:var(--gold-2)}
.hero__foot{display:grid;gap:30px;margin-top:56px;padding-top:34px;border-top:1px solid var(--line);align-items:end}
.hero__foot p{margin:0;max-width:520px;color:var(--muted);font-size:18px}
.hero__foot .btn{justify-self:start}
@media(min-width:860px){.hero__foot{grid-template-columns:1fr auto}}
.btn{display:inline-block;background:var(--gold);color:#121212;text-decoration:none;padding:16px 30px;font:500 13px var(--sans);letter-spacing:.16em;text-transform:uppercase}
.btn:hover{background:var(--gold-2)}
.btn--outline{background:transparent;color:var(--gold-2);border:1px solid var(--gold)}
.btn--outline:hover{background:var(--gold);color:#121212}

/* Abschnitte im Wechsel: hell (Elfenbein) und Anthrazit */
.section{padding:clamp(70px,10vw,120px) 0}
.section:not(.section--line){
  --text:#24262c; --muted:#6a655b; --line:#ddd5c6; --gold:#86683a; --gold-2:#7a5d31;
  background:var(--ivory);color:var(--text)
}
.section--line{background:var(--bg-2)}
.label{font:500 12px var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:40px}
.mandate{display:grid;gap:10px}
@media(min-width:900px){.mandate{grid-template-columns:1fr 2.4fr;gap:60px}}
.mandate__list p{font:400 clamp(22px,2.8vw,32px)/1.4 var(--display);margin:0 0 28px;color:var(--muted)}
.mandate__list span{color:var(--text)}

.services{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.services li{display:grid;grid-template-columns:60px 1fr;gap:16px;padding:34px 0;border-bottom:1px solid var(--line)}
.services .n{font:400 22px var(--display);color:var(--gold)}
.services h3{font-size:clamp(24px,3vw,34px);margin-bottom:8px}
.services p{margin:0;color:var(--muted);max-width:620px}
@media(min-width:900px){
  .services li{grid-template-columns:120px 1fr 1fr;align-items:baseline}
  .services li > div{display:contents}
}

.partners{display:grid;gap:40px}
.partners .label{grid-column:1/-1;margin-bottom:0}
@media(min-width:760px){.partners{grid-template-columns:1fr 1fr;gap:40px 56px}}
.portrait{aspect-ratio:4/5;background:linear-gradient(180deg,#ebe5d9,#ddd4c3);display:grid;place-items:center;color:#8d8678;font-size:12px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:22px;border:1px solid var(--line)}
.portrait--b{background:linear-gradient(180deg,#eee6d6,#e0d3bc)}
.person h3{font-size:30px}
.person p{margin:4px 0 0;color:var(--muted);font-size:15px}

.contact{display:grid;gap:48px}
@media(min-width:900px){.contact{grid-template-columns:1.3fr 1fr;gap:80px}}
.big{font-size:clamp(44px,7vw,88px);line-height:1;margin-bottom:24px}
.contact__data dl{margin:0 0 34px;display:grid;grid-template-columns:auto 1fr;gap:16px 28px}
.contact__data dt{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);padding-top:4px}
.contact__data dd{margin:0}
.map{margin-top:70px;height:220px;border:1px solid var(--line);background:radial-gradient(circle at 60% 50%,rgba(201,169,110,.3) 0 6px,transparent 7px),radial-gradient(circle at 60% 50%,transparent 0 60px,rgba(201,169,110,.12) 61px 62px,transparent 63px),#3e4450;display:grid;place-items:center;color:var(--muted);font-size:12px;letter-spacing:.2em;text-transform:uppercase}

.footer{border-top:1px solid var(--line);padding:30px 0;font-size:13px;color:var(--muted);background:#262930}
.footer__in{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 30px}

/* ---------- Multipager-Ergänzungen ---------- */
.nav a[aria-current="page"]{color:var(--text);border-bottom:1px solid var(--gold)}
.footer nav{display:flex;flex-wrap:wrap;gap:6px 24px}
.footer nav a{color:var(--muted);text-decoration:none;letter-spacing:.08em}
.footer nav a:hover{color:var(--gold-2)}

.page-head{padding:clamp(70px,10vw,120px) 0 clamp(56px,7vw,90px);background:linear-gradient(180deg,#30343d 0%,#2b2f37 100%)}
.page-head h1{font-size:clamp(44px,7.5vw,96px);line-height:1;letter-spacing:-.01em}
.page-head h1 em{color:var(--gold-2)}
.page-head .intro{margin:34px 0 0;max-width:620px;color:var(--muted);font-size:18px;padding-top:28px;border-top:1px solid var(--line)}
.more{display:inline-block;margin-top:30px;font:500 12px var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:4px}
.more:hover{color:var(--gold-2)}

.cta{padding:clamp(64px,8vw,100px) 0;background:var(--bg);border-top:1px solid var(--line)}
.cta__in{display:grid;gap:28px;align-items:end}
@media(min-width:860px){.cta__in{grid-template-columns:1fr auto}}
.cta h2{font-size:clamp(34px,5vw,60px);line-height:1.05}
.cta h2 em{color:var(--gold-2)}

.prose{max-width:780px}
.prose h2{font:400 26px/1.3 var(--display);margin:46px 0 12px}
.prose h2:first-child{margin-top:0}
.prose p,.prose li{color:var(--text)}
.prose ul{padding-left:20px}
.prose a{color:var(--gold-2)}
.ph-text{background:#efe3c8;padding:0 4px}

.values{display:grid;gap:36px}
@media(min-width:800px){.values{grid-template-columns:repeat(3,1fr);gap:48px}}
.values article{padding-top:24px;border-top:1px solid var(--gold)}
.values h3{font-size:28px;margin-bottom:10px}
.values p{margin:0;color:var(--muted)}

.split{display:grid;gap:40px}
@media(min-width:900px){.split{grid-template-columns:1fr 1.4fr;gap:80px}}
.split h2{font-size:clamp(32px,4vw,48px);line-height:1.1}
.split p{color:var(--muted);margin:0 0 18px}

.facts{display:grid;gap:0;border-top:1px solid var(--line)}
@media(min-width:760px){.facts{grid-template-columns:repeat(4,1fr)}}
.facts div{padding:30px 0;border-bottom:1px solid var(--line)}
@media(min-width:760px){.facts div{padding:34px 24px;border-left:1px solid var(--line);border-bottom:0}.facts div:first-child{padding-left:0;border-left:0}}
.facts strong{display:block;font:400 clamp(40px,4vw,54px)/1 var(--display);color:var(--gold-2)}
.facts span{display:block;margin-top:10px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}

.service-detail p{margin:0 0 10px}
.service-detail ul{margin:0;padding-left:18px;color:var(--muted);font-size:15px}
.service-detail li{margin:3px 0}

.team-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.team-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 24px;padding:20px 0;border-bottom:1px solid var(--line)}
.team-list strong{font:400 22px var(--display)}
.team-list span{color:var(--muted);font-size:13px;letter-spacing:.14em;text-transform:uppercase;align-self:center}
.person .bio{margin-top:14px;color:var(--muted);font-size:16px}

.form{display:grid;gap:18px}
.form label{display:grid;gap:8px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.form input,.form textarea,.form select{width:100%;padding:13px 0;font:300 17px var(--sans);letter-spacing:.01em;text-transform:none;color:var(--text);background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}
.form select option{color:#121212}
.form input:focus,.form textarea:focus,.form select:focus{outline:none;border-bottom-color:var(--gold)}
.form .check{display:flex;gap:12px;align-items:flex-start;font-size:14px;letter-spacing:.01em;text-transform:none;color:var(--muted)}
.form .check input{width:auto;margin-top:5px}
.form .btn{justify-self:start;border:0;cursor:pointer}
.form .hint{margin:0;font-size:13px;color:var(--muted)}

.center-page{padding:clamp(90px,14vw,160px) 0;text-align:center;background:linear-gradient(180deg,#30343d 0%,#2b2f37 100%)}
.center-page h1{font-size:clamp(40px,6vw,76px);line-height:1.05;margin-bottom:24px}
.center-page p{max-width:560px;margin:0 auto 36px;color:var(--muted);font-size:18px}
.center-page .actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px 30px}
.center-page .more{margin-top:0}
.big-num{display:block;font:400 clamp(90px,14vw,170px)/1 var(--display);color:var(--gold);margin-bottom:10px}

/* Korrekturen */
.split .label{font:500 12px/1.4 var(--sans);letter-spacing:.28em;margin-bottom:24px}
.services .service-detail li{display:list-item;padding:0;border:0;grid-template-columns:none;gap:0}

/* lange deutsche Wörter in Überschriften auf dem Handy umbrechen statt überlaufen */
h1,h2,h3{overflow-wrap:break-word;hyphens:auto}
