/* LuxCare – eigenständiger Auftritt unter /angebot/luxcare/
   Überschreibt ausschließlich body.luxcare, damit die eigenständige
   Prestige-Care-Domain unter /partner/luxusimmobilien/ unberührt bleibt. */

body.luxcare{
  --lc-ink:#12171d;
  --lc-deep:#1b2430;
  --lc-sand:#f6f2ea;
  --lc-line:#e2d9c9;
  --lc-gold:#a8813f;
  --lc-gold-soft:#c9a765;
  --lc-muted:#5d6672;
  background:var(--lc-sand);
  color:var(--lc-ink);
  font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;
}
body.luxcare *,body.luxcare *::before,body.luxcare *::after{box-sizing:border-box}
body.luxcare p,body.luxcare li,body.luxcare label,body.luxcare input,
body.luxcare textarea,body.luxcare button,body.luxcare small,body.luxcare .eyebrow{
  font-family:"Karla","Helvetica Neue",Arial,sans-serif;
}
body.luxcare .wrap{max-width:1120px;margin:0 auto;padding:0 24px}

/* Kopfbereich */
body.luxcare header{background:#fff;border-bottom:1px solid var(--lc-line);box-shadow:none}
body.luxcare header .nav{align-items:center;gap:18px}
body.luxcare .brand-logo{max-height:64px;width:auto;height:auto}
body.luxcare nav.links a{
  font-family:"Karla","Helvetica Neue",Arial,sans-serif;
  font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;
  color:var(--lc-muted);border-bottom:1px solid transparent;
}
body.luxcare nav.links a:hover{color:var(--lc-gold);border-bottom-color:var(--lc-gold)}
body.luxcare .head-tel{color:var(--lc-ink)}

/* Buttons */
body.luxcare .btn{
  background:var(--lc-ink);color:#fff;border:1px solid var(--lc-ink);
  border-radius:0;letter-spacing:.09em;text-transform:uppercase;font-size:.78rem;
  padding:14px 26px;
}
body.luxcare .btn:hover{background:var(--lc-gold);border-color:var(--lc-gold)}
body.luxcare .btn.ghost{background:transparent;color:var(--lc-ink)}
body.luxcare .btn.ghost:hover{background:var(--lc-ink);color:#fff}

/* Typografie */
body.luxcare h1{
  font-size:clamp(2.4rem,4.6vw,4.3rem);font-weight:400;line-height:1.06;
  letter-spacing:-.01em;max-inline-size:100%;
}
body.luxcare h2{
  font-size:clamp(1.95rem,3.1vw,3.2rem);font-weight:400;line-height:1.14;
  max-inline-size:100%;
}
body.luxcare h3{font-size:clamp(1.15rem,1.5vw,1.45rem);font-weight:500}
body.luxcare h1,body.luxcare h2,body.luxcare h3,
body.luxcare p,body.luxcare li,body.luxcare a,body.luxcare blockquote{
  overflow-wrap:break-word;hyphens:auto;
}
body.luxcare .eyebrow{
  font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--lc-gold);
}
body.luxcare p{color:var(--lc-muted);line-height:1.75}

/* Hero */
body.luxcare .hero{background:var(--lc-deep)}
body.luxcare .hero img{opacity:.42;filter:saturate(.7)}
body.luxcare .hero .copy h1,body.luxcare .hero .copy p{color:#fff}
body.luxcare .hero .copy p{opacity:.85}
body.luxcare .hero .copy .btn.ghost{color:#fff;border-color:rgba(255,255,255,.65)}
body.luxcare .hero .copy .btn.ghost:hover{background:#fff;color:var(--lc-ink)}
body.luxcare .crumb{color:var(--lc-gold-soft)}

/* Layout-Sicherheit gegen Überlappungen */
body.luxcare .intro{
  display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px);
  align-items:start;padding:clamp(48px,7vw,92px) 0;
}
body.luxcare .intro>*,body.luxcare .process>*,body.luxcare .grid>*,
body.luxcare .copy>*,body.luxcare .card>*,body.luxcare .steps>*{min-width:0;max-width:100%}
body.luxcare img,body.luxcare video,body.luxcare iframe{max-width:100%}

/* Karten */
body.luxcare .services{background:#fff;border-top:1px solid var(--lc-line);border-bottom:1px solid var(--lc-line)}
body.luxcare .grid{gap:1px;background:var(--lc-line)}
body.luxcare .card{
  background:#fff;border:0;border-radius:0;padding:clamp(24px,3vw,38px);
  transition:background .25s ease;
}
body.luxcare a.card:hover{background:var(--lc-sand)}
body.luxcare .card>span{color:var(--lc-gold);font-family:"Karla",Arial,sans-serif;font-size:.78rem;letter-spacing:.16em}

/* Zitat */
body.luxcare .statement{background:var(--lc-deep)}
body.luxcare .statement blockquote{
  color:#fff;font-size:clamp(1.5rem,2.6vw,2.5rem);font-weight:400;font-style:italic;
  max-inline-size:100%;
}

/* Ablauf */
body.luxcare .process{
  display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,64px);
  padding:clamp(48px,7vw,92px) 0;align-items:start;
}
body.luxcare .steps>div{border-top:1px solid var(--lc-line);padding-top:16px}
body.luxcare .steps strong{font-family:"Karla",Arial,sans-serif;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase}

/* Redaktionelle Verweise */
body.luxcare .content-links{
  background:#fff;border-top:1px solid var(--lc-line);padding:clamp(40px,6vw,80px) 0;
}
body.luxcare .content-links .wrap>p{max-inline-size:72ch;margin:0 0 1.1rem}
body.luxcare .content-links a{color:var(--lc-gold);text-decoration:underline;text-underline-offset:3px}

/* FAQ */
body.luxcare .faq{padding:clamp(40px,6vw,80px) 0}
body.luxcare .faq-list details{border-top:1px solid var(--lc-line);padding:16px 0}
body.luxcare .faq-list summary{cursor:pointer;font-size:1.08rem}

/* Kontakt */
body.luxcare .cta{background:var(--lc-sand)}
body.luxcare .booking-stack{display:block;max-width:760px;margin:0 auto}
body.luxcare .cc-form{max-width:760px;margin:32px auto 0;background:#fff;border:1px solid var(--lc-line);padding:clamp(22px,3vw,36px)}
body.luxcare .cc-form input,body.luxcare .cc-form textarea{border-radius:0;border:1px solid var(--lc-line)}
body.luxcare .cc-form input:focus,body.luxcare .cc-form textarea:focus{outline:2px solid var(--lc-gold-soft)}

/* Fuß */
body.luxcare footer{background:var(--lc-deep);color:#fff}
body.luxcare footer a{color:var(--lc-gold-soft)}
body.luxcare footer .foot{border-bottom:1px solid rgba(255,255,255,.14)}
body.luxcare .footer-cities{line-height:2;opacity:.9}
body.luxcare .legal-block summary{color:#fff}
body.luxcare .legal-block .legal p{color:rgba(255,255,255,.78)}

@media (max-width:900px){
  body.luxcare .intro,body.luxcare .process{grid-template-columns:minmax(0,1fr)}
}

/* Header: dunkler Hintergrund, groesseres Logo, Button ohne Worttrennung */
body.luxcare header{background:var(--lc-deep);border-bottom:1px solid rgba(255,255,255,.08)}
body.luxcare nav.links a{color:#d8d1c2}
body.luxcare nav.links a:hover{color:var(--lc-gold-soft);border-bottom-color:var(--lc-gold-soft)}
body.luxcare .head-tel{color:#f1ece1}
body.luxcare .brand-logo{max-height:88px}
body.luxcare .head-cta .btn{background:var(--lc-gold);border-color:var(--lc-gold);color:#fff;white-space:nowrap;hyphens:none}
body.luxcare .head-cta .btn:hover{background:var(--lc-gold-soft);border-color:var(--lc-gold-soft)}
