/*
 * Deluxe mirror overrides — loaded AFTER /mirror-css/deluxe.css so it can
 * defeat the LIVE Elementor rules for widgets that normally depend on JS.
 * Everything is scoped under `.wp-deluxe` so nothing leaks out.
 *
 * The mirror script already scopes every LIVE Elementor rule under `.wp-deluxe`
 * (including per-element widget CSS and @media breakpoints), so per-section
 * layout / typography fixes should no longer be needed here. This file is now
 * only for JS-driven widget behaviors we substitute with pure CSS: hidden
 * classes, inactive tab panels, first-only swiper slides, clipped unfold, etc.
 */

/* -------- Hero offset for absolute header — SiteHeader is absolute-positioned
   at top:0 with height 93px, so the first mirrored section renders under it.
   Push the first e-parent (which lives inside `.elementor-9`) down by the
   header's height. Also inset the background image by the same 93px so the
   photo starts where the header ends (instead of sitting behind it). -------- */
.wp-deluxe .elementor-9 > .e-con.e-parent:first-of-type {
  padding-top: 93px !important;
  background-origin: content-box !important;
  background-clip: content-box !important;
}

/* The ::before overlay carries the decorative ellipse (positioned 330px 120px
   in LIVE). Since we've pushed the section content down by the 93px header,
   nudge the ellipse the same amount so its visual relationship to the hero
   content is preserved. -------- */
.wp-deluxe .elementor-9 > .e-con.e-parent:first-of-type::before {
  background-position: 330px 213px !important;
}

/* -------- Responsive visibility classes — Elementor sets these but their
   base declarations depend on Elementor's frontend runtime injecting
   viewport-scoped media queries. Force display:none at desktop widths
   (matches the LIVE 1500px+ layout we're targeting). -------- */
@media (min-width: 1025px) {
  .wp-deluxe .elementor-hidden-desktop,
  .wp-deluxe .elementor-hidden-widescreen,
  .wp-deluxe .elementor-hidden-laptop {
    display: none !important;
  }
}

/* -------- Elementor nested tabs (v3.x, class `.e-n-tabs`) — the active
   panel is marked `.e-active`, others are absent from ARIA but still in the
   DOM. Hide the inactive ones. -------- */
.wp-deluxe .e-n-tabs .e-n-tabs-content > *:not(.e-active) {
  display: none !important;
}
.wp-deluxe .e-n-tabs .e-n-tab-title:not(.e-n-tab-title--active):not(:first-child) {
  opacity: 0.6;
}

/* -------- Elementor legacy tabs -------- */
.wp-deluxe .elementor-tabs .elementor-tab-content { display: none !important; }
.wp-deluxe .elementor-tabs .elementor-tab-content:first-of-type,
.wp-deluxe .elementor-tabs .elementor-tab-content.elementor-active {
  display: block !important;
}

/* -------- Jet tabs -------- */
.wp-deluxe .jet-tabs__content-wrapper .jet-tabs__content:not(.active-content) {
  display: none !important;
}
.wp-deluxe .jet-tabs__content-wrapper .jet-tabs__content:first-child {
  display: block !important;
}

/* -------- Jet Unfold ("read more" collapsible) — LIVE clips the content
   below a fixed height and shows the trigger button. Without JS, ours
   over-expands. Force the LIVE-matching clipped state. -------- */
.wp-deluxe .jet-unfold {
  position: relative;
  overflow: hidden;
}
.wp-deluxe .jet-unfold__inner {
  max-height: 130px;
  overflow: hidden;
  position: relative;
}
.wp-deluxe .jet-unfold__mask {
  position: absolute;
  inset: auto 0 0 0;
  height: 60px;
  background: linear-gradient(to bottom, transparent, #fff 90%);
  pointer-events: none;
}
.wp-deluxe .jet-unfold__trigger {
  display: block;
  margin-top: 12px;
}

/* -------- Swipers — without JS init, show only the first slide -------- */
.wp-deluxe .swiper-wrapper > .swiper-slide:not(:first-child) {
  display: none !important;
}
.wp-deluxe .swiper-pagination,
.wp-deluxe .swiper-button-next,
.wp-deluxe .swiper-button-prev { display: none !important; }

.wp-deluxe .elementor-image-carousel-wrapper .swiper-slide:not(:first-child) {
  display: none !important;
}

/* -------- 2e82659 ФОТОГАЛЕРЕЯ heading section — LIVE shows only the H1
   (42px) + a hidden swiper container (24px total, no visible slides). The
   actual gallery lives in a downstream section. Also hide the first slide of
   this specific swiper. -------- */
.wp-deluxe .elementor-element-2e82659 .elementor-element-1ceeb61 .swiper-wrapper > .swiper-slide {
  display: none !important;
}
