/* Grundlage: Website-KI/brand-kit.md. Eigenes, selbst geschriebenes CSS, keine externen Frameworks (Bauregel 6). */

@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(data:font/woff2;base64,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) format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(data:font/woff2;base64,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) format("woff2");
}

:root {
  --anthrazit: #221f1d;
  --creme: #f5eae7;
  --weiss: #ffffff;
  --taupe: #8b7a68;
  --pflaume: #6b3f49;
  --abstand-klein: 8px;
  --abstand-mittel: 24px;
  --abstand-gross: 64px;
  --textbreite-max: 720px;
}

* { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

:focus-visible {
  outline: 3px solid var(--taupe);
  outline-offset: 4px;
}

body {
  margin: 0;
  background: var(--creme);
  color: var(--anthrazit);
  font-family: "Open Sans", Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  overflow-x: hidden; /* Bauregel: mobile Darstellung ohne waagerechtes Scrollen */
}

h1, h2, h3 {
  font-family: "Playfair Display", Georgia, "Times New Roman", serif;
  font-weight: 500;
  line-height: 1.2;
  color: var(--pflaume);
  margin: 0 0 var(--abstand-mittel);
}

h1 { font-size: 30px; }
h2 { font-size: 24px; }
h3 { font-size: 19px; font-weight: 700; }

@media (min-width: 768px) {
  h1 { font-size: 44px; }
  h2 { font-size: 30px; }
  h3 { font-size: 23px; }
}

p, li { font-size: 16px; }
@media (min-width: 768px) {
  p, li { font-size: 18px; }
}

small, .kleintext { font-size: 13px; color: var(--anthrazit); }
@media (min-width: 768px) {
  small, .kleintext { font-size: 14px; }
}

a { color: var(--anthrazit); }
a:hover { color: var(--taupe); }

/* ---------- Kopfbereich ---------- */
.kopfbereich {
  background: var(--anthrazit);
  color: var(--creme);
  padding: 12px 0;
}
.kopfbereich-inner {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 var(--abstand-mittel);
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
@media (min-width: 900px) {
  .kopfbereich-inner {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: var(--abstand-mittel);
  }
}
.logo {
  display: block;
  line-height: 0;
}
@media (min-width: 900px) { .logo { order: 0; justify-self: center; } }
.logo img {
  height: 44px;
  width: auto;
  display: block;
}

/* ---------- Mobiles Menü (reines CSS, Checkbox-Trick, kein JavaScript) ---------- */
.menuschalter { position: absolute; opacity: 0; pointer-events: none; }

.menu-knopf {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 32px;
  height: 32px;
  padding: 4px;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.menu-knopf span {
  display: block;
  height: 2px;
  background: var(--creme);
  border-radius: 1px;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.menuschalter:checked ~ .menu-knopf span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.menuschalter:checked ~ .menu-knopf span:nth-child(2) { opacity: 0; }
.menuschalter:checked ~ .menu-knopf span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

@media (min-width: 900px) {
  .menuschalter, .menu-knopf { display: none; }
}

.navigation-flaeche {
  display: none;
  flex-direction: column;
  align-items: stretch;
  gap: var(--abstand-mittel);
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: var(--anthrazit);
  padding: var(--abstand-mittel);
  border-top: 1px solid #f5eae71a;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.25);
  z-index: 30;
}
.menuschalter:checked ~ .navigation-flaeche { display: flex; }

@media (min-width: 900px) {
  .navigation-flaeche {
    display: contents;
  }
}

.hauptnavigation {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 4px;
}
@media (min-width: 900px) {
  .hauptnavigation {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: var(--abstand-mittel);
  }
  .hauptnavigation-links { justify-self: start; }
  .hauptnavigation-rechts { justify-self: end; }
}
.hauptnavigation a {
  color: var(--creme);
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.03em;
}
.hauptnavigation a:hover { color: var(--taupe); }

/* Je ein Dropdown pro Navigationspunkt, natives details/summary, kein JavaScript.
   Das name-Attribut sorgt dafür, dass immer nur ein Dropdown offen ist. */
.dropdown { position: relative; }
.dropdown > summary {
  list-style: none;
  cursor: pointer;
  color: var(--creme);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.03em;
  padding: 6px 2px;
}
.dropdown > summary::-webkit-details-marker { display: none; }
.dropdown > summary::after { content: " ▾"; font-size: 10px; }
.dropdown > summary:hover { color: var(--taupe); }
.dropdown[open] > summary { color: var(--taupe); }
.dropdown ul {
  list-style: none;
  margin: 4px 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: var(--creme);
  border: 1px solid var(--anthrazit);
  border-radius: 2px;
}
@media (min-width: 900px) {
  .dropdown ul {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 20;
    min-width: 240px;
    max-width: calc(100vw - 2 * var(--abstand-mittel));
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
  }
  .hauptnavigation-rechts .dropdown ul { left: auto; right: 0; }
}
.dropdown ul li { width: 100%; }
.dropdown ul a {
  display: block;
  width: 100%;
  padding: 10px 16px;
  color: var(--anthrazit);
  font-weight: 400;
  font-size: 14px;
  letter-spacing: normal;
}
.dropdown ul a:hover { background: #8b7a6814; color: var(--anthrazit); }

.hauptnavigation a.kontakt-button {
  color: var(--anthrazit);
  background: var(--creme);
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
  padding: 9px 18px;
  border-radius: 2px;
}
.hauptnavigation a.kontakt-button:hover { background: var(--taupe); color: var(--anthrazit); }

/* ---------- Vertrauensleiste ---------- */
.vertrauensleiste {
  background: var(--anthrazit);
  border-bottom: 1px solid #f5eae71a;
  overflow: hidden;
  padding: 10px 0;
}
.vertrauensleiste-spur {
  display: flex;
  width: max-content;
  animation: vertrauensleiste-lauf 42s linear infinite;
}
.vertrauensleiste:hover .vertrauensleiste-spur { animation-play-state: paused; }
.vertrauensleiste ul {
  list-style: none;
  margin: 0 var(--abstand-mittel) 0 0;
  padding: 0;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  column-gap: var(--abstand-mittel);
}
.vertrauensleiste li {
  color: var(--creme);
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  white-space: nowrap;
  padding-left: var(--abstand-mittel);
}
.vertrauensleiste li:first-child { padding-left: 0; }
.vertrauensleiste li + li::before {
  content: "·";
  color: var(--taupe);
  margin-right: var(--abstand-mittel);
}
@keyframes vertrauensleiste-lauf {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .vertrauensleiste-spur { animation: none; }
}

/* ---------- Hauptbereich ---------- */
main {
  max-width: 1160px;
  margin: 0 auto;
  padding: var(--abstand-gross) var(--abstand-mittel);
}
main > * + * { margin-top: var(--abstand-mittel); }
main p { max-width: var(--textbreite-max); }

/* ---------- Startseite: gemeinsame Abschnitts-Bausteine ---------- */
main > section { margin-top: var(--abstand-gross); }
main > section:first-child { margin-top: 0; }
.abschnitt-titel { text-align: center; max-width: none; margin-bottom: var(--abstand-klein); }
.abschnitt-untertitel {
  text-align: center;
  max-width: var(--textbreite-max);
  margin: 0 auto var(--abstand-mittel);
  color: #4a4340;
}

/* ---------- Hero: zwei eigenständige Angebote, gleichrangig sichtbar ---------- */
.hero {
  display: grid;
  grid-template-columns: 1fr;
  background: var(--weiss);
  border: 1px solid #221f1d1a;
  min-height: min(760px, calc(100vh - 150px));
  overflow: hidden;
}
@media (min-width: 900px) {
  .hero {
    grid-template-columns: minmax(0, 1.04fr) minmax(420px, 0.96fr);
  }
}
.hero-bildbereich {
  width: 100%;
  min-height: 360px;
  background: var(--anthrazit);
}
.hero-bild {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
  object-position: center 36%;
}
@media (min-width: 900px) {
  .hero-bildbereich,
  .hero-bild { min-height: 620px; }
}
.hero-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 40px 28px;
  text-align: left;
}
@media (min-width: 900px) {
  .hero-text { padding: 72px 58px; }
}
.hero-kicker {
  margin: 0 0 18px;
  color: var(--anthrazit);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.hero-text h1 {
  max-width: 13ch;
  font-size: clamp(38px, 5vw, 68px);
  letter-spacing: -0.025em;
}
.hero-text p { max-width: none; }
.hero-einleitung {
  margin: 0;
  color: #4a4340;
  font-size: clamp(17px, 1.6vw, 20px);
}
.hero-hinweis {
  border-left: 3px solid var(--taupe);
  background: #8b7a680f;
  padding: 12px 16px;
  font-size: 15px;
  margin-top: var(--abstand-mittel);
}
.hero-ctas {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-top: 30px;
}
.hero-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid var(--anthrazit);
  background: transparent;
  color: var(--anthrazit);
  text-decoration: none;
  font-weight: 600;
  font-size: 15px;
  padding: 15px 18px;
  border-radius: 2px;
}
.hero-cta::after {
  content: "→";
  margin-left: 16px;
  font-size: 18px;
  line-height: 1;
}
.hero-cta:hover { background: var(--taupe); color: var(--anthrazit); border-color: var(--taupe); }

/* Wide-Hero: vollflächiges Foto ohne Rahmen oder Kartenoptik. */
.hero-bildbereich {
  width: 100%;
  min-height: 0;
  margin: 0;
  border: 0;
  background: var(--anthrazit);
}
.hero-bild {
  width: 100%;
  height: clamp(380px, 62vw, 760px);
  min-height: 0;
  border: 0;
  object-fit: cover;
  object-position: center 34%;
}
.hero-text {
  display: block;
  max-width: 820px;
  margin: 0 auto;
  padding: 0;
  text-align: center;
}
.hero-text h1 {
  max-width: none;
  font-size: clamp(38px, 5vw, 60px);
}
.hero-kicker { margin-bottom: 18px; }
.hero-einleitung { margin: 0 auto; }
.hero-ctas {
  grid-template-columns: 1fr;
  max-width: 760px;
  margin: 30px auto 0;
  text-align: left;
}
.hero-hinweis {
  max-width: 760px !important;
  margin: var(--abstand-mittel) auto 0;
  text-align: left;
}
@media (min-width: 768px) {
  .hero-ctas { grid-template-columns: 1fr 1fr; }
}

/* ---------- Zwei Karten ---------- */
.karten-grid {
  display: grid;
  grid-template-columns: 1fr;
  align-items: stretch;
  gap: var(--abstand-mittel);
}
@media (min-width: 768px) { .karten-grid { grid-template-columns: 1fr 1fr; } }
.karte {
  display: flex;
  flex-direction: column;
  border: 1px solid #221f1d1a;
  border-radius: 2px;
  padding: 56px 44px;
  background: var(--weiss);
}
.karte h3 {
  margin: 0;
  max-width: none;
  font-size: 32px;
}
@media (min-width: 768px) { .karte h3 { font-size: 38px; } }
.karte h4 {
  margin: 10px 0 0;
  max-width: none;
  font-family: "Open Sans", Arial, Helvetica, sans-serif;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--taupe);
}
.karte p {
  margin: var(--abstand-mittel) 0 0;
  max-width: none;
  color: #4a4340;
}
.karte-link {
  align-self: flex-start;
  margin-top: auto;
  padding-top: 32px;
  color: var(--anthrazit);
  text-decoration: underline;
  text-decoration-color: var(--taupe);
  text-underline-offset: 4px;
  font-weight: 600;
  font-size: 15px;
}
.karte-link:hover { color: var(--taupe); }
.karte-bild {
  width: calc(100% + 88px);
  max-width: none;
  height: 320px;
  object-fit: contain;
  background: var(--creme);
  display: block;
  margin: -56px -44px 32px;
}
@media (min-width: 768px) { .karte-bild { height: 420px; } }
@media (max-width: 520px) {
  .karte { padding: 40px 24px; }
  .karte-bild {
    width: calc(100% + 48px);
    margin: -40px -24px 28px;
    height: 290px;
  }
}
.karte-zusatzlink {
  margin-top: 10px;
  color: #4a4340;
  text-decoration: underline;
  text-decoration-color: var(--taupe);
  text-underline-offset: 4px;
  font-weight: 400;
  font-size: 14px;
}
.karte-zusatzlink:hover { color: var(--taupe); }
.karte-schritte {
  list-style: none;
  counter-reset: schritt;
  margin: var(--abstand-mittel) 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.karte-schritte li {
  counter-increment: schritt;
  padding-left: 30px;
  position: relative;
  font-size: 15px;
  color: #4a4340;
}
.karte-schritte li::before {
  content: counter(schritt);
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  border: 1px solid var(--taupe);
  border-radius: 50%;
  font-size: 11px;
  color: var(--taupe);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ---------- Kombination ---------- */
.kombination-abschnitt {
  text-align: center;
  background: #8b7a680d;
  border-top: 1px solid #221f1d14;
  border-bottom: 1px solid #221f1d14;
  padding: var(--abstand-gross) var(--abstand-mittel);
}
.kombination-abschnitt h2 { max-width: none; }
.kombination-abschnitt p { margin: 0 auto var(--abstand-mittel); }
.wege-liste {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--abstand-mittel);
}
@media (min-width: 768px) {
  .wege-liste { flex-direction: row; justify-content: center; gap: var(--abstand-gross); }
}
.wege-liste li {
  display: flex;
  align-items: center;
  gap: var(--abstand-klein);
  font-weight: 600;
  font-size: 16px;
}
.weg-nummer {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid var(--taupe);
  font-size: 14px;
  flex-shrink: 0;
}

/* ---------- Arbeit ---------- */
.arbeit-abschnitt {
  display: flex;
  flex-direction: column;
  gap: var(--abstand-mittel);
}
@media (min-width: 768px) {
  .arbeit-abschnitt { flex-direction: row; align-items: center; gap: var(--abstand-gross); }
  .arbeit-text { flex: 1 1 35%; }
  .arbeit-bilder { flex: 1 1 65%; }
}
.arbeit-text h2 { max-width: none; }
.arbeit-bilder { display: grid; grid-template-columns: 1fr 1fr; gap: var(--abstand-klein); min-width: 0; }
.arbeit-bilder img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  border-radius: 2px;
  display: block;
}

/* ---------- Bio (Über mich) ---------- */
.bio-abschnitt {
  max-width: 900px;
  margin: 0 auto;
  padding: var(--abstand-gross) var(--abstand-mittel);
}
.bio-text {
  max-width: var(--textbreite-max);
  margin: 0 auto;
}
.bio-text p {
  margin: 0 0 var(--abstand-mittel);
}
.bio-chart-hinweis {
  font-style: italic;
  color: var(--pflaume);
  border-left: 3px solid var(--taupe);
  padding-left: var(--abstand-mittel);
}
.bio-abschluss {
  font-family: "Playfair Display", Georgia, "Times New Roman", serif;
  font-size: 20px;
  color: var(--pflaume);
  white-space: pre-line;
}

/* ---------- Person ---------- */
.person-abschnitt {
  display: flex;
  flex-direction: column;
  gap: var(--abstand-mittel);
  background: var(--weiss);
  border: 1px solid #221f1d22;
  border-radius: 2px;
  overflow: hidden;
}
.person-abschnitt img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  object-position: center 25%;
  display: block;
}
@media (min-width: 768px) {
  .person-abschnitt { flex-direction: row; align-items: stretch; gap: 0; }
  .person-abschnitt img { flex: 1 1 42%; min-width: 0; height: 100%; align-self: stretch; }
  .person-text { flex: 1 1 58%; padding: var(--abstand-gross) var(--abstand-mittel); }
}
.person-text { padding: var(--abstand-mittel); display: flex; flex-direction: column; justify-content: center; }
.person-text h2 { margin-bottom: 4px; max-width: none; }
.person-rolle {
  color: #4a4340;
  font-size: 15px;
  margin: 0 0 var(--abstand-mittel);
  padding-bottom: var(--abstand-mittel);
  border-bottom: 1px solid #221f1d22;
}
.person-link {
  align-self: flex-start;
  margin-top: var(--abstand-mittel);
  color: var(--anthrazit);
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: var(--taupe);
  text-underline-offset: 3px;
}
.person-link:hover { color: var(--taupe); }

/* ---------- Rezensionen ---------- */
.rezensionen-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--abstand-mittel);
}
@media (min-width: 768px) {
  .rezensionen-grid { grid-template-columns: repeat(3, 1fr); }
  .rezensionen-grid:has(> .rezension:only-child) {
    grid-template-columns: minmax(0, 760px);
    justify-content: center;
  }
}
.rezension {
  margin: 0;
  background: var(--weiss);
  border: 1px solid #221f1d22;
  border-radius: 2px;
  padding: var(--abstand-mittel);
  display: flex;
  flex-direction: column;
  gap: var(--abstand-klein);
}
.rezension-sterne {
  color: var(--taupe);
  font-size: 15px;
  letter-spacing: 2px;
}
.rezension blockquote {
  margin: 0;
  font-size: 15px;
  line-height: 1.6;
  flex: 1;
}
.rezension figcaption {
  display: flex;
  flex-direction: column;
  font-weight: 600;
  font-size: 14px;
  padding-top: var(--abstand-klein);
  border-top: 1px solid #221f1d14;
}
.rezension-angaben {
  font-weight: 400;
  color: #4a4340;
  font-size: 13px;
}

/* ---------- FAQ ---------- */
.faq-liste {
  display: flex;
  flex-direction: column;
  gap: var(--abstand-klein);
  max-width: 860px;
  margin: 0 auto;
}
.faq-eintrag {
  border: 1px solid #221f1d22;
  border-radius: 2px;
  background: var(--weiss);
}
.faq-eintrag > summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 20px;
  font-weight: 600;
  font-size: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--abstand-mittel);
}
.faq-eintrag > summary h3 {
  margin: 0;
  font: inherit;
  font-weight: inherit;
  color: inherit;
}
.faq-eintrag > summary::-webkit-details-marker { display: none; }
.faq-eintrag > summary::after {
  content: "+";
  color: var(--taupe);
  font-size: 22px;
  font-weight: 400;
  flex-shrink: 0;
}
.faq-eintrag[open] > summary::after { content: "−"; }
.faq-eintrag > summary:hover { color: var(--taupe); }
.faq-eintrag p {
  margin: 0;
  padding: 0 20px 16px;
  font-size: 16px;
  max-width: none;
}

/* ---------- Blog ---------- */
.blog-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--abstand-mittel);
  margin-top: var(--abstand-mittel);
}
@media (min-width: 768px) { .blog-grid { grid-template-columns: repeat(3, 1fr); } }
.blog-karte {
  display: flex;
  flex-direction: column;
  gap: var(--abstand-klein);
  overflow: hidden;
  background: var(--weiss);
  border: 1px solid #221f1d1a;
  border-radius: 2px;
  padding: var(--abstand-mittel);
}
.blog-karte h3 {
  margin: 0;
  max-width: none;
  font-size: 20px;
}
.blog-karte h3 a { color: var(--pflaume); text-decoration: none; }
.blog-karte h3 a:hover { color: var(--taupe); }
.blog-karte p { margin: 0; max-width: none; flex: 1; color: #4a4340; font-size: 15px; }
.blog-bild {
  display: block;
  aspect-ratio: 16 / 9;
  height: auto;
  margin: -28px -24px 8px;
  overflow: hidden;
  background: #e8e1dc;
}
.blog-bild img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; transition: transform 420ms ease; }
.blog-karte:hover .blog-bild img { transform: scale(1.025); }
.blog-meta {
  flex: none !important;
  color: #6b3f49 !important;
  font-size: 10px !important;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.blog-link {
  align-self: flex-start;
  color: var(--anthrazit);
  font-weight: 600;
  font-size: 14px;
  text-decoration: underline;
  text-decoration-color: var(--taupe);
  text-underline-offset: 3px;
}
.blog-link:hover { color: var(--taupe); }
.blog-alle-link {
  display: block;
  text-align: center;
  margin-top: var(--abstand-mittel);
  color: var(--anthrazit);
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: var(--taupe);
  text-underline-offset: 3px;
}
.blog-alle-link:hover { color: var(--taupe); }

/* ---------- CTA ---------- */
.cta-abschnitt {
  text-align: center;
  background: var(--anthrazit);
  color: var(--creme);
  padding: var(--abstand-gross) var(--abstand-mittel);
  border-radius: 2px;
}
.cta-abschnitt h2 { color: var(--creme); max-width: none; }
.cta-abschnitt p { color: var(--creme); max-width: none; margin: 0 auto var(--abstand-mittel); }
.cta-button {
  display: inline-block;
  background: var(--creme);
  color: var(--anthrazit);
  font-weight: 700;
  text-decoration: none;
  padding: 16px 32px;
  border-radius: 2px;
  font-size: 16px;
}
.cta-button:hover { background: var(--taupe); color: var(--anthrazit); }

.platzhalter {
  border: 1px dashed var(--taupe);
  background: #8b7a6814;
  padding: var(--abstand-mittel);
  max-width: var(--textbreite-max);
  font-size: 14px;
  color: var(--anthrazit);
}

/* ---------- Fußbereich ---------- */
.fussbereich {
  background: var(--anthrazit);
  color: var(--creme);
  padding: var(--abstand-mittel) 0;
  margin-top: var(--abstand-gross);
}
.fussbereich-inner {
  max-width: 1040px;
  margin: 0 auto;
  padding: 0 var(--abstand-mittel);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--abstand-mittel);
  font-size: 14px;
}
@media (min-width: 768px) {
  .fussbereich-inner {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--abstand-gross);
  }
}
.fussbereich address { font-style: normal; }
.fussbereich address a { color: var(--creme); text-decoration: underline; text-decoration-color: var(--taupe); text-underline-offset: 3px; }
.fussbereich address a:hover { color: var(--taupe); }
.fusstitel {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  opacity: 0.7;
  margin: 0 0 var(--abstand-klein);
}
.landingpages-navigation ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: var(--abstand-klein);
  margin: 0;
  padding: 0;
}
.landingpages-navigation a { color: var(--creme); text-decoration: none; }
.landingpages-navigation a:hover { color: var(--taupe); }
.fussbereich .rechtsnavigation ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: var(--abstand-klein);
  margin: 0;
  padding: 0;
}
.rechtsnavigation a { color: var(--creme); text-decoration: none; }
.rechtsnavigation a:hover { color: var(--taupe); }

/* ================================================================
   Modernes Editorial-Layout für den Inhalt unterhalb des Wide-Heros
   ================================================================ */

body { background: #faf7f5; }

main {
  max-width: 1200px;
  padding: 96px 32px 120px;
}
main > section { margin-top: 132px; }
main > section:first-child { margin-top: 0; }

.hero-text {
  max-width: 980px;
  padding: 0 5vw 18px;
}
.hero-kicker {
  margin-bottom: 28px;
  font-size: 11px;
  letter-spacing: 0.18em;
}
.hero-text h1 {
  max-width: 17ch;
  margin: 0 auto 30px;
  color: var(--anthrazit);
  font-size: clamp(44px, 6vw, 78px);
  line-height: 1.02;
}
.hero-einleitung {
  max-width: 690px !important;
  color: #534b47;
  font-size: clamp(18px, 2vw, 22px);
  line-height: 1.65;
}
.hero-ctas {
  max-width: 860px;
  gap: 14px;
  margin-top: 40px;
}
.hero-cta {
  min-height: 74px;
  padding: 17px 20px;
  background: transparent;
  border-color: #221f1d55;
  font-size: 14px;
  line-height: 1.35;
}
.hero-cta:hover {
  background: var(--anthrazit);
  border-color: var(--anthrazit);
  color: var(--creme);
}
.hero-hinweis {
  margin-top: 26px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #6b625e;
  font-size: 14px;
  text-align: center;
}

.abschnitt-titel {
  color: var(--anthrazit);
  font-size: clamp(34px, 4vw, 54px);
  line-height: 1.08;
  letter-spacing: -0.02em;
}
.abschnitt-untertitel {
  color: #625955;
  font-size: 16px;
}

.karten-abschnitt {
  padding-top: 30px;
  border-top: 1px solid #221f1d33;
}
.karten-abschnitt .abschnitt-titel,
.karten-abschnitt .abschnitt-untertitel {
  text-align: left;
  margin-left: 0;
}
.karten-abschnitt .abschnitt-untertitel { margin-bottom: 46px; }
.karten-grid { gap: 24px; }
.karte {
  position: relative;
  min-width: 0;
  padding: 0 38px 42px;
  border: 0;
  background: var(--weiss);
  overflow: hidden;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
.karte:nth-child(2) { background: #eee3e1; }
.karte:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 55px rgba(34, 31, 29, 0.10);
}
.karte::before {
  display: block;
  margin: 28px 0 18px;
  color: #6b3f49;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
}
.karte:nth-child(1)::before { content: "01  ·  HAIRSTYLING"; }
.karte:nth-child(2)::before { content: "02  ·  HUMAN DESIGN"; }
.karte-bild {
  order: -1;
  width: calc(100% + 76px);
  height: 480px;
  margin: 0 -38px;
  background: #e8dedb;
  object-fit: cover;
  transition: transform 450ms ease;
}
.karte:nth-child(2) .karte-bild { object-fit: cover; padding: 0; }
.karte:hover .karte-bild { transform: scale(1.015); }
.karte h3 {
  color: var(--anthrazit);
  font-size: clamp(36px, 4vw, 50px);
  letter-spacing: -0.02em;
}
.karte h4 {
  margin-top: 8px;
  color: #6b3f49;
  font-size: 11px;
  letter-spacing: 0.13em;
}
.karte p { color: #554d49; }
.karte-link {
  width: 100%;
  padding-top: 34px;
  border-top: 1px solid #221f1d2b;
  text-decoration: none;
}
.karte-link::after { content: "  →"; }
.karte-zusatzlink { text-decoration-thickness: 1px; }
.karte-schritte { border-top: 1px solid #221f1d1f; padding-top: 22px; }

.kombination-abschnitt {
  margin-left: 0;
  margin-right: 0;
  padding: 112px clamp(32px, 8vw, 110px);
  border: 0;
  background: var(--anthrazit);
  color: var(--creme);
}
.kombination-abschnitt h2 {
  max-width: 820px;
  margin: 0 auto 28px;
  color: var(--creme);
  font-size: clamp(40px, 5vw, 68px);
  line-height: 1.05;
}
.kombination-abschnitt p {
  max-width: 690px;
  color: #f5eae7cc;
  font-size: 18px;
}
.wege-liste { margin-top: 44px; }
.wege-liste li {
  color: var(--creme);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.weg-nummer { border-color: var(--taupe); color: var(--creme); }

.arbeit-abschnitt {
  display: grid;
  grid-template-columns: 0.75fr 1.25fr;
  gap: clamp(46px, 8vw, 100px);
  align-items: center;
  padding: 30px 0 0;
  border-top: 1px solid #221f1d33;
}
.arbeit-text h2 {
  color: var(--anthrazit);
  font-size: clamp(40px, 5vw, 64px);
  line-height: 1.05;
}
.arbeit-text p { color: #5b524e; }
.arbeit-bilder { gap: 14px; }
.arbeit-bilder img {
  height: 460px;
  border-radius: 0;
}
.arbeit-bilder img:nth-child(2) { margin-top: 70px; }

.person-abschnitt {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border: 0;
  background: #eee3e1;
  overflow: hidden;
}
.person-abschnitt img {
  width: 100%;
  height: 100%;
  min-height: 630px;
  object-fit: cover;
  border-radius: 0;
}
.person-text { padding: clamp(46px, 7vw, 92px); }
.person-text h2 {
  color: var(--anthrazit);
  font-size: clamp(44px, 5vw, 68px);
}
.person-rolle {
  color: #6b3f49;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.person-link {
  padding-bottom: 4px;
  text-decoration: none;
  border-bottom: 1px solid var(--anthrazit);
}

.rezensionen-abschnitt {
  padding-top: 30px;
  border-top: 1px solid #221f1d33;
}
.rezensionen-grid { gap: 40px; }
.rezension {
  padding: 26px 0 0;
  border: 0;
  border-top: 2px solid var(--anthrazit);
  background: transparent;
}
.rezension-sterne { color: #6b3f49; }
.rezension blockquote { font-family: "Playfair Display", Georgia, serif; font-size: 18px; line-height: 1.65; }
.rezension figcaption { border-top-color: #221f1d21; }

.faq-abschnitt {
  display: grid;
  grid-template-columns: 0.7fr 1.3fr;
  gap: clamp(48px, 8vw, 100px);
  align-items: start;
  padding-top: 30px;
  border-top: 1px solid #221f1d33;
}
.faq-abschnitt .abschnitt-titel { text-align: left; }
.faq-liste { border-top: 1px solid #221f1d33; }
.faq-eintrag { border-bottom: 1px solid #221f1d33; }
.faq-eintrag > summary {
  padding: 24px 38px 24px 0;
  color: var(--anthrazit);
  font-size: 17px;
  font-weight: 600;
}
.faq-eintrag p { padding: 0 42px 26px 0; color: #5b524e; }

.preise-abschnitt {
  max-width: 960px;
  margin: 0 auto;
  padding: var(--abstand-gross) var(--abstand-mittel);
}
.preise-kategorie { margin-top: var(--abstand-gross); }
.preise-kategorie:first-of-type { margin-top: var(--abstand-mittel); }
.preise-kategorie h3 {
  font-size: 23px;
  margin-bottom: 6px;
}
.preise-kategorie > p {
  max-width: var(--textbreite-max);
  color: #5b524e;
  margin-bottom: var(--abstand-mittel);
}
.preise-tabelle {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
}
.preise-tabelle th,
.preise-tabelle td {
  text-align: left;
  padding: 12px 10px;
  border-bottom: 1px solid #221f1d1f;
  vertical-align: top;
}
.preise-tabelle thead th {
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--taupe);
  border-bottom: 1px solid var(--anthrazit);
}
.preise-tabelle tbody th {
  font-weight: 600;
  color: var(--anthrazit);
  white-space: nowrap;
}
.preise-preis {
  font-weight: 600;
  color: var(--pflaume);
  white-space: nowrap;
}
.preise-tabelle td:last-child { color: #5b524e; }
.preise-anfrage-eintrag {
  padding: 14px 0;
  border-bottom: 1px solid #221f1d1f;
}
.preise-anfrage-eintrag h4 {
  font-family: "Playfair Display", Georgia, "Times New Roman", serif;
  font-size: 18px;
  font-weight: 500;
  color: var(--pflaume);
  margin: 0 0 4px;
}
.preise-anfrage-eintrag p { margin: 0; color: #5b524e; }
.preise-hinweis {
  margin-top: var(--abstand-gross);
  padding: var(--abstand-mittel);
  background: var(--creme);
  border-left: 3px solid var(--taupe);
  max-width: var(--textbreite-max);
}
@media (max-width: 599px) {
  .preise-tabelle { font-size: 13px; }
  .preise-tabelle th, .preise-tabelle td { padding: 10px 6px; }
}

.blog-abschnitt {
  padding: 76px;
  background: var(--weiss);
}
.blog-grid { gap: 0; border-top: 1px solid #221f1d2b; }
.blog-karte {
  padding: 28px 24px;
  border: 0;
  border-right: 1px solid #221f1d2b;
  border-radius: 0;
  background: transparent;
}
.blog-karte:last-child { border-right: 0; }
.blog-karte h3 { font-size: 23px; }
.blog-link { text-decoration: none; }
.blog-link::after { content: "  →"; }

.cta-abschnitt {
  padding: 110px 32px;
  border-radius: 0;
}
.cta-abschnitt h2 {
  font-size: clamp(46px, 6vw, 76px);
  line-height: 1.05;
}
.cta-button {
  padding: 17px 28px;
  border: 1px solid var(--creme);
  background: transparent;
  color: var(--creme);
}
.cta-button:hover { background: var(--creme); color: var(--anthrazit); }

.fussbereich {
  margin-top: 0;
  padding: 54px 0;
  border-top: 1px solid #f5eae72b;
}
.fussbereich-inner { max-width: 1140px; }

@media (max-width: 767px) {
  main { padding: 72px 20px 88px; }
  main > section { margin-top: 88px; }
  .hero-text { padding: 0; }
  .hero-text h1 { font-size: 42px; }
  .hero-ctas { grid-template-columns: 1fr; }
  .karten-grid { gap: 18px; }
  .karte { padding: 0 24px 34px; }
  .karte-bild {
    width: calc(100% + 48px);
    height: 360px;
    margin: 0 -24px;
  }
  .kombination-abschnitt {
    padding: 80px 24px;
  }
  .arbeit-abschnitt,
  .faq-abschnitt { grid-template-columns: 1fr; }
  .arbeit-bilder img { height: 330px; }
  .arbeit-bilder img:nth-child(2) { margin-top: 38px; }
  .person-abschnitt { grid-template-columns: 1fr; }
  .person-abschnitt img { min-height: 430px; }
  .person-text { padding: 44px 28px; }
  .rezensionen-grid { gap: 26px; }
  .blog-abschnitt { padding: 54px 24px; }
  .blog-karte { border-right: 0; border-bottom: 1px solid #221f1d2b; padding-left: 0; padding-right: 0; }
  .blog-bild { margin-right: 0; margin-left: 0; }
  .blog-karte:last-child { border-bottom: 0; }
  .cta-abschnitt { padding: 82px 24px; }
}

/* Luxury-Feinschliff: strengere Typografie und präzisere Komposition. */
body { background: #f8f5f2; }

main { max-width: 1240px; }

.karten-abschnitt,
.arbeit-abschnitt,
.rezensionen-abschnitt,
.faq-abschnitt {
  border-top-color: #221f1d26;
}

.karten-abschnitt::before,
.arbeit-abschnitt::before,
.rezensionen-abschnitt::before,
.faq-abschnitt::before {
  display: block;
  margin-bottom: 20px;
  color: #6b3f49;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}
.karten-abschnitt::before { content: "Die Angebote"; }
.arbeit-abschnitt::before { content: "Das Handwerk"; grid-column: 1 / -1; }
.rezensionen-abschnitt::before { content: "Stimmen"; }
.faq-abschnitt::before { content: "Orientierung"; grid-column: 1 / -1; }

.karte {
  box-shadow: none;
  transition: none;
}
.karte:hover {
  transform: none;
  box-shadow: none;
}
.karte-bild { transition: none; }
.karte:hover .karte-bild { transform: none; }
.karte:nth-child(1) { background: #ffffff; }
.karte:nth-child(2) { background: #ebe0de; }
.karte h3 { margin-bottom: 4px; }
.karte p { line-height: 1.75; }
.karte-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--anthrazit);
  font-size: 13px;
  letter-spacing: 0.03em;
}
.karte-link::after { content: "→"; font-size: 18px; }

.kombination-abschnitt {
  position: relative;
  overflow: hidden;
}
.kombination-abschnitt::before {
  content: "D&S";
  position: absolute;
  top: -0.18em;
  right: -0.04em;
  color: #f5eae708;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(180px, 30vw, 410px);
  line-height: 1;
  pointer-events: none;
}
.kombination-abschnitt > * { position: relative; z-index: 1; }

.person-abschnitt { background: #e9dedb; }
.person-text p:not(.person-rolle) { line-height: 1.8; }

.rezensionen-abschnitt .abschnitt-titel,
.rezensionen-abschnitt .abschnitt-untertitel {
  text-align: left;
  margin-left: 0;
}
.rezensionen-abschnitt .abschnitt-untertitel { margin-bottom: 42px; }
.rezension blockquote { color: #332e2b; }

.blog-abschnitt {
  border: 1px solid #221f1d14;
  background: #fffdfc;
}
.blog-karte h3 a { color: var(--anthrazit); }

@media (min-width: 600px) and (max-width: 767px) {
  .hero-ctas { grid-template-columns: 1fr 1fr; }
  .karten-grid { grid-template-columns: 1fr 1fr; }
  .karte { padding-left: 22px; padding-right: 22px; }
  .karte-bild {
    width: calc(100% + 44px);
    height: 350px;
    margin-left: -22px;
    margin-right: -22px;
  }
  .karte:nth-child(2) .karte-bild { padding: 0; }
  .karte h3 { font-size: 34px; }
  .karte p { font-size: 15px; }
}

/* Individuelle Design-&-Style-Signatur */
.karten-abschnitt {
  position: relative;
  padding-top: 38px;
}
.karten-abschnitt .abschnitt-titel {
  max-width: 12ch;
  color: var(--anthrazit);
  font-size: clamp(44px, 6vw, 76px);
}
.karten-abschnitt .abschnitt-untertitel {
  max-width: 700px;
  line-height: 1.75;
}
.karten-grid { align-items: stretch; }
.karte {
  isolation: isolate;
  padding-bottom: 46px;
}
.karte::after {
  position: absolute;
  right: -0.04em;
  bottom: -0.2em;
  z-index: 0;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(88px, 13vw, 180px);
  font-weight: 500;
  letter-spacing: -0.06em;
  line-height: 1;
  pointer-events: none;
}
.karte:nth-child(1) {
  background: var(--anthrazit);
  color: var(--creme);
}
.karte:nth-child(1)::after {
  content: "STYLE";
  color: #f5eae70a;
}
.karte:nth-child(2)::after {
  content: "DESIGN";
  color: #6b3f4909;
}
.karte > * { position: relative; z-index: 1; }
.karte:nth-child(1)::before,
.karte:nth-child(1) h3,
.karte:nth-child(1) h4,
.karte:nth-child(1) p,
.karte:nth-child(1) .karte-zusatzlink,
.karte:nth-child(1) .karte-link {
  color: var(--creme);
}
.karte:nth-child(1) h4 { color: #d9c8c3; }
.karte:nth-child(1) .karte-link,
.karte:nth-child(1) .karte-schritte { border-top-color: #f5eae72e; }
.karte:nth-child(1) .karte-zusatzlink { text-decoration-color: var(--taupe); }
.karte:nth-child(1) .karte-bild { background: #3a3431; }
.karte:nth-child(2) { border-top: 6px solid #6b3f49; }
.karte:nth-child(1) { border-top: 6px solid var(--taupe); }

.arbeit-abschnitt {
  padding: clamp(42px, 7vw, 84px);
  border-top: 0;
  background: #fffdfc;
}
.arbeit-abschnitt::before { margin-bottom: 0; }
.arbeit-bilder img:first-child { filter: saturate(0.82) contrast(1.03); }

.person-abschnitt {
  position: relative;
  isolation: isolate;
}
.person-abschnitt::after {
  content: "DENNIS";
  position: absolute;
  right: -0.04em;
  bottom: -0.16em;
  z-index: 0;
  color: #6b3f4908;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(110px, 20vw, 250px);
  letter-spacing: -0.06em;
  line-height: 1;
}
.person-abschnitt > * { position: relative; z-index: 1; }

.rezensionen-grid { counter-reset: review; }
.rezension { counter-increment: review; }
.rezension::before {
  content: "0" counter(review);
  color: #6b3f49;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 28px;
}

.faq-abschnitt .abschnitt-titel::after {
  content: " / D&S";
  color: #6b3f49;
  font-size: 0.45em;
  letter-spacing: 0.06em;
}

.blog-abschnitt { position: relative; overflow: hidden; }
.blog-abschnitt::after {
  content: "JOURNAL";
  position: absolute;
  right: -0.03em;
  bottom: -0.2em;
  color: #6b3f4907;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(100px, 17vw, 210px);
  letter-spacing: -0.06em;
  line-height: 1;
  pointer-events: none;
}
.blog-abschnitt > * { position: relative; z-index: 1; }

@media (max-width: 599px) {
  .karten-abschnitt .abschnitt-titel { font-size: 46px; }
  .karte:nth-child(1),
  .karte:nth-child(2) { border-top-width: 5px; }
  .arbeit-abschnitt { padding: 42px 24px; }
}

/* Eigenständige Editorial-FAQ */
.faq-abschnitt {
  position: relative;
  display: grid;
  grid-template-columns: minmax(180px, 0.62fr) minmax(0, 1.38fr);
  gap: clamp(48px, 8vw, 104px);
  padding: clamp(54px, 8vw, 96px);
  border: 0;
  background: #e9dedb;
  overflow: hidden;
}
.faq-abschnitt::before { display: none; }
.faq-kopf {
  position: relative;
  z-index: 1;
}
.faq-kopf::after {
  content: "?";
  position: absolute;
  left: -0.1em;
  bottom: -0.48em;
  z-index: -1;
  color: #6b3f4908;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(170px, 26vw, 330px);
  line-height: 1;
}
.faq-label {
  margin: 0 0 22px;
  color: #6b3f49;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}
.faq-abschnitt .abschnitt-titel {
  margin: 0 0 26px;
  color: var(--anthrazit);
  font-size: clamp(42px, 5vw, 66px);
  line-height: 1.03;
  text-align: left;
}
.faq-abschnitt .abschnitt-titel::after { content: none; }
.faq-intro {
  max-width: 320px;
  margin: 0;
  color: #5b524e;
  font-size: 15px;
  line-height: 1.75;
}
.faq-liste {
  counter-reset: faq;
  gap: 0;
  width: 100%;
  max-width: none;
  margin: 0;
  border-top: 1px solid #221f1d4a;
}
.faq-eintrag {
  counter-increment: faq;
  border: 0;
  border-bottom: 1px solid #221f1d4a;
  border-radius: 0;
  background: transparent;
  transition: background-color 160ms ease;
}
.faq-eintrag[open] { background: #fffdfc99; }
.faq-eintrag > summary {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 34px;
  gap: 16px;
  align-items: center;
  padding: 26px 0;
  color: var(--anthrazit);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.45;
}
.faq-eintrag[open] > summary { padding-left: 22px; padding-right: 22px; }
.faq-eintrag > summary::before {
  content: "0" counter(faq);
  color: #6b3f49;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 18px;
  font-weight: 500;
}
.faq-eintrag > summary::after {
  content: "+";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 1px solid #221f1d66;
  border-radius: 50%;
  color: var(--anthrazit);
  font-size: 18px;
  font-weight: 400;
}
.faq-eintrag[open] > summary::after { content: "−"; }
.faq-eintrag p {
  max-width: none;
  margin: 0;
  padding: 0 72px 28px;
  color: #514945;
  font-size: 15px;
  line-height: 1.75;
}

@media (max-width: 767px) {
  .faq-abschnitt {
    grid-template-columns: 1fr;
    gap: 42px;
    padding: 54px 24px;
  }
  .faq-kopf::after { right: 0; left: auto; bottom: -0.4em; }
  .faq-intro { max-width: 520px; }
  .faq-eintrag > summary {
    grid-template-columns: 30px minmax(0, 1fr) 32px;
    gap: 12px;
    padding: 22px 0;
    font-size: 15px;
  }
  .faq-eintrag[open] > summary { padding-left: 14px; padding-right: 14px; }
  .faq-eintrag p { padding: 0 58px 24px; }
}

/* Ruhiger Luxury-Header */
.kopfbereich {
  padding: 17px 0;
  border-bottom: 1px solid #f5eae71f;
}
.kopfbereich-inner { max-width: 1200px; }
.logo img { height: 56px; }
.hauptnavigation a,
.dropdown > summary {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.045em;
}
.dropdown > summary::after { content: ""; }
.hauptnavigation a.kontakt-button {
  padding: 10px 18px;
  border: 1px solid #f5eae75c;
  background: transparent;
  color: var(--creme);
}
.hauptnavigation a.kontakt-button:hover {
  border-color: var(--creme);
  background: var(--creme);
  color: var(--anthrazit);
}
.vertrauensleiste {
  padding: 11px 24px;
  border-bottom: 0;
  background: #2b2725;
}
.vertrauensleiste-spur {
  display: block;
  width: 100%;
  animation: none;
}
.vertrauensleiste-spur > ul:first-child {
  width: 100%;
  margin: 0;
  justify-content: center;
  flex-wrap: wrap;
  row-gap: 6px;
}
.vertrauensleiste-spur > ul[aria-hidden="true"] { display: none; }
.vertrauensleiste li {
  padding-left: 0;
  font-size: 10px;
  letter-spacing: 0.09em;
}

@media (max-width: 599px) {
  .kopfbereich { padding: 14px 0; }
  .logo img { height: 52px; }
  .navigation-flaeche { padding-top: 12px; }
  .hauptnavigation a,
  .dropdown > summary { font-size: 11px; }
  .vertrauensleiste { padding-left: 14px; padding-right: 14px; }
  .vertrauensleiste-spur > ul:first-child { column-gap: 14px; }
  .vertrauensleiste li { font-size: 9px; }
  .vertrauensleiste li:nth-child(4) { display: none; }
}

/* Startseiten-Angebotsbilder vollständig im echten Hochformat zeigen */
.karten-grid .karte:nth-child(1) .karte-bild,
.karten-grid .karte:nth-child(2) .karte-bild {
  height: auto;
  object-fit: contain;
  object-position: center;
  transform: none;
}
.karten-grid .karte:hover .karte-bild { transform: none; }

/* ---------- Hero-Bild ganz (kein Zuschnitt) ---------- */
.hero-bild-ganz {
  height: auto;
  min-height: 0;
  max-height: 85vh;
  object-fit: contain;
  background: var(--anthrazit);
}
.hero-bildbereich-wide {
  height: clamp(240px, 56.25vw, 760px);
  background: #24201d;
}
.hero-bild-wide {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: contain;
  object-position: center;
  background: #24201d;
}

/* ---------- Hero-Auswahl Balayage / Monochromatics ---------- */
.hero-auswahl {
  position: relative;
  width: 100%;
  padding: 22px 22px 0;
  background: var(--anthrazit);
}
.hero-auswahl-radio {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
}
.hero-auswahl-schalter {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-bottom: 18px;
}
.hero-auswahl-schalter label {
  min-width: 150px;
  padding: 12px 20px;
  border: 1px solid #ffffff70;
  color: var(--weiss);
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.04em;
  cursor: pointer;
}
#motiv-balayage:checked ~ .hero-auswahl-schalter label[for="motiv-balayage"],
#motiv-monochromatics:checked ~ .hero-auswahl-schalter label[for="motiv-monochromatics"] {
  color: var(--anthrazit);
  background: var(--creme);
  border-color: var(--creme);
}
.hero-auswahl-motiv { display: none; margin: 0; }
#motiv-balayage:checked ~ .hero-auswahl-bilder .motiv-balayage,
#motiv-monochromatics:checked ~ .hero-auswahl-bilder .motiv-monochromatics { display: block; }
.hero-auswahl-motiv > a {
  position: relative;
  display: flex;
  width: 100%;
  height: clamp(420px, 58vw, 760px);
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #171513;
}
.hero-auswahl-motiv img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.hero-auswahl-motiv > a > span {
  position: absolute;
  right: 18px;
  bottom: 18px;
  padding: 9px 13px;
  color: var(--weiss);
  background: #221f1dcc;
  font-size: 13px;
}
.hero-auswahl-motiv figcaption {
  display: flex;
  align-items: baseline;
  gap: 12px;
  padding: 15px 4px 20px;
  color: var(--weiss);
}
.hero-auswahl-motiv figcaption strong {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 22px;
}
.hero-auswahl-motiv figcaption small { color: #ffffffb8; }
.bild-grossansicht {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
.bild-grossansicht:target { display: flex; }
.bild-grossansicht-hintergrund {
  position: absolute;
  inset: 0;
  background: #0d0c0beF;
}
.bild-grossansicht figure {
  position: relative;
  z-index: 1;
  display: flex;
  max-width: min(94vw, 1500px);
  max-height: 92vh;
  margin: 0;
  flex-direction: column;
  align-items: center;
}
.bild-grossansicht img {
  display: block;
  max-width: 100%;
  max-height: 82vh;
  width: auto;
  height: auto;
  object-fit: contain;
}
.bild-grossansicht figcaption { margin-top: 10px; color: var(--weiss); }
.bild-grossansicht-schliessen {
  margin-top: 12px;
  padding: 9px 16px;
  color: var(--anthrazit);
  background: var(--creme);
  text-decoration: none;
}
@media (max-width: 599px) {
  .hero-auswahl { padding: 14px 14px 0; }
  .hero-auswahl-schalter label { min-width: 0; flex: 1; padding-inline: 10px; }
  .hero-auswahl-motiv > a { height: 68vh; min-height: 430px; }
  .hero-auswahl-motiv figcaption { display: block; }
  .hero-auswahl-motiv figcaption small { display: block; margin-top: 4px; }
}

/* ---------- Ratgeberartikel ---------- */
.artikel {
  width: min(860px, calc(100% - 40px));
  margin: 72px auto;
  color: var(--anthrazit);
}
.artikel-kopf {
  padding-bottom: 30px;
  border-bottom: 1px solid #221f1d26;
}
.artikel-meta {
  margin-bottom: 18px;
  color: #625b56;
  font-size: 14px;
}
.artikel-kurzantwort {
  margin: 0;
  font-size: clamp(20px, 2.4vw, 27px);
  line-height: 1.5;
  font-family: "Playfair Display", Georgia, "Times New Roman", serif;
}
.artikel-inhalt {
  margin: 34px 0 56px;
  padding: 26px 30px;
  background: #f3efeb;
  border-left: 4px solid var(--taupe);
}
.artikel-inhalt > p { margin: 0 0 12px; font-weight: 700; }
.artikel-inhalt ol { margin: 0; padding-left: 22px; }
.artikel-inhalt li + li { margin-top: 7px; }
.artikel-inhalt a { color: var(--anthrazit); text-underline-offset: 3px; }
.artikel-abschnitt { margin: 0 0 54px; scroll-margin-top: 24px; }
.artikel-abschnitt h2,
.artikel-quellen h2 {
  margin-bottom: 20px;
  font-size: clamp(28px, 3.4vw, 40px);
  line-height: 1.18;
}
.artikel-abschnitt p,
.artikel-abschnitt li,
.artikel-quellen li { font-size: 18px; line-height: 1.75; }
.artikel-abschnitt p + p { margin-top: 18px; }
.artikel-abschnitt ul { padding-left: 24px; }
.artikel-abschnitt li + li { margin-top: 10px; }
.artikel-rechnung {
  width: 100%;
  margin: 30px 0;
  border-collapse: collapse;
  background: #fffdfc;
  font-variant-numeric: tabular-nums;
}
.artikel-rechnung th,
.artikel-rechnung td {
  padding: 13px 15px;
  border-bottom: 1px solid #221f1d24;
  text-align: left;
  vertical-align: top;
}
.artikel-rechnung th { font-weight: 600; }
.artikel-rechnung td:last-child { width: 9ch; text-align: right; white-space: nowrap; }
.artikel-rechnung .rechnung-summe th,
.artikel-rechnung .rechnung-summe td { border-top: 2px solid #221f1d7a; font-weight: 700; }
.artikel-hinweis {
  margin: 30px 0;
  padding: 22px 24px;
  border-left: 4px solid var(--taupe);
  background: #f3efeb;
}
.artikel-quellen {
  margin-top: 64px;
  padding-top: 36px;
  border-top: 1px solid #221f1d26;
}
.artikel-quellen a { color: var(--anthrazit); text-underline-offset: 3px; }
@media (max-width: 599px) {
  .artikel { width: min(100% - 28px, 860px); margin-top: 48px; }
  .artikel-inhalt { padding: 22px 20px; }
  .artikel-abschnitt p,
  .artikel-abschnitt li,
  .artikel-quellen li { font-size: 16px; }
  .artikel-rechnung th,
  .artikel-rechnung td { padding: 11px 8px; font-size: 14px; }
}
@media (min-width: 900px) {
  .hero-bild-ganz { min-height: 0; }
}

/* ---------- Globaler Schnellkontakt ---------- */
.nur-screenreader {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* ---------- Transformation Story ---------- */
.transformation-abschnitt {
  padding: clamp(70px, 9vw, 130px) max(24px, calc((100vw - 1280px) / 2));
  color: var(--weiss);
  background: linear-gradient(145deg, #29231f, #161412 72%);
}
.transformation-kopf {
  max-width: 820px;
  margin: 0 auto clamp(40px, 6vw, 72px);
  text-align: center;
}
.transformation-label {
  margin-bottom: 14px;
  color: #d8c8bc;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.transformation-kopf h2 {
  margin-bottom: 18px;
  color: var(--weiss);
  font-size: clamp(38px, 5vw, 66px);
  line-height: 1.05;
}
.transformation-kopf > p:last-child {
  margin: 0 auto;
  max-width: 680px;
  color: #ffffffbd;
  font-size: 18px;
  line-height: 1.7;
}
.transformation-layout {
  display: grid;
  grid-template-columns: minmax(340px, 650px) minmax(280px, 460px);
  align-items: center;
  justify-content: center;
  gap: clamp(40px, 7vw, 100px);
}
.transformation-vergleich {
  position: relative;
  width: min(100%, 650px);
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: #0d0c0b;
  box-shadow: 0 28px 70px #00000059;
  user-select: none;
  touch-action: pan-y;
}
.transformation-vorher,
.transformation-nachher {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.transformation-vorher-rahmen {
  position: absolute;
  inset: 0;
  overflow: hidden;
  clip-path: inset(0 calc(100% - var(--vergleich)) 0 0);
}
.transformation-nachher { max-width: none; }
.transformation-badge {
  position: absolute;
  top: 16px;
  z-index: 3;
  padding: 8px 11px;
  color: var(--weiss);
  background: #221f1dcc;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  pointer-events: none;
}
.transformation-badge-vorher { left: 16px; }
.transformation-badge-nachher { right: 16px; }
.transformation-linie {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--vergleich);
  z-index: 4;
  width: 2px;
  background: var(--weiss);
  transform: translateX(-1px);
  pointer-events: none;
}
.transformation-linie span {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border: 1px solid #ffffff8c;
  border-radius: 50%;
  color: var(--anthrazit);
  background: var(--creme);
  font-size: 20px;
  transform: translate(-50%, -50%);
  box-shadow: 0 6px 20px #0000004a;
}
.transformation-regler {
  position: absolute;
  inset: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: ew-resize;
}
.transformation-regler:focus-visible + * { outline: none; }
.transformation-vergleich:focus-within { outline: 3px solid var(--taupe); outline-offset: 5px; }
.transformation-text { max-width: 440px; }
.transformation-zitat {
  margin: 0 0 34px;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(27px, 3.2vw, 43px);
  line-height: 1.2;
}
.transformation-text dl { margin: 0 0 32px; }
.transformation-text dl > div { padding: 18px 0; border-top: 1px solid #ffffff2b; }
.transformation-text dl > div:last-child { border-bottom: 1px solid #ffffff2b; }
.transformation-text dt {
  margin-bottom: 6px;
  color: #d8c8bc;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.transformation-text dd { margin: 0; color: #ffffffbd; line-height: 1.6; }
.transformation-text > a {
  display: inline-block;
  padding: 14px 19px;
  color: var(--anthrazit);
  background: var(--creme);
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}
.transformation-text > a:hover { color: var(--anthrazit); background: var(--taupe); }
@media (max-width: 820px) {
  .transformation-layout { grid-template-columns: 1fr; }
  .transformation-vergleich { margin: 0 auto; }
  .transformation-text { max-width: 650px; margin: 0 auto; text-align: center; }
  .transformation-text dl { text-align: left; }
}

.social-schnellkontakt {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 700;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.social-button {
  display: flex;
  min-height: 46px;
  align-items: center;
  gap: 10px;
  padding: 10px 15px;
  border: 1px solid #ffffff42;
  border-radius: 2px;
  color: var(--weiss);
  background: #221f1df2;
  box-shadow: 0 8px 24px #00000026;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-decoration: none;
  transition: transform 160ms ease, background 160ms ease;
}
.social-button svg { width: 21px; height: 21px; flex: 0 0 21px; }
.social-button:hover,
.social-button:focus-visible {
  color: var(--anthrazit);
  background: var(--creme);
  transform: translateY(-2px);
}
@media (max-width: 599px) {
  body { padding-bottom: 66px; }
  .social-schnellkontakt {
    right: 12px;
    bottom: max(10px, env(safe-area-inset-bottom));
    left: 12px;
    flex-direction: row;
  }
  .social-button { flex: 1; justify-content: center; padding-inline: 10px; }
}

/* ---------- Design & Style Concierge ---------- */
.concierge {
  position: fixed;
  inset: 0;
  z-index: 900;
  display: none;
  overflow-y: auto;
  padding: 24px;
  color: var(--weiss);
}
.concierge:target { display: block; }
.concierge-hintergrund {
  position: fixed;
  inset: 0;
  background: #12100ff5;
  backdrop-filter: blur(14px);
}
.concierge-panel {
  position: relative;
  z-index: 1;
  width: min(1380px, 100%);
  min-height: calc(100vh - 48px);
  margin: 0 auto;
  padding: clamp(26px, 4vw, 62px);
  border: 1px solid #ffffff2e;
  background: linear-gradient(145deg, #2a2623 0%, #171513 72%);
  box-shadow: 0 30px 80px #00000070;
}
.concierge-kopf {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 22px;
  border-bottom: 1px solid #ffffff26;
}
.concierge-kopf p {
  margin: 0;
  color: #d8c8bc;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}
.concierge-kopf a {
  color: var(--weiss);
  font-size: 13px;
  text-underline-offset: 5px;
}
.concierge-einleitung {
  max-width: 820px;
  margin: clamp(36px, 5vw, 72px) auto 38px;
  text-align: center;
}
.concierge-einleitung h2 {
  margin-bottom: 16px;
  color: var(--weiss);
  font-size: clamp(42px, 6vw, 78px);
  line-height: 1.02;
}
.concierge-einleitung p {
  margin: 0 auto;
  max-width: 690px;
  color: #ffffffba;
  font-size: clamp(16px, 1.6vw, 20px);
  line-height: 1.65;
}
.concierge-radio {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
}
.concierge-karten {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(12px, 2vw, 26px);
}
.concierge-karte {
  position: relative;
  display: flex;
  min-height: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #ffffff30;
  background: #1b1816;
  cursor: pointer;
  isolation: isolate;
  transition: transform 220ms ease, border-color 220ms ease;
}
.concierge-karte::after {
  content: none;
}
.concierge-karte img {
  position: static;
  width: 100%;
  height: clamp(310px, 34vw, 500px);
  object-fit: contain;
  object-position: center;
  background: #100f0e;
  filter: saturate(.88) contrast(.97);
  transition: filter 300ms ease;
}
.concierge-karte:hover { transform: translateY(-5px); border-color: #d8c8bc; }
.concierge-karte:hover img { filter: saturate(1) contrast(1); }
.concierge-karte-text {
  position: static;
  display: block;
  min-height: 178px;
  padding: clamp(22px, 3vw, 38px);
  background: linear-gradient(145deg, #28231f, #191715);
}
.concierge-karte-text small {
  display: block;
  margin-bottom: 10px;
  color: #d8c8bc;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.concierge-karte-text strong {
  display: block;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(24px, 2.4vw, 36px);
  font-weight: 500;
  line-height: 1.12;
}
.concierge-karte-text > span {
  display: block;
  margin-top: 12px;
  color: #ffffffb8;
  font-size: 14px;
}
#concierge-haare:checked ~ .concierge-karten label[for="concierge-haare"],
#concierge-verstehen:checked ~ .concierge-karten label[for="concierge-verstehen"],
#concierge-verbinden:checked ~ .concierge-karten label[for="concierge-verbinden"] {
  border-color: var(--creme);
  box-shadow: inset 0 0 0 2px var(--creme);
}
.concierge-empfehlungen {
  min-height: 190px;
  margin-top: 26px;
  border-top: 1px solid #ffffff26;
}
.concierge-start {
  margin: 0;
  padding: 42px 0 18px;
  color: #ffffff9c;
  text-align: center;
}
.concierge-empfehlung { display: none; max-width: 900px; margin: 0 auto; padding: 34px 0 10px; text-align: center; }
#concierge-haare:checked ~ .concierge-empfehlungen .empfehlung-haare,
#concierge-verstehen:checked ~ .concierge-empfehlungen .empfehlung-verstehen,
#concierge-verbinden:checked ~ .concierge-empfehlungen .empfehlung-verbinden { display: block; }
#concierge-haare:checked ~ .concierge-empfehlungen .concierge-start,
#concierge-verstehen:checked ~ .concierge-empfehlungen .concierge-start,
#concierge-verbinden:checked ~ .concierge-empfehlungen .concierge-start { display: none; }
.concierge-empfehlung-label {
  margin: 0 0 8px;
  color: #d8c8bc;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.concierge-empfehlung h3 { margin-bottom: 10px; color: var(--weiss); font-size: clamp(26px, 3vw, 38px); }
.concierge-empfehlung > p:not(.concierge-empfehlung-label) { margin: 0 auto; max-width: 720px; color: #ffffffc4; line-height: 1.65; }
.concierge-aktionen { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.concierge-aktionen a {
  padding: 13px 19px;
  border: 1px solid var(--creme);
  color: var(--anthrazit);
  background: var(--creme);
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}
.concierge-aktionen .concierge-whatsapp { color: var(--weiss); background: transparent; }
.concierge-aktionen a:hover { color: var(--anthrazit); background: var(--taupe); border-color: var(--taupe); }
@media (max-width: 760px) {
  .concierge { padding: 0; }
  .concierge-panel { min-height: 100vh; padding: 22px 16px 90px; border: 0; }
  .concierge-einleitung { margin: 34px auto 26px; }
  .concierge-einleitung h2 { font-size: clamp(38px, 12vw, 56px); }
  .concierge-karten { grid-template-columns: 1fr; }
  .concierge-karte { min-height: 0; }
  .concierge-karte img { height: min(66vh, 520px); }
  .concierge-karte-text { min-height: 0; }
  .concierge-karte-text strong { font-size: 29px; }
  .concierge-aktionen { display: grid; }
  .concierge-aktionen a { text-align: center; }
}

/* Editoriale Portal-Inszenierung des Concierge */
@media (min-width: 761px) {
  .concierge-panel {
    overflow: hidden;
    isolation: isolate;
  }
  .concierge-panel::before,
  .concierge-panel::after {
    position: absolute;
    z-index: -1;
    color: #ffffff08;
    font-family: "Playfair Display", Georgia, serif;
    font-size: clamp(120px, 18vw, 270px);
    line-height: .8;
    pointer-events: none;
  }
  .concierge-panel::before {
    content: "DESIGN";
    top: 18%;
    left: -2%;
  }
  .concierge-panel::after {
    content: "STYLE";
    right: -1%;
    bottom: 8%;
  }
  .concierge-karten {
    position: relative;
    z-index: 1;
    align-items: start;
    gap: clamp(22px, 3.3vw, 52px);
    padding: 12px clamp(12px, 3vw, 42px) 54px;
  }
  .concierge-karte {
    overflow: visible;
    padding: 9px;
    border: 0;
    background: #ffffff0b;
    box-shadow: 0 24px 60px #00000042;
  }
  .concierge-karte::before {
    position: absolute;
    top: -25px;
    left: 50%;
    z-index: 3;
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid #d8c8bc8c;
    border-radius: 50%;
    color: #d8c8bc;
    background: #1c1917;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 15px;
    transform: translateX(-50%);
  }
  .concierge-karte:nth-child(1)::before { content: "I"; }
  .concierge-karte:nth-child(2)::before { content: "II"; }
  .concierge-karte:nth-child(3)::before { content: "III"; }
  .concierge-karte:nth-child(1) { transform: translateY(42px) rotate(-1.2deg); }
  .concierge-karte:nth-child(2) { transform: translateY(0); }
  .concierge-karte:nth-child(3) { transform: translateY(42px) rotate(1.2deg); }
  .concierge-karte:nth-child(1):hover { transform: translateY(27px) rotate(-.4deg) scale(1.015); }
  .concierge-karte:nth-child(2):hover { transform: translateY(-15px) scale(1.015); }
  .concierge-karte:nth-child(3):hover { transform: translateY(27px) rotate(.4deg) scale(1.015); }
  .concierge-karte img {
    height: clamp(330px, 32vw, 490px);
    border: 1px solid #ffffff24;
    border-radius: 50% 50% 4px 4px / 19% 19% 4px 4px;
    background: radial-gradient(circle at 50% 30%, #302a26, #100f0e 72%);
  }
  .concierge-karte-text {
    min-height: 166px;
    margin-top: 9px;
    padding: clamp(20px, 2.4vw, 31px);
    text-align: center;
    background: transparent;
  }
  .concierge-karte-text strong { font-size: clamp(23px, 2.1vw, 33px); }
  #concierge-haare:checked ~ .concierge-karten label[for="concierge-haare"],
  #concierge-verstehen:checked ~ .concierge-karten label[for="concierge-verstehen"],
  #concierge-verbinden:checked ~ .concierge-karten label[for="concierge-verbinden"] {
    border-color: transparent;
    box-shadow: 0 0 0 2px var(--creme), 0 30px 70px #00000066;
  }
}

/* Signature-CTA zum Design & Style Concierge */
.hero-cta.hero-cta-concierge {
  position: relative;
  grid-column: 1 / -1;
  min-height: 126px;
  overflow: hidden;
  padding: 24px clamp(24px, 4vw, 42px);
  border: 1px solid var(--anthrazit);
  color: var(--creme);
  background: linear-gradient(120deg, #181614 0%, #302923 55%, #1c1916 100%);
  box-shadow: 0 18px 42px #221f1d2e;
  isolation: isolate;
}
.hero-cta.hero-cta-concierge::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -80%;
  bottom: -80%;
  left: -30%;
  width: 24%;
  background: linear-gradient(90deg, transparent, #ffffff1f, transparent);
  transform: rotate(15deg);
  animation: concierge-cta-glanz 7s ease-in-out infinite;
}
.hero-cta.hero-cta-concierge::after {
  display: grid;
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  margin-left: 24px;
  place-items: center;
  border: 1px solid #f5eae766;
  border-radius: 50%;
  content: "→";
  color: var(--creme);
  font-size: 21px;
  transition: color 180ms ease, background 180ms ease, transform 180ms ease;
}
.hero-cta-concierge-text { display: block; }
.hero-cta-concierge-text small {
  display: block;
  margin-bottom: 8px;
  color: #d7c6b9;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .17em;
  text-transform: uppercase;
}
.hero-cta-concierge-text strong {
  display: block;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(23px, 3vw, 34px);
  font-weight: 500;
  line-height: 1.1;
}
.hero-cta-concierge-text em {
  display: block;
  margin-top: 9px;
  color: #ffffffa8;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: .015em;
}
.hero-cta.hero-cta-concierge:hover,
.hero-cta.hero-cta-concierge:focus-visible {
  color: var(--creme);
  border-color: var(--taupe);
  background: linear-gradient(120deg, #211d1a, #40362e 55%, #241f1b);
  transform: translateY(-3px);
  box-shadow: 0 24px 54px #221f1d42;
}
.hero-cta.hero-cta-concierge:hover::after,
.hero-cta.hero-cta-concierge:focus-visible::after {
  color: var(--anthrazit);
  background: var(--creme);
  transform: translateX(4px);
}
@keyframes concierge-cta-glanz {
  0%, 68%, 100% { left: -35%; opacity: 0; }
  76% { opacity: 1; }
  91% { left: 118%; opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-cta.hero-cta-concierge::before { animation: none; }
}
@media (max-width: 599px) {
  .hero-cta.hero-cta-concierge { min-height: 118px; padding: 21px 19px; }
  .hero-cta.hero-cta-concierge::after { width: 44px; height: 44px; flex-basis: 44px; margin-left: 12px; }
  .hero-cta-concierge-text strong { font-size: 24px; }
  .hero-cta-concierge-text em { max-width: 27ch; }
}

/* ---------- Testportal: DESIGN oder STYLE ---------- */
.portal-auswahlseite {
  min-width: 320px;
  min-height: 100vh;
  background: #f4f2ec;
  overflow: hidden;
}
.portal-auswahlseite * { box-sizing: border-box; }
.portal-auswahlseite :focus-visible {
  outline: 2px solid currentColor;
  outline-offset: -12px;
}
.portal-nur-screenreader {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}
.portal-auswahl {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  max-width: none;
  height: 100vh;
  height: 100svh;
  min-height: 100vh;
  min-height: 100svh;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #090909;
}
.portal-teilung {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.portal-teilung path { fill: #f4f2ec; }
.portal-option {
  position: relative;
  z-index: 1;
  display: flex;
  min-width: 0;
  min-height: 100vh;
  min-height: 100svh;
  align-items: center;
  justify-content: center;
  padding: clamp(28px, 6vw, 96px);
  color: inherit;
  text-decoration: none;
}
.portal-option::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: radial-gradient(circle at 50% 50%, #ffffff10, transparent 58%);
  opacity: 0;
  transition: opacity 500ms ease;
}
.portal-option-inhalt {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: transform 500ms cubic-bezier(.2,.8,.2,1);
}
.portal-option-style { color: #090909; }
.portal-option-design { color: #f4f2ec; }
.portal-option-style .portal-option-inhalt { transform: translateX(-4vw); }
.portal-option-design .portal-option-inhalt { transform: translateX(4vw); }
.portal-option strong {
  display: block;
  font-family: "Playfair Display", Georgia, "Times New Roman", serif;
  font-size: clamp(58px, 9.5vw, 164px);
  font-weight: 500;
  line-height: .84;
  letter-spacing: -.055em;
  transition: letter-spacing 500ms cubic-bezier(.2,.8,.2,1), transform 500ms cubic-bezier(.2,.8,.2,1);
}
.portal-option small {
  display: block;
  margin-top: clamp(18px, 2.4vw, 34px);
  color: inherit;
  font-size: clamp(11px, 1vw, 15px);
  font-weight: 700;
  letter-spacing: .24em;
  text-transform: uppercase;
}
.portal-option-aktion {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-top: clamp(36px, 5vw, 72px);
  padding-bottom: 7px;
  border-bottom: 1px solid currentColor;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .15em;
  text-transform: uppercase;
  opacity: .72;
  transition: opacity 300ms ease, gap 300ms ease;
}
.portal-option-aktion b {
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  transition: transform 300ms ease;
}
.portal-option:hover { color: inherit; }
.portal-option:hover::before,
.portal-option:focus-visible::before { opacity: 1; }
.portal-option:hover .portal-option-inhalt,
.portal-option:focus-visible .portal-option-inhalt { transform: translateX(0); }
.portal-option:hover strong,
.portal-option:focus-visible strong {
  letter-spacing: -.025em;
  transform: scale(1.025);
}
.portal-option:hover .portal-option-aktion,
.portal-option:focus-visible .portal-option-aktion { gap: 20px; opacity: 1; }
.portal-option:hover .portal-option-aktion b,
.portal-option:focus-visible .portal-option-aktion b { transform: translate(3px, -3px); }
.portal-option-coming-soon { cursor: default; }
.portal-option-coming-soon .portal-option-inhalt { opacity: .82; }
.portal-option-coming-soon .portal-option-aktion {
  border-bottom: 0;
  letter-spacing: .24em;
  opacity: 1;
}
.portal-option-coming-soon:hover::before { opacity: 0; }
.portal-option-coming-soon:hover .portal-option-inhalt { transform: translateX(4vw); }
.portal-option-coming-soon:hover strong { letter-spacing: -.055em; transform: none; }
.portal-option-coming-soon:hover .portal-option-aktion { gap: 13px; }

@media (max-width: 700px) {
  .portal-option { padding: 28px 14px; }
  .portal-option-style .portal-option-inhalt { transform: translateX(-2.5vw); }
  .portal-option-design .portal-option-inhalt { transform: translateX(2.5vw); }
  .portal-option strong { font-size: clamp(35px, 10.2vw, 70px); }
  .portal-option small { max-width: 16ch; font-size: 9px; letter-spacing: .17em; }
  .portal-option-aktion { gap: 8px; margin-top: 34px; font-size: 9px; letter-spacing: .1em; }
  .portal-option-aktion b { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .portal-option::before,
  .portal-option-inhalt,
  .portal-option strong,
  .portal-option-aktion,
  .portal-option-aktion b { transition: none; }
}

/* ---------- Vorläufig geschlossener DESIGN-Bereich ---------- */
.design-coming-soon-seite {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  color: #f4f2ec;
  background: #090909;
}
.design-coming-soon {
  display: flex;
  width: 100%;
  max-width: none;
  min-height: 100vh;
  min-height: 100svh;
  margin: 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 36px 24px;
  text-align: center;
}
.design-coming-soon img {
  display: block;
  width: clamp(150px, 20vw, 250px);
  height: auto;
  margin-bottom: clamp(34px, 6vw, 72px);
}
.design-coming-soon p {
  margin: 0 0 18px;
  color: #d8c8bc;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .24em;
  text-transform: uppercase;
}
.design-coming-soon h1 {
  margin: 0;
  color: inherit;
  font-size: clamp(58px, 10vw, 150px);
  line-height: .9;
  letter-spacing: -.055em;
}
.design-coming-soon a {
  display: inline-flex;
  flex-direction: row-reverse;
  gap: 14px;
  margin-top: clamp(46px, 7vw, 86px);
  padding-bottom: 8px;
  border-bottom: 1px solid currentColor;
  color: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .13em;
  text-decoration: none;
  text-transform: uppercase;
}

/* ---------- Zwei getrennte Markenwelten ---------- */
.bereich-seite {
  --welt-schwarz: #090909;
  --welt-weiss: #f4f2ec;
  --welt-linie: #b7aa9c;
}
.bereich-kopf {
  position: relative;
  z-index: 850;
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  min-height: 78px;
  align-items: center;
  gap: clamp(18px, 3vw, 46px);
  padding: 14px clamp(20px, 4vw, 64px);
  border-bottom: 1px solid currentColor;
  font-size: 11px;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.bereich-kopf-style { color: var(--welt-schwarz); background: var(--welt-weiss); }
.bereich-kopf-neutral { color: var(--welt-schwarz); background: var(--welt-weiss); }
.bereich-kopf-design { color: var(--welt-weiss); background: var(--welt-schwarz); }
.bereich-kopf a { color: inherit; text-decoration: none; }
.bereich-monogramm {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 14px;
  letter-spacing: -.08em;
}
.bereich-monogramm span { margin: 0 1px; font-size: 9px; }
.bereich-markenlogo {
  width: 92px;
  height: 58px;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: currentColor;
}
.bereich-markenlogo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.bereich-kopf-style .bereich-markenlogo { width: 92px; height: 68px; background: var(--welt-weiss); }
.bereich-kopf-style .bereich-markenlogo img { object-fit: contain; mix-blend-mode: multiply; }
.bereich-kopf-design .bereich-markenlogo { width: 60px; height: 60px; background: #090909; }
.bereich-kopf-design .bereich-markenlogo img { object-fit: contain; }
.bereich-kopf-neutral .bereich-markenlogo-duo {
  display: flex;
  width: 142px;
  height: 62px;
  align-items: stretch;
  gap: 6px;
  border: 0;
  border-radius: 0;
}
.bereich-kopf-neutral .bereich-markenlogo-duo img {
  display: block;
  width: 68px;
  height: 62px;
  object-fit: contain;
}
.bereich-kopf-neutral .bereich-markenlogo-duo img:first-child { background: var(--welt-weiss); }
.bereich-kopf-neutral .bereich-markenlogo-duo img:last-child { background: var(--welt-schwarz); }
@media (max-width: 520px) {
  .bereich-kopf-neutral .bereich-markenlogo-duo { width: 106px; height: 48px; gap: 4px; }
  .bereich-kopf-neutral .bereich-markenlogo-duo img { width: 51px; height: 48px; }
}
.bereich-welt {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 18px;
  letter-spacing: .12em;
}
.bereich-nav { display: flex; min-width: 0; justify-content: center; gap: clamp(16px, 2.2vw, 36px); }
.bereich-nav a { position: relative; white-space: nowrap; }
.bereich-nav a::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -7px;
  left: 0;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 250ms ease;
}
.bereich-nav a:hover::after,
.bereich-nav a:focus-visible::after { transform: scaleX(1); transform-origin: left; }
.bereich-wechsel {
  padding: 10px 15px;
  border: 1px solid currentColor;
}
.bereich-kopf-style .bereich-wechsel:hover,
.bereich-kopf-neutral .bereich-wechsel:hover { color: var(--welt-weiss); background: var(--welt-schwarz); }
.bereich-kopf-design .bereich-wechsel:hover { color: var(--welt-schwarz); background: var(--welt-weiss); }
.bereich-menu { display: none; }

.bereich-fuss {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 48px;
  padding: clamp(54px, 7vw, 96px) clamp(24px, 7vw, 110px);
  border-top: 1px solid currentColor;
}
.bereich-fuss-style,
.bereich-fuss-neutral { color: var(--welt-schwarz); background: var(--welt-weiss); }
.bereich-fuss-design { color: var(--welt-weiss); background: var(--welt-schwarz); }
.bereich-fuss p { margin: 0 0 18px; font-family: "Playfair Display", Georgia, serif; font-size: clamp(28px, 3vw, 44px); }
.bereich-fuss address { font-style: normal; font-size: 14px; line-height: 1.8; }
.bereich-fuss a { color: inherit; }
.bereich-fuss nav { display: grid; align-content: start; grid-template-columns: repeat(2, auto); gap: 10px 34px; font-size: 13px; }

/* ---------- STYLE- und DESIGN-Startseiten ---------- */
.welt-startseite {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}
.welt-startseite > section,
.welt-startseite > * + * { margin-top: 0; }
.welt-startseite p { max-width: none; }
.welt-hero {
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
  min-height: calc(100vh - 78px);
  min-height: calc(100svh - 78px);
}
.welt-hero-text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: clamp(54px, 8vw, 128px);
}
.welt-label,
.welt-einleitung > p,
.welt-abschluss > p {
  margin: 0 0 28px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .21em;
  text-transform: uppercase;
}
.welt-hero h1 {
  max-width: 8.5ch;
  margin: 0;
  color: inherit;
  font-size: clamp(58px, 7.5vw, 118px);
  line-height: .91;
  letter-spacing: -.055em;
}
.welt-hero-text > p:not(.welt-label) {
  max-width: 39ch;
  margin: 35px 0 0;
  font-size: clamp(16px, 1.45vw, 21px);
  line-height: 1.7;
}
.welt-hero-text > a,
.welt-abschluss > a {
  display: inline-flex;
  align-items: center;
  gap: 20px;
  margin-top: 46px;
  padding: 14px 0 9px;
  border-bottom: 1px solid currentColor;
  color: inherit;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .13em;
  text-decoration: none;
  text-transform: uppercase;
}
.welt-hero-text > a span,
.welt-abschluss > a span { font-size: 18px; transition: transform 220ms ease; }
.welt-hero-text > a:hover span,
.welt-abschluss > a:hover span { transform: translate(4px, -2px); }
.welt-hero-bild { min-width: 0; margin: 0; overflow: hidden; }
.welt-hero-bild img { display: block; width: 100%; height: 100%; object-fit: cover; }
.bereich-style .welt-hero { color: var(--welt-schwarz); background: var(--welt-weiss); }
.bereich-design .welt-hero { color: var(--welt-weiss); background: var(--welt-schwarz); }
.bereich-design .welt-hero-bild { order: -1; background: #171412; }
.bereich-design .welt-hero-bild img { object-fit: contain; }

.welt-einleitung {
  padding: clamp(88px, 13vw, 190px) clamp(24px, 10vw, 160px);
}
.welt-einleitung h2 {
  max-width: 14ch;
  margin: 0;
  color: inherit;
  font-size: clamp(46px, 7vw, 104px);
  line-height: .98;
  letter-spacing: -.045em;
}
.bereich-style .welt-einleitung { color: var(--welt-weiss); background: var(--welt-schwarz); }
.bereich-design .welt-einleitung { color: var(--welt-schwarz); background: var(--welt-weiss); }

.welt-karten {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 0 clamp(20px, 5vw, 76px) clamp(90px, 10vw, 150px);
}
.bereich-style .welt-karten { color: var(--welt-weiss); background: var(--welt-schwarz); }
.bereich-design .welt-karten { color: var(--welt-schwarz); background: var(--welt-weiss); }
.welt-karte {
  display: flex;
  min-height: 370px;
  flex-direction: column;
  padding: clamp(28px, 4vw, 58px);
  border: 1px solid currentColor;
  color: inherit;
  text-decoration: none;
  transition: color 260ms ease, background 260ms ease, transform 260ms ease;
}
.welt-karte + .welt-karte { border-left: 0; }
.welt-karte small { color: inherit; font-size: 10px; letter-spacing: .18em; }
.welt-karte h2 { margin: auto 0 22px; color: inherit; font-size: clamp(32px, 3.5vw, 52px); line-height: 1; }
.welt-karte p { margin: 0; font-size: 15px; line-height: 1.7; }
.welt-karte > span { margin-top: 38px; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.bereich-style .welt-karte:hover { color: var(--welt-schwarz); background: var(--welt-weiss); transform: translateY(-8px); }
.bereich-design .welt-karte:hover { color: var(--welt-weiss); background: var(--welt-schwarz); transform: translateY(-8px); }

.welt-galerie { display: grid; grid-template-columns: 1fr 1fr; }
.welt-galerie figure { display: grid; min-width: 0; min-height: 720px; margin: 0; place-items: center; overflow: hidden; }
.bereich-style .welt-galerie figure { background: #111; }
.bereich-design .welt-galerie figure { background: var(--welt-weiss); }
.welt-galerie img { display: block; width: 100%; height: 720px; object-fit: contain; }

.welt-abschluss {
  display: flex;
  min-height: 72vh;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: clamp(82px, 12vw, 180px) 24px;
  text-align: center;
}
.welt-abschluss h2 { max-width: 13ch; margin: 0; color: inherit; font-size: clamp(48px, 7vw, 104px); line-height: .98; letter-spacing: -.04em; }
.bereich-style .welt-abschluss { color: var(--welt-weiss); background: var(--welt-schwarz); }
.bereich-design .welt-abschluss { color: var(--welt-schwarz); background: var(--welt-weiss); }

/* Detailseiten übernehmen eindeutig die gewählte Welt. */
.bereich-style:not(.portal-auswahlseite) { background: #f3efe9; }
.bereich-design:not(.portal-auswahlseite) { background: #fbfaf7; }
/* Überschriften übernehmen den Kontrast ihres Abschnitts: auf dunklen Flächen
   hell, auf hellen Flächen dunkel. Keine pauschale Weltfarbe überschreibt das. */
.bereich-design h1,
.bereich-design h2,
.bereich-design h3,
.bereich-design h4,
.bereich-design h5,
.bereich-design h6,
.bereich-style h1,
.bereich-style h2,
.bereich-style h3,
.bereich-style h4,
.bereich-style h5,
.bereich-style h6 { color: inherit; }

@media (max-width: 1080px) {
  .bereich-kopf { grid-template-columns: auto auto 1fr auto; }
  .bereich-nav { display: none; }
  .bereich-menu { display: block; justify-self: end; }
  .bereich-menu summary { cursor: pointer; list-style: none; }
  .bereich-menu summary::-webkit-details-marker { display: none; }
  .bereich-menu[open] nav {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    display: grid;
    padding: 25px clamp(20px, 4vw, 64px);
    border-bottom: 1px solid currentColor;
    color: var(--welt-schwarz);
    background: var(--welt-weiss);
    box-shadow: 0 22px 38px #09090924;
  }
  .bereich-kopf-design .bereich-menu[open] nav {
    color: var(--welt-weiss);
    background: var(--welt-schwarz);
  }
  .bereich-menu nav a {
    display: block;
    padding: 13px 0;
    border-bottom: 1px solid currentColor;
    color: inherit;
    text-decoration: none;
  }
  .bereich-menu nav a:last-child { border-bottom: 0; }
}
@media (max-width: 760px) {
  .bereich-kopf { min-height: 68px; grid-template-columns: auto 1fr auto; gap: 14px; padding: 11px 16px; }
  .bereich-monogramm { width: 38px; height: 38px; }
  .bereich-kopf-style .bereich-markenlogo { width: 68px; height: 58px; }
  .bereich-welt { display: none; }
  .bereich-menu { justify-self: end; }
  .bereich-wechsel { display: inline-flex; align-items: center; justify-content: center; padding: 9px 11px; white-space: nowrap; }
  .bereich-fuss { grid-template-columns: 1fr; padding: 54px 22px 110px; }
  .bereich-fuss nav { grid-template-columns: 1fr 1fr; }
  .welt-hero { grid-template-columns: 1fr; min-height: 0; }
  .welt-hero-text { min-height: 63vh; padding: 64px 24px; }
  .welt-hero h1 { font-size: clamp(52px, 16vw, 76px); }
  .welt-hero-bild { min-height: 57vh; order: 2; }
  .bereich-design .welt-hero-bild { order: 2; }
  .welt-hero-bild img { min-height: 57vh; }
  .welt-karten { grid-template-columns: 1fr; padding: 0 18px 90px; }
  .welt-karte { min-height: 310px; }
  .welt-karte + .welt-karte { border-top: 0; border-left: 1px solid currentColor; }
  .welt-galerie { grid-template-columns: 1fr; }
  .welt-galerie figure { min-height: 0; }
  .welt-galerie img { height: auto; max-height: none; object-fit: contain; }
  .welt-abschluss { min-height: 66vh; }
}
@media (prefers-reduced-motion: reduce) {
  .bereich-nav a::after,
  .welt-hero-text > a span,
  .welt-abschluss > a span,
  .welt-karte { transition: none; }
}

/* ---------- Kontakt und vorbereitete Terminbuchung ---------- */
.kontakt-hero {
  max-width: 980px;
  margin: 0 auto;
  padding: clamp(30px, 4vw, 62px) 0 clamp(48px, 7vw, 92px);
  text-align: center;
}
.kontakt-label {
  margin: 0 0 18px;
  color: var(--pflaume);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .19em;
  text-transform: uppercase;
}
.kontakt-hero h1 {
  max-width: 14ch;
  margin: 0 auto 26px;
  color: var(--anthrazit);
  font-size: clamp(44px, 6vw, 82px);
  line-height: 1.02;
  letter-spacing: -.035em;
}
.kontakt-hero > p:last-child {
  max-width: 680px;
  margin: 0 auto;
  color: #5b524e;
  font-size: clamp(17px, 1.7vw, 21px);
}
.kontakt-layout {
  display: grid;
  grid-template-columns: minmax(280px, .82fr) minmax(0, 1.18fr);
  align-items: stretch;
  margin-top: 0;
}
.kontakt-direkt,
.kontakt-formularbereich { padding: clamp(38px, 6vw, 82px); }
.kontakt-direkt {
  color: var(--creme);
  background: var(--anthrazit);
}
.kontakt-direkt .kontakt-label { color: #d8c8bc; }
.kontakt-direkt h2 {
  margin-bottom: 20px;
  color: inherit;
  font-size: clamp(38px, 4.5vw, 62px);
}
.kontakt-direkt > p:not(.kontakt-label) { color: #ffffffbd; }
.kontakt-buchungslink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 38px 0 48px;
  padding: 18px 20px;
  border: 1px solid var(--creme);
  color: var(--anthrazit);
  background: var(--creme);
  font-weight: 700;
  text-decoration: none;
}
.kontakt-buchungslink:hover { color: var(--anthrazit); background: var(--taupe); }
.kontakt-direkt dl { margin: 0; }
.kontakt-direkt dl > div { padding: 17px 0; border-top: 1px solid #ffffff2b; }
.kontakt-direkt dl > div:last-child { border-bottom: 1px solid #ffffff2b; }
.kontakt-direkt dt { color: #d8c8bc; font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.kontakt-direkt dd { margin: 4px 0 0; }
.kontakt-direkt dd,
.kontakt-direkt dd a { color: var(--creme); }
.kontakt-formularbereich { background: #eee5e1; }
.kontakt-formularbereich h2 { max-width: 12ch; color: var(--anthrazit); font-size: clamp(34px, 4vw, 54px); }
.kontakt-formular { display: grid; gap: 22px; margin-top: 38px; }
.kontakt-feldreihe { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.kontakt-formular label { display: grid; gap: 8px; color: var(--anthrazit); font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.kontakt-formular input,
.kontakt-formular select,
.kontakt-formular textarea {
  width: 100%;
  border: 0;
  border-bottom: 1px solid #221f1d70;
  border-radius: 0;
  padding: 14px 2px;
  color: var(--anthrazit);
  background: transparent;
  font: inherit;
  font-size: 16px;
  letter-spacing: normal;
}
.kontakt-formular select { cursor: pointer; }
.kontakt-formular textarea { min-height: 150px; resize: vertical; }
.kontakt-datenschutz { display: grid !important; grid-template-columns: auto 1fr; align-items: start; gap: 12px !important; font-weight: 400 !important; line-height: 1.55; }
.kontakt-datenschutz input { width: 18px; height: 18px; margin: 3px 0 0; accent-color: var(--pflaume); }
.kontakt-datenschutz a { color: inherit; }
.kontakt-formular button {
  display: flex;
  min-height: 60px;
  align-items: center;
  justify-content: space-between;
  border: 1px solid var(--anthrazit);
  padding: 16px 20px;
  color: var(--creme);
  background: var(--anthrazit);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}
.kontakt-formular button:hover { color: var(--anthrazit); background: var(--taupe); border-color: var(--taupe); }
.kontakt-formularhinweis { margin: -6px 0 0; color: #665d58; font-size: 12px; }
@media (max-width: 760px) {
  .kontakt-layout { grid-template-columns: 1fr; }
  .kontakt-direkt,
  .kontakt-formularbereich { padding: 44px 24px; }
  .kontakt-feldreihe { grid-template-columns: 1fr; }
}
