/* Ergänzungen zur Vorlage – nur Dinge, die in der Vorlage nicht vorkommen
   (geöffnetes Handy-Menü, Formular-Hinweise, Einwilligungs-Leiste, Calendly).
   Alle Farben und Radien aus tokens.css. Das Aussehen der Vorlage bleibt unverändert. */

/* Geöffnetes Menü auf dem Handy (im geschlossenen Zustand sieht alles aus wie in der Vorlage) */
@media (max-width:700px){
  nav.offen{position:relative}
  .sw nav.offen .links,.cc nav.offen .links,.al nav.offen .links{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:calc(100% - 6px);left:16px;right:16px;z-index:60;gap:4px;padding:8px;border-radius:var(--radius-s);box-shadow:inset 0 0 0 1px var(--line),0 12px 32px rgba(14,42,47,.16)}
  .al nav.offen .links{background:var(--primary-strong);box-shadow:0 12px 32px rgba(14,42,47,.3)}
  nav.offen .links a{padding:14px 16px}
  nav.offen .links a.btn{justify-content:center}
}

/* Unsichtbares Feld gegen Spam (Honeypot) */
.hp{position:absolute!important;left:-10000px!important;top:auto;width:1px;height:1px;overflow:hidden}

/* Hinweise in Formularen */
.meldung{grid-column:1/-1;background:var(--accent-soft);color:var(--ink);border-radius:12px;padding:14px 18px;font:400 16px/24px var(--font-body)}
.meldung.ok{background:var(--bg-alt)}
.cc form label.check{flex-direction:row;align-items:flex-start;gap:12px;font:400 15px/22px var(--font-body);color:var(--ink)}
.cc form label.check input{width:20px;height:20px;flex:none;margin-top:1px;padding:0;accent-color:var(--primary)}
.cc form .klein{font-size:14px;line-height:21px;color:var(--ink-muted)}
.cc form .klein a{color:var(--ink)}

/* Calendly (Zwei-Klick-Lösung) */
.cc .cal .cal-text{max-width:30em;display:flex;flex-direction:column;gap:14px;align-items:center}
.cc .cal.cal-geladen{padding:0;display:block;overflow:hidden}
.cal-frame{display:block;width:100%;min-height:700px;border:0}

/* Schmale Einwilligungs-Leiste unten (nur bei eingeschaltetem Meta-Pixel) */
.ew{position:fixed;left:0;right:0;bottom:0;z-index:9000;background:var(--ink);color:var(--on-primary);font:400 14px/20px var(--font-body);padding:10px 56px;display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;box-shadow:0 -4px 16px rgba(0,0,0,.12)}
.ew[hidden]{display:none}
.ew p{margin:0;max-width:60em}
.ew a{color:var(--glacier)}
.ew-k{display:flex;gap:8px}
.ew button{font:600 14px/1 var(--font-body);padding:10px 16px;border-radius:var(--radius-pill);border:0;cursor:pointer;background:var(--surface);color:var(--ink)}
.ew button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media (max-width:700px){.ew{padding:10px 16px}.ew-k{width:100%}.ew button{flex:1}}

/* Große Bildschirme (ab 1500 px): Inhalt mittig auf max. 1400 px, damit Logo/Menü und Text
   nicht an den äußersten Rändern stehen. Fußzeile bleibt über die volle Breite. */
@media (min-width:1500px){
  html{overflow-x:clip}
  html .sw,html .cc{max-width:1400px;margin-left:auto;margin-right:auto;overflow:visible}
  html .sw>footer,html .cc>footer,html .sw>.gl,html .sw>footer.ft2{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:calc(50vw - 50% + 56px);padding-right:calc(50vw - 50% + 56px)}
}
@media (min-width:1500px){
  /* Alpine: Video oben bleibt volle Breite, die Abschnitte darunter mittig wie auf den anderen Seiten */
  .al>section:not(.hero){padding-left:calc(50vw - 644px)!important;padding-right:calc(50vw - 644px)!important}
}

/* Untermenü „Retreats für Frauen“ */
.links .dd{position:relative;display:flex}
.links .dd-m{display:none;position:absolute;top:100%;left:0;margin-top:10px;min-width:270px;flex-direction:column;gap:2px;background:var(--surface);padding:8px;border-radius:var(--radius-s);box-shadow:inset 0 0 0 1px var(--line),0 12px 32px rgba(14,42,47,.16);z-index:70}
.links .dd-m::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.links .dd:hover .dd-m,.links .dd:focus-within .dd-m{display:flex}
.links .dd-m a{white-space:nowrap;border-radius:10px!important}
.links .dd-m a:hover{background:var(--bg-alt)}
.al .links .dd-m{background:var(--primary-strong);box-shadow:0 12px 32px rgba(14,42,47,.3)}
.al .links .dd-m a:hover{background:rgba(255,255,255,.12)}
@media (max-width:700px){
  nav.offen .links .dd{flex-direction:column}
  nav.offen .links .dd-m{display:flex;position:static;margin:0;min-width:0;background:none;box-shadow:none;padding:0 0 0 14px}
  nav.offen .links .dd-m::before{display:none}
  nav.offen .links .dd-m a{font-size:14px;padding:10px 16px}
}
