/* EDEL – ruhig, puristisch: dunkelgruener Grund, helle flache Flaechen, Gold nur sparsam (laedt NACH style.css) */

/* ---- grosse Flaechen: flach, ohne Schatten, ohne Rahmen ---- */
body > section, body > footer{
  background:#F4F2EA !important; box-shadow:none !important; border:none !important;
  border-radius:26px !important; clip-path:none !important;
  -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
}
body > section:first-of-type{ border-radius:26px !important; }
@media(max-width:640px){ body > section, body > section:first-of-type{ border-radius:22px !important; } }
body > footer{ margin-bottom:0 !important; border-radius:26px 26px 0 0 !important; }

/* ---- keine Kachel in der Kachel: alles Innere wird offen, nur feine Linien ---- */
.next-class, .entry-grid .entry-tile, .duo-card, .ha-col, .ha-col.sun, .ha-col.moon,
.phase-card, .voice-card, .info-row, .course-unit, .faq-list details, .kontakt-info, .kontakt-form-wrap,
.takeaway-box, .timeline-item, .buchungsformular, .kontakt-form, .booking-form{
  background:none !important; box-shadow:none !important; border-radius:0 !important;
  -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
}
.next-class, .entry-grid .entry-tile{ border:none !important; }
.next-class{ padding:0 !important; max-width:460px; }
.next-class:hover, .entry-grid .entry-tile:hover{ transform:none !important; }
.entry-grid{ gap:0 !important; }
.entry-grid .entry-tile + .entry-tile{ border-left:1px solid rgba(45,88,72,.18) !important; }
.duo-grid{ gap:0 !important; }
.duo-card{ border:none !important; padding:6px 8px !important; }
.duo-card + .duo-card{ border-left:1px solid rgba(45,88,72,.18) !important; padding-left:34px !important; }
.duo-card:first-child{ padding-right:34px !important; }
.ha-col, .ha-col.sun, .ha-col.moon{ border:none !important; border-top:1px solid rgba(45,88,72,.22) !important; padding-left:4px !important; padding-right:4px !important; }
.phase-card, .voice-card, .info-row, .course-unit, .faq-list details{
  border:none !important; border-top:1px solid rgba(45,88,72,.18) !important; padding-left:2px !important; padding-right:2px !important;
}
.faq-list details:last-child, .course-units .course-unit:last-child{ border-bottom:1px solid rgba(45,88,72,.18) !important; }
.takeaway-box{ border:none !important; border-left:2px solid #B8913A !important; padding-left:16px !important; }
.kontakt-info, .kontakt-form-wrap{ border:none !important; padding:6px 0 !important; }
.kontakt-grid{ gap:26px !important; }
.timeline-item{ border:none !important; }
form.kontakt-form, .kontakt-form, .booking-form, .buchungsformular{ border:none !important; padding-left:0 !important; padding-right:0 !important; }
@media(max-width:900px){
  .duo-card + .duo-card{ border-left:none !important; border-top:1px solid rgba(45,88,72,.18) !important; padding-left:8px !important; padding-top:26px !important; margin-top:24px; }
  .duo-card:first-child{ padding-right:8px !important; }
}
@media(min-width:900px){ .kontakt-form-wrap{ border-left:1px solid rgba(45,88,72,.18) !important; padding-left:34px !important; } }

/* ---- Formularfelder: hell, fein umrandet ---- */
.kontakt-form input[type="text"], .kontakt-form input[type="email"], .kontakt-form input:not([type]), .kontakt-form textarea, .kontakt-form select{
  background:#FFFFFF !important; border:1px solid rgba(45,88,72,.28) !important; box-shadow:none !important; border-radius:12px !important;
}
.kontakt-form input:focus, .kontakt-form textarea:focus, .kontakt-form select:focus{ outline:none; border-color:#2D5848 !important; box-shadow:0 0 0 3px rgba(45,88,72,.15) !important; }

/* ---- Knoepfe: flaches Gold ---- */
.btn-gold, .kontakt-form button[type="submit"], .kontakt-form .btn{ box-shadow:none !important; background:#C6992D !important; color:#1F2A24 !important; border:none !important; }
.btn-gold:hover{ background:#B8892A !important; }

/* ---- Kopf- und untere Leiste: wie vorher dunkelgruen ---- */
header{ box-shadow:none !important; }

/* ---- Atem-Kugel: schlichter gruener Kreis, ganze Flaeche ist der Knopf ---- */
.breath-core{
  background:#2D5848 !important; box-shadow:none !important; filter:none !important; border:none !important;
  width:7.6em !important; height:7.6em !important; border-radius:50% !important; font-size:16px;
}
.breath-core::before, .breath-core::after{ display:none !important; }
.breath-stage.guided .breath-core{ transform:scale(.8); }
.breath-stage.guided.in .breath-core, .breath-stage.guided.hold .breath-core{ transform:scale(1.14) !important; }
.breath-stage.guided.out .breath-core{ transform:scale(.8); }
.breath-ui{ display:none !important; }
.breath-orbit{ cursor:pointer; -webkit-tap-highlight-color:transparent; }
.breath-orbit:focus-visible{ outline:2px solid rgba(45,88,72,.5); outline-offset:10px; border-radius:50%; }
.breath-label{ pointer-events:none; font-weight:600; letter-spacing:.12em; color:#7A5A12 !important; }
.breath-count{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); text-align:center; white-space:nowrap;
  font-family:'Hanken Grotesk',sans-serif; font-weight:600; font-size:.98rem; line-height:1.18; color:#F4F2EA !important; pointer-events:none; text-shadow:none !important;
}
.breath-count.num{ font-size:1.7rem; }
.breath-ring{ border-color:rgba(138,100,20,.45) !important; }
.breath-stage{ padding-bottom:0 !important; height:auto !important; min-height:0 !important; margin-bottom:56px !important; }
@media(max-width:640px){ .breath-stage{ margin-bottom:34px !important; } .breath-ring.r2{ inset:-22px !important; } .breath-ring.r3{ inset:-44px !important; } .breath-label{ bottom:-45px !important; } }

/* ---- Ueberschriften: ruhig und einheitlich ---- */
h2.section-title, .philosophy h2, .cta-section h2, .entry h2, .duo h2, .duo-card > p.hello-lead, .duo-card .hello-lead{
  font-family:'Hanken Grotesk',sans-serif !important; font-size:clamp(1.3rem,5.6vw,1.55rem) !important; line-height:1.32 !important;
  font-weight:500 !important; color:#1F4235 !important; text-wrap:balance;
}
@media(min-width:900px){ h2.section-title, .philosophy h2, .cta-section h2, .entry h2, .duo h2, .duo-card > p.hello-lead, .duo-card .hello-lead{ font-size:1.55rem !important; } }
.cta-section h2{ text-align:center; }

/* ---- Lesbarkeit ---- */
body{ font-size:17px; }
body p, body li, .section-lede, .info-row, .timeline-item p, .faq-item p{ font-size:max(1.04rem,16.5px) !important; line-height:1.6 !important; }
.entry-sub, .ha-short, .nc-detail{ font-size:16px !important; }
.entry-more{ font-size:15.5px !important; }
.entry-label, .kicker, .nc-kicker{ font-size:14px !important; letter-spacing:.14em; }
body > footer, body > footer *{ font-size:16px !important; }
@media(max-width:640px){
  body p, body li, .section-lede, .info-row{ font-size:16.5px !important; }
  .entry-sub, .ha-short, .nc-detail{ font-size:15.5px !important; }
  body > footer, body > footer *{ font-size:15px !important; }
  body > footer{ padding-bottom:106px !important; }
}
.philosophy .ha-col{ min-height:0 !important; }

/* ---- Kurse: vier Infos als eine ruhige Zeile mit feinen Linien ---- */
.info-list{ display:grid !important; grid-template-columns:repeat(4, minmax(0,1fr)) !important; gap:0 !important; max-width:none !important; margin:26px 0 0 !important; text-align:center !important; align-items:stretch !important; }
.info-list .info-row{ display:flex !important; flex-direction:column; justify-content:flex-start; align-items:center; text-align:center !important; padding:6px 14px !important; margin:0 !important; border:none !important; border-left:1px solid rgba(45,88,72,.18) !important; grid-column:auto !important; }
.info-list .info-row:first-child{ border-left:none !important; }
.info-list .info-row.cta{ order:0 !important; width:auto !important; margin:0 !important; }
.info-list .info-row.cta .info-value{ color:#8A6414 !important; font-weight:600 !important; font-size:1.2rem !important; }
@media(max-width:760px){
  .info-list{ grid-template-columns:repeat(2, minmax(0,1fr)) !important; row-gap:18px !important; }
  .info-list .info-row:nth-child(3){ border-left:none !important; }
  .info-list .info-row:nth-child(n+3){ border-top:1px solid rgba(45,88,72,.18) !important; padding-top:16px !important; }
}
.info-value, .info-row .info-value, .info-value a{ color:#2D5848 !important; }
.info-label{ color:#4A5E54 !important; }

/* ---- Dauer mit kleiner Uhr ---- */
.booking-time .dur{ display:inline-flex; align-items:center; gap:6px; margin-left:8px; padding-left:12px; border-left:1px solid rgba(45,88,72,.30); color:#2D5848; white-space:nowrap; }
.booking-time .dur svg{ flex:none; }
@media(max-width:520px){ .booking-time .dur{ display:flex; justify-content:center; margin:6px 0 0; padding-left:0; border-left:none; } }
@media(max-width:640px){ .k12{ display:none; } }

/* ---- kein Blau: Schlagwoerter, Zeitleiste ---- */
.phase-tag.blue{ color:#2D5848 !important; border-color:rgba(45,88,72,.40) !important; background:rgba(45,88,72,.06) !important; }
.timeline-item .timeline-dot, .timeline-dot{ background:#2D5848 !important; border-color:#2D5848 !important; box-shadow:none !important; }
.timeline-item:last-child .timeline-dot{ background:#B8913A !important; box-shadow:none !important; }

/* ---- Beschriftungen gruen statt blau, Fotos ohne schwere Schatten ---- */
.kicker, .kicker.blue, .kicker.green, .kicker.gold{ color:#2F6551 !important; }
.gallery img, .gallery-item, .gallery figure, .photo, .hello-photo, .quote-photo{ box-shadow:none !important; }

/* ---- Philosophie: kompakter, damit die Kachel nicht dominiert ---- */
body > section.philosophy{ padding-top:36px !important; padding-bottom:30px !important; }
.philosophy .kicker{ margin-bottom:8px !important; }
.philosophy .section-lede{ margin-top:8px !important; max-width:760px; }
.philosophy .ha-tha{ margin-top:18px !important; gap:28px !important; }
.philosophy .ha-col, .philosophy .ha-col.sun, .philosophy .ha-col.moon{ padding-top:12px !important; padding-bottom:10px !important; }
.philosophy .ha-col summary{ gap:2px !important; }
.philosophy .ha-col .ha-glyph{ font-size:1.5rem !important; line-height:1.1 !important; margin:0 !important; }
.philosophy .ha-col h3{ margin:0 !important; font-size:1.05rem !important; }
.philosophy .ha-col p{ margin-top:10px !important; }
@media(max-width:640px){ body > section.philosophy{ padding-top:28px !important; padding-bottom:24px !important; } .philosophy .ha-tha{ gap:0 !important; } }
.philosophy .ha-tha{ margin-top:22px !important; }
@media(min-width:641px){ body > footer .wrap{ padding-right:84px !important; } }

/* ---- Dein Einstieg: kompakt, ungefaehr so hoch wie "Hallo" ---- */
body > section.entry{ padding-top:36px !important; padding-bottom:28px !important; }
.entry .kicker{ margin-bottom:8px !important; }
.entry-grid{ margin-top:14px !important; padding-bottom:0 !important; }
.entry-grid .entry-tile{ padding-top:6px !important; padding-bottom:4px !important; }
.entry-tile .entry-ico, .entry-tile > svg, .entry-tile .entry-ico svg{ height:34px !important; }
.entry-tile .entry-ico{ margin-bottom:4px !important; }
.entry-tile .entry-ico.entry-logo, .entry-logo{ height:38px !important; margin-bottom:4px !important; }
.entry-more{ margin-top:6px !important; }
body > section.duo{ padding-top:38px !important; padding-bottom:34px !important; }
@media(max-width:640px){ body > section.entry{ padding-top:28px !important; padding-bottom:22px !important; } body > section.duo{ padding-top:28px !important; padding-bottom:24px !important; } }

/* ---- Einstieg: alle drei Symbole in gleich grossen Feldern, damit die Beschriftung auf einer Linie steht ---- */
.entry-grid .entry-tile .entry-ico, .entry-grid .entry-tile .entry-logo{
  width:44px !important; height:44px !important; flex:0 0 44px !important; margin:0 0 6px !important; position:static !important;
}
.entry-grid .entry-tile .entry-logo{ background-size:contain !important; background-repeat:no-repeat; background-position:center; -webkit-mask-size:contain; mask-size:contain; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; }
@media(max-width:640px){
  .entry-grid .entry-tile .entry-ico, .entry-grid .entry-tile .entry-logo{ width:34px !important; height:34px !important; flex:0 0 34px !important; margin:0 0 6px !important; }
  .breath-stage{ margin-top:-12px !important; margin-bottom:50px !important; }
}
@media(max-width:640px){ .breath-stage{ margin-top:8px !important; margin-bottom:42px !important; } }

/* Handy: kurze Links unter dem Einstieg, damit man sieht, dass man tippen kann */
.mehr-kurz{ display:none; }
@media(max-width:640px){
  .mehr-lang{ display:none; }
  .mehr-kurz{ display:inline; }
  .entry-grid .entry-tile .entry-more{ display:block !important; position:static !important; margin-top:8px !important; text-align:center; font-size:15px !important; font-weight:600; color:#8A6414 !important; }
}
@media(max-width:640px){ body > footer .footer-bottom, .footer-bottom{ padding-bottom:0 !important; margin-bottom:0 !important; } body > footer{ padding-top:18px !important; padding-bottom:104px !important; } }

/* Ha/Tha: das Plus sitzt am Ende des Textes (ueber "Sonne" / "Mond"), nicht am Rand der Spalte */
.philosophy .ha-col summary{ width:fit-content !important; max-width:100%; padding-right:0 !important; }
.philosophy .ha-col summary::after{ right:0 !important; top:0 !important; }
.philosophy .ha-col summary::after{ top:-5px !important; }

/* Zitat: oeffnendes Anfuehrungszeichen haengt links heraus, damit "Ein" und "als" buendig untereinander stehen */
.duo-card:last-child > p.hello-lead{ text-indent:-0.46em; padding-left:0.46em; }
.tile p, .tile li{ font-size:16.5px !important; line-height:1.6 !important; }
.mist-cloud{ background:radial-gradient(circle, rgba(62,122,98,.85), rgba(31,66,53,.45) 65%, rgba(0,0,0,0) 82%) !important; }
/* kein goldener Strich bei "Heute" auf Ueber mich */
.takeaway-box{ border:none !important; border-left:none !important; padding-left:0 !important; }

/* Kurse: "Erste Stunde: Kostenlos" mittig oben fuer sich, darunter Wann / Wo / Danach gleich gross */
.info-list{ grid-template-columns:repeat(3, minmax(0,1fr)) !important; row-gap:22px !important; }
.info-list .info-row.cta{ order:-1 !important; grid-column:1 / -1 !important; justify-self:center; width:min(100%, 380px) !important; border:none !important; padding:4px 14px 18px !important; border-bottom:1px solid rgba(45,88,72,.18) !important; }
.info-list .info-row.cta .info-value{ font-size:1.5rem !important; }
.info-list .info-row:not(.cta){ border-top:none !important; }
.info-list .info-row:nth-child(1){ border-left:none !important; }
@media(max-width:760px){
  .info-list{ grid-template-columns:repeat(2, minmax(0,1fr)) !important; row-gap:16px !important; }
  .info-list .info-row.cta{ width:min(100%, 320px) !important; }
  .info-list .info-row:nth-child(n+3){ border-top:none !important; padding-top:6px !important; }
  .info-list .info-row:nth-child(3){ border-left:none !important; }
  .info-list .info-row:nth-child(4){ grid-column:1 / -1 !important; border-left:none !important; }
}

/* Handy: "90 Minuten" und der Preis-Hinweis naeher zusammen */
@media(max-width:520px){
  .booking-time + br{ display:none; }
  .booking-price{ display:block; margin-top:8px !important; }
}

/* Handy: Kurse-Infos als ruhige Liste (Beschriftung links, Wert rechts, feine Linien dazwischen) */
@media(max-width:760px){
  .info-list{ grid-template-columns:1fr !important; row-gap:0 !important; }
  .info-list .info-row.cta{ width:100% !important; padding:4px 14px 18px !important; }
  .info-list .info-row:not(.cta){
    display:grid !important; grid-template-columns:76px 1fr; column-gap:14px; align-items:baseline; justify-items:start;
    text-align:left !important; padding:14px 2px !important; border-left:none !important; border-top:1px solid rgba(45,88,72,.18) !important; grid-column:auto !important;
  }
  .info-list .info-row:nth-child(1){ border-top:none !important; }
  .info-list .info-row:not(.cta) .info-label{ font-size:14px !important; color:#2F6551 !important; letter-spacing:.04em; }
  .info-list .info-row:not(.cta) .info-value{ text-align:left !important; }
}

/* Atem-Kugel in Gruen: Goldlicht oben links, dunkles Gruen unten rechts (wie eine kleine Weltkugel) */
.breath-core{
  background:radial-gradient(circle at 32% 26%, #E7CD82 0%, #B8A257 16%, #4F7F69 42%, #2D5848 70%, #1B3A2F 100%) !important;
  box-shadow:0 14px 36px rgba(31,66,53,.35) !important;
}
.breath-count{ text-shadow:0 1px 4px rgba(10,30,22,.55) !important; color:#FFFFFF !important; }
.breath-stage.guided .breath-core{ box-shadow:0 10px 26px rgba(31,66,53,.30) !important; }
.breath-stage.guided.in .breath-core, .breath-stage.guided.hold .breath-core{ box-shadow:0 18px 52px rgba(31,66,53,.45), 0 0 40px rgba(231,205,130,.35) !important; }
.breath-stage.guided.out .breath-core{ box-shadow:0 10px 26px rgba(31,66,53,.30) !important; }

/* Hinweis unter den Ringen im Ruhezustand (nur Text, ohne Rahmen; antippbar) */
.breath-stage:not(.guided) .breath-label{ pointer-events:auto; cursor:pointer; font-size:.78rem !important; letter-spacing:.14em; font-weight:500 !important; }

/* Gebogener Hinweistext im aeusseren Ring */
.breath-label{ position:absolute !important; width:1px !important; height:1px !important; overflow:hidden !important; clip:rect(0 0 0 0) !important; white-space:nowrap !important; padding:0 !important; margin:-1px !important; }
.breath-arc{ position:absolute; left:50%; top:50%; overflow:visible; pointer-events:none; }
.breath-arc text{ font-family:'Hanken Grotesk',sans-serif; font-weight:600; font-size:12px; letter-spacing:.2em; fill:#2D5848; text-transform:uppercase; }
@media(max-width:640px){ .breath-arc text{ font-size:11.5px; letter-spacing:.16em; } }
.breath-arc{ max-width:none !important; max-height:none !important; }

/* Ring-Text: etwas groesser, mittig zwischen den Ringen, bewegt sich mit den Ringen */
.breath-arc text{ font-size:14px !important; letter-spacing:.18em !important; }
@media(max-width:640px){ .breath-arc text{ font-size:12.5px !important; letter-spacing:.14em !important; } }
.breath-stage.guided .breath-arc{ transition:transform 4s ease-in-out; }
.breath-stage.guided.in .breath-arc, .breath-stage.guided.hold .breath-arc{ transform:scale(1.05); }
.breath-stage.guided.hold .breath-arc{ transition:none; }
.breath-stage.guided.out .breath-arc{ transform:scale(.96); transition-duration:8s; }
