/*
 * palido.com, Website-Regeln außerhalb des Design-Systems.
 * Geliefert vom Plugin „Palido Website". Ersetzt das Zusatz-CSS des Customizers
 * (Stand 09.09.2026). Was hier NICHT mehr steht und warum:
 * - WooCommerce-Regeln: es gibt kein WooCommerce-Plugin auf palido.com.
 * - Globaler Button-Stil mit !important: liefert das Kit (Ghost Gold).
 * - Ausnahmen je Element-ID (Startseite, Header, Mega-Menü, Muttertag): direkt im Widget gesetzt.
 */

/* Weißer Seitenhintergrund. Die Seiten tragen in ihren Einstellungen noch das Theme-Demo-
   Muster (#FCFCFC plus bg-lines.svg), das Kit blendet nur das Bild aus. Bis die
   Seiteneinstellungen bereinigt sind, bleibt diese Regel nötig, mit !important, weil die
   Seiten-CSS über body.elementor-page-<id> eine höhere Spezifität hat. */
body {
  background-color: var(--palido-white, #FFFFFF) !important;
}

/* FAQ-Toggle: Hover und geöffneter Eintrag in Pink. Elementors Toggle-Widget hat kein
   Hover-Feld, die aktive Farbe ist zusätzlich im Widget an Akzent 1 gebunden. */
.elementor-toggle .elementor-tab-title:hover,
.elementor-toggle .elementor-tab-title:hover *,
.elementor-toggle .elementor-tab-title.elementor-active,
.elementor-toggle .elementor-tab-title.elementor-active * {
  color: var(--palido-pink, #AC336D) !important;
}

/* ── Animierte Textlinks in redaktionellen Textblöcken ───────────────────────
   Verhalten des Design-System-Links (.p-link), automatisch für Links in
   Text-Editor-Widgets und Beitragsinhalten. Ausgenommen: Buttons, Ratgeber-
   Navigation, Hotspots und ausdrücklich markierte Links. */
.palido-content a:not(.palido-btn):not(.palido-btn-link):not(.palido-basic-link):not(.palido-link-animated):not(.elementor-button):not(.p-ratgeber__link):not(.p-hotspot),
.elementor-widget-text-editor a:not(.palido-btn):not(.elementor-button),
.elementor-widget-theme-post-content a:not(.palido-btn):not(.elementor-button) {
  color: inherit;
  display: inline-block;
  position: relative;
  text-decoration: none;
  padding-bottom: 2px;
}
.palido-content a:not(.palido-btn):not(.palido-btn-link):not(.palido-basic-link):not(.palido-link-animated):not(.elementor-button):not(.p-ratgeber__link):not(.p-hotspot)::before,
.elementor-widget-text-editor a:not(.palido-btn):not(.elementor-button)::before,
.elementor-widget-theme-post-content a:not(.palido-btn):not(.elementor-button)::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--palido-pink, #AC336D);
  transform: scaleX(1);
  transform-origin: right center;
  transition: transform 0.5s ease;
}
.palido-content a:not(.palido-btn):not(.palido-btn-link):not(.palido-basic-link):not(.palido-link-animated):not(.elementor-button):not(.p-ratgeber__link):not(.p-hotspot)::after,
.elementor-widget-text-editor a:not(.palido-btn):not(.elementor-button)::after,
.elementor-widget-theme-post-content a:not(.palido-btn):not(.elementor-button)::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--palido-pink, #AC336D);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.5s ease;
}
.palido-content a:not(.palido-btn):not(.palido-btn-link):not(.palido-basic-link):not(.palido-link-animated):not(.elementor-button):not(.p-ratgeber__link):not(.p-hotspot):hover::before,
.elementor-widget-text-editor a:not(.palido-btn):not(.elementor-button):hover::before,
.elementor-widget-theme-post-content a:not(.palido-btn):not(.elementor-button):hover::before {
  transform: scaleX(0);
}
.palido-content a:not(.palido-btn):not(.palido-btn-link):not(.palido-basic-link):not(.palido-link-animated):not(.elementor-button):not(.p-ratgeber__link):not(.p-hotspot):hover::after,
.elementor-widget-text-editor a:not(.palido-btn):not(.elementor-button):hover::after,
.elementor-widget-theme-post-content a:not(.palido-btn):not(.elementor-button):hover::after {
  transform: scaleX(1);
  transition-delay: 0.5s;
}
/* Bild-Links ohne Unterstrich */
.palido-content a:has(img)::before,
.palido-content a:has(img)::after,
.elementor-widget-text-editor a:has(img)::before,
.elementor-widget-text-editor a:has(img)::after {
  display: none;
}
/* Unterstriche aus dem Editor (Strg+U) auf Kind-Elementen von Links unterdrücken */
a *,
a span,
a strong,
a em,
a u {
  text-decoration: none !important;
}

/* ── Meisterstück-Kachel (palido-tile), Script in Elementor Custom Code ─────── */
.palido-tile:not([data-initialized]) {
  aspect-ratio: 1 / 1;
  background: var(--palido-gold-faint, #FDFAF6);
  display: block;
}
.palido-tile {
  display: block;
  margin: 0;
  line-height: 0;
  cursor: pointer;
}
/* Desktop: Überblendung beim Zeigen */
@media (hover: hover) {
  .palido-tile__media {
    position: relative;
    padding-top: 100% !important;
    overflow: hidden !important;
    background-color: var(--palido-gold-faint, #FDFAF6);
    display: block !important;
  }
  .palido-tile__scroll {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    overflow: hidden !important;
  }
  .palido-tile__img {
    position: absolute !important;
    top: 0 !important; left: 0 !important;
    width: 100% !important; height: 100% !important;
    max-width: none !important; margin: 0 !important;
    transition: opacity .7s cubic-bezier(.22,.61,.36,1),
                transform 1.2s cubic-bezier(.22,.61,.36,1);
  }
  .palido-tile__img--worn {
    object-fit: cover !important;
    opacity: 1; transform: scale(1); z-index: 2;
  }
  .palido-tile__img--still {
    object-fit: contain !important;
    padding: 12% !important;
    opacity: 0; transform: scale(1); z-index: 1;
  }
  .palido-tile:hover .palido-tile__img--worn {
    opacity: 0 !important; transform: scale(1.03) !important;
  }
  .palido-tile:hover .palido-tile__img--still {
    opacity: 1 !important; transform: scale(1.4) !important; z-index: 3 !important;
  }
  .palido-tile__dots,
  .palido-tile__swipe-hint { display: none !important; }
}
/* Mobil: horizontales Wischen */
@media (hover: none) {
  .palido-tile__media {
    position: relative;
    display: block !important;
    line-height: 0;
  }
  .palido-tile__scroll {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 1 / 1;
    display: flex !important;
    overflow-x: scroll;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    background-color: var(--palido-gold-faint, #FDFAF6);
  }
  .palido-tile__scroll::-webkit-scrollbar { display: none; }
  .palido-tile__img {
    min-width: 100% !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    flex-shrink: 0 !important;
    scroll-snap-align: start;
    margin: 0 !important;
    position: static !important;
  }
  .palido-tile__img--worn {
    object-fit: cover !important;
    padding: 0 !important;
    order: 1;
  }
  .palido-tile__img--still {
    object-fit: contain !important;
    padding: 12% !important;
    order: 2;
  }
  .palido-tile__dots {
    position: absolute;
    bottom: 10px;
    left: 0; right: 0;
    display: flex !important;
    justify-content: center;
    gap: 6px;
    z-index: 10;
    pointer-events: none;
  }
  .palido-tile__dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: rgba(255,255,255,0.4);
    transition: background .3s, transform .3s;
    display: block;
  }
  .palido-tile__dot--on {
    background: rgba(255,255,255,0.9);
    transform: scale(1.25);
  }
  .palido-tile__swipe-hint {
    position: absolute;
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
    z-index: 10;
    display: flex !important;
    align-items: center;
    pointer-events: none;
    animation: palido-nudge 1.8s ease-in-out infinite;
    transition: opacity .4s;
  }
  .palido-tile__swipe-hint--gone {
    opacity: 0 !important;
    animation: none !important;
  }
  @keyframes palido-nudge {
    0%, 100% { transform: translateY(-50%) translateX(0);   opacity: .6; }
    50%       { transform: translateY(-50%) translateX(5px); opacity: .9; }
  }
}
