/* ============================================================
   skyfit WOMEN · Herbst-Challenge 2026 (Editorial v2) — .hc-lp
   Bewusst reduzierte Design-Sprache: Hairlines, kantige Buttons,
   ruhige Reveals. Inline-Styles im Template = Source-of-Truth.
   ============================================================ */
.hc-lp,.hc-lp *,.hc-lp *::before,.hc-lp *::after{box-sizing:border-box}
.hc-lp{font-family:'Poppins',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6;max-width:100vw}
.hc-lp img{max-width:100%}

@keyframes hc-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.hc-lp .hc-rise1{animation:hc-rise .7s .1s cubic-bezier(.22,.8,.3,1) both}
.hc-lp .hc-rise2{animation:hc-rise .7s .25s cubic-bezier(.22,.8,.3,1) both}
.hc-lp .hc-rise3{animation:hc-rise .7s .4s cubic-bezier(.22,.8,.3,1) both}

/* Buttons: kantig, ruhiger Hover, Form in jedem State stabil */
.hc-lp .hc-btn{transition:background .2s ease}
.hc-lp .hc-btn:hover{background:#A32359!important;color:#fff!important}
.hc-lp .hc-btn-ghost{transition:background .2s ease,border-color .2s ease}
.hc-lp .hc-btn-ghost:hover{background:rgba(255,255,255,.1)!important;border-color:#fff!important;color:#fff!important}
.hc-lp .hc-btn,.hc-lp .hc-btn:hover,.hc-lp .hc-btn:focus,.hc-lp .hc-btn:active,
.hc-lp .hc-btn-ghost,.hc-lp .hc-btn-ghost:hover,.hc-lp .hc-btn-ghost:focus,.hc-lp .hc-btn-ghost:active{border-radius:2px}
.hc-lp .hc-tel:hover{color:#C22B6C!important}
.hc-lp a:focus-visible,.hc-lp button:focus-visible,.hc-lp [tabindex]:focus-visible{outline:2px solid #C22B6C;outline-offset:3px}

/* FAQ */
.hc-lp summary::-webkit-details-marker{display:none}
.hc-lp summary{list-style:none;cursor:pointer}
.hc-lp .hc-chev{transition:transform .3s ease;display:inline-block}
.hc-lp details[open] .hc-chev{transform:rotate(180deg)}
.hc-lp .hc-sum:hover{color:#8E1D4E!important}
.hc-lp .hc-sum:focus-visible{outline:2px solid #8E1D4E;outline-offset:3px}

/* Bewerbungs-Widget-Mount */
.hc-lp .hc-booking-mount{background:rgba(255,255,255,.98);border-radius:6px;padding:clamp(16px,3vw,32px);box-shadow:0 18px 50px rgba(0,0,0,.35);text-align:left}
.hc-lp .hc-booking-mount:empty{display:none}

/* Sticky nur mobil */
@media(min-width:1024px){.hc-lp [data-hc-sticky]{display:none!important}}

/* Elementor-Kit-Headings auf dunklen Sektionen neutralisieren */
.hc-lp section[data-screen-label="Hero"] h1,
.hc-lp section[data-screen-label="Preis"] h2,
.hc-lp section[data-screen-label="Galerie"] h2,
.hc-lp section[data-screen-label="Bewerbung"] h2{color:#fff}

@media(prefers-reduced-motion:reduce){
  .hc-lp *,.hc-lp *::before,.hc-lp *::after{animation:none!important;transition:none!important}
}

/* ============================================================
   Standortabhängige Preise · München (muc) vs. Cottbus (cb)
   Gesteuert über data-region am .hc-lp-Wrapper. PHP-Default = muc,
   damit ohne JS immer ein vollständiger, gültiger Preis steht.
   ============================================================ */
.hc-lp [data-reg]{display:none}
.hc-lp[data-region="muc"] [data-reg="muc"],
.hc-lp[data-region="cb"]  [data-reg="cb"]{display:inline}
.hc-lp [data-reg-block]{display:none}
.hc-lp[data-region="muc"] [data-reg-block="muc"],
.hc-lp[data-region="cb"]  [data-reg-block="cb"]{display:block}

.hc-lp .hc-regsw{display:flex;width:max-content;max-width:100%;margin:28px auto 0;border:1px solid rgba(233,201,216,.35);border-radius:2px;overflow:hidden}
.hc-lp .hc-regsw-btn{appearance:none;-webkit-appearance:none;background:transparent;border:0;color:rgba(255,255,255,.7);font:inherit;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:13px 28px;min-height:46px;cursor:pointer;white-space:nowrap;transition:background .2s ease,color .2s ease}
.hc-lp .hc-regsw-btn+.hc-regsw-btn{border-left:1px solid rgba(233,201,216,.35)}
.hc-lp .hc-regsw-btn:hover{color:#fff;background:rgba(233,201,216,.12)}
.hc-lp .hc-regsw-btn[aria-pressed="true"]{background:#8E1D4E;color:#fff}
.hc-lp .hc-regsw-note{margin:14px 0 0;text-align:center;font-size:13px;color:rgba(233,201,216,.7)}

.hc-lp .hc-loc-price{margin:8px 0 0;font-size:14.5px;color:#6B6478}
.hc-lp .hc-loc-price strong{font-weight:700;color:#8E1D4E}
.hc-lp .hc-faq-switch{display:block;margin-top:10px;color:#6B6478}

/* Preistafel auf schmalen Screens: die längeren München-Beträge dürfen
   nicht über den Kartenrand laufen — Punktlinie weg, Wert rechtsbündig. */
@media(max-width:560px){
  .hc-lp .hc-price-lead{display:none}
  .hc-lp .hc-price-row{flex-wrap:wrap;justify-content:space-between;row-gap:4px;gap:12px}
  .hc-lp .hc-price-val{text-align:right;white-space:normal!important}
  /* nur die AKTIVE Region stapeln — sonst schlägt die höhere Spezifität
     das display:none aus der Region-Logik und beide Preise erscheinen */
  .hc-lp[data-region="muc"] .hc-price-val [data-reg="muc"],
  .hc-lp[data-region="cb"]  .hc-price-val [data-reg="cb"]{display:block}
  .hc-lp .hc-price-val [data-reg]>span:first-child{font-size:21px!important}
  .hc-lp .hc-price-val [data-reg]>span:nth-child(2),
  .hc-lp .hc-price-val s{font-size:13px!important}
  /* Region-Switch darf umbrechen statt zu clippen ("COTTBU"-Bug bei 320px) */
  .hc-lp .hc-regsw{width:100%;flex-wrap:wrap;overflow:visible}
  .hc-lp .hc-regsw-btn{flex:1 1 auto;padding:13px 14px;letter-spacing:.08em}
  .hc-lp .hc-regsw-btn+.hc-regsw-btn{border-left:0;border-top:1px solid rgba(233,201,216,.6)}
}

/* Streichpreise/Feindruck: .5/.55 lagen unter 4.5:1 — .72 ergibt 6,7:1 */
.hc-lp s[style]{color:rgba(233,201,216,.72)!important}

/* Sticky-CTA darf Fokus und Seitenende nicht verdecken */
@media(max-width:1023.98px){
  html{scroll-padding-bottom:88px}
  body{padding-bottom:88px}
}

/* Screenreader-only */
.hc-lp .hc-vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* Region-Switch: Zustand nicht nur ueber Flaeche (1.4.11) */
.hc-lp .hc-regsw{border-color:rgba(233,201,216,.6)}
.hc-lp .hc-regsw-btn[aria-pressed="true"]{background:#B3275F;box-shadow:inset 0 -3px 0 #E9C9D8}

/* Unter 374px reicht Umbrechen nicht — Preiszeile stapeln, sonst wird der
   Streichpreis von overflow-x:clip abgeschnitten (der Rabatt-Anker verschwindet). */
@media(max-width:374px){
  .hc-lp .hc-price-row{display:block!important;padding:16px 0}
  .hc-lp .hc-price-val{display:block;margin-top:6px;text-align:left;white-space:normal!important}
}
/* Region-Switch lief unter 365px aus dem Container ("COTTBU") */
@media(max-width:400px){
  .hc-lp .hc-regsw{width:100%;max-width:100%}
  .hc-lp .hc-regsw-btn{flex:1 1 0;min-width:0;padding:13px 10px;font-size:12px;letter-spacing:.08em}
}
/* Buttons brachen bei 320px durch das Tracking zweizeilig um */
@media(max-width:360px){
  .hc-lp .hc-btn,.hc-lp .hc-btn-ghost{letter-spacing:.08em;padding-left:20px;padding-right:20px}
}
/* Fakten-Leiste: Waisen-Zelle mit Geisterlinie zwischen 600 und 800px */
@media(max-width:1023px){.hc-lp .hc-fact{border-right:0!important}}
/* 100vw ist bei klassischer Scrollbar breiter als der Viewport */
.hc-lp{max-width:100%}
/* Sticky-Label muss auf 320-375px einzeilig bleiben */
@media(max-width:420px){.hc-lp [data-hc-sticky] a{font-size:12.5px;letter-spacing:.05em}}
