
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300 600;font-display:swap;src:url(assets/font-3aed2cbbbb.woff) format('woff');}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:300 500;font-display:swap;src:url(assets/font-dc3dfc0676.woff) format('woff');}
@font-face{font-family:'Lato';font-style:normal;font-weight:300;font-display:swap;src:url(assets/font-3b3993a7b9.woff) format('woff');}
@font-face{font-family:'Lato';font-style:normal;font-weight:400;font-display:swap;src:url(assets/font-fa37a2200d.woff) format('woff');}
@font-face{font-family:'Lato';font-style:normal;font-weight:700;font-display:swap;src:url(assets/font-c4a9c3a134.woff) format('woff');}
@font-face{font-family:'Lato';font-style:italic;font-weight:300;font-display:swap;src:url(assets/font-263af9c35a.woff) format('woff');}
@font-face{font-family:'Lato';font-style:italic;font-weight:400;font-display:swap;src:url(assets/font-36c1ab083a.woff) format('woff');}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400 600;font-display:swap;src:url(assets/font-a5ecd49cb7.woff) format('woff');}
@font-face{font-family:'WindSong';font-style:normal;font-weight:400;font-display:swap;src:url(assets/font-8ee9bbb5cc.woff) format('woff');}
  #paare,#teams,#hpp,#wilma,#ueber,#angebot,#kontakt{scroll-margin-top:90px;}
  #haltung p.about-lead{font-family:'Cormorant Garamond',serif; font-size:1.3rem; line-height:1.6; margin:0 0 20px;}
  #haltung .more-body p{font-size:1rem; color:var(--ink-soft);}
  #haltung .more-body p.hl{font-family:'Cormorant Garamond',serif; font-weight:500; font-style:normal; font-size:1.3rem; letter-spacing:0.04em; line-height:1.5; color:var(--moss); margin:28px 0;}
  #blog,#blog-willkommen{display:none;}
  #blog:target,#blog-willkommen:target{display:block;}
  #blog,#blog-willkommen{scroll-margin-top:90px;}
  #blog-willkommen p{margin:0 0 16px; color:var(--ink); line-height:1.75; font-size:1rem;}
  #blog-willkommen h3{font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-weight:500; letter-spacing:.03em; color:var(--moss); margin:30px 0 10px;}
  .blog-meta{font-size:.88rem; color:var(--ink-soft); margin:0 0 6px;}
  .blog-list{display:grid; gap:18px; margin-top:26px;}
  .blog-card{display:block; padding:22px 24px; border:1px solid var(--gold); border-radius:14px; text-decoration:none; color:var(--ink); background:rgba(255,255,255,.35); transition:background .2s;}
  .blog-card:hover{background:rgba(255,255,255,.6);}
  .blog-card h3{font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-weight:500; letter-spacing:.03em; color:var(--moss); margin:0 0 8px;}
  .blog-card p{margin:0; color:var(--ink-soft); line-height:1.65; font-size:1rem;}
  .blog-card .blog-more{display:inline-block; margin-top:10px; color:var(--moss); font-size:1rem;}
  .blog-note{font-size:.88rem; color:var(--ink-soft);}
  .hero-h1{margin:0; font:inherit; line-height:0;}
  .sr-only{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap;}
  #kinderwunsch{display:none;}
  #kinderwunsch:target{display:block;}
  #kinderwunsch p{margin:0 0 16px; color:var(--ink); line-height:1.75; font-size:1rem;}
  #kinderwunsch .legal-sub{line-height:1.35; font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-weight:500; letter-spacing:0.03em; color:#8B6A5B; margin:8px 0 24px;}
  .hero-cta{display:none;}
  .fut-toggle,.fut-label{display:none;}
  .service-row.wt-row{grid-template-columns:300px 1fr 250px;}
  .wt-photo{margin:6px 0 0; padding:8px; background:#FCF9F5; border:1px solid rgba(201,160,141,.5); border-radius:0; box-shadow:none; align-self:start;}
  .wt-photo img{display:block; width:100%; height:auto; border-radius:0;}
  @media (max-width:1020px){.service-row.wt-row{grid-template-columns:240px 1fr 200px;}}
  @media (max-width:760px){.service-row.wt-row{grid-template-columns:1fr;} .wt-row .wt-photo{max-width:270px; margin:6px 0 4px; order:2;} .wt-row > .service-text{order:3;}}
  .btn-row{margin:22px 0 0 !important;}
  .btn-more{display:inline-block; padding:12px 24px; border:1px solid var(--moss); border-radius:999px; color:var(--moss); font-weight:400; text-decoration:none; font-size:1rem; letter-spacing:.02em; transition:background .2s,color .2s;}
  .btn-more:hover{background:var(--moss); color:#fff;}
  .wh-sub{display:block; font-size:.62em; margin-top:8px; letter-spacing:.14em; opacity:.85;}
  .wilma-h{font-family:'Cormorant Garamond',serif; font-weight:500; font-size:clamp(1.7rem,3vw,2.3rem); letter-spacing:.03em; color:#8B6A5B; margin:0 0 10px;}
  .wilma-lead{font-family:'Cormorant Garamond',serif !important; font-weight:500; font-size:1.3rem; letter-spacing:.03em; line-height:1.55; color:var(--ink) !important; margin:0 0 18px !important;}
  .wilma-sub{font-family:'Lato',sans-serif; font-weight:700; font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:var(--moss); margin:0 0 8px;}
  #hpp .more-body p{margin:14px 0 0; max-width:60ch; color:var(--ink-soft);}
  #hpp .wilma-main>p{max-width:60ch;}
  .wilma-more{grid-column:1 / -1;}
  .wilma-more .more-body p{margin:14px 0 0; max-width:60ch; color:var(--ink-soft);}


  :root{
    --bg:#F5EEE6;
    --bg-2:#ECE0D5;
    --ink:#4A3C35;
    --ink-soft:#7E6B60;
    --moss:#6F5648;
    --gold:#C9A08D;
    --line:rgba(96,76,64,0.15);
    --card:#FCF9F5;
    box-sizing:border-box;
    padding-top:env(safe-area-inset-top,0px);
    padding-bottom:env(safe-area-inset-bottom,0px);
  }
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){
      --bg:#20141A;
      --bg-2:#2A1920;
      --ink:#F5E6E2;
      --ink-soft:#D9A9AE;
      --moss:#E68A93;
      --gold:#E3A0A6;
      --line:rgba(245,230,226,0.15);
      --card:#2A1920;
    }
  }
  :root[data-theme="dark"]{
    --bg:#20141A;
    --bg-2:#2A1920;
    --ink:#F5E6E2;
    --ink-soft:#D9A9AE;
    --moss:#E68A93;
    --gold:#E3A0A6;
    --line:rgba(245,230,226,0.15);
    --card:#2A1920;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth; scroll-padding-top:env(safe-area-inset-top,0px);}
  body{
    margin:0;
    background:var(--bg);
    color:var(--ink);
    font-family:'Lato', sans-serif;
    font-size:17px;
    line-height:1.6;
    position:relative;
  }
  body::before{
    content:"";
    position:fixed; inset:0; pointer-events:none; z-index:1;
    opacity:0.05; mix-blend-mode:multiply;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  }
  header, .hero, section, footer{position:relative; z-index:2;}
  h1,h2,h3{
    font-family:'Cormorant Garamond', serif;
    font-weight:500;
    line-height:1.12;
    margin:0;
    color:var(--ink);
  }
  a{color:inherit;}
  img{max-width:100%;}
  .wrap{max-width:1080px; margin:0 auto; padding:0 28px;}

  header{
    position:sticky; top:0; z-index:10;
    padding-top:calc(18px + env(safe-area-inset-top,0px));
    padding-bottom:18px;
    background:color-mix(in srgb, var(--bg) 88%, transparent);
    backdrop-filter:blur(6px);
    border-bottom:1px solid color-mix(in srgb, var(--gold) 40%, var(--line));
  }
  header .wrap{display:flex; align-items:center; justify-content:space-between; gap:20px;}
  .brand{font-size:1.35rem; letter-spacing:0.01em; color:var(--gold); display:flex; align-items:center; gap:10px;}
  .brand-bar{width:1px; height:18px; background:var(--gold); align-self:center;}
  .brand-by{font-family:'Lato', sans-serif; font-weight:400; font-size:0.68rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--ink-soft); align-self:center;}
  .brand-nova{font-family:'Cormorant Garamond', serif; font-weight:500; font-style:normal;}
  .brand-mind{font-family:'Lato', sans-serif; font-weight:300; letter-spacing:0.04em;}
  nav{display:flex; gap:28px; font-size:0.95rem;}
  nav a{text-decoration:none; color:var(--ink-soft); border-bottom:1px solid transparent;}
  nav a:hover, nav a:focus-visible{color:var(--ink); border-color:var(--gold);}

  .hero{padding:96px 0 80px; border-bottom:1px solid var(--line);}
  .hero .wrap{display:grid; grid-template-columns:1.3fr 1fr; gap:56px; align-items:end;}
  .hero h1{font-size:clamp(2.4rem, 5vw, 3.6rem); max-width:14ch;}
  .hero p.lead{
    margin-top:22px; max-width:46ch; color:var(--ink-soft); font-size:1.18rem;
    font-family:'Cormorant Garamond', serif; font-style:italic; font-weight:400; line-height:1.5;
  }
  .hero .actions{margin-top:34px; display:flex; gap:16px; flex-wrap:wrap;}
  .btn{
    display:inline-block; padding:13px 30px; border-radius:999px;
    text-decoration:none; font-size:1rem; letter-spacing:0.01em;
    border:1px solid var(--moss); font-weight:500;
  }
  .btn.primary{background:var(--moss); color:var(--bg);}
  .btn.primary:hover{opacity:0.9;}
  .btn.ghost{color:var(--moss); border-color:var(--line);}
  .btn.ghost:hover{border-color:var(--moss);}
  .hero-side{border-left:1px solid var(--line); padding-left:32px; font-size:0.98rem; color:var(--ink-soft);}
  .hero-side strong{display:block; color:var(--ink); font-family:'Cormorant Garamond', serif; font-size:1.05rem; margin-bottom:6px;}
  .hero-portrait{
    width:88px; height:88px; border-radius:50%; object-fit:cover;
    display:block; margin-bottom:18px; border:2px solid var(--card);
    box-shadow:0 0 0 1px var(--line);
  }

  section{padding:76px 0;}
  section.alt{background:var(--bg-2);}
  section.alt, section{position:relative;}
  section.alt::before, section.alt::after{
    content:""; position:absolute; left:0; right:0; height:6px;
    background-repeat:repeat-x; background-size:60px 6px; opacity:0.5;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='60' height='6'><path d='M0 3 C 10 0, 20 6, 30 3 S 50 0, 60 3' fill='none' stroke='%23C2AB9D' stroke-width='0.8'/></svg>");
  }
  section.alt::before{top:-3px;} section.alt::after{bottom:-3px;}
  .section-head{display:grid; grid-template-columns:1fr 1.6fr; gap:40px; margin-bottom:44px;}
  .section-head h2{font-size:clamp(1.7rem,3vw,2.3rem);}
  .section-head p{color:var(--ink-soft); max-width:52ch;}

  .about-grid{display:grid; grid-template-columns:1.1fr 1.3fr; gap:56px; align-items:start;}
  .about-portrait{
    aspect-ratio:4/5; background:linear-gradient(165deg, var(--bg-2), var(--card));
    border:1px solid var(--line); border-radius:50% 8% 30% 8% / 8% 30% 8% 40%;
    display:flex; align-items:flex-end; padding:26px;
    font-size:.88rem; color:var(--ink-soft); font-style:italic;
    position:relative; overflow:hidden;
  }
  .about-portrait img{
    position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 28%; z-index:0;
  }
  .about-portrait span{
    position:relative; z-index:1; color:#F8F1EA;
    text-shadow:0 1px 6px rgba(0,0,0,0.55);
  }
  .about-portrait::after{
    content:""; position:absolute; inset:0; z-index:0;
    background:linear-gradient(180deg, transparent 55%, rgba(20,10,14,0.55));
  }
  .about-h{font-family:'Cormorant Garamond',serif; font-weight:500; font-style:normal; text-transform:uppercase; letter-spacing:0.08em; font-size:clamp(1.7rem,3vw,2.3rem); line-height:1.25; color:#8B6A5B; margin:0 0 18px;}
  .about-text .about-lead{font-family:'Cormorant Garamond',serif; font-style:normal; font-weight:500; font-size:1.3rem; letter-spacing:0.03em; color:var(--ink); line-height:1.6; max-width:34em;}
  #haltung p.about-lead{font-family:'Cormorant Garamond',serif; font-style:normal; font-weight:500; font-size:1.3rem; letter-spacing:0.03em; line-height:1.6; max-width:34em; color:var(--ink); margin:0 0 20px;}
  #haltung .more-body p{font-size:1rem; color:var(--ink-soft);}
  .haltung-wrap .about-lead{max-width:36em;}
  .haltung-wrap .more-body p{max-width:60ch; color:var(--ink-soft);}
  .haltung-wrap .about-h{margin-top:6px;}
  .more{margin-top:6px;}
  .more summary{list-style:none; cursor:pointer; display:inline-flex; align-items:center; gap:8px; color:var(--moss); font-weight:400; letter-spacing:.02em; padding:6px 0; border-bottom:1px solid var(--gold);}
  .more summary::-webkit-details-marker{display:none;}
  .more summary::after{content:"+"; font-weight:400; font-size:1.2rem; line-height:1;}
  .more[open] summary::after{content:"–";}
  .more .t-less{display:none;} .more[open] .t-more{display:none;} .more[open] .t-less{display:inline;}
  .more summary:focus-visible{outline:2px solid var(--moss); outline-offset:3px;}
  .more-body{margin-top:22px;}


  .service-text p.teaser{margin-top:0;}
  .lead-sent{display:block; font-family:'Cormorant Garamond',serif; font-weight:500; font-size:1.4rem; line-height:1.35; color:var(--ink); margin-bottom:8px;}

  .swipe-hint{display:none;}
  .team-swipe{display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory; align-items:flex-start; padding:6px 2px 18px; -webkit-overflow-scrolling:touch; scrollbar-width:thin;}
  .team-swipe .service-row.swipe-card{flex:0 0 min(380px,86%); scroll-snap-align:start; display:block; padding:26px 24px 22px; border:1px solid var(--line); border-radius:14px; background:var(--card);}
  .team-swipe .service-row.swipe-card > div:first-child{margin-bottom:14px;}
  .team-swipe .service-row p, .team-swipe .acc{max-width:none;}
  .team-swipe .service-row h3{white-space:normal;}
  .team-swipe .service-row h3:has(.tag){white-space:nowrap;}
  .swipe-hint{display:block; margin:6px 0 4px; text-align:right; font-size:.7rem; letter-spacing:.2em; text-transform:uppercase; color:var(--gold);}
  .services-list > .service-row:last-child{margin-top:18px; border-top:1px solid var(--line);}
  .line-baby{display:block; width:190px; max-width:100%; margin-top:34px; stroke:#C9A08D; stroke-width:1.7; opacity:.95;}
  .line-baby{opacity:1;stroke:none;width:210px;}
  .stern-art{float:right; width:150px; max-width:38%; margin:-6px 0 0 16px; transform:scaleX(-1);}
  .acc-body:has(.stern-art){overflow:hidden;}
  @media (max-width:760px){.line-baby{width:150px; margin:14px 0 4px;}}
  /* Aufklapp-Häppchen im Angebot */
  .acc{border-top:1px solid var(--line); margin:0; max-width:58ch;}
  .acc:last-of-type{border-bottom:1px solid var(--line);}
  .acc + .acc{border-top:0;} .acc + .acc{border-top:1px solid var(--line);}
  .acc summary{list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:14px; padding:13px 0; color:var(--moss); font-weight:400; letter-spacing:.02em;}
  .acc summary::-webkit-details-marker{display:none;}
  .acc summary::after{content:"+"; font-size:1.25rem; line-height:1; color:var(--gold);}
  .acc[open] summary::after{content:"–";}
  .acc summary:focus-visible{outline:2px solid var(--moss); outline-offset:3px;}
  .acc-body{padding:0 0 16px;}
  .acc-body p:first-child{margin-top:0 !important;}
  .service-row .teaser-gap + .acc{margin-top:16px;}
  .service-text > p:first-child + .acc, .service-text > p + details.acc:first-of-type{margin-top:16px;}
  .service-row h3:has(.tag){white-space:nowrap;}
  .topic-swipe{display:flex !important; overflow-x:auto; scroll-snap-type:x mandatory; gap:12px; padding:4px 2px 12px !important; margin:14px 0 16px !important; -webkit-overflow-scrolling:touch; scrollbar-width:thin; max-width:100%;}
  .topic-swipe li{flex:0 0 min(250px,78%); scroll-snap-align:start; margin:0 !important; padding:16px 16px 18px !important; border:1px solid var(--line); background:var(--card); border-radius:12px; font-size:.92rem; line-height:1.6;}
  .topic-swipe li::before{display:none !important;}
  .topic-swipe li strong{display:block; margin-bottom:8px; font-size:1rem;}
  .topic-swipe .dash{display:none;}
  .topic-swipe::after{content:"";flex:0 0 2px;}
  .about-text .more-body p:first-child{color:var(--ink-soft); font-size:1rem;}
  .about-bg-title{font-family:'Cormorant Garamond',serif; font-weight:500; font-size:1.3rem; color:var(--ink); margin:28px 0 8px;}
  .about-bg{margin:0; padding-left:1.2em; color:var(--ink-soft); line-height:1.7; max-width:60ch;}
  .about-text p{margin:0 0 16px; color:var(--ink-soft); max-width:60ch;}
  .about-text p:first-child{color:var(--ink); font-size:1rem;}

  .services-list{border-top:1px solid var(--line);}
  .service-group-title{
    font-family:'Cormorant Garamond', serif; font-style:italic; font-size:1rem;
    color:var(--moss); margin:38px 0 4px;
  }
  .service-group-title:first-child{margin-top:0;}
  .service-row{
    display:grid; grid-template-columns:300px 1fr; gap:32px;
    padding:34px 0; border-bottom:1px solid var(--line);
  }
  .service-row h3{font-size:1.3rem;}
  .service-row .tag{color:var(--gold); font-size:.88rem; margin-bottom:6px; display:block;}
  .service-row h3 .tag{
    color:var(--ink-soft); font-size:.78rem; font-weight:500; display:inline;
    border:1px solid var(--line); border-radius:999px; padding:2px 10px;
    margin-left:8px; vertical-align:middle;
  }
  .service-row p{margin:10px 0 0; color:var(--ink-soft); max-width:58ch;}

  .price-list{border-top:1px solid var(--line);}
  .price-row{
    display:grid; grid-template-columns:1fr auto; gap:24px; align-items:baseline;
    padding:26px 0; border-bottom:1px solid var(--line);
  }
  .price-row h3{font-size:1.3rem; margin-bottom:6px;}
  .price-row h3 .tag{
    font-family:'Lato', sans-serif; font-style:normal; font-weight:500;
    font-size:.78rem; color:var(--ink-soft); border:1px solid var(--line);
    border-radius:999px; padding:2px 10px; margin-left:8px; white-space:nowrap;
    vertical-align:middle;
  }
  @media (max-width:760px){.price-row:has(.price-text){grid-template-columns:1fr !important; gap:8px;}.price-row .price-text{order:-1;}}
  .price-row p{margin:0; color:var(--ink-soft); max-width:52ch; font-size:1rem;}
  .price-row .price{
    font-family:'Cormorant Garamond', serif; font-style:italic; font-size:1.3rem; color:var(--gold);
    white-space:nowrap;
  }
  .price-note{margin-top:26px; font-size:.88rem; color:var(--ink-soft);}

  .future-list{display:grid; gap:20px;}
  .brain-mini{position:relative; width:177px; aspect-ratio:520/456; background:var(--brain) center/contain no-repeat; margin:14px 0 0;}
  .brain-mini::after{content:""; position:absolute; inset:0; pointer-events:none; mix-blend-mode:screen; opacity:.85;
    -webkit-mask:var(--brain) center/contain no-repeat; mask:var(--brain) center/contain no-repeat;
    background:linear-gradient(105deg,rgba(201,160,112,0) 30%,rgba(255,236,196,.95) 46%,rgba(255,250,240,1) 50%,rgba(236,205,160,.95) 54%,rgba(201,160,112,0) 70%) 120% 0/260% 100% no-repeat;
    animation:brainShine 7s ease-in-out infinite;}
  @keyframes brainShine{0%,15%{background-position:120% 0} 65%,100%{background-position:-20% 0}}
  @media (prefers-reduced-motion:reduce){.brain-mini::after{animation:none; background-position:45% 0;}}
  @media(max-width:760px){.brain-mini{width:140px; margin:10px 0 0;} #angebot .section-head{gap:16px;}}
  @media (min-width:761px){
    #ueber .about-grid{grid-template-columns:1.3fr 1.1fr;}
    #ueber .about-portrait{order:2;}
  }
  .future-photos{
    grid-column:1 / -1; display:grid; grid-template-columns:repeat(2, 1fr);
    gap:14px; margin-top:8px; max-width:720px; width:100%; justify-self:center;
  }
  .future-photo{
    aspect-ratio:3/4; border:1px dashed var(--line); border-radius:10px;
    display:flex; align-items:center; justify-content:center;
    font-size:.88rem; color:var(--ink-soft); background:var(--bg-2);
    overflow:hidden;
  }
  .future-photo img{width:100%; height:100%; object-fit:cover; display:block;}
  .future-photo-caption{
    grid-column:1 / -1; margin:2px 0 0; font-size:.88rem; font-style:italic;
    color:var(--ink-soft); font-family:'Cormorant Garamond', serif;
  }
  .wilma-bio{
    grid-column:1 / -1; margin:14px 0 0; font-size:1rem; color:var(--ink-soft);
    max-width:60ch;
  }
  .wilma-bio strong{
    font-family:'Cormorant Garamond', serif; font-style:italic; color:var(--ink); font-weight:500;
  }
  .future{
    border:1px solid var(--line); background:var(--card); border-radius:18px;
    padding:32px 34px; display:grid; grid-template-columns:auto 1fr; gap:26px; align-items:center;
  }
  .future .badge{
    font-family:'Cormorant Garamond', serif; font-style:italic; font-size:.88rem; color:var(--gold);
    border:1px solid var(--gold); border-radius:999px; padding:7px 18px; white-space:nowrap;
  }
  .future p{margin:0; color:var(--ink-soft);}
  .future strong{color:var(--ink);}

  .contact-grid{display:grid; grid-template-columns:1fr 1fr; grid-template-areas:"info photo" "form photo"; column-gap:56px; row-gap:32px; align-items:start;}
  .contact-info{grid-area:info;} #contactForm{grid-area:form;}
  .contact-info dl{margin:0;}
  .contact-info dt{color:var(--ink-soft); font-size:.88rem; margin-top:18px;}
  .contact-info dt:first-child{margin-top:0;}
  .contact-info dd{margin:2px 0 0; font-size:1rem;}
  .contact-claim{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.3rem; color:var(--ink); line-height:1.5; margin:14px 0 0;}
  .contact-photo{grid-area:photo; aspect-ratio:4/3; width:100%; max-width:396px; justify-self:end; overflow:hidden;}
  .contact-photo img{width:100%; height:100%; object-fit:cover; object-position:50% 50%; display:block;}
  form{display:grid; gap:14px;}
  label{font-size:.88rem; color:var(--ink-soft); display:block; margin-bottom:6px;}
  input, textarea, select{
    width:100%; padding:12px 16px; background:var(--card); border-radius:10px;
    border:1px solid var(--line); color:var(--ink); font-family:inherit; font-size:1rem;
  }
  input:focus, textarea:focus, select:focus{outline:2px solid var(--gold); outline-offset:1px;}
  form button.btn{font-family:inherit;}
  .form-note{font-size:.88rem; color:var(--ink-soft); margin:0; line-height:1.5;}
  [hidden]{display:none !important;}
  textarea{resize:vertical; min-height:110px;}

  footer{padding:36px 0; border-top:1px solid var(--line);}
  footer .wrap{display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; color:var(--ink-soft); font-size:0.88rem;}

  @media (max-width:760px){
    .hero .wrap, .about-grid, .section-head, .contact-grid, .future{grid-template-columns:1fr;}
    .contact-grid{grid-template-areas:"info" "photo" "form";}
    .contact-photo{justify-self:start; max-width:342px;}
    .hero-side{border-left:none; border-top:1px solid var(--line); padding-left:0; padding-top:24px;}
    .service-row{grid-template-columns:1fr; gap:8px;}
    nav{gap:16px; font-size:0.85rem;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
  }

    .hero-nova{padding:0; position:relative; line-height:normal; container-type:inline-size; color:#6A584E; border-bottom:1px solid var(--line);}
.hero-nova-img{width:100%; aspect-ratio:16/9; display:block; object-fit:cover; object-position:100% 50%;}
.hero-text{position:absolute; left:40%; top:45%; transform:translate(-50%,-50%); width:58%; text-align:center; text-shadow:0 0 10px rgba(255,246,238,.95),0 0 24px rgba(255,246,238,.8);}
.hero-logo{font-family:'Cormorant Garamond',serif; line-height:1; color:#6A584E;}
.hl-nova{display:block; font-weight:500; font-size:clamp(30px,5.4cqw,86px); letter-spacing:.03em;}
.hl-o{display:inline-block; width:.76em; height:.76em; vertical-align:-.03em; margin:0 .02em;}
.hl-o svg{width:100%; height:100%; display:block;}
.hl-mind{display:block; font-family:'Montserrat',sans-serif; font-weight:300; font-size:clamp(16px,3.2cqw,50px); letter-spacing:.06em; margin-top:-.05em;}
.hero-logo-img{display:block; margin:0 auto; width:24cqw; max-width:400px; height:auto; filter:drop-shadow(0 0 10px rgba(255,246,238,.8));}
.hero-script{font-family:'WindSong',cursive; font-size:clamp(20px,3.6cqw,56px); margin:-1.1em 0 .3em; position:relative; color:#A67C6B; line-height:1.1;}
.hero-sub{font-family:'Lato',sans-serif; font-weight:400; font-size:clamp(9px,1.25cqw,18px); margin:0 0 1.3em; color:#6A584E;}
.hero-sub b{font-weight:700;}
.hero-sub .sep{margin:0 1.2em; opacity:.7;}
.hero-text .usp-grid{grid-template-columns:repeat(5,1fr)!important; gap:1.2cqw; margin:0 auto; width:84%;}
.hero-text .usp-item{font-size:clamp(7px,.78cqw,12px); gap:.7cqw; color:#6A584E;}
.hero-text .usp-icon{width:clamp(30px,3.7cqw,56px); height:clamp(30px,3.7cqw,56px); background:rgba(255,248,242,.5); border-color:#C5A18C; color:#9C7664;}
.hero-text .usp-icon svg{width:50%; height:50%;}
@media (max-width:760px){
  .hero-nova-img{aspect-ratio:16/10; object-position:90% 50%;}
  .hero-text{position:static; transform:none; width:auto; padding:26px 16px 34px; text-shadow:none; background:var(--bg);}
  .hero-logo-img{width:230px; max-width:70%}.hero-script{font-size:2.6rem; margin:-.5em 0 .3em}
  .hero-sub{font-size:.85rem; line-height:1.7}.hero-sub .sep{display:none}.hero-sub b{display:block}
  .hero-text .usp-grid{grid-template-columns:repeat(2,1fr)!important; gap:20px; margin:22px 0 0}
  .hero-text .usp-item{font-size:.8rem; gap:10px}
  .hero-text .usp-icon{width:56px; height:56px; background:none}
}


  .usp{padding:44px 0 56px; border-bottom:1px solid var(--line);}
  .usp-tagline{
    text-align:center; font-family:'WindSong', cursive; font-weight:400;
    font-size:clamp(2.6rem,5vw,3.6rem); color:var(--moss); margin:0 0 6px;
  }
  .usp-subtitle{
    text-align:center; font-family:'Montserrat', sans-serif; font-weight:500;
    font-size:0.82rem; letter-spacing:0.28em; text-transform:uppercase;
    color:var(--ink-soft); margin:0 0 28px;
  }
  .usp-divider{width:60px; height:1px; background:var(--gold); margin:0 auto 40px;}
  .usp-grid{
    display:grid; grid-template-columns:repeat(6,1fr); gap:18px;
    margin-bottom:0;
  }
  .usp-item{
    display:flex; flex-direction:column; align-items:center; text-align:center;
    gap:12px; text-decoration:none; color:var(--ink-soft); font-size:0.76rem;
    letter-spacing:0.01em; line-height:1.3;
  }
  .usp-item:hover{color:var(--ink);}
  .usp-item:hover .usp-icon{border-color:var(--moss); color:var(--moss);}
  .usp-icon{
    width:56px; height:56px; border-radius:50%; border:1px solid var(--gold);
    display:flex; align-items:center; justify-content:center; color:var(--gold);
    flex-shrink:0; transition:border-color 0.2s, color 0.2s;
  }
  .usp-icon svg{width:24px; height:24px;}
  .usp-closing{
    text-align:center; font-family:'Cormorant Garamond', serif; font-style:italic; font-weight:400;
    font-size:1.15rem; color:var(--ink); max-width:46ch; margin:0 auto; line-height:1.55;
  }
  @media (max-width:900px){
    .usp-grid{grid-template-columns:repeat(3,1fr); row-gap:30px;}
  }
  @media (max-width:520px){
    .usp-grid{grid-template-columns:repeat(2,1fr);}
  }

  .haltung-wrap{max-width:62ch; margin:0 auto; text-align:left;}
  #haltung .section-head{display:block; text-align:center; margin-bottom:28px;}
  #haltung .section-head h2{margin-bottom:0;}
  #haltung .section-head::after{
    content:""; display:block; width:60px; height:1px; background:var(--gold);
    margin:22px auto 0;
  }
  #haltung p{margin:0 0 20px; color:var(--ink); line-height:1.75; font-size:1rem;}
  #haltung p:last-child{margin-bottom:0;}

  .about-quote{
    font-family:'Cormorant Garamond', serif; font-weight:500; font-size:1.3rem;
    letter-spacing:0.05em; color:var(--moss); margin:24px 0;
    max-width:56ch;
  }
  .about-mantra{
    font-family:'Cormorant Garamond', serif; font-weight:500; font-size:1.3rem;
    letter-spacing:0.05em; color:var(--moss); margin:30px 0;
  }

  #haltung em.accent{
    font-family:'Cormorant Garamond', serif; font-weight:500;
    letter-spacing:0.05em; color:var(--moss); font-size:1.15em;
    display:inline-block; margin-top:4px; font-style:normal;
  }

  .service-topics{margin:0 0 20px; padding:0; list-style:none;}
  .service-topics li{
    margin:0 0 14px; padding-left:18px; position:relative; color:var(--ink-soft);
  }
  .service-topics li::before{
    content:""; position:absolute; left:0; top:0.55em; width:6px; height:6px;
    border-radius:50%; background:var(--gold);
  }
  .service-topics li strong{color:var(--ink); font-weight:600;}

  #agb{display:none;}
  #agb:target{display:block;}
  .legal-wrap{max-width:74ch; margin:0 auto;}
  .legal-sub{color:var(--ink-soft); margin:8px 0 28px;}
  #agb h3{font-size:1.15rem; margin:30px 0 8px;}
  #agb p{margin:0 0 10px; color:var(--ink); line-height:1.7; font-size:1rem;}
  #agb blockquote{margin:12px 0; padding:4px 0 4px 18px; border-left:2px solid var(--gold);}
  .legal-back{margin-top:36px !important;}
  .legal-back a, footer a{color:var(--moss);}

  #datenschutz{display:none;}
  #datenschutz:target{display:block;}
  #datenschutz h3{font-size:1.15rem; margin:30px 0 8px;}
  #datenschutz p{margin:0 0 10px; color:var(--ink); line-height:1.7; font-size:1rem;}
  #datenschutz ul{margin:0 0 10px 1.2em; line-height:1.7; font-size:1rem;}
  #impressum{display:none;}
  #impressum:target{display:block;}
  #impressum h3{font-size:1.15rem; margin:30px 0 8px;}
  #impressum p{margin:0 0 10px; color:var(--ink); line-height:1.7; font-size:1rem;}
  @media (max-width:360px){nav{gap:9px; font-size:.78rem;}}
  @media (max-width:760px){
    header{padding-top:calc(10px + env(safe-area-inset-top,0px)); padding-bottom:10px;}
    header .wrap{flex-direction:column; gap:8px; padding:0 12px;}
    .brand{font-size:1.2rem; white-space:nowrap;}
    .brand-by{white-space:nowrap;}
    nav{gap:14px; font-size:.84rem; white-space:nowrap; justify-content:center; flex-wrap:nowrap;}
    nav a{white-space:nowrap;}
    #paare,#teams,#hpp,#wilma,#ueber,#angebot,#kontakt,#preise,#zukunft{scroll-margin-top:110px;}
  }

/* Durchsicht 14.10.: Hero-Lesbarkeit, Abstand Angebot */
@media (min-width:761px){
}
#angebot .section-head{margin-bottom:22px}
#angebot .service-group-title{margin-top:0; padding-top:12px}

.mail-copy{display:flex; flex-wrap:wrap; align-items:center; gap:10px}
.mail-addr{font-size:1.15rem; font-weight:400; letter-spacing:.01em; color:var(--plum,#6A4F42); text-decoration:none; border-bottom:1px solid currentColor; overflow-wrap:anywhere}
.copy-btn{font:inherit; font-size:.78rem; padding:5px 14px; border-radius:999px; border:1px solid #C8A595; background:rgba(255,255,255,.55); color:#6A4F42; cursor:pointer}
.copy-btn:hover,.copy-btn:focus-visible{background:#fff}
.copy-ok{font-size:.78rem; color:var(--moss,#76645A)}

/* Hero neu: im Bild nur das Logo; Claim + Icons darunter */
.hero-text{top:21.5cqw; left:33%; width:58%}
.hero-logo-img{width:30cqw; max-width:520px}
.hero-below{background:var(--bg); text-align:center; padding:clamp(28px,3.4cqw,52px) 20px clamp(34px,4cqw,58px)}
.hero-below .hero-script{font-family:'WindSong',cursive; font-size:clamp(2.6rem,5.2cqw,5rem); line-height:1.15; margin:0 0 .15em; color:#A67C6B; position:static}
.hero-below .hero-sub{font-family:'Lato',sans-serif; font-size:clamp(.85rem,1.2cqw,1.1rem); margin:0 0 2em; color:#6A584E; line-height:1.7}
.hero-below .hero-sub b{font-weight:700}
.hero-below .usp-grid{display:grid; grid-template-columns:repeat(5,1fr)!important; gap:18px; max-width:860px; width:100%; margin:0 auto}
.hero-below .usp-item{display:flex; flex-direction:column; align-items:center; gap:10px; font-size:.85rem; line-height:1.35; color:#6A584E; text-decoration:none}
.hero-below .usp-icon{width:56px; height:56px; background:rgba(255,248,242,.6); border:1px solid #C5A18C; color:#9C7664; border-radius:50%; display:flex; align-items:center; justify-content:center}
.hero-below .usp-icon svg{width:50%; height:50%}
@media (max-width:760px){
  .hero-text{padding:26px 16px 14px}
  .hero-text{top:auto; left:auto; width:auto; transform:none; background:transparent}
  .hero-logo-img{width:210px; max-width:70%; filter:none}
  .hero-below .usp-item:last-child{grid-column:1/-1}
  .hero-below{padding:6px 16px 36px}
  .hero-below .hero-script{font-size:2.8rem}
  .hero-below .hero-sub{margin-bottom:1.4em}
  .hero-below .hero-sub .sep{display:none}
  .hero-below .hero-sub b{display:block}
  .hero-below .usp-grid{grid-template-columns:repeat(2,1fr)!important; gap:22px 12px}
}

/* Handy-Menü */
.menu-btn{display:none; background:none; border:1px solid color-mix(in srgb, var(--gold) 60%, var(--line)); border-radius:8px; width:42px; height:38px; padding:0; cursor:pointer; color:var(--ink);}
.menu-btn span{display:block; width:18px; height:1.5px; background:currentColor; margin:4px auto; transition:transform .2s, opacity .2s;}
header.menu-open .menu-btn span:nth-child(1){transform:translateY(5.5px) rotate(45deg);}
header.menu-open .menu-btn span:nth-child(2){opacity:0;}
header.menu-open .menu-btn span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg);}
@media (max-width:760px){
  header .wrap{flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:0 12px; padding:0 16px;}
  .menu-btn{display:block;}
  header nav{display:none; flex-basis:100%; flex-direction:column; align-items:stretch; gap:0; padding:10px 0 4px; font-size:1rem; white-space:normal;}
  header.menu-open nav{display:flex;}
  header nav a{padding:12px 4px; border-bottom:1px solid var(--line);}
  header nav a:last-child{border-bottom:0;}
  #paare,#teams,#hpp,#wilma,#ueber,#angebot,#kontakt,#preise,#zukunft{scroll-margin-top:72px;}
}

/* ===== Perlmutt-Design ===== */
.price,.badge,.service-row .tag,.price-row .tag,.blog-meta{color:#9C7664 !important;}
:root{--bg:#F5EEE6; --bg-2:#ECE0D5; --ink:#4A3C35; --ink-soft:#7E6B60; --moss:#6F5648; --gold:#C9A08D; --line:rgba(96,76,64,0.15); --card:#FCF9F5;
  --pearl:linear-gradient(135deg,#C79F8C 0%,#E9D3C6 38%,#F7EBE2 52%,#D2AE9C 78%,#B98F7D 100%);}
body{background:var(--bg); color:var(--ink);}
header{background:color-mix(in srgb,#F7F0E8 82%,transparent); border-bottom:1px solid transparent; border-image:var(--pearl) 1;}
.brand-nova{color:#6A584E; font-size:1.3em; font-weight:500; letter-spacing:.05em; line-height:1;} .brand-mind{color:#A67C6B;}
section.alt{background:linear-gradient(160deg,#EEE2D7 0%,#F4EBE2 46%,#EADCCF 100%);}
.btn.primary,.btn-more:hover{background:linear-gradient(125deg,#8D6957 0%,#B28D7B 48%,#8D6957 100%); color:#fff; border-color:#9A7462;}
.btn-more{border-color:#B8917F; color:#6F5648;}
.service-row,.price-row,.blog-card,.future,.faq,.wilma-card{border-color:rgba(190,150,128,.35);}
.blog-card{background:linear-gradient(145deg,rgba(255,255,255,.55),rgba(247,235,226,.5)); border:1px solid rgba(190,150,128,.5); box-shadow:inset 0 1px 0 rgba(255,255,255,.8);}
.usp-icon,.hero-below .usp-icon{background:linear-gradient(#FBF6F0,#FBF6F0) padding-box,var(--pearl) border-box !important; border:1.5px solid transparent !important; color:#9C7664 !important; box-shadow:0 4px 14px rgba(160,120,100,.14), inset 0 1px 0 #fff;}
.usp-divider,.about-h::after,h2::after{background:var(--pearl);}
.more summary{border-bottom-color:#C9A08D;}
input,textarea,select{background:#FCF9F5; border:1px solid rgba(190,150,128,.35);}
footer{background:linear-gradient(160deg,#E8DACD,#F1E6DB);}
.hero-below{background:linear-gradient(180deg,#F5EEE6,#F5EEE6);}
.hero-below .hero-script{color:#B28774;}
.hero-below .hero-sub{color:#6A584E;}
.hero-nova{color:#6A584E; border-bottom:1px solid rgba(190,150,128,.3);}
.hero-nova-img{aspect-ratio:1927/816; object-position:50% 50%;}
.hero-nova .hero-text{position:absolute; left:50%; top:20.2cqw; transform:translate(-50%,-50%); width:70%; text-shadow:none; text-align:center; background:none; padding:0;}
.hero-h1{font-family:'Cormorant Garamond',serif; font-weight:300; margin:0; line-height:1;}
.wm{display:inline-flex; align-items:center; justify-content:center; font-family:'Cormorant Garamond',serif; font-weight:300; text-transform:uppercase; letter-spacing:.24em; font-size:clamp(1.5rem,4.5cqw,5rem); color:#6C5B51; white-space:nowrap; padding-left:.24em;}
.wm-o{display:inline-block; width:.7em; height:.7em; margin:0 .04em 0 .06em; border-radius:50%; background:conic-gradient(from 210deg,#B88C7A 0%,#F3DDD0 10%,#D9C3D6 20%,#BFD6D0 29%,#F6E4D3 38%,#C9A08D 50%,#EBCFC2 60%,#D6C4DC 70%,#C5DAD3 79%,#F5E2D2 88%,#B88C7A 100%); background-size:140% 140%; background-position:0% 50%; animation:wmShine 9s ease-in-out infinite alternate; -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - .075em),#000 calc(100% - .07em)); mask:radial-gradient(farthest-side,transparent calc(100% - .075em),#000 calc(100% - .07em)); transform:translateY(-.02em); filter:drop-shadow(0 0 .02em rgba(255,255,255,.7));}
@keyframes wmShine{0%{filter:hue-rotate(-12deg) brightness(1.02) drop-shadow(0 0 .02em rgba(255,255,255,.7));transform:translateY(-.02em) rotate(0deg)}100%{filter:hue-rotate(14deg) brightness(1.1) drop-shadow(0 0 .02em rgba(255,255,255,.7));transform:translateY(-.02em) rotate(40deg)}}
@media (prefers-reduced-motion:reduce){.wm-o{animation:none;}}
.wm-by{font-family:'WindSong',cursive; font-style:normal; font-weight:400; font-size:clamp(1.15rem,2.35cqw,2.5rem); letter-spacing:.02em; color:#CDAFA2; line-height:1; margin:-.15em 0 .8em; display:block; text-align:center; padding-left:.8em; text-transform:none; transform:skewX(-6deg);}
.wm-line{display:block; width:clamp(34px,3.8cqw,72px); height:1px; background:linear-gradient(90deg,transparent,#C9A08D,transparent); margin:0 auto clamp(10px,1.6cqw,26px);}
.wm-sub{font-family:'Lato',sans-serif; font-weight:300; text-transform:uppercase; letter-spacing:.24em; font-size:clamp(.55rem,.82cqw,.95rem); line-height:1.9; color:#7A675C; display:block; text-align:center;}
@media (max-width:760px){
  .hero-nova-img{aspect-ratio:16/10; object-position:30% 50%;}
  .hero-nova .hero-text{position:static; transform:none; width:auto; padding:30px 12px 6px; background:var(--bg);}
  .wm{font-size:clamp(1.5rem,7.2vw,2.3rem); letter-spacing:.2em;}
  .wm-by{font-size:1.35rem; padding-left:0;}
  .wm-sub{font-size:.62rem; letter-spacing:.16em;}
  .hero-below{padding-top:14px;}
}

/* ruhigere Icons + Slogan in Wortlogo-Schrift */
.hero-below .usp-icon{background:none !important; border:none !important; box-shadow:none !important; width:42px; height:42px; color:#A67C6B !important;}
.hero-below .usp-icon svg{width:100%; height:100%; stroke-width:1.05;}
.hero-below .usp-item{font-family:'Lato',sans-serif; font-weight:400; text-transform:uppercase; letter-spacing:.15em; font-size:.66rem; line-height:1.6; color:#6F5E54; gap:16px;}
.hero-below .usp-item:hover .usp-icon{color:#6F5648 !important;}
.hero-below .hero-script{font-family:'Cormorant Garamond',serif; font-weight:300; text-transform:uppercase; letter-spacing:.32em; font-size:clamp(1.35rem,2.8cqw,2.7rem); line-height:1.2; color:#B28774; padding-left:.32em; margin:0 0 .9em;}
.hero-below .hero-sub{font-family:'Lato',sans-serif; font-weight:300; letter-spacing:.06em; margin-bottom:2.6em;}
@media (max-width:760px){
  .hero-below .hero-script{font-size:1.2rem; letter-spacing:.22em; padding-left:.22em;}
  .hero-below .usp-item{font-size:.6rem; letter-spacing:.12em;}
  .hero-below .usp-icon{width:38px; height:38px;}
}

/* Icons entfernt: ruhige Textzeile mit feinen Trennern */
.hero-below .usp-icon{display:none !important;}
.hero-below .usp-grid{display:flex !important; flex-wrap:wrap; justify-content:center; gap:10px 0; max-width:1120px;}
.hero-below .usp-item{flex-direction:row; padding:2px 18px; gap:0; border-left:1px solid rgba(190,150,128,.55); letter-spacing:.15em; font-size:.68rem; text-align:center;}
.hero-below .usp-item:first-child{border-left:0;}
@media (max-width:760px){
  .hero-below .usp-grid{flex-direction:column; align-items:center; gap:14px; grid-template-columns:none !important;}
  .hero-below .usp-item{border-left:0; padding:0; font-size:.64rem; letter-spacing:.16em;}
  .hero-below .usp-item:last-child{grid-column:auto;}
  .hero-below .hero-sub{margin-bottom:1.8em;}
}

/* ===== Klare Typografie wie im Hero ===== */
body::before{display:none;}
body{font-weight:400; color:#4F4039;}
h1,h2,.about-h,.wilma-h{font-family:'Cormorant Garamond',serif !important; font-weight:300 !important; text-transform:uppercase; letter-spacing:.2em !important; color:#6C5B51 !important; line-height:1.3 !important;}
h2,.section-head h2{font-size:clamp(1.35rem,2.3vw,1.85rem) !important;}
.about-h,.wilma-h{font-size:clamp(1.2rem,2vw,1.6rem) !important; letter-spacing:.16em !important;}
h1:not(.hero-h1){font-size:clamp(1.5rem,3vw,2.2rem) !important; letter-spacing:.14em !important;}
h3,.sub-h,.about-bg-title,.blog-card h3,#blog-willkommen h3{font-family:'Cormorant Garamond',serif !important; font-weight:400 !important; font-style:normal !important; letter-spacing:.04em !important; color:#5A4A42 !important;}
.sub-h{font-size:1.45rem; margin-top:40px;}
p,li,dd,dt,.price-row p,.legal-sub,.crumb{font-weight:400;}
.about-lead,.wilma-lead,.contact-claim,#kinderwunsch .legal-sub,.legal-sub,#haltung p.about-lead,.about-text .about-lead,#haltung .more-body p.hl{font-family:'Lato',sans-serif !important; font-style:normal !important; font-weight:300 !important; font-size:1.12rem !important; letter-spacing:.02em !important; line-height:1.85 !important; color:#5A4A42 !important;}
.contact-claim{font-size:1.02rem !important; letter-spacing:.08em !important; color:#7A675C !important;}
.service-group-title{font-family:'Lato',sans-serif !important; font-style:normal !important; font-weight:400; font-size:.72rem !important; text-transform:uppercase; letter-spacing:.2em; color:#8B6A5B !important;}
.tag,.badge,.service-row .tag,.price-row .tag,.blog-meta,.wilma-sub,.future-photo-caption{font-family:'Lato',sans-serif !important; font-style:normal !important; font-weight:400 !important; text-transform:uppercase; letter-spacing:.17em !important; font-size:.66rem !important; color:#9C7664 !important;}
.badge,.price-row .tag,h3 .tag{border-radius:2px !important; padding:5px 12px !important;}
.price,.price-row .price{font-family:'Cormorant Garamond',serif !important; font-style:normal !important; font-weight:400 !important; font-size:1.4rem !important; color:#6C5B51 !important; letter-spacing:.03em; font-variant-numeric:lining-nums;}
.btn,.btn-more{font-family:'Lato',sans-serif; text-transform:uppercase; letter-spacing:.17em !important; font-size:.7rem !important; border-radius:2px !important; padding:14px 28px !important;}
.btn.primary{font-weight:400;}
.more summary{text-transform:uppercase; letter-spacing:.16em; font-size:.7rem; font-weight:400;}
.more summary::after{font-size:1rem;}
nav a{text-transform:uppercase; letter-spacing:.15em; font-size:.7rem;}
nav{gap:26px;}
section.alt::before,section.alt::after{display:none !important;}
section.alt{border-top:1px solid rgba(190,150,128,.28); border-bottom:1px solid rgba(190,150,128,.28);}
.about-portrait,.about-portrait img,.about-portrait::after,.future-photo,.future-photo img,.contact-photo,.contact-photo img{border-radius:2px !important;}
.future,.cta-box,.blog-card,.price-row,.service-row{border-radius:2px !important;}
.future,.cta-box,.blog-card{border:1px solid rgba(190,150,128,.38) !important; background:rgba(255,255,255,.42) !important; box-shadow:none !important;}
input,textarea,select,.copy-btn{border-radius:2px !important; font-family:'Lato',sans-serif;}
label{text-transform:uppercase; letter-spacing:.14em; font-size:.68rem;}
.contact-info dt{text-transform:uppercase; letter-spacing:.16em; font-size:.66rem; color:#9C7664;}
.related a,.legal-back a,footer a{color:#6F5648;}
@media (max-width:760px){
  h2,.section-head h2{letter-spacing:.14em !important; font-size:1.3rem !important;}
  h1:not(.hero-h1){letter-spacing:.1em !important; font-size:1.4rem !important;}
  .about-h,.wilma-h{letter-spacing:.1em !important; font-size:1.15rem !important;}
}

/* ===== Rest-Angleichung ===== */
h3,.sub-h,.about-bg-title,.blog-card h3,#blog-willkommen h3,.service-row h3,.price-row h3{font-family:'Cormorant Garamond',serif !important; font-weight:400 !important; text-transform:uppercase !important; letter-spacing:.12em !important; font-size:1.02rem !important; line-height:1.45 !important; color:#5F4F46 !important;}
.price-row h3 .tag,.service-row h3 .tag{font-size:.6rem !important;}
.sub-h{font-size:1.15rem !important;}
.price,.price-row .price{font-family:'Lato',sans-serif !important; font-weight:300 !important; font-size:1rem !important; letter-spacing:.1em !important; color:#6C5B51 !important; white-space:nowrap;}
.about-quote,.about-mantra{font-family:'Lato',sans-serif !important; font-style:normal !important; font-weight:300 !important; font-size:1.05rem !important; letter-spacing:.04em !important; line-height:1.8 !important; color:#5A4A42 !important;}
.about-mantra{text-transform:uppercase; letter-spacing:.2em !important; font-size:.8rem !important; font-weight:400 !important; color:#8B6A5B !important;}
.about-bg-title{font-size:.9rem !important; letter-spacing:.18em !important;}
.about-portrait-cap,.about-portrait span{font-style:normal !important; letter-spacing:.12em; text-transform:uppercase; font-size:.62rem !important;}

.brand a,.brand,.brand-by,nav a{white-space:nowrap;}
@media (min-width:761px) and (max-width:1020px){nav{gap:16px !important;} nav a{font-size:.64rem !important; letter-spacing:.1em !important;} .brand-by{font-size:.62rem;}}

/* ===== Fließtext wie Hero-Unterzeile: Lato Light ===== */
body,p,li,dd,dt,.price-row p,.service-row p,.more-body p,.legal p,.legal li,.price-note,.form-note,.crumb,.blog-card p,.future p,.cta-box p,.related,.contact-info dd,.contact-info{font-family:'Lato',sans-serif !important; font-weight:300 !important; letter-spacing:.025em; color:#55453D;}
body{font-size:16.5px;}
p,li{line-height:1.85;}
strong,b{font-weight:600 !important; letter-spacing:.02em;}
.price-note,.form-note{font-size:.86rem; letter-spacing:.03em;}
input,textarea,select{font-weight:300 !important; letter-spacing:.03em;}
nav a,.btn,.btn-more,.more summary,.tag,.badge,label{font-weight:400 !important;}
.mail-addr,.mail-addr a,.contact-info .mail-addr{font-family:'Lato',sans-serif !important; font-weight:400 !important; font-size:1.02rem !important; letter-spacing:.04em !important; color:#5A4A42 !important;}

.acc summary{font-family:'Lato',sans-serif !important; text-transform:uppercase; letter-spacing:.16em !important; font-size:.7rem !important; font-weight:400 !important; color:#6F5648 !important;}
.acc summary::after{color:#B28774 !important;}
.acc,.acc + .acc{border-color:rgba(190,150,128,.38) !important;}
.topic-swipe li{border-radius:2px !important; background:rgba(255,255,255,.5) !important; border-color:rgba(190,150,128,.38) !important;}
.topic-swipe li strong{font-family:'Cormorant Garamond',serif !important; text-transform:uppercase; letter-spacing:.1em; font-weight:500 !important; font-size:.92rem !important; color:#5F4F46;}
.service-row h3 .tag{white-space:nowrap;}

.lead-sent{font-family:'Cormorant Garamond',serif !important; font-weight:500 !important; font-size:1.5rem !important; line-height:1.35 !important; color:#5A4A42 !important; letter-spacing:.01em; margin-bottom:10px !important;}
.service-text p.teaser{font-size:.98rem; line-height:1.85;}
.acc summary{font-family:'Cormorant Garamond',serif !important; font-weight:500 !important; font-size:1.02rem !important; letter-spacing:.12em !important; color:#5F4F46 !important; padding:15px 0 !important;}
.acc summary::after{font-size:1.5rem !important;}
@media (max-width:760px){.lead-sent{font-size:1.3rem !important;}}

.lead-sent{font-family:'Lato',sans-serif !important; font-weight:700 !important; font-size:1.08rem !important; line-height:1.6 !important; letter-spacing:.015em !important; color:#5A4A42 !important; margin-bottom:8px !important;}
@media (max-width:760px){.lead-sent{font-size:1.02rem !important;}}

.lead-sent{font-family:'Lato',sans-serif !important; font-weight:400 !important; font-size:1.12rem !important; line-height:1.7 !important; letter-spacing:.02em !important; color:#4A3C35 !important;}
@media (max-width:760px){.lead-sent{font-size:1.05rem !important;}}

.lead-sent{font-weight:300 !important; color:#4A3C35 !important;}
.acc summary{font-weight:300 !important;}
.service-row h3,.price-row h3,h3{font-weight:300 !important;}

.team-swipe .service-row.swipe-card{border-radius:2px !important; background:rgba(255,255,255,.5) !important; border:1px solid rgba(190,150,128,.38) !important; border-bottom:1px solid rgba(190,150,128,.38) !important;}
.swipe-hint{color:#B28774 !important; font-family:'Lato',sans-serif;}
.team-swipe .lead-sent{font-size:1.05rem !important;}

.service-row.invert{background:#2F1F2C !important; padding:38px 32px !important; border-bottom:0 !important; margin:10px 0;}
.service-row.invert, .service-row.invert p, .service-row.invert .lead-sent, .service-row.invert h3, .service-row.invert .acc summary, .service-row.invert .acc-body p{color:#F5EEE6 !important;}
.service-row.invert .tag{color:#D9B8B0 !important;}
.service-row.invert .acc, .service-row.invert .acc + .acc{border-color:rgba(245,238,230,.32) !important;}
.service-row.invert .acc summary::after{color:#E2C3B2 !important;}
.service-row.invert .btn-more{color:#F5EEE6 !important; border-color:rgba(245,238,230,.6) !important; background:transparent !important;}
.service-row.invert .btn-more:hover{background:rgba(245,238,230,.12) !important;}
@media (max-width:760px){.service-row.invert{padding:28px 20px !important;}}

.team-band{background:#2F1F2C; padding:30px 26px 22px; margin:34px 0 10px;}
.team-band .service-group-title{color:#F5EEE6 !important; margin:0 0 6px !important; padding:0 !important; border:0 !important;}
.team-band .swipe-hint{color:#D9B8B0 !important; margin:0 0 10px !important;}
.team-band .team-swipe{padding-bottom:14px;}
.team-band .team-swipe{scrollbar-color:#8E7285 transparent;}
@media (max-width:760px){.team-band{padding:24px 16px 16px; margin-left:-4px; margin-right:-4px;}}
.team-band .team-swipe .service-row.swipe-card{background:#FCF9F5 !important; border:1px solid #D9B9A8 !important;}

.about-text .about-h{font-family:'Cormorant Garamond',serif !important;font-style:italic !important;font-weight:300 !important;text-transform:none !important;letter-spacing:.01em !important;font-size:clamp(1.7rem,3vw,2.1rem) !important;line-height:1.25 !important;color:#6C5B51 !important;}

@media (max-width:760px){
  .wm{font-size:clamp(1.9rem,9.4vw,2.9rem); letter-spacing:.18em;}
  .wm-by{font-size:1.75rem;}
  .wm-sub{font-size:.7rem; letter-spacing:.14em; color:#5F4F46; font-weight:400; line-height:1.9;}
  .hero-nova .hero-text{padding-top:34px;}
  .hero-below .usp-grid{gap:18px;}
  .hero-below .usp-item{position:relative; font-size:.7rem;}
  .hero-below .usp-item+.usp-item::before{content:""; position:absolute; top:-9px; left:50%; width:34px; height:1px; background:#CBA98F; transform:translateX(-50%);}
  .hero-cta{display:block; text-align:center; margin:30px 0 8px;}
  .hero-cta .btn-more{display:inline-block; padding:15px 24px; font-size:.7rem; letter-spacing:.16em; background:#FCF9F5; border:1px solid #C9A08D; color:#5F4F46;}
}

@media (max-width:760px){
  .price-row{grid-template-columns:1fr !important; gap:6px !important;}
  .price-row > div:first-child{min-width:0;}
  .price-row .price{order:-1; text-align:left; color:#A67C6B;}
  .price-row h3{white-space:normal !important; hyphens:auto;}
  .price-row h3 .tag{white-space:nowrap;}
}

@media (max-width:760px){
  #zukunft .section-head{margin-bottom:18px;}
  .future-list{gap:14px;}
  .future{padding:22px 20px !important; position:relative;}
  .fut-toggle{display:block; position:absolute; opacity:0; pointer-events:none;}
  .fut-label{display:inline-block; margin-top:16px; padding:11px 20px; font-family:'Lato',sans-serif; font-size:.68rem; letter-spacing:.16em; text-transform:uppercase; color:#5F4F46; background:#FCF9F5; border:1px solid #C9A08D; cursor:pointer;}
  .fl-less{display:none;} .fut-toggle:checked ~ .fut-label .fl-more{display:none;} .fut-toggle:checked ~ .fut-label .fl-less{display:inline;}
  .fut-toggle:focus-visible ~ .fut-label{outline:2px solid #C9A08D; outline-offset:2px;}
  #hpp .fut-toggle:not(:checked) ~ .wilma-main > p, #hpp .fut-toggle:not(:checked) ~ .wilma-main > details{display:none;}
  #wilma .fut-toggle:not(:checked) ~ .wilma-main > .wilma-sub, #wilma .fut-toggle:not(:checked) ~ .wilma-main > p:not(.wilma-lead), #wilma .fut-toggle:not(:checked) ~ .future-photos, #wilma .fut-toggle:not(:checked) ~ .wilma-more{display:none;}
}

@media (max-width:760px){.future{gap:12px !important; align-items:start !important;}}

@media (max-width:760px){
.service-row.invert{background:#F1E3DC !important; border:1px solid #D9B9A8 !important;}
.service-row.invert, .service-row.invert p, .service-row.invert .lead-sent, .service-row.invert h3, .service-row.invert .acc summary, .service-row.invert .acc-body p{color:#6C5B51 !important;}
.service-row.invert .tag{color:#A67C6B !important;}
.service-row.invert .acc, .service-row.invert .acc + .acc{border-color:rgba(166,124,107,.35) !important;}
.service-row.invert .acc summary::after{color:#A67C6B !important;}
.service-row.invert .btn-more{color:#5F4F46 !important; border-color:#C9A08D !important; background:#FCF9F5 !important;}
.team-band{background:#F1E3DC; border:1px solid #D9B9A8;}
.team-band .service-group-title{color:#6C5B51 !important;}
.team-band .swipe-hint{color:#A67C6B !important;}
.team-band .team-swipe{scrollbar-color:#D9B9A8 transparent;}
}

/* Handy-Menü */
.brand a{display:flex; align-items:center; gap:10px; color:inherit;}
.menu-btn{display:none; background:none; border:1px solid color-mix(in srgb, var(--gold) 60%, var(--line)); border-radius:8px; width:42px; height:38px; padding:0; cursor:pointer; color:var(--ink);}
.menu-btn span{display:block; width:18px; height:1.5px; background:currentColor; margin:4px auto; transition:transform .2s, opacity .2s;}
header.menu-open .menu-btn span:nth-child(1){transform:translateY(5.5px) rotate(45deg);}
header.menu-open .menu-btn span:nth-child(2){opacity:0;}
header.menu-open .menu-btn span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg);}
@media (max-width:760px){
  header .wrap{flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:0 12px; padding:0 16px;}
  .menu-btn{display:block;}
  header nav{display:none; flex-basis:100%; flex-direction:column; align-items:stretch; gap:0; padding:10px 0 4px; font-size:1rem; white-space:normal;}
  header.menu-open nav{display:flex;}
  header nav a{padding:12px 4px; border-bottom:1px solid var(--line);}
  header nav a:last-child{border-bottom:0;}
  #paare,#teams,#hpp,#wilma,#ueber,#angebot,#kontakt,#preise,#zukunft{scroll-margin-top:72px;}
}

/* ---- Unterseiten ---- */

.subpage .crumb{font-size:.88rem; color:var(--ink-soft); margin:0 0 18px;}
.subpage .crumb a{color:var(--moss);}
.subpage h1{font-family:'Cormorant Garamond',serif; font-weight:400; font-size:clamp(1.7rem,3vw,2.3rem); line-height:1.2; margin:0 0 10px; color:var(--ink);}
.subpage .legal-sub{color:var(--ink-soft); margin:8px 0 28px;}
.subpage p{margin:0 0 16px; color:var(--ink); line-height:1.75; font-size:1rem;}
.subpage h2.sub-h{font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-weight:500; letter-spacing:.03em; color:var(--moss); margin:34px 0 12px;}
.subpage h3{font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-weight:500; letter-spacing:.03em; color:var(--moss); margin:30px 0 10px;}
.subpage ul{margin:0 0 16px 1.2em; line-height:1.75; font-size:1rem;}
.subpage .tag{font-size:.78rem;}
.subpage .cta-box{margin:38px 0 10px; padding:24px 26px; border:1px solid var(--gold); border-radius:14px; background:rgba(255,255,255,.35);}
.subpage .cta-box p{margin:0 0 14px;}
.subpage .related{margin-top:34px; font-size:1rem;}
.subpage .related a{color:var(--moss);}
.subpage .related ul{list-style:none; margin:8px 0 0; padding:0;}
.subpage .related li{margin:6px 0;}
.subpage .blog-meta{font-size:.88rem; color:var(--ink-soft); margin:0 0 6px;}
.subpage .blog-note{font-size:.88rem; color:var(--ink-soft);}
.subpage .blog-list{display:grid; gap:18px; margin-top:26px;}
.subpage .blog-card{display:block; padding:22px 24px; border:1px solid var(--gold); border-radius:14px; text-decoration:none; color:var(--ink); background:rgba(255,255,255,.35);}
.subpage .blog-card:hover{background:rgba(255,255,255,.6);}
.subpage .blog-card h3{margin:0 0 8px;}
.subpage .blog-card p{margin:0; color:var(--ink-soft);}
.subpage .blog-card .blog-more{display:inline-block; margin-top:10px; color:var(--moss);}
header .brand a{color:inherit; text-decoration:none;}
