:root{
  --gelbgruen:#CFE23A;
  --gruen:#4CAE6D;
  --tuerkis:#1FA69C;
  --tinte:#15150F;
  --grau:#4A4A3E;
  --grau-hell:#6E6E5E;
  --sand:#FCFAF3;
  --nebel:#F1F5EA;
  --dunst:#E7F3F0;
  --weiss:#FFFFFF;
  --linie:rgba(21,21,15,0.10);
  --grad:linear-gradient(135deg, var(--gelbgruen) 0%, var(--gruen) 52%, var(--tuerkis) 100%);
  --grad-v:linear-gradient(180deg, var(--gelbgruen) 0%, var(--gruen) 45%, var(--tuerkis) 100%);
  --weich:0 24px 60px -34px rgba(21,21,15,0.45);
}

*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Work Sans', Arial, Helvetica, sans-serif;
  font-weight:400;
  color:var(--tinte);
  background:var(--sand);
  line-height:1.72;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{font-family:'Domine', Georgia, serif; font-weight:500; line-height:1.16; letter-spacing:-0.015em; overflow-wrap:break-word; hyphens:auto;}
h1{font-size:clamp(2.3rem, 5vw, 3.9rem);}
h2{font-size:clamp(1.75rem, 3.4vw, 2.6rem);}
h3{font-size:1.22rem; line-height:1.3;}
p{font-size:1.06rem; color:var(--grau); overflow-wrap:break-word;}
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
.wrap{max-width:1160px; margin:0 auto; padding:0 26px;}
.schmal{max-width:760px;}

/* ---------- Bausteine ---------- */
.label{
  display:inline-flex; align-items:center; gap:9px;
  font-size:0.74rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase;
  color:var(--grau-hell);
}
.label::before{
  content:""; width:26px; height:2px; border-radius:2px; background:var(--grad); flex:none;
}
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  font-family:'Work Sans', sans-serif; font-weight:600; font-size:1rem;
  padding:15px 28px; border-radius:999px; border:1.5px solid transparent;
  cursor:pointer; transition:transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease;
  text-align:center; overflow-wrap:break-word;
}
.btn svg{width:17px; height:17px; flex:none;}
.btn-fuell{background:var(--grad); color:var(--tinte); box-shadow:0 16px 34px -18px rgba(31,166,156,0.75);}
.btn-fuell:hover{transform:translateY(-2px); box-shadow:0 22px 44px -20px rgba(31,166,156,0.85);}
.btn-linie{border-color:rgba(21,21,15,0.28); color:var(--tinte);}
.btn-linie:hover{background:var(--tinte); color:var(--sand); border-color:var(--tinte);}
.btn-tinte{background:var(--tinte); color:var(--sand);}
.btn-tinte:hover{transform:translateY(-2px);}

/* Blattform-Rahmen fuer Fotos */
.blatt{position:relative; display:block;}
.blatt > img{
  width:100%; height:100%; object-fit:cover;
  border-radius:130px 22px 130px 22px;
  box-shadow:var(--weich);
  position:relative; z-index:1;
}
.blatt::before{
  content:""; position:absolute; z-index:0;
  inset:18px -18px -18px 18px;
  border-radius:130px 22px 130px 22px;
  background:var(--grad);
  opacity:0.55;
}
.blatt.gespiegelt > img, .blatt.gespiegelt::before{border-radius:22px 130px 22px 130px;}
.blatt.gespiegelt::before{inset:18px 18px -18px -18px;}
@media (max-width:640px){
  .blatt > img, .blatt::before, .blatt.gespiegelt > img, .blatt.gespiegelt::before{border-radius:80px 18px 80px 18px;}
  .blatt::before{inset:12px -12px -12px 12px;}
}

/* ---------- Ueber mich (Layout aus Entwurf 7, Bildstil wie im Rest der Seite) ---------- */
.ueber-transplant .wrap-inner{display:grid; grid-template-columns:0.82fr 1.18fr; gap:52px; align-items:center;}
.ueber-transplant .ueber-bild-neu{max-width:380px; width:100%;}
.ueber-transplant .ueber-bild-neu > .blatt > img{aspect-ratio:0.5625/1; object-fit:contain; background:var(--sand);}
@media (max-width:900px){
  .ueber-transplant .wrap-inner{grid-template-columns:1fr; gap:32px;}
  .ueber-transplant .ueber-bild-neu{max-width:300px; margin:0 auto;}
}

/* ---------- Kopfzeile ---------- */
header{
  position:sticky; top:0; z-index:200;
  background:rgba(252,250,243,0.88);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--linie);
}
.nav{display:flex; align-items:center; justify-content:space-between; gap:20px; padding:14px 26px; max-width:1160px; margin:0 auto;}
.marke{display:flex; align-items:center; gap:11px;}
.marke .punkt{width:14px; height:14px; border-radius:50%; background:var(--grad); flex:none;}
.marke .name{font-family:'Domine', serif; font-weight:600; font-size:1.32rem; letter-spacing:-0.01em;}
.nav-links{display:flex; align-items:center; gap:28px; list-style:none; font-size:0.95rem; font-weight:500;}
.nav-links a{padding:4px 0; border-bottom:1.5px solid transparent; transition:border-color .2s ease;}
.nav-links a:hover{border-color:var(--tuerkis);}
.nav-rechts{display:flex; align-items:center; gap:14px;}
.sprache{display:flex; gap:2px; font-size:0.76rem; font-weight:700; border:1px solid var(--linie); border-radius:999px; padding:3px;}
.sprache span{padding:3px 9px; border-radius:999px; cursor:pointer; color:var(--grau-hell);}
.sprache span.aktiv{background:var(--tinte); color:var(--sand);}
.menue-knopf{display:none; align-items:center; justify-content:center; background:none; border:1px solid var(--linie); border-radius:999px; width:44px; height:44px; cursor:pointer; line-height:0;}
.menue-knopf svg{width:20px; height:20px;}
.mobil-menue{display:none; border-top:1px solid var(--linie); background:var(--sand);}
.mobil-menue.offen{display:block;}
.mobil-menue ul{list-style:none; padding:12px 26px 22px;}
.mobil-menue li a{display:flex; align-items:center; min-height:44px; padding:11px 0; font-weight:500; border-bottom:1px solid var(--linie);}
@media (max-width:940px){
  .nav-links{display:none;}
  .nav .btn{display:none;}
  .menue-knopf{display:flex;}
}

/* ---------- Hero ---------- */
.hero{position:relative; padding:70px 0 96px; overflow:hidden;}
.hero::before, .hero::after{content:""; position:absolute; border-radius:50%; z-index:0; pointer-events:none;}
.hero::before{width:640px; height:640px; top:-300px; left:-240px; background:radial-gradient(circle, rgba(207,226,58,0.28) 0%, rgba(207,226,58,0) 70%);}
.hero::after{width:760px; height:760px; bottom:-300px; right:-280px; background:radial-gradient(circle, rgba(31,166,156,0.24) 0%, rgba(31,166,156,0) 70%);}
.hero-verlauf{position:absolute; left:0; right:0; bottom:0; height:180px; z-index:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(252,250,243,0) 0%, var(--sand) 92%);}
.hero .wrap{position:relative; z-index:1; display:grid; grid-template-columns:1.02fr 0.98fr; gap:60px; align-items:center;}
.hero h1{margin:20px 0 22px;}
.hero .fuehrung{font-size:1.18rem; max-width:44ch; margin-bottom:32px;}
.hero-knoepfe{display:flex; gap:14px; flex-wrap:wrap; margin-bottom:30px;}
.hero-fuss{display:flex; align-items:flex-start; gap:11px; font-size:0.95rem; color:var(--grau-hell); max-width:40ch;}
.hero-fuss svg{width:19px; height:19px; flex:none; margin-top:4px; stroke:var(--gruen);}
.hero-bild{aspect-ratio:4/3;}
@media (max-width:940px){
  .hero{padding:44px 0 70px;}
  .hero .wrap{grid-template-columns:1fr; gap:42px;}
  .hero-bild{order:-1; max-width:520px;}
}

/* ---------- Der Faden ---------- */
.reise{position:relative; padding:0 0 40px;}
.faden{display:none;}
@supports ((-webkit-mask-image:url("data:image/svg+xml,%3Csvg/%3E")) or (mask-image:url("data:image/svg+xml,%3Csvg/%3E"))){
  .faden{
    display:block;
    position:absolute; left:0; top:10px; bottom:120px; width:56px;
    background:var(--grad-v);
    opacity:0.75;
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='240' viewBox='0 0 56 240'%3E%3Cpath d='M28 0 C28 60 5 60 5 120 C5 180 28 180 28 240' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='240' viewBox='0 0 56 240'%3E%3Cpath d='M28 0 C28 60 5 60 5 120 C5 180 28 180 28 240' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");
    -webkit-mask-repeat:repeat-y; mask-repeat:repeat-y;
    -webkit-mask-size:56px 240px; mask-size:56px 240px;
    -webkit-mask-position:center top; mask-position:center top;
  }
}
.reise-inhalt{padding-left:112px;}
.station{position:relative; padding:56px 0;}
.station + .station{border-top:1px solid var(--linie);}
.knoten{
  position:absolute; left:-112px; top:56px;
  width:56px; height:56px; border-radius:50%;
  background:var(--grad);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 10px 24px -12px rgba(31,166,156,0.8);
}
.knoten svg{width:24px; height:24px; stroke:var(--tinte); stroke-width:1.7; fill:none; stroke-linecap:round; stroke-linejoin:round;}
.knoten span{font-family:'Domine', serif; font-weight:600; font-size:1.15rem; color:var(--tinte);}
@media (max-width:940px){
  .faden{display:none;}
  .reise-inhalt{padding-left:0;}
  .station{padding:44px 0;}
  .knoten{position:static; width:46px; height:46px; margin-bottom:18px;}
}

.kopf{max-width:640px; margin-bottom:32px;}
.kopf h2{margin-top:14px;}
.kopf p{margin-top:16px;}

/* ---------- Stimmen / Kennst Du das ---------- */
.stimmen{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-bottom:36px;}
.stimme{
  background:var(--weiss); border:1px solid var(--linie);
  border-radius:24px 24px 24px 6px;
  padding:26px 24px 24px;
  font-family:'Domine', serif; font-size:1.04rem; line-height:1.55; color:var(--tinte);
  box-shadow:0 14px 30px -26px rgba(21,21,15,0.5);
}
.stimme .zeichen{display:block; font-size:2.4rem; line-height:0.6; color:var(--gruen); margin-bottom:14px;}
.zuspruch{
  display:grid; grid-template-columns:1fr 300px; gap:44px; align-items:center;
  background:var(--nebel); border-radius:32px; padding:34px 36px;
}
.zuspruch p.gross{font-family:'Domine', serif; font-size:1.3rem; line-height:1.45; color:var(--tinte);}
.zuspruch p.klein{margin-top:12px; font-size:1rem;}
.zuspruch .blatt{aspect-ratio:3/4;}
@media (max-width:900px){
  .stimmen{grid-template-columns:1fr;}
  .zuspruch{grid-template-columns:1fr; gap:28px; padding:28px 24px;}
  .zuspruch .blatt{max-width:280px;}
}

/* ---------- Arbeitsweise ---------- */
.wege{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.weg{
  background:var(--weiss); border:1px solid var(--linie); border-radius:26px;
  padding:30px 26px 28px; display:flex; flex-direction:column;
}
.weg .zeichen{
  width:46px; height:46px; border-radius:50%; background:var(--nebel);
  display:flex; align-items:center; justify-content:center; margin-bottom:18px;
}
.weg .zeichen svg{width:22px; height:22px; stroke:var(--tuerkis); stroke-width:1.7; fill:none; stroke-linecap:round; stroke-linejoin:round;}
.weg h3{margin-bottom:10px;}
.weg p{font-size:0.99rem;}
@media (max-width:900px){.wege{grid-template-columns:1fr;}}

/* ---------- Ueber mich ---------- */
.ueber-bild{margin-bottom:34px;}
.ueber-bild img{aspect-ratio:2.24/1; border-radius:130px 22px 130px 22px;}
.ueber-text{max-width:62ch;}
.ueber-text p{margin-bottom:16px;}
.unterschrift{font-family:'Domine', serif; font-size:1.5rem; color:var(--tinte); margin-top:8px;}

/* ---------- Nicht nur Hunde ---------- */
.weitere{display:grid; grid-template-columns:1fr 300px; gap:46px; align-items:center;}
.weitere .blatt{aspect-ratio:3/4;}
.weitere p{margin-bottom:14px;}
.arten{display:flex; gap:10px; flex-wrap:wrap; margin-top:20px;}
.art{
  font-size:0.86rem; font-weight:600; letter-spacing:0.04em;
  background:var(--dunst); color:var(--tinte);
  padding:7px 16px; border-radius:999px;
}
@media (max-width:900px){
  .weitere{grid-template-columns:1fr; gap:28px;}
  .weitere .blatt{max-width:280px;}
}

/* ---------- Angebote ---------- */
.angebot-tafel{
  background:var(--weiss); border:1px solid var(--linie); border-radius:32px;
  padding:8px; box-shadow:0 26px 60px -44px rgba(21,21,15,0.6);
}
.angebot-zeile{
  display:grid; grid-template-columns:auto 1fr auto; gap:26px; align-items:center;
  padding:26px 28px; border-radius:26px;
}
.angebot-zeile + .angebot-zeile{border-top:1px solid var(--linie);}
.angebot-zeile.betont{background:var(--nebel); border-top:none;}
.angebot-zeile .dauer{
  font-size:0.74rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--grau-hell); white-space:nowrap; min-width:92px;
}
.angebot-zeile h3{margin-bottom:4px;}
.angebot-zeile p{font-size:0.97rem; max-width:52ch;}
.angebot-zeile .preis{font-family:'Domine', serif; font-weight:600; font-size:1.55rem; white-space:nowrap; text-align:right;}
.angebot-zeile .preis small{display:block; font-family:'Work Sans', sans-serif; font-size:0.76rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; color:var(--grau-hell);}
.hinweis-klein{font-size:0.92rem; color:var(--grau-hell); margin-top:16px;}
#preise .hinweis-klein{font-size:1.06rem;}

/* Kurzer Preis-Ueberblick fuer die kompakten Startseiten-Teaser */
.preis-kurz{display:flex; gap:10px 26px; flex-wrap:wrap; margin:18px 0 22px;}
.preis-kurz span{font-size:0.98rem; color:var(--grau);}
.preis-kurz strong{font-family:'Domine', serif; font-weight:600; color:var(--tinte); margin-right:6px;}
@media (max-width:760px){
  .angebot-zeile{grid-template-columns:1fr; gap:10px; padding:22px 20px;}
  .angebot-zeile .preis{text-align:left;}
}

.kennenlern{
  margin-top:26px; position:relative; overflow:hidden;
  background:var(--grad); border-radius:32px; padding:36px 38px;
  display:flex; align-items:center; justify-content:space-between; gap:26px; flex-wrap:wrap;
}
.kennenlern h3{font-size:1.5rem; margin-bottom:6px; color:var(--tinte);}
.kennenlern p{color:rgba(21,21,15,0.82); max-width:46ch;}

/* ---------- Ferienbetreuung ---------- */
.ferien-tafel{background:var(--dunst); border-radius:36px; padding:38px; display:grid; grid-template-columns:1fr 0.95fr; gap:44px; align-items:center;}
.ferien-tafel .blatt img{aspect-ratio:1.87/1;}
.ferien-blaetter{display:grid; grid-template-columns:1fr 1fr; gap:18px; align-items:end;}
.ferien-blaetter .hoch img{aspect-ratio:0.891/1;}
.ferien-blaetter .hoch.versetzt img{object-position:50% 45%;}
.ferien-blaetter .breit{grid-column:1 / -1;}
.ferien-blaetter .breit img{aspect-ratio:1.87/1;}
.ferien-preise{display:grid; gap:12px; margin-top:24px;}
.ferien-preis{
  background:var(--weiss); border-radius:18px; padding:16px 20px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.ferien-preis strong{font-weight:600; font-size:1rem;}
.ferien-preis span{font-family:'Domine', serif; font-weight:600; font-size:1.15rem; white-space:nowrap;}
@media (max-width:900px){
  .ferien-tafel{grid-template-columns:1fr; gap:30px; padding:26px 22px;}
}

/* ---------- Ablauf ---------- */
.schritte{display:grid; grid-template-columns:repeat(4,1fr); gap:22px;}
.schritt{padding-top:20px; border-top:2px solid var(--linie); position:relative;}
.schritt::before{content:""; position:absolute; top:-2px; left:0; width:44px; height:2px; background:var(--grad);}
.schritt .nr{font-size:0.76rem; font-weight:700; letter-spacing:0.16em; color:var(--grau-hell); margin-bottom:8px;}
.schritt h3{font-size:1.08rem; margin-bottom:8px;}
.schritt p{font-size:0.95rem;}
@media (max-width:900px){.schritte{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.schritte{grid-template-columns:1fr;}}

/* ---------- Atempause ---------- */
.atempause{position:relative; margin:20px 0 0; min-height:340px; display:flex; align-items:center; justify-content:center; overflow:hidden;}
.atempause img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0;}
.atempause .schleier{position:absolute; inset:0; background:linear-gradient(180deg, rgba(21,21,15,0.42), rgba(21,21,15,0.55)); z-index:1;}
.atempause blockquote{
  position:relative; z-index:2; text-align:center; color:#fff;
  font-family:'Domine', serif; font-size:clamp(1.4rem,3vw,2.2rem); line-height:1.35;
  max-width:20ch; padding:60px 26px;
}
.atempause cite{display:block; font-family:'Work Sans', sans-serif; font-style:normal; font-size:0.8rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; opacity:0.8; margin-top:22px;}

/* ---------- Kontakt ---------- */
.kontakt{padding:86px 0 90px; background:var(--nebel);}
.kontakt-gitter{display:grid; grid-template-columns:0.85fr 1.15fr; gap:52px; align-items:start; margin-top:34px;}
.kanaele{display:grid; gap:12px;}
.kanal{
  display:flex; align-items:center; gap:15px;
  background:var(--weiss); border:1px solid var(--linie); border-radius:20px; padding:16px 18px;
  transition:transform .2s ease, box-shadow .2s ease;
}
.kanal:hover{transform:translateY(-2px); box-shadow:0 16px 30px -22px rgba(21,21,15,0.6);}
.kanal .zeichen{width:40px; height:40px; border-radius:50%; background:var(--grad); display:flex; align-items:center; justify-content:center; flex:none;}
.kanal .zeichen svg{width:19px; height:19px; stroke:var(--tinte); stroke-width:1.7; fill:none; stroke-linecap:round; stroke-linejoin:round;}
.kanal .art-label{font-size:0.74rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--grau-hell);}
.kanal .wert{font-weight:600; font-size:0.98rem; word-break:break-word;}
.kanal .kanal-notiz{display:block; font-weight:400; font-size:0.85rem; color:var(--grau-hell); margin-top:2px;}
.platzhalter{
  display:inline-block; margin-left:8px; vertical-align:middle;
  font-size:0.64rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase;
  background:rgba(21,21,15,0.08); color:var(--grau);
  padding:2px 8px; border-radius:999px;
}
.kontakt-foto{margin-top:16px;}
.kontakt-foto .blatt img{aspect-ratio:1/1;}

.formular{background:var(--weiss); border:1px solid var(--linie); border-radius:28px; padding:32px;}
.feld-paar{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.formular label{display:block; font-size:0.8rem; font-weight:600; letter-spacing:0.06em; color:var(--grau-hell); margin-bottom:6px;}
.formular input, .formular textarea{
  width:100%; background:var(--sand); border:1px solid var(--linie); border-radius:14px;
  padding:13px 15px; font-family:'Work Sans', sans-serif; font-size:1rem; color:var(--tinte);
  margin-bottom:16px; transition:border-color .2s ease;
}
.formular input:focus, .formular textarea:focus{outline:none; border-color:var(--tuerkis);}
.formular textarea{resize:vertical; min-height:120px;}
.formular .btn{width:100%;}
.formular-notiz{font-size:0.82rem; color:var(--grau-hell); margin-top:14px; text-align:center;}
@media (max-width:900px){
  .kontakt-gitter{grid-template-columns:1fr; gap:34px;}
  .feld-paar{grid-template-columns:1fr;}
  .formular{padding:24px 20px;}
}

/* ---------- Inhaltsseiten (z.B. Angebote): Zusatzbausteine ---------- */
.seiten-hero{padding:64px 0 20px;}
.seiten-hero .wrap{max-width:820px;}
.seiten-hero h1{margin:40px 0 44px; font-size:clamp(1.75rem, 3.4vw, 2.6rem);}
.seiten-hero .fuehrung{font-size:1.18rem; max-width:60ch;}
.seiten-hero.mit-bild .wrap{
  max-width:1160px; display:grid; grid-template-columns:1.05fr 0.95fr; gap:56px; align-items:center;
}
.seiten-hero-bild{aspect-ratio:4/3;}
@media (max-width:940px){
  .seiten-hero.mit-bild .wrap{grid-template-columns:1fr; gap:36px;}
  .seiten-hero-bild{order:-1; max-width:460px; margin:0 auto;}
}

.abschnitt{padding:64px 0; border-top:1px solid var(--linie);}
.abschnitt .wrap{max-width:820px;}
.abschnitt .kopf{margin-bottom:56px; max-width:100%;}
#erwartung .kopf{margin-bottom:28px;}
.abschnitt .kopf h2{margin-top:28px;}
.abschnitt .kopf p{margin-top:32px;}
.abschnitt.breit .wrap{max-width:1160px;}

.checkliste{display:grid; gap:16px; margin-top:6px;}
.check-zeile{display:flex; align-items:flex-start; gap:14px;}
.check-zeile svg{width:23px; height:23px; flex:none; margin-top:2px; stroke:var(--tuerkis); stroke-width:2; fill:none; stroke-linecap:round; stroke-linejoin:round;}
.check-zeile p{margin:0;}

.philosophie{
  background:var(--grad); border-radius:32px; padding:42px 46px;
  font-family:'Domine', serif; font-size:1.22rem; line-height:1.62; color:var(--tinte);
}

/* Preiskarten im selben Look wie die Blatt-Fotoboxen: versetzter Farbverlauf-Schatten dahinter */
.preis-karten{display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:6px; margin-bottom:40px;}
.preis-karten.zwei{grid-template-columns:repeat(2,1fr); max-width:760px; margin-left:auto; margin-right:auto;}
.preis-karte{position:relative;}
.preis-karte::before{
  content:""; position:absolute; z-index:0;
  inset:18px -18px -18px 18px;
  border-radius:26px;
  background:var(--grad);
  opacity:0.55;
}
.preis-karte-innen{
  position:relative; z-index:1; height:100%;
  background:var(--weiss); border-radius:26px;
  padding:34px 30px; box-shadow:var(--weich);
  display:flex; flex-direction:column;
}
.preis-karte .dauer{
  font-size:0.74rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--grau-hell); margin-bottom:12px;
}
.preis-karte h3{margin-bottom:12px;}
.preis-karte p{font-size:0.97rem; flex-grow:1; margin-bottom:22px;}
.preis-karte .preis{font-family:'Domine', serif; font-weight:600; font-size:1.6rem; color:var(--tinte);}
@media (max-width:860px){
  .preis-karten{grid-template-columns:1fr; gap:40px;}
}

.faq-liste{display:grid; gap:14px;}
.faq{background:var(--weiss); border:1px solid var(--linie); border-radius:20px; padding:6px 26px;}
.faq summary{
  padding:19px 0; font-family:'Domine', serif; font-weight:600; font-size:1.05rem;
  cursor:pointer; list-style:none; display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+"; font-family:'Work Sans', sans-serif; font-size:1.5rem; font-weight:400; color:var(--tuerkis); flex:none;}
.faq[open] summary::after{content:"–";}
.faq p{padding-bottom:22px; margin:0; max-width:64ch;}

.cta-band{background:var(--grad); border-radius:32px; padding:46px 40px; text-align:center;}
.cta-band h2{margin-bottom:14px;}
.cta-band p{color:rgba(21,21,15,0.82); max-width:52ch; margin:0 auto 28px; font-size:1.08rem;}
.cta-band .knoepfe{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}

@media (max-width:700px){
  .abschnitt{padding:48px 0;}
  .philosophie{padding:30px 26px; font-size:1.1rem;}
  .cta-band{padding:34px 24px;}
}

/* ---------- Fuss ---------- */
footer{background:var(--tinte); color:rgba(252,250,243,0.72); padding:56px 0 26px; font-size:0.94rem;}
.fuss-oben{display:flex; justify-content:space-between; gap:44px; flex-wrap:wrap; padding-bottom:32px; border-bottom:1px solid rgba(252,250,243,0.16);}
.fuss-marke{display:flex; align-items:center; gap:11px; margin-bottom:12px;}
.fuss-marke .punkt{width:14px; height:14px; border-radius:50%; background:var(--grad);}
.fuss-marke .name{font-family:'Domine', serif; font-size:1.3rem; color:var(--sand); font-weight:600;}
.fuss-satz{max-width:34ch;}
.fuss-spalten{display:flex; gap:56px; flex-wrap:wrap;}
.fuss-spalte h4{font-family:'Work Sans', sans-serif; font-size:0.74rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; color:var(--sand); margin-bottom:14px;}
.fuss-spalte a, .fuss-spalte span{display:block; margin-bottom:9px;}
.fuss-spalte a:hover{color:var(--gelbgruen);}
.fuss-unten{display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap; padding-top:24px; font-size:0.84rem; color:rgba(252,250,243,0.55);}
