/* Gemeinsame Farbwelt mit idstein-doula.de; Originalbilder bleiben erhalten. */
:root {
  --paper:#fcf8f3; --paper-warm:#f7efe5; --sand:#f1e3d4;
  --sand-deep:#c8a68e; --sage:#e9eadd; --sage-dark:#79533f;
  --blush:#e7c3b8; --gold:#e7c3b8; --ink:#332521; --ink-soft:#59473f;
  --white:#fffdf9; --line:rgba(70,54,50,.16);
  --serif:"Iowan Old Style",Baskerville,"Palatino Linotype",Palatino,Georgia,serif;
  --sans:Avenir,"Segoe UI",Arial,sans-serif;
  --shell:calc(100% - 96px); --shadow:0 18px 50px rgba(70,54,50,.07);
}
body{background:var(--paper)}
h1{font-size:clamp(3rem,5.7vw,6.7rem);line-height:1.06}
h2{font-size:clamp(2.2rem,3.7vw,4.3rem);line-height:1.1}
h3{line-height:1.15}
em,.eyebrow{color:#a64f3c}
.section{padding-block:clamp(64px,7vw,112px)}
.site-header{background:rgba(252,248,243,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.site-header__inner{width:calc(100% - 64px)}
.brand img,.brand--footer img{width:54px;height:auto;object-fit:contain}
.brand strong{color:var(--ink)}
.button,.nav-cta{background:#a64f3c;color:#fffdf9;border-color:#a64f3c;box-shadow:none}
.button:hover,.nav-cta:hover{background:#843d30;color:#fffdf9;border-color:#843d30}
.button--secondary{background:transparent;color:#843d30;border:1px solid #a64f3c}
.button--secondary:hover{background:#f1e3d4;color:#843d30}
.home-hero{min-height:0;background:linear-gradient(110deg,#fcf8f3 30%,#f1e3d4);padding-block:clamp(44px,6vw,88px)}
.home-hero__grid{min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px)}
.home-hero__visual{align-self:center;min-height:0;padding:0 0 32px}
.home-hero__image{position:relative;inset:auto;border-radius:46% 46% 20px 20px;padding-top:20px;background:#f1e3d4;overflow:hidden}
.home-hero__image img{width:100%;height:auto;object-fit:contain}
.home-hero__image::after{display:none}
.home-hero__note{background:#843d30;bottom:0;right:14px;min-width:170px}
.home-hero__note strong{color:#fffdf9}
.hero-facts{margin-top:24px;padding-top:20px}
.section--sage{background:#f7efe5}
.section--sand{background:#f1e3d4}
.page-hero,.page-hero--blush,.page-hero--gold,.page-hero--sage{background:#f7efe5}
.page-hero__grid{min-height:0;gap:clamp(32px,6vw,100px);padding-block:56px;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.page-hero__copy{padding-block:24px}
.page-hero__visual{align-self:center;margin:0;min-height:0}
.page-hero__visual img{width:100%;height:auto;max-height:620px;object-fit:contain;border-radius:42% 42% 18px 18px}
.page-hero--simple .page-hero__grid{display:block}
.page-hero h1{font-size:clamp(2.8rem,5.1vw,6rem)}
.feature-card,.room-card,.value-card,.support-card,.price-card{box-shadow:none;border:1px solid var(--line);border-radius:22px}
.room-card__image{aspect-ratio:auto;overflow:hidden}
.room-card__image img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.room-card__image:hover img,.gallery figure:hover img{transform:none}
.image-collage__main,.story-grid__media img{width:100%;height:auto;object-fit:contain}
.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px}
.gallery figure,.gallery__wide,.gallery__portrait,.gallery--five figure:nth-child(4),.gallery--five figure:nth-child(5),.gallery--four .gallery__wide{grid-column:auto;aspect-ratio:auto;align-self:start}
.gallery img{width:100%;height:auto;object-fit:contain}
.gallery .gallery__portrait{aspect-ratio:auto}
.prose{max-width:75ch}
.manifesto{background:#f7efe5}
.manifesto em{color:#a64f3c}
.cta-card,.support-card--dark{background:#843d30;color:#fffdf9}
.cta-card .eyebrow,.support-card--dark .eyebrow{color:#f1d8c8}
.cta-card .button{background:#fffdf9;color:#843d30;border-color:#fffdf9}
.site-footer{background:#332521;color:#f7efe5}
.site-footer .brand strong,.site-footer .brand small{color:#f7efe5}
.ai-note{font-size:.74rem;line-height:1.6;color:#dccac0;padding-block:20px 28px;border-top:1px solid rgba(255,255,255,.15)}
.reveal{opacity:1;transform:none}
@media(min-width:1600px){.home-hero__lead{max-width:42rem}.home-hero__image{max-width:860px;margin-inline:auto}}
@media(max-width:1080px){:root{--shell:calc(100% - 44px)}.site-header__inner{width:var(--shell)}.home-hero__grid{gap:30px}.home-hero__visual{min-height:0}.site-nav{background:#fcf8f3}}
@media(max-width:800px){:root{--shell:calc(100% - 36px)}.home-hero__grid,.page-hero__grid{grid-template-columns:1fr}.home-hero__visual{min-height:0;max-width:620px;width:100%;margin-inline:auto}.home-hero__image{position:relative;inset:auto}.page-hero__grid{padding-block:32px}.page-hero__visual{margin:0;min-height:0}.page-hero__visual img{height:auto;max-height:540px}.story-grid__media img{height:auto}.gallery{gap:14px}.gallery figure{grid-column:auto;aspect-ratio:auto}.home-hero h1{font-size:clamp(3rem,8vw,4.5rem)}}
@media(max-width:520px){:root{--shell:calc(100% - 32px)}.brand img{width:42px;height:auto}.brand strong{font-size:1.4rem}.brand small{font-size:.62rem}.home-hero__note{padding:16px 20px;min-width:145px}.page-hero h1{font-size:2.8rem}.gallery{grid-template-columns:1fr}.room-card__image img{height:auto}.home-hero__visual,.page-hero__visual{min-height:0}.button-row{gap:14px}.ai-note{overflow-wrap:anywhere}}

/* Kontakt: ruhiger Creme-Button mit klar lesbarer dunkelbrauner Schrift. */
.site-nav > a.nav-cta {
  color: #332521;
  background: #fcf8f3;
  border: 1px solid #332521;
}
.site-nav > a.nav-cta:hover,
.site-nav > a.nav-cta:focus-visible,
.site-nav > a.nav-cta[aria-current="page"] {
  color: #fffdf9;
  background: #332521;
  border-color: #332521;
}

/* Mobile Navigation: kein Filter/Transform als Begrenzung des fixierten Menüs. */
@media (max-width:1080px) {
  .site-header,.site-header.is-scrolled {
    position:sticky;top:0;width:100%;height:80px;z-index:1000;
    background:#fcf8f3;backdrop-filter:none;-webkit-backdrop-filter:none;
    transform:none;animation:none;overflow:visible;
  }
  .site-header__inner{gap:12px}
  .site-header .brand{flex:1 1 auto;min-width:0;gap:10px}
  .site-header .brand > span{min-width:0}
  .site-header .brand small{max-width:220px;line-height:1.4}
  .menu-toggle{flex:0 0 48px;touch-action:manipulation}
  .site-nav {
    position:fixed;inset:80px 0 0;z-index:101;
    width:100%;height:calc(100vh - 80px);height:calc(100dvh - 80px);
    padding:16px 22px calc(28px + env(safe-area-inset-bottom));
    overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
    background:#fcf8f3;transform:none;box-shadow:0 -1px 0 var(--line);
    justify-content:flex-start;
  }
  .site-nav.is-open{transform:none}
  .site-nav > *{flex-shrink:0}
  .site-nav > a,.site-nav .nav-group > button {
    min-height:58px;padding:16px 4px;font-family:var(--sans);
    font-size:1.1rem;font-weight:600;line-height:1.4;
  }
  .site-nav .nav-group__menu{padding:4px 12px 12px;background:#f7efe5;border-radius:12px}
  .site-nav .nav-group__menu a{display:flex;align-items:center;min-height:48px;padding:12px 8px;font-size:1rem;line-height:1.4}
  .site-nav > a.nav-cta{margin:20px 0 0;min-height:52px;padding:14px 22px}
  body.nav-open{overflow:hidden}
}
