.elementor-5104 .elementor-element.elementor-element-7532e3f7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.pp-tooltip.pp-tooltip-{{ID}} .pp-tooltip-content{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-5104 .elementor-element.elementor-element-5bef12f4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5104 .elementor-element.elementor-element-190c1563{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5104 .elementor-element.elementor-element-672d9a96{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5104 .elementor-element.elementor-element-10a6d799{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5104 .elementor-element.elementor-element-47f169b0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5104 .elementor-element.elementor-element-f86532{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5104 .elementor-element.elementor-element-7d2f0349{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-200px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-5104 .elementor-element.elementor-element-47835dc5 img{max-width:100vw;}.elementor-5104 .elementor-element.elementor-element-28846e11{--display:flex;--margin-top:-400px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--z-index:1;}.elementor-5104 .elementor-element.elementor-element-3fa87ffd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:2;}.elementor-5104 .elementor-element.elementor-element-32a15b73{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:3;}.elementor-5104 .elementor-element.elementor-element-3844c7d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5104 .elementor-element.elementor-element-442e4dac{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:9;}.elementor-5104 .elementor-element.elementor-element-524c9b4d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:100px;--margin-bottom:100px;--margin-left:0px;--margin-right:0px;--z-index:4;}.elementor-5104 .elementor-element.elementor-element-24ccaf0c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:5;}.elementor-5104 .elementor-element.elementor-element-773c6a28{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:6;}.elementor-5104 .elementor-element.elementor-element-74ce57f1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:7;}.elementor-5104 .elementor-element.elementor-element-447f777f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:8;}.elementor-5104 .elementor-element.elementor-element-2510811e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:8;}.elementor-5104 .elementor-element.elementor-element-25da9d50{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:10;}.elementor-5104 .elementor-element.elementor-element-fe32667{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:11;}.elementor-5104 .elementor-element.elementor-element-4f697f31{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:12;}.elementor-5104 .elementor-element.elementor-element-19952da{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5104 .elementor-element.elementor-element-70f7c2ea{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:100px;--margin-left:0px;--margin-right:0px;--z-index:13;}.elementor-5104 .elementor-element.elementor-element-55db4e19{border-style:none;}.elementor-5104 .elementor-element.elementor-element-2cc36a0a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:15;}.elementor-5104 .elementor-element.elementor-element-46bf9697{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:16;}.elementor-5104 .elementor-element.elementor-element-65013016{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:17;}.elementor-5104 .elementor-element.elementor-element-465b7a74{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:18;}.elementor-5104 .elementor-element.elementor-element-4e3d78e4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--z-index:19;}.elementor-5104 .elementor-element.elementor-element-31d3da5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:767px){.elementor-5104 .elementor-element.elementor-element-28846e11{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-5104 .elementor-element.elementor-element-74ce57f1{--margin-top:-100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-5104 .elementor-element.elementor-element-4e3d78e4{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}body.elementor-page-5104{margin:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-5104 .elementor-element.elementor-element-7d2f0349{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-28846e11{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-3fa87ffd{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-32a15b73{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-442e4dac{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-524c9b4d{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-24ccaf0c{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-773c6a28{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-447f777f{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-25da9d50{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-fe32667{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-4f697f31{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-19952da{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-70f7c2ea{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-2cc36a0a{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-46bf9697{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-65013016{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-465b7a74{--content-width:100vw;}.elementor-5104 .elementor-element.elementor-element-4e3d78e4{--content-width:100vw;}}/* Start custom CSS *//* ================================================================
   MASTER CSS — UNIWERSALNY SZABLON ŚLUBNY
   ANM Collective © 2026
   
   INSTRUKCJA:
   - Ten plik zawiera WSZYSTKIE klasy używane we wszystkich sekcjach
   - Zmiana motywu = zmiana tylko :root (lub użycie przełącznika motywów)
   - Motyw domyślny = Róża Klasyczna (bordowa czerwień, czyste biele)
   - Aby zmienić motyw: podmień wartości w :root poniżej
   ================================================================ */

/* ================================================================
   🍷  MOTYW: GŁĘBOKIE BORDO (MOCNIEJSZY)
   ================================================================ */
:root {
  /* ── GŁÓWNA PALETA ─────────────────────────────────────────── */
  --c-dark:        #4D000A;   /* Głęboki Black Cherry — teksty, headingi */
  --c-medium:      #6C0B1B;   /* Nasycony mocny bordo — przyciski, akcenty */
  --c-accent:      #8A1F2C;   /* Jaśniejszy bordo — hover, tło kart akcentowych */
  --c-gold:        #D4A85A;   /* Szampańskie stare złoto — etykiety, separator */
  --c-cream:       #FAF3E0;   /* Ciepła antyczna biel — tło strony */
  --c-light:       #FCF2E6;   /* Bardzo jasny krem — tła kart */
  --c-sage-equiv:  #7A5260;   /* Zgaszony bakłażanowy róż — placeholder, opisy */
  --white-clean:   #ffffff;

  /* ── TŁO STRONY ────────────────────────────────────────────── */
  --bg-main-grad:  #FAF3E0;
  --bg-stripe-width: 160px;

  /* ── PRZEZROCZYSTOŚCI KART ──────────────────────────────────── */
  --bg-card:        rgba(252, 242, 230, 0.80);
  --bg-card-solid:  rgba(252, 242, 230, 0.97);
  --bg-overlay:     rgba(77, 0, 10, 0.03);
  --bg-hover:       rgba(77, 0, 10, 0.06);

  /* ── RAMKI ──────────────────────────────────────────────────── */
  --border-main:    rgba(77, 0, 10, 0.15);
  --border-light:   rgba(77, 0, 10, 0.08);
  --border-medium:  rgba(77, 0, 10, 0.22);

  /* ── CIENIE ─────────────────────────────────────────────────── */
  --shadow-soft:    0 20px 50px rgba(77, 0, 10, 0.07);
  --shadow-card:    0 30px 60px rgba(77, 0, 10, 0.10);
  --shadow-heavy:   0 40px 80px rgba(77, 0, 10, 0.13);

  /* ── TYPOGRAFIA ─────────────────────────────────────────────── */
  --font-display:  'Great Vibes', cursive;
  --font-serif:    'Lora', serif;
  --font-body:     'Lora', serif;
  --font-label:    'Josefin Sans', sans-serif;

  /* ── LUXE REGISTRY (lista prezentów) ───────────────────────── */
  --lr-dark:          #4D000A;
  --lr-medium:        #6C0B1B;
  --lr-cream:         #FCF2E6;
  --lr-accent:        #8A1F2C;
  --lr-bg-card:       rgba(252, 242, 230, 0.70);
  --lr-bg-card-solid: rgba(252, 242, 230, 0.97);
  --lr-bg-hover:      rgba(77, 0, 10, 0.06);
  --lr-border-light:  rgba(77, 0, 10, 0.10);
  --lr-border-main:   rgba(77, 0, 10, 0.20);
  --lr-border-medium: rgba(77, 0, 10, 0.32);
  --lr-shadow-card:   0 20px 60px rgba(77, 0, 10, 0.16);
  --lr-overlay-reserved:  rgba(77, 0, 10, 0.55);
  --lr-overlay-hover:     rgba(50, 0, 5, 0.28);
  --lr-overlay-backdrop:  rgba(30, 0, 2, 0.65);
  --lr-overlay-lightbox:  rgba(15, 0, 1, 0.95);
  --lr-badge-bg:          rgba(108, 11, 27, 0.75);
  --lr-color-reserved:    #935661;
  --lr-color-available:   #A2333D;

  /* ── HERO MOBILE ────────────────────────────────────────────── */
  --hero-mobile-brightness:    0.20;
  --hero-mobile-vignette:      rgba(45, 0, 0, 0.70);
  --hero-timer-bg-mobile:      rgba(77, 0, 10, 0.28);
  --hero-timer-border-mobile:  rgba(212, 168, 90, 0.25);

  /* ── GRAFIKI I ZDJĘCIA (DYNAMICZNE) ─────────────────────────── */
  --img-ww-book:    url('https://anmcollective.fun/wp-content/uploads/2026/03/2-ezgif.com-png-to-webp-converter.webp');
  --img-cap-bottle: url('https://anmcollective.fun/wp-content/uploads/2026/03/kapsulkabordo.webp');
  
  --img-main-bg:    url('https://anmcollective.fun/wp-content/uploads/2026/03/ptak-tlo.png');
}

/* ================================================================
   2. PODPIĘCIE ZMIENNYCH LR → MASTER
   ================================================================ */
#luxe-registry,
#lr-iban-modal,
#lr-pay-modal,
#lr-form-modal,
#lr-lightbox {
  --c-dark:        var(--lr-dark);
  --c-medium:      var(--lr-medium);
  --c-cream:       var(--lr-cream);
  --bg-card:       var(--lr-bg-card);
  --bg-card-solid: var(--lr-bg-card-solid);
  --bg-hover:      var(--lr-bg-hover);
  --border-light:  var(--lr-border-light);
  --border-main:   var(--lr-border-main);
  --border-medium: var(--lr-border-medium);
  --shadow-card:   var(--lr-shadow-card);
}

/* ================================================================
   3. FUNDAMENTY
   ================================================================ */
*, *::before, *::after { box-sizing: border-box; }

body {
  background: transparent !important;
  color: var(--c-dark);
  font-family: var(--font-body);
}

/* ================================================================
   4. TYPOGRAFIA GLOBALNA
   ================================================================ */
.wedding-font {
  font-family: var(--font-display) !important;
  color: var(--c-dark) !important;
  font-weight: 400 !important;
  line-height: 1.1;
}

.wedding-font-white {
  font-family: var(--font-display) !important;
  color: var(--white-clean) !important;
  font-weight: 400 !important;
  line-height: 1.1;
}

.kg-title, .atq-title, .k-title, .d-title, .km-title,
.m-main-title, .ww-title, .h-title, .intro-section-title {
  font-family: var(--font-display) !important;
  color: var(--c-dark) !important;
  font-weight: 400 !important;
}

.kg-title-white, .section-title-white {
  font-family: var(--font-display) !important;
  color: var(--white-clean) !important;
  font-weight: 400 !important;
}

.d-title {
  font-size: clamp(3.5rem, 8vw, 6.5rem);
  line-height: 0.9;
  margin: 15px 0;
}

.parents-main-title {
  font-size: clamp(5.5rem, 8vw, 10rem) !important;
  line-height: 1.6;
  margin: 0 0 20px 0;
}

.k-subtitle, .d-subtitle, .km-subtitle, .kids-intro-text,
.capsule-description, .ww-desc, .witness-desc {
  color: var(--c-dark) !important;
  font-family: var(--font-body);
  line-height: 1.7;
}

.d-subtitle {
  font-style: normal;
  font-size: 1.05rem;
  color: var(--c-medium) !important;
}

.rsvp-label, .k-tag, .d-tag, .km-tag, .lr-eyebrow,
.ww-label, .m-upper-label, .h-eyebrow, .section-eyebrow,
.intro-eyebrow, .hero-eyebrow {
  font-family: var(--font-label) !important;
  color: var(--c-gold) !important;
  letter-spacing: 5px;
  text-transform: uppercase;
  font-size: 0.72rem;
  font-weight: 300;
  opacity: 0.9;
}

p {
  color: var(--c-dark);
  font-family: var(--font-body);
  line-height: 1.75;
}

/* ================================================================
   5. DIVIDERY — SVG z kółeczkami
   ================================================================ */
.wedding-divider,
.wedding-divider-c {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 20px auto !important;
  width: 100% !important;
  gap: 0 !important;
  pointer-events: none;
}

.wedding-divider .divider-line,
.wedding-divider .divider-ornament,
.divider-line-c,
.divider-ornament-c {
  display: none !important;
}

.wedding-divider::before,
.wedding-divider-c::before {
  content: '';
  display: block;
  width: 320px;
  height: 24px;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 320 24' xmlns='http://www.w3.org/2000/svg' fill='none'%3E%3Cline x1='0' y1='12' x2='118' y2='12' stroke='%23860720' stroke-width='1' opacity='0.35'/%3E%3Ccircle cx='127' cy='12' r='3' fill='%23860720' opacity='0.45'/%3E%3Ccircle cx='141' cy='12' r='3' fill='%23860720' opacity='0.45'/%3E%3Ccircle cx='160' cy='12' r='5' fill='%23860720' opacity='0.6'/%3E%3Ccircle cx='179' cy='12' r='3' fill='%23860720' opacity='0.45'/%3E%3Ccircle cx='193' cy='12' r='3' fill='%23860720' opacity='0.45'/%3E%3Cline x1='202' y1='12' x2='320' y2='12' stroke='%23860720' stroke-width='1' opacity='0.35'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.divider-svg {
  width: 200px;
  height: 16px;
  display: block;
  flex-shrink: 0;
}

.divider-on-dark::before {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 16' xmlns='http://www.w3.org/2000/svg' fill='none'%3E%3Cline x1='0' y1='8' x2='76' y2='8' stroke='%23ffffff' stroke-width='0.8' opacity='0.35'/%3E%3Ccircle cx='83' cy='8' r='2' fill='%23ffffff' opacity='0.4'/%3E%3Ccircle cx='93' cy='8' r='2' fill='%23ffffff' opacity='0.4'/%3E%3Ccircle cx='100' cy='8' r='3.2' fill='%23c4964a' opacity='0.85'/%3E%3Ccircle cx='107' cy='8' r='2' fill='%23ffffff' opacity='0.4'/%3E%3Ccircle cx='117' cy='8' r='2' fill='%23ffffff' opacity='0.4'/%3E%3Cline x1='124' y1='8' x2='200' y2='8' stroke='%23ffffff' stroke-width='0.8' opacity='0.35'/%3E%3C/svg%3E") !important;
}

.divider-wide::before,
.divider-wide .divider-svg { width: 420px !important; }

.divider-narrow::before,
.divider-narrow .divider-svg { width: 220px !important; }

/* ================================================================
   7. HERO — sekcja po intro
   ================================================================ */
.hero-mask-wrapper {
  width: 100%;
  height: 100vh;
  overflow: hidden;
  background: var(--c-cream);
  display: flex;
  align-items: center;
  justify-content: center;
}

.immersive-hero {
  position: relative;
  width: 40vw;
  height: 40vw;
  border-radius: 20px;
  opacity: 0;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  perspective: 1200px;
  will-change: width, height, border-radius, opacity;
  box-shadow: 0 50px 100px rgba(134, 7, 32, 0.18);
}

@media (max-width: 768px) {
  .immersive-hero {
    width: 100vw;
    height: 100vh;
    border-radius: 0;
  }
}

.hero-bg-wrapper {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.gsap-bg-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.55) saturate(0.75) sepia(0.15);
}

.hero-vignette {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle, transparent 5%, rgba(60, 5, 15, 0.12) 100%);
  z-index: 3;
}

.hero-photo {
  position: absolute;
  z-index: 5;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 0 20px 50px rgba(0,0,0,0.3);
  border: 4px solid var(--white-clean);
  opacity: 0;
}
.photo-1 { width: 18vw; height: 28vh; left: 6%; bottom: 12%; rotate: -2deg; }
.photo-2 { width: 14vw; height: 38vh; right: 8%; top: 10%; rotate: 3deg; }

.hero-center-content {
  position: relative;
  z-index: 10;
  text-align: center;
  pointer-events: none;
  padding: 0 20px;
  width: 100%;
}

.hero-invitation-text {
  font-family: var(--font-body) !important;
  color: var(--white-clean) !important;
  text-transform: uppercase;
  letter-spacing: 4px;
  font-size: 1.05rem;
  margin-bottom: 10px;
  opacity: 0.9;
}

.hero-info-grid {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  margin-bottom: 50px;
}
.info-label {
  font-family: var(--font-body) !important;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 0.85rem;
  opacity: 0.8;
  display: block;
  margin-bottom: 5px;
  color: var(--white-clean) !important;
}
.info-val {
  font-family: var(--font-body) !important;
  font-weight: 400;
  font-size: 1.5rem;
  margin: 0;
  color: var(--white-clean) !important;
}
.info-sub {
  font-family: var(--font-display) !important;
  font-size: 1.3rem;
  margin: 0;
  opacity: 0.88;
  color: var(--white-clean) !important;
}
.info-sep { font-size: 1.2rem; color: var(--white-clean) !important; }

.hero-countdown { text-align: center; }
.timer-label {
  font-family: var(--font-body) !important;
  letter-spacing: 5px;
  font-size: 0.62rem;
  color: var(--white-clean) !important;
  opacity: 0.7;
  margin-bottom: 12px;
}
.timer-grid {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  background: rgba(255, 255, 255, 0.10);
  padding: 15px 30px;
  border-radius: 60px;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.18);
  justify-content: center;
  margin: 0 auto;
}
.timer-unit span {
  font-family: var(--font-body) !important;
  font-size: 1.8rem;
  color: var(--white-clean) !important;
  line-height: 1;
}
.timer-unit label {
  font-size: 0.52rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--white-clean) !important;
  margin-top: 5px;
  opacity: 0.8;
  display: block;
}
.timer-sep { color: var(--c-gold) !important; font-size: 0.8rem; margin-bottom: 10px; }

@media (max-width: 768px) {
  .hero-photo { display: none; }
  .hero-info-grid { flex-direction: column; gap: 20px; }
  .info-sep { display: none; }
  .info-val { font-size: 1.2rem; }
  .info-sub { font-size: 1rem; }
}

/* ================================================================
   8. PRZYCISKI
   ================================================================ */
.atq-btn, .lr-btn-solid, .ww-btn, .nav-button-premium,
.m-submit-btn-premium, .ff-btn-submit, .presence-btn-confirm,
.k-btn-primary, .km-tab.active {
  background: var(--c-medium) !important;
  color: var(--white-clean) !important;
  border: 1px solid var(--c-medium) !important;
  font-family: var(--font-label) !important;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 300;
  transition: all 0.4s ease;
  cursor: pointer;
}
.atq-btn:hover, .lr-btn-solid:hover, .ww-btn:hover,
.nav-button-premium:hover, .m-submit-btn-premium:hover,
.ff-btn-submit:hover, .k-btn-primary:hover {
  background: var(--c-dark) !important;
  border-color: var(--c-dark) !important;
  box-shadow: 0 10px 30px rgba(134, 7, 32, 0.25) !important;
  transform: translateY(-2px);
}

.lr-btn-outline, .presence-btn, .km-tab, .ww-filter, .atq-opt,
.k-btn-outline {
  color: var(--c-dark) !important;
  border-color: var(--border-medium) !important;
  background: transparent !important;
  font-family: var(--font-label) !important;
  font-weight: 300;
  transition: all 0.3s ease;
  cursor: pointer;
}
.lr-btn-outline:hover, .atq-opt:hover, .k-btn-outline:hover {
  background: var(--bg-hover) !important;
}

.ww-filter.active, .km-tab.active {
  background: var(--c-medium) !important;
  color: var(--white-clean) !important;
  border-color: var(--c-medium) !important;
}

/* ================================================================
   9. FORMULARZE
   ================================================================ */
input, textarea, select {
  border-bottom-color: var(--border-medium) !important;
  color: var(--c-dark) !important;
  font-family: var(--font-body) !important;
  background: transparent;
}
input:focus, textarea:focus, select:focus {
  border-bottom-color: var(--c-gold) !important;
  outline: none;
}
input::placeholder, textarea::placeholder {
  color: var(--c-sage-equiv) !important;
  opacity: 0.6;
}
label {
  color: var(--c-dark) !important;
  font-family: var(--font-body) !important;
}

/* ================================================================
   10. KARTY / SEKCJE
   ================================================================ */
.glass-card, .wedding-card, .k-card, .d-card, .atq-card,
.ww-card, .km-card, .timeline-item, .info-box-card {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-light) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 20px;
  transition: all 0.35s ease;
}
.glass-card:hover, .wedding-card:hover {
  background: var(--bg-card-solid) !important;
  box-shadow: var(--shadow-card);
}

.solid-card, .modal-card {
  background: var(--bg-card-solid) !important;
  border: 1px solid var(--border-main) !important;
  border-radius: 20px;
}

/* ================================================================
   11. PANEL BOCZNY (floating)
   ================================================================ */
.floating-side-panel {
  position: fixed;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 99999;
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  background: var(--c-medium) !important;
  opacity: 0.92;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  padding: 25px 12px 25px 8px;
  border: 1px solid var(--border-medium);
  border-left: none;
  border-radius: 0 20px 20px 0;
  color: var(--white-clean) !important;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  box-shadow: var(--shadow-soft);
  animation: wanderLeft 4s ease-in-out infinite;
}
.floating-side-panel .panel-text {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  font-family: var(--font-label) !important;
  font-size: 11px;
  letter-spacing: 4px;
  text-transform: uppercase;
  font-weight: 300;
  white-space: nowrap;
  color: var(--white-clean) !important;
}
.floating-side-panel:hover {
  background: var(--c-dark) !important;
  padding-left: 25px;
  border-color: var(--c-gold);
}
@keyframes wanderLeft {
  0%, 100% { transform: translateY(-50%) translateX(0); }
  50%        { transform: translateY(-50%) translateX(10px); }
}
@media screen and (max-width: 480px) {
  .floating-side-panel { padding: 15px 8px 15px 5px; }
  .floating-side-panel .panel-text { font-size: 9px; letter-spacing: 2px; }
}

/* ================================================================
   12. STOPKA
   ================================================================ */
.wedding-footer, footer.wedding-footer, .site-footer {
  background: var(--c-medium) !important;
  color: var(--white-clean) !important;
}
.wedding-footer p, .wedding-footer a,
.footer-text, .footer-link {
  color: var(--white-clean) !important;
  font-family: var(--font-body) !important;
}
.footer-title {
  font-family: var(--font-display) !important;
  color: var(--white-clean) !important;
  font-weight: 400 !important;
}
.footer-nav a {
  color: rgba(255, 255, 255, 0.7) !important;
  text-decoration: none;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 0.72rem;
  font-family: var(--font-label) !important;
  font-weight: 300;
  transition: 0.3s;
}
.footer-nav a:hover { color: var(--white-clean) !important; }

/* ================================================================
   13-16. POMNIEJSZE SEKCJE
   ================================================================ */
.atq-wrapper { background: var(--bg-card) !important; }
.atq-title { color: var(--c-dark) !important; }
.atq-progress-fill { background: var(--c-medium) !important; }
.atq-opt { border: 1px solid var(--border-medium) !important; color: var(--c-dark) !important; }
.atq-opt.correct { background: rgba(134, 7, 32,0.12) !important; border-color: var(--c-medium) !important; }
.atq-opt.wrong   { background: rgba(160,80,80,0.12) !important; border-color: #a05050 !important; }

.rsvp-section, .rsvp-wrapper { background: var(--bg-card) !important; }
.rsvp-label { color: var(--c-gold) !important; }
.rsvp-title { color: var(--c-dark) !important; font-family: var(--font-display) !important; }
.presence-btn { border: 1px solid var(--border-medium) !important; color: var(--c-dark) !important; background: transparent !important; }
.presence-btn.selected, .presence-btn:hover { background: var(--c-medium) !important; color: var(--white-clean) !important; border-color: var(--c-medium) !important; }

.k-title { color: var(--c-dark) !important; font-family: var(--font-display) !important; }
.k-tag   { color: var(--c-gold) !important; }
.k-modal-content { background: var(--c-cream) !important; border: 1px solid var(--c-gold); border-radius: 20px; }
.map-modal-overlay { background: rgba(20, 0, 5, 0.92) !important; }

.d-title { color: var(--c-dark) !important; }
.d-tag   { color: var(--c-gold) !important; }
.d-swatch-label { color: var(--c-dark) !important; }
.d-swatch-active { box-shadow: 0 0 0 3px var(--c-gold) !important; }

/* ================================================================
   17. MENU (km)
   ================================================================ */
.km-title  { color: var(--c-dark) !important; }
.km-tag    { color: var(--c-gold) !important; }
.km-tab { border: 1px solid var(--border-medium) !important; color: var(--c-dark) !important; background: transparent !important; }
.km-tab.active { background: var(--c-medium) !important; color: var(--white-clean) !important; border-color: var(--c-medium) !important; }
.km-dish-name    { color: var(--c-dark) !important; }
.km-dish-desc    { color: var(--c-sage-equiv) !important; }
.km-subtitle     { color: var(--c-dark) !important; }

/* ================================================================
   18. SEKCJA MUZYKA (m)
   ================================================================ */
.m-main-title { color: var(--c-dark) !important; }
.m-upper-label { color: var(--c-gold) !important; }
.m-submit-btn-premium { background: var(--c-medium) !important; border-color: var(--c-medium) !important; color: var(--white-clean) !important; }
.m-preview-wrapper { background: var(--bg-card) !important; border-color: var(--border-light) !important; }
.m-note-card  { background: var(--bg-card-solid) !important; border-color: var(--border-light) !important; }

/* ================================================================
   19. SEKCJA WEDDING WALL (ww)
   ================================================================ */
.ww-title  { color: var(--c-dark) !important; }
.ww-label  { color: var(--c-gold) !important; }
.ww-desc   { color: var(--c-dark) !important; }
.ww-btn    { background: var(--c-medium) !important; border-color: var(--c-medium) !important; color: var(--white-clean) !important; }
.ww-filter { border: 1px solid var(--border-medium) !important; color: var(--c-dark) !important; background: transparent !important; }
.ww-filter.active { background: var(--c-medium) !important; color: var(--white-clean) !important; border-color: var(--c-medium) !important; }
#ww-lightbox { background: rgba(20, 0, 5, 0.95) !important; }

/* ================================================================
   20. LUXE REGISTRY — lista prezentów
   ================================================================ */
.lr-eyebrow { color: var(--c-gold) !important; }
.lr-gift-num { background: var(--c-gold) !important; color: var(--white-clean) !important; }
.lr-btn-solid { background: var(--c-medium) !important; border-color: var(--c-medium) !important; color: var(--white-clean) !important; }
.lr-btn-outline { color: var(--c-dark) !important; border-color: var(--lr-border-medium) !important; background: transparent !important; }
.lr-btn-outline:hover { background: var(--lr-bg-hover) !important; }
.lr-modal-box { background: var(--lr-bg-card-solid) !important; border: 1px solid var(--c-gold) !important; border-radius: 20px; }

/* ================================================================
   21. KAPSUŁKA CZASU (capsule)
   ================================================================ */
.capsule-title       { color: var(--c-dark) !important; font-family: var(--font-display) !important; }
.capsule-description { color: var(--c-dark) !important; }
.capsule-label       { color: var(--c-gold) !important; }
.capsule-select { border: 1px solid var(--border-medium) !important; color: var(--c-dark) !important; background: var(--bg-card) !important; border-radius: 10px; padding: 8px 14px; }

/* ================================================================
   22. HARMONOGRAM (timeline)
   ================================================================ */
.timeline-dot   { background: var(--c-medium) !important; border-color: var(--c-gold) !important; }
.timeline-time  { color: var(--c-gold) !important; font-family: var(--font-body) !important; }
.timeline-title { color: var(--c-dark) !important; font-family: var(--font-display) !important; }
.timeline-desc  { color: var(--c-sage-equiv) !important; }
.timeline-line  { background: var(--border-main) !important; }

/* ================================================================
   23. LIGHTBOXY I MODALE (ogólne)
   ================================================================ */
.modal-overlay, .lightbox-overlay { background: rgba(20, 0, 5, 0.92) !important; }
.modal-box, .modal-content { background: var(--c-cream) !important; border: 1px solid var(--border-main); border-radius: 24px; }
.modal-title { font-family: var(--font-display) !important; color: var(--c-dark) !important; font-weight: 400 !important; }
.modal-close { color: var(--c-dark) !important; background: transparent; border: none; cursor: pointer; font-size: 1.5rem; opacity: 0.5; transition: 0.2s; }
.modal-close:hover { opacity: 1; }

/* ================================================================
   24. SCROLLBAR DEKORACYJNA
   ================================================================ */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--c-cream); }
::-webkit-scrollbar-thumb { background: var(--c-light); border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: var(--c-medium); }

/* ================================================================
   25. SEKCJA PRZEWIŃ (ticker tape)
   ================================================================ */
.ticker-wrapper, .scroll-ticker { background: var(--c-medium) !important; color: var(--white-clean) !important; }
.ticker-text, .scroll-text { font-family: var(--font-label) !important; font-weight: 300; color: var(--white-clean) !important; }
.ticker-sep { color: var(--c-gold) !important; }

/* ================================================================
   26. SEKCJA RODZICE / WITNESSES
   ================================================================ */
.parents-section { background: var(--bg-card) !important; }
.parents-main-title { color: var(--c-dark) !important; }
.witness-name { color: var(--c-dark) !important; font-family: var(--font-display) !important; }
.witness-role { color: var(--c-gold) !important; letter-spacing: 4px; text-transform: uppercase; font-size: 0.7rem; }
.witness-desc { color: var(--c-sage-equiv) !important; }
.witness-card { background: var(--bg-card) !important; border: 1px solid var(--border-light) !important; border-radius: 16px; transition: all 0.3s; }
.witness-card:hover { background: var(--bg-card-solid) !important; box-shadow: var(--shadow-card); transform: translateY(-4px); }

/* ================================================================
   27. KIDS SECTION
   ================================================================ */
.kids-intro-text { color: var(--c-dark) !important; }
.kids-icon       { color: var(--c-medium) !important; }
.kids-title      { color: var(--c-dark) !important; font-family: var(--font-display) !important; }

/* ================================================================
   28. RESPONSYWNOŚĆ GLOBALNA
   ================================================================ */
@media (max-width: 768px) {
  .d-title { font-size: clamp(2.5rem, 10vw, 4rem); }
  .parents-main-title { font-size: clamp(3.5rem, 12vw, 7rem) !important; }
  .hero-info-grid { flex-direction: column; gap: 20px; }
  .hero-photo { display: none; }
  .floating-side-panel { display: none; }
}

/* ================================================================
   29. HERO — CZYTELNOŚĆ NA MOBILE
   ================================================================ */
:root {
  --hero-mobile-brightness: 0.20;
  --hero-mobile-vignette:   rgba(80, 3, 16, 0.70);
  --hero-timer-bg-mobile:   rgba(134, 7, 32, 0.28);
  --hero-timer-border-mobile: rgba(196, 150, 74, 0.25);
}

@media (max-width: 768px) {
  .hero-mask-wrapper { background: var(--c-cream) !important; }
  .gsap-bg-img { filter: brightness(var(--hero-mobile-brightness)) saturate(0.6) !important; }
  .hero-vignette { background: radial-gradient(circle, transparent 0%, var(--hero-mobile-vignette) 100%) !important; }
  .hero-invitation-text, .info-label, .info-val, .info-sub, .info-sep, .timer-label, .timer-unit span, .timer-unit label { color: var(--white-clean) !important; }
  .immersive-hero .wedding-font, .immersive-hero .gsap-title { color: var(--white-clean) !important; }
  .timer-sep { color: var(--c-gold) !important; }
  .timer-grid { background: var(--hero-timer-bg-mobile) !important; border-color: var(--hero-timer-border-mobile) !important; }
}

/* ================================================================
   17. SEKCJA KAPSUŁKA CZASU (Dynamiczna kolorystyka z :root)
   ================================================================ */
#at-capsule-kinetic { position: relative; padding: clamp(100px, 15vh, 150px) clamp(20px, 5vw, 80px); overflow: visible !important; }

.elementor-widget-html, .elementor-widget-container, .elementor-section { overflow: visible !important; }

.cap-bg { position: absolute; inset: 0; background-size: cover; background-position: center; z-index: 0; opacity: 0.9; }

.capsule-container { position: relative; z-index: 2; width: 100%; max-width: 1100px; margin: 0 auto; }

.cap-white-panel { display: flex; align-items: center; background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px); border-radius: 40px; box-shadow: var(--shadow-heavy); position: relative; overflow: visible !important; }

.cap-text-col { width: 50%; padding: clamp(40px, 6vw, 80px) clamp(30px, 4vw, 60px); z-index: 3; }

.cap-title { font-size: clamp(3.5rem, 6vw, 5.5rem) !important; color: var(--c-dark) !important; line-height: 0.9 !important; margin: 0 0 20px !important; font-weight: 400 !important; }

.capsule-description { font-family: var(--font-label) !important; font-weight: 700 !important; font-size: clamp(0.95rem, 1.2vw, 1.15rem) !important; color: var(--c-dark) !important; line-height: 1.5 !important; margin-top: 25px !important; }

#at-capsule-kinetic .wedding-divider-c { display: flex; align-items: center; width: 60%; }
#at-capsule-kinetic .divider-line-c { flex-grow: 1; height: 1px; background: var(--c-dark); opacity: 0.5; }
#at-capsule-kinetic .divider-ornament-c { color: var(--c-dark); margin: 0 10px; font-size: 1.2rem; }

.cap-bottle-col { width: 50%; position: relative; z-index: 20px; }

.cap-bottle-huge-wrap { position: relative; width: 150%; margin-left: -15%; margin-top: -25%; margin-bottom: -15%; }

.cap-bottle-img { content: var(--img-cap-bottle) !important; display: block; width: 100%; height: auto; filter: drop-shadow(-10px 20px 30px rgba(0,0,0,0.25)); }

.cap-form-overlay { position: absolute; bottom: 8%; left: 37%; right: 37%; height: 48%; z-index: 10; display: flex; flex-direction: column; justify-content: flex-end; }

#fluentform_7 .ff-el-group label { display: none !important; }
#fluentform_7 .ff-el-group { margin-bottom: clamp(12px, 2vw, 25px) !important; }

#fluentform_7 input[type="text"], #fluentform_7 input[type="email"], #fluentform_7 textarea { background: transparent !important; border: none !important; border-bottom: 3px solid var(--c-medium) !important; border-radius: 0 !important; padding: 5px 5px !important; font-family: var(--font-label) !important; font-size: 1.1rem !important; font-weight: 600 !important; color: var(--c-dark) !important; width: 100% !important; box-shadow: none !important; }

#fluentform_7 input:focus, #fluentform_7 textarea:focus { outline: none !important; border-bottom-color: var(--c-accent) !important; }

#fluentform_7 textarea { min-height: 40px !important; resize: none !important; }

#fluentform_7 button.ff-btn-submit { display: block !important; width: 100% !important; background: var(--c-medium) !important; color: var(--white-clean) !important; font-family: var(--font-label) !important; font-size: 1.2rem !important; font-weight: 700 !important; letter-spacing: 2px !important; border: none !important; border-radius: 50px !important; padding: 16px 20px !important; margin-top: 10px !important; cursor: pointer !important; transition: all 0.3s ease !important; box-shadow: 0 10px 20px var(--border-medium) !important; }

#fluentform_7 button.ff-btn-submit:hover { background: var(--c-dark) !important; transform: translateY(-3px); }

.h-reveal-left { opacity: 0; transform: translateX(-40px); }
.animate-card-right { opacity: 0; transform: translateX(40px); }

/* ── RESPONSIVNESS (MOBILE) DLA KAPSUŁKI ───────────────── */
@media (max-width: 900px) {
  .cap-white-panel { display: flex; flex-direction: column; padding: 30px 16px 0; border-radius: 20px; overflow: hidden; }
  .cap-text-col { width: 100%; text-align: center; margin-bottom: 20px; padding: 0 10px; }
  .cap-title { font-size: 3.2rem !important; line-height: 1 !important; margin-bottom: 10px !important; }
  .capsule-description { font-size: 0.9rem; line-height: 1.5 !important; margin-top: 15px !important; }
  .cap-bottle-col { width: 100%; }
  .cap-bottle-huge-wrap { width: calc(100% + 32px); margin-left: -16px; margin-top: 0; margin-bottom: 0; height: 500px; position: relative; border-radius: 0 0 20px 20px; }
  .cap-bottle-img { width: 100%; height: 100%; object-fit: cover; object-position: center 20%; }
  .cap-form-overlay { position: absolute; bottom: 0; left: 0; right: 0; width: 100%; height: auto; padding: 60px 20px 20px; background: linear-gradient(to top, var(--c-cream) 60%, transparent 100%); }
  #fluentform_7 .ff-el-group { margin-bottom: 15px !important; }
  #fluentform_7 button.ff-btn-submit { width: 100% !important; max-width: 100% !important; height: auto !important; padding: 14px 10px !important; font-size: 0.75rem !important; letter-spacing: 1px !important; white-space: normal !important; line-height: 1.4 !important; }
}

@media (max-width: 480px) {
  .cap-bottle-huge-wrap { height: 460px; }
  .cap-title { font-size: 2.8rem !important; }
}/* End custom CSS */