/* ============================================================
   MOTYW: bordeaux-lace  (Bordowa Koronka) — motyw 15, v392
   Kość słoniowa, tiul i koronka z ilustracjami tuszem w kolorze wina.
   Odsłona: tiulowy pakunek z pieczęcią — pieczęć z inicjałami pary pęka,
   cztery poły rozchylają się na boki jak płatki i odsłaniają kartusz.
   Grafiki: Canva „Amore m15 — eksport” (31.10.2026), CSS generuje
   tools/motyw15/css15.py. Jednostki: --t-px = 1 px płótna 900 px.
   ============================================================ */
body[data-theme="bordeaux-lace"] {
  --rg-ink:     #5B1A2A;
  --rg-body:    #5E3A40;
  --rg-accent:  #8A3B4C;
  --rg-line:    rgba(91, 26, 42, .32);
  --rg-muted:   #8C6F70;
  --rg-cream:   #FBF7F1;
  --rg-card:    #FBF7F1;
  --rg-pale:    #FBF7F1;
  --t-bordo:    #5B1A2A;
  --t-kosc:     #FBF5EC;
  --t-pole:     rgba(255, 255, 255, .1);
  --rg-script:  'Tangerine', 'Pinyon Script', cursive;
  --rg-display: 'Bodoni Moda', 'Playfair Display', serif;
  --rg-serif:   'Cormorant Garamond', serif;
  --rg-label:   'Bodoni Moda', serif;
  --rg-ui:      'Poppins', sans-serif;
  --rg-text:    'Cormorant Garamond', serif;
  background: #F6EFE4 url("../assets/themes/bordeaux-lace/tlo-tiul.webp") repeat;
  background-size: 360px 360px;
  color: var(--rg-body);
  font-family: var(--rg-text);
}
body[data-theme="bordeaux-lace"] #rgScreens { background: #F6EFE4 url("../assets/themes/bordeaux-lace/tlo-tiul.webp") repeat; background-size: calc(var(--rg-w, 760px) * .5) auto; }
body[data-theme="bordeaux-lace"]::after { display: none; }
body[data-theme="bordeaux-lace"] .rg-screen {
  --t-px: calc(var(--rg-w, 760px) / 900);
  --t-H: 1500;
  position: relative; padding: 0; min-height: 0;
  height: calc(var(--t-px) * var(--t-H));
  overflow: visible;
}
body[data-theme="bordeaux-lace"] .rg-date     { --t-H: 2400; }
body[data-theme="bordeaux-lace"] .rg-story    { --t-H: 1830; }
body[data-theme="bordeaux-lace"] .rg-location { --t-H: 2330; }
body[data-theme="bordeaux-lace"] .rg-rsvp     { --t-H: 1260; }
body[data-theme="bordeaux-lace"] .rg-outro    { --t-H: 1760; }
body[data-theme="bordeaux-lace"] #rgScreens .rg-screen + .rg-screen { margin-top: 0; }
body[data-theme="bordeaux-lace"] .rg-screen > .rg-bg { height: calc(var(--t-px) * var(--t-H)); -webkit-mask-image: none; mask-image: none; overflow: visible; }
body[data-theme="bordeaux-lace"] #rgScreens .rg-screen { background: transparent; }
body[data-theme="bordeaux-lace"] .rg-screen > .rg-inner,
body[data-theme="bordeaux-lace"] .rg-location > .rg-dress {
  position: absolute; left: 50%; translate: -50% 0; top: 0;
  width: var(--rg-w, 760px); max-width: 100vw;
  height: calc(var(--t-px) * var(--t-H));
  margin: 0; padding: 0; text-align: center; z-index: 3; background: none;
}
body[data-theme="bordeaux-lace"] .rg-screen > .rg-inner > *,
body[data-theme="bordeaux-lace"] .rg-card > *,
body[data-theme="bordeaux-lace"] .rg-dress-inner > * { position: absolute; margin: 0 !important; }
body[data-theme="bordeaux-lace"] .rg-card { position: absolute; inset: 0; width: auto; max-width: none; margin: 0; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; translate: none; }
body[data-theme="bordeaux-lace"] .rg-card::before { content: none; }
body[data-theme="bordeaux-lace"] .rg-bg img { transform: none !important; translate: none !important; rotate: none !important; animation: none !important; }
body[data-theme="bordeaux-lace"] .rg-story .rg-bg img[data-foto] { object-fit: cover; }
/* koronka zachodzi na sąsiednie sekcje — leży nad nimi */
body[data-theme="bordeaux-lace"] .rg-bg img[src*="koronka"] { z-index: 2; }
body[data-theme="bordeaux-lace"] .rg-date, body[data-theme="bordeaux-lace"] .rg-rsvp { z-index: 2; }

/* ── typografia wspólna: nagłówki Bodoni, kursywa ── */
body[data-theme="bordeaux-lace"] .rg-h {
  left: 8%; width: 84%; translate: 0 -50%;
  font-family: var(--rg-display); font-weight: 400; font-style: italic;
  font-size: calc(var(--t-px) * 84);
  line-height: 1.12; letter-spacing: -.005em; text-transform: none;
  color: var(--rg-ink); white-space: nowrap;
}
body[data-theme="bordeaux-lace"] .rg-h::before, body[data-theme="bordeaux-lace"] .rg-h::after { content: none; }
/* ozdobnik pod nagłówkiem: cienka linia z serduszkiem */
body[data-theme="bordeaux-lace"] :is(.rg-schedule, .rg-story, .rg-location .rg-card, .rg-dress, .rg-outro) .rg-h::after {
  content: "♥"; display: block; margin: calc(var(--t-px) * 14) auto 0;
  width: calc(var(--t-px) * 260); font-style: normal;
  font-size: calc(var(--t-px) * 20); line-height: 1; letter-spacing: 0; color: var(--rg-accent);
  background: linear-gradient(90deg, transparent, rgba(91, 26, 42, .4) 30%, transparent 44%, transparent 56%, rgba(91, 26, 42, .4) 70%, transparent) center / 100% 1px no-repeat;
}
body[data-theme="bordeaux-lace"] .rg-date .rg-welcome-h { display: none; }
body[data-theme="bordeaux-lace"] .rg-btn {
  display: flex; align-items: center; justify-content: center;
  padding: 0 2.2em; min-height: 0;
  background: transparent; color: var(--rg-ink);
  border: 1px solid rgba(91, 26, 42, .7); border-radius: 999px;
  box-shadow: inset 0 0 0 calc(var(--t-px) * 5) rgba(255, 255, 255, .0), inset 0 0 0 calc(var(--t-px) * 6) rgba(91, 26, 42, .22);
  font-family: var(--rg-label); font-weight: 500;
  font-size: max(10.5px, calc(var(--t-px) * 18));
  letter-spacing: .32em; text-transform: uppercase; white-space: nowrap;
  transition: background .25s, color .25s;
}
body[data-theme="bordeaux-lace"] .rg-btn:hover { background: var(--t-bordo); color: var(--t-kosc); }

/* ══ EKRAN 2 — KORONKOWY KARTUSZ · BORDOWY PAS Z LICZNIKIEM ══ */
body[data-theme="bordeaux-lace"] .rg-date .rg-sub {
  --rg-fit: 1;
  left: calc(var(--t-px) * 255); width: calc(var(--t-px) * 390);
  top: calc(var(--t-px) * 370); max-height: calc(var(--t-px) * 190); overflow: hidden;
  font-family: var(--rg-text); font-style: italic; font-weight: 500;
  font-size: calc(max(12px, calc(var(--t-px) * 27)) * var(--rg-k, 1));
  line-height: 1.4; color: var(--rg-body); text-wrap: balance;
}
body[data-theme="bordeaux-lace"] .rg-date .rg-names {
  --rg-fit-w: 1;
  left: calc(var(--t-px) * 175); width: calc(var(--t-px) * 550);
  top: calc(var(--t-px) * 760); translate: 0 -50%;
  font-family: var(--rg-script); font-weight: 700;
  font-size: calc(var(--t-px) * 150 * var(--rg-kw, 1));
  line-height: .98; color: var(--rg-ink); white-space: nowrap; overflow-wrap: normal;
}
body[data-theme="bordeaux-lace"] .rg-date .rg-names > span:not(.amp) { display: block; }
body[data-theme="bordeaux-lace"] .rg-date .rg-names .amp { display: block; font-family: var(--rg-display); font-style: italic; font-weight: 400; font-size: max(10px, .26em); line-height: 1.6; color: var(--rg-accent); }
body[data-theme="bordeaux-lace"] .rg-date .rg-dateline {
  left: calc(var(--t-px) * 235); width: calc(var(--t-px) * 430);
  top: calc(var(--t-px) * 1030);
  font-family: var(--rg-display); font-weight: 400; font-style: normal;
  font-size: max(12px, calc(var(--t-px) * 27));
  line-height: 1.5; letter-spacing: .06em; color: var(--rg-ink); text-wrap: balance;
}
body[data-theme="bordeaux-lace"] .rg-date .rg-dateline::before {
  content: ""; display: block; width: calc(var(--t-px) * 140); height: 1px; margin: 0 auto calc(var(--t-px) * 26);
  background: linear-gradient(90deg, transparent, rgba(91, 26, 42, .55), transparent);
}
body[data-theme="bordeaux-lace"] .rg-date .rg-count-h {
  display: block; left: 10%; width: 80%; top: calc(var(--t-px) * 1885); translate: 0 -50%;
  font-family: var(--rg-display); font-style: italic; font-weight: 400;
  font-size: calc(var(--t-px) * 56); line-height: 1.1; letter-spacing: 0; color: var(--t-kosc);
}
body[data-theme="bordeaux-lace"] .rg-date .rg-count {
  left: calc(var(--t-px) * 120); width: calc(var(--t-px) * 660); max-width: none;
  top: calc(var(--t-px) * 1950); height: calc(var(--t-px) * 160);
  display: grid; grid-template-columns: repeat(3, 1fr); align-items: center;
  background: none; border: 0; box-shadow: none;
}
body[data-theme="bordeaux-lace"] .rg-date .rg-count > div { text-align: center; }
body[data-theme="bordeaux-lace"] .rg-date .rg-count > div + div { border-left: 1px solid rgba(251, 245, 236, .35); }
body[data-theme="bordeaux-lace"] .rg-date .rg-count .num {
  display: block; height: auto; margin: 0; padding: 0;
  font-family: var(--rg-display); font-weight: 400; font-size: max(26px, calc(var(--t-px) * 80));
  line-height: 1.12; color: var(--t-kosc);
}
body[data-theme="bordeaux-lace"] .rg-date .rg-count .lbl {
  display: block; margin-top: calc(var(--t-px) * 16); font-family: var(--rg-label); font-weight: 500;
  font-size: max(9.5px, calc(var(--t-px) * 15)); letter-spacing: .3em; text-transform: uppercase; color: rgba(251, 245, 236, .78);
}

/* ══ EKRAN 3 — PLAN DNIA: NAPRZEMIAN, IKONY TUSZEM, SERCA NA OSI ══ */
body[data-theme="bordeaux-lace"] .rg-schedule { height: auto; min-height: calc(var(--t-px) * 1100); }
body[data-theme="bordeaux-lace"] .rg-schedule > .rg-bg { height: 100%; background: none; }
/* v393: narożniki tuszem u góry (przy nagłówku) i u dołu (przy bukieciku) */
body[data-theme="bordeaux-lace"] .rg-schedule > .rg-bg::before {
  content: ""; position: absolute; left: 0; right: 0; top: calc(var(--t-px) * 24); height: calc(var(--t-px) * 300); pointer-events: none;
  background:
    url("../assets/themes/bordeaux-lace/ozdoby/naroznik_lg.webp") left top / calc(var(--t-px) * 250) auto no-repeat,
    url("../assets/themes/bordeaux-lace/ozdoby/naroznik_pg.webp") right top / calc(var(--t-px) * 250) auto no-repeat;
}
body[data-theme="bordeaux-lace"] .rg-schedule > .rg-bg::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: calc(var(--t-px) * 40);
  height: calc(var(--t-px) * 300); pointer-events: none;
  background:
    url("../assets/themes/bordeaux-lace/ozdoby/konwalie.webp") center bottom / auto calc(var(--t-px) * 300) no-repeat,
    url("../assets/themes/bordeaux-lace/ozdoby/naroznik_ld.webp") left bottom / calc(var(--t-px) * 250) auto no-repeat,
    url("../assets/themes/bordeaux-lace/ozdoby/naroznik_pd.webp") right bottom / calc(var(--t-px) * 250) auto no-repeat;
}
body[data-theme="bordeaux-lace"] .rg-schedule > .rg-inner {
  position: relative; left: auto; translate: none; margin: 0 auto; height: auto;
  padding: calc(var(--t-px) * 280) 0 calc(var(--t-px) * 400);
}
body[data-theme="bordeaux-lace"] .rg-schedule > .rg-inner > * { position: relative; }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-h { left: auto; width: auto; top: auto; translate: none; font-size: calc(var(--t-px) * 92); }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-timeline {
  --rg-fit: 0;
  --t-f: max(10.5px, calc(var(--t-px) * 22));
  left: auto; width: calc(var(--t-px) * 780); max-width: 92%;
  margin: calc(var(--t-px) * 80) auto 0 !important; height: auto;
  display: flex; flex-direction: column; gap: 0; padding: 0; overflow: visible;
}
body[data-theme="bordeaux-lace"] .rg-schedule .rg-timeline::before {
  content: ""; position: absolute; left: 50%; top: calc(var(--t-px) * 40); bottom: calc(var(--t-px) * 90);
  width: 1px; background: linear-gradient(180deg, rgba(91, 26, 42, 0), rgba(91, 26, 42, .45) 6%, rgba(91, 26, 42, .45) 94%, rgba(91, 26, 42, 0));
}
body[data-theme="bordeaux-lace"] .rg-schedule .rg-timeline::after { content: none; }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item {
  position: relative; display: grid; grid-template-columns: 1fr calc(var(--t-px) * 64) 1fr; align-items: center;
  margin: 0; padding: 0 0 calc(var(--t-px) * 60 * var(--rg-k, 1)); min-height: 0;
}
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item::before, body[data-theme="bordeaux-lace"] .rg-schedule .rg-item::after { content: none; }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .ico {
  display: block; position: static; grid-row: 1; width: auto; height: calc(var(--t-px) * 150); max-width: 100%;
  object-fit: contain; opacity: 1; filter: none; margin: 0;
}
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .pearl {
  display: block; position: relative; z-index: 1; grid-column: 2; grid-row: 1; justify-self: center;
  width: calc(var(--t-px) * 22); height: calc(var(--t-px) * 22); min-width: 9px; min-height: 9px; margin: 0;
  background: var(--t-bordo); border-radius: 0; box-shadow: 0 0 0 calc(var(--t-px) * 7) #F6EFE4;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 22'%3E%3Cpath d='M12 21.4 10.6 20C5.4 15.4 2 12.3 2 8.5 2 5.4 4.4 3 7.5 3c1.7 0 3.4.8 4.5 2.1C13.1 3.8 14.8 3 16.5 3 19.6 3 22 5.4 22 8.5c0 3.8-3.4 6.9-8.6 11.5z'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 22'%3E%3Cpath d='M12 21.4 10.6 20C5.4 15.4 2 12.3 2 8.5 2 5.4 4.4 3 7.5 3c1.7 0 3.4.8 4.5 2.1C13.1 3.8 14.8 3 16.5 3 19.6 3 22 5.4 22 8.5c0 3.8-3.4 6.9-8.6 11.5z'/%3E%3C/svg%3E") center / contain no-repeat;
}
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .txt { position: static; grid-row: 1; margin: 0; padding: 0; min-width: 0; }
/* nieparzyste: ikona po lewej, tekst po prawej; parzyste odwrotnie */
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item:nth-child(odd) .ico { grid-column: 1; justify-self: end; margin-right: calc(var(--t-px) * 18); }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item:nth-child(odd) .txt { grid-column: 3; text-align: left; padding-left: calc(var(--t-px) * 18); }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item:nth-child(even) .ico { grid-column: 3; justify-self: start; margin-left: calc(var(--t-px) * 18); }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item:nth-child(even) .txt { grid-column: 1; text-align: right; padding-right: calc(var(--t-px) * 18); }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item :is(.time, .desc, .godz, .nazwa) { display: block; margin: 0; padding: 0; letter-spacing: 0; text-transform: none; font-style: normal; }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .godz::after, body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .nazwa::before { content: none; }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .godz { font-family: var(--rg-display); font-weight: 400; font-size: calc(var(--t-f) * 2 * var(--rg-k, 1)); line-height: 1.05; color: var(--rg-ink); }
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .nazwa {
  margin-top: .45em !important; font-family: var(--rg-label); font-weight: 500;
  font-size: max(10px, calc(var(--t-f) * .76 * var(--rg-k, 1))); letter-spacing: .16em !important; text-transform: uppercase !important;
  line-height: 1.45; color: var(--rg-ink); overflow-wrap: break-word;
}
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .desc {
  font-family: var(--rg-text); font-style: italic !important; font-weight: 500;
  font-size: max(12px, calc(var(--t-f) * 1.02 * var(--rg-k, 1))); line-height: 1.3; margin-top: .25em; color: var(--rg-body);
}
body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .desc:empty { display: none; }

/* ══ EKRAN 4 — HISTORIA: ZDJĘCIE W KORONKOWEJ RAMCE Z KOKARDĄ ══ */
body[data-theme="bordeaux-lace"] .rg-story .rg-heart, body[data-theme="bordeaux-lace"] .rg-story .rg-postcard, body[data-theme="bordeaux-lace"] .rg-story .rg-collage { display: none !important; }
body[data-theme="bordeaux-lace"] .rg-story .rg-h { top: calc(var(--t-px) * 150); font-size: calc(var(--t-px) * 88); }
body[data-theme="bordeaux-lace"] .rg-story .rg-cols {
  --rg-fit: 1;
  left: calc(var(--t-px) * 150); width: calc(var(--t-px) * 600);
  top: calc(var(--t-px) * 1524); translate: 0 -50%; max-height: calc(var(--t-px) * 452); overflow: hidden;
  display: block; columns: auto; text-align: center;
  font-family: var(--rg-text); font-weight: 500;
  font-size: calc(max(12.5px, calc(var(--t-px) * 26)) * var(--rg-k, 1)); line-height: 1.5;
  color: var(--rg-body); text-wrap: balance;
}
body[data-theme="bordeaux-lace"] :is(.rg-story, .rg-outro) .rg-cols .rg-p { --rg-fit: 0; display: inline; position: static; margin: 0; font: inherit; line-height: inherit; color: inherit; }
body[data-theme="bordeaux-lace"] :is(.rg-story, .rg-outro) .rg-cols .rg-p:first-child::after { content: " "; }

/* ══ EKRAN 5 — MIEJSCE (DWÓR TUSZEM) · DRESS CODE (SUKNIA I FRAK) ══ */
body[data-theme="bordeaux-lace"] .rg-location .rg-loc-cards:empty { display: none; }
body[data-theme="bordeaux-lace"] .rg-location .rg-card .rg-h { top: calc(var(--t-px) * 574); }
body[data-theme="bordeaux-lace"] .rg-location .rg-map {
  left: calc(var(--t-px) * 180); width: calc(var(--t-px) * 540);
  top: calc(var(--t-px) * 694); height: calc(var(--t-px) * 300);
  aspect-ratio: auto; min-height: 0; border: 0; border-radius: calc(var(--t-px) * 150) calc(var(--t-px) * 150) 0 0;
  outline: 1px solid rgba(91, 26, 42, .45); outline-offset: calc(var(--t-px) * 10);
  box-shadow: 0 calc(var(--t-px) * 10) calc(var(--t-px) * 24) rgba(60, 20, 30, .16);
  z-index: 1; background: rgba(255, 255, 255, .7); overflow: hidden;
}
body[data-theme="bordeaux-lace"] .rg-location .rg-addr {
  --rg-fit: 1;
  left: calc(var(--t-px) * 190); width: calc(var(--t-px) * 520);
  top: calc(var(--t-px) * 1044); max-height: calc(var(--t-px) * 150); overflow: hidden;
  font-family: var(--rg-display); font-style: normal; font-weight: 400; letter-spacing: .03em;
  font-size: calc(max(12.5px, calc(var(--t-px) * 25)) * var(--rg-k, 1)); line-height: 1.4;
  color: var(--rg-ink); text-transform: none; text-wrap: balance;
}
body[data-theme="bordeaux-lace"] .rg-location .rg-btn {
  left: 50%; translate: -50% -50%; top: calc(var(--t-px) * 1225); width: auto;
  min-width: calc(var(--rg-w, 760px) * .3); height: calc(var(--t-px) * 72);
}
body[data-theme="bordeaux-lace"] .rg-location .rg-btn .rg-pin { display: none; }
body[data-theme="bordeaux-lace"] .rg-location > .rg-dress { pointer-events: none; overflow: visible; }
body[data-theme="bordeaux-lace"] .rg-location > .rg-dress::before, body[data-theme="bordeaux-lace"] .rg-location > .rg-dress::after { content: none; }
body[data-theme="bordeaux-lace"] .rg-dress-inner { position: absolute; inset: 0; width: auto; max-width: none; margin: 0; padding: 0; pointer-events: auto; }
body[data-theme="bordeaux-lace"] .rg-dress .rg-h { top: calc(var(--t-px) * 1455); font-size: calc(var(--t-px) * 80); }
body[data-theme="bordeaux-lace"] .rg-dress-grid {
  left: 50%; translate: -50% -50%; top: calc(var(--t-px) * 2075); width: auto;
  display: flex; justify-content: center; align-items: center;
}
body[data-theme="bordeaux-lace"] .rg-dress .rg-swatches { display: flex; flex-direction: row; gap: calc(var(--t-px) * 20); }
body[data-theme="bordeaux-lace"] .rg-dress .rg-sw {
  position: relative; width: calc(var(--t-px) * 52); height: calc(var(--t-px) * 52); border-radius: 50%;
  border: 0; box-shadow: 0 0 0 calc(var(--t-px) * 5) #FBF7F1, 0 0 0 calc(var(--t-px) * 6) rgba(91, 26, 42, .45), 0 calc(var(--t-px) * 6) calc(var(--t-px) * 10) rgba(60, 20, 30, .2);
}
body[data-theme="bordeaux-lace"] .rg-dress-fig { display: none; }
body[data-theme="bordeaux-lace"] .rg-dress .rg-p {
  --rg-fit: 1;
  left: calc(var(--t-px) * 190); width: calc(var(--t-px) * 520);
  top: calc(var(--t-px) * 2135); max-height: calc(var(--t-px) * 180); overflow: hidden;
  font-family: var(--rg-text); font-style: italic; font-weight: 500;
  font-size: calc(max(12px, calc(var(--t-px) * 24)) * var(--rg-k, 1)); line-height: 1.4;
  color: var(--rg-body); text-wrap: balance;
}
body[data-theme="bordeaux-lace"] #rgLocation { z-index: 3; }

/* ══ EKRAN 6 — RSVP NA BORDOWYM ADAMASZKU ══ */
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-h { left: 15%; width: 70%; top: calc(var(--t-px) * 190); font-size: calc(var(--t-px) * 84); color: var(--t-kosc); white-space: normal; text-wrap: balance; }
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-q, body[data-theme="bordeaux-lace"] .rg-rsvp .rg-msg-label {
  left: 15%; width: 70%; translate: 0 -50%;
  font-family: var(--rg-label); font-style: normal; font-weight: 500;
  font-size: max(10px, calc(var(--t-px) * 16)); line-height: 1.25; letter-spacing: .26em; text-transform: uppercase; color: rgba(251, 245, 236, .8);
}
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-q { top: calc(var(--t-px) * 320); }
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-msg-label { top: calc(var(--t-px) * 535); }
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-radios { left: 20%; width: 60%; top: calc(var(--t-px) * 405); translate: 0 -50%; display: flex; flex-direction: column; align-items: center; gap: calc(var(--t-px) * 10); }
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-radio { font-family: var(--rg-text); font-style: italic; font-weight: 500; font-size: max(13px, calc(var(--t-px) * 28)); line-height: 1.2; color: var(--t-kosc); }
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-radio .dot { border-color: rgba(251, 245, 236, .85); }
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-radio input:checked + .dot, body[data-theme="bordeaux-lace"] .rg-rsvp .rg-radio .dot::after { background: var(--t-kosc); }
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-sep { display: block; left: 40%; width: 20%; top: calc(var(--t-px) * 485); height: 0; border: 0; border-top: 1px solid rgba(251, 245, 236, .35); background: none; }
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-textarea {
  left: calc(var(--t-px) * 190); width: calc(var(--t-px) * 520); top: calc(var(--t-px) * 570); height: calc(var(--t-px) * 130);
  min-height: 0; resize: none; background: rgba(251, 245, 236, .08); border: 1px solid rgba(251, 245, 236, .5); border-radius: 0;
  box-shadow: none; color: var(--t-kosc);
  font-family: var(--rg-text); font-style: italic; font-weight: 500; font-size: max(12px, calc(var(--t-px) * 22));
}
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-textarea::placeholder { color: rgba(251, 245, 236, .6); opacity: 1; }
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-btn {
  left: 50%; translate: -50% -50%; top: calc(var(--t-px) * 790); width: auto; min-width: calc(var(--rg-w, 760px) * .32); height: calc(var(--t-px) * 74);
  color: var(--t-bordo); background: var(--t-kosc); border-color: var(--t-kosc);
  box-shadow: inset 0 0 0 calc(var(--t-px) * 5) var(--t-kosc), inset 0 0 0 calc(var(--t-px) * 6) rgba(91, 26, 42, .35);
}
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-btn:hover { background: #fff; color: var(--t-bordo); }
body[data-theme="bordeaux-lace"] .rg-rsvp .rg-note {
  --t-notka: max(50%, 17em);
  left: calc((100% - var(--t-notka)) / 2); width: var(--t-notka); top: calc(var(--t-px) * 900); translate: 0 -50%;
  font-family: var(--rg-text); font-style: italic; font-weight: 500;
  font-size: max(11px, calc(var(--t-px) * 19)); line-height: 1.35; color: rgba(251, 245, 236, .75); text-wrap: balance;
}
@media (max-width: 359px) { body[data-theme="bordeaux-lace"] .rg-rsvp .rg-note { --t-notka: max(50%, 18.5em); font-size: 10px; } }

/* ══ EKRAN 7 — BUKIECIK, KILKA SŁÓW, IMIONA, OGRÓD Z ALTANĄ ══ */
@media (min-width: 761px) {
  body[data-theme="bordeaux-lace"] .rg-outro .rg-bg img[src*="altana"] {
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
            mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
  }
}
body[data-theme="bordeaux-lace"] .rg-outro .rg-outro-card, body[data-theme="bordeaux-lace"] .rg-outro .rg-outro-fig { display: none; }
body[data-theme="bordeaux-lace"] .rg-outro .rg-h { left: 12%; width: 76%; top: calc(var(--t-px) * 560); font-size: calc(var(--t-px) * 72); white-space: normal; text-wrap: balance; }
body[data-theme="bordeaux-lace"] .rg-outro .rg-cols {
  --rg-fit: 1;
  left: calc(var(--t-px) * 150); width: calc(var(--t-px) * 600); top: calc(var(--t-px) * 660);
  max-height: calc(var(--t-px) * 300); overflow: hidden; display: block; columns: auto; text-align: center;
  font-family: var(--rg-text); font-weight: 500; font-size: calc(max(12.5px, calc(var(--t-px) * 25)) * var(--rg-k, 1));
  line-height: 1.5; color: var(--rg-body); text-wrap: balance;
}
body[data-theme="bordeaux-lace"] .rg-outro .rg-monogram {
  --rg-fit-w: 1;
  left: 6%; width: 88%; top: calc(var(--t-px) * 1080); translate: 0 -50%;
  font-family: var(--rg-script); font-weight: 700; font-style: normal;
  font-size: calc(var(--t-px) * 130 * var(--rg-kw, 1)); line-height: 1.1; letter-spacing: 0; text-transform: none;
  color: var(--rg-ink); text-wrap: balance; overflow-wrap: normal;
}
body[data-theme="bordeaux-lace"] .rg-outro .rg-monogram .amp { font-family: var(--rg-display); font-style: italic; font-weight: 400; color: var(--rg-accent); font-size: max(10px, .32em); }

@media (max-width: 420px) {
  body[data-theme="bordeaux-lace"] .rg-schedule .rg-timeline { max-width: 96%; }
  body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .nazwa { letter-spacing: .1em !important; }
  body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .ico { height: calc(var(--t-px) * 130); }
  body[data-theme="bordeaux-lace"] .rg-schedule .rg-item:nth-child(odd) .txt { padding-left: calc(var(--t-px) * 8); }
  body[data-theme="bordeaux-lace"] .rg-schedule .rg-item:nth-child(even) .txt { padding-right: calc(var(--t-px) * 8); }
}
@media (max-width: 380px) {
  body[data-theme="bordeaux-lace"] .rg-schedule .rg-item .nazwa { letter-spacing: .05em !important; }
}

/* ══ ODSŁONA — TIULOWY PAKUNEK: PIECZĘĆ PĘKA, CZTERY POŁY SIĘ ROZCHYLAJĄ ══
   Warstwy (01-start): kartusz (pod spodem) · poły góra/dół/lewo/prawo
   (trójkąty od środka do narożników) · pieczęć z inicjałami pary.
   Kolejność: pieczęć rozbłyskuje i znika, poły odchylają się na zewnątrz
   wokół swoich krawędzi (najpierw boczne, potem górna i dolna), karta
   przesuwa się dokładnie na miejsce pierwszego ekranu i plansza znika.
   Razem ok. 3,3 s (limit w JS 3,6 s). */
body[data-theme="bordeaux-lace"] .plate-reveal {
  --t15-w: min(100vw, var(--rg-w, 760px), 56.25svh);
  --t15-dy: calc((100svh - var(--t15-w) * 16 / 9) / -2);
  align-items: center;
  background: #EFE6DA url("../assets/themes/bordeaux-lace/01-start/rozmyte.webp") center / cover no-repeat;
}
body[data-theme="bordeaux-lace"] .plate-bleed { display: none; }
body[data-theme="bordeaux-lace"] .plate-stage { width: var(--t15-w); height: calc(var(--t15-w) * 16 / 9); perspective: 1400px; }
body[data-theme="bordeaux-lace"] .plate-canvas .plate-layer { object-fit: fill; }
body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-layer { transform: none; opacity: 1; }
body[data-theme="bordeaux-lace"] .plate-skrz { will-change: transform, opacity; backface-visibility: visible; }
body[data-theme="bordeaux-lace"] .sk-pole-g { z-index: 3; transform-origin: 50% 0%; }
body[data-theme="bordeaux-lace"] .sk-pole-d { z-index: 3; transform-origin: 50% 100%; }
body[data-theme="bordeaux-lace"] .sk-pole-l { z-index: 4; transform-origin: 0% 50%; }
body[data-theme="bordeaux-lace"] .sk-pole-p { z-index: 4; transform-origin: 100% 50%; }
body[data-theme="bordeaux-lace"] .sk-pieczec { z-index: 6; transform-origin: 50% 50%; }
/* inicjały pary tłoczone w wosku */
body[data-theme="bordeaux-lace"] .plate-mono {
  position: absolute; left: 50%; top: 50%; translate: -50% -50%; z-index: 2;
  display: flex; align-items: baseline; gap: .06em; white-space: nowrap; pointer-events: none;
  font-family: var(--rg-script); font-weight: 700; font-size: calc(var(--t15-w) * .118); line-height: 1;
  color: rgba(150, 122, 92, .62);
  text-shadow: 0 1px 0 rgba(255, 252, 244, .9), 0 -1px 0 rgba(96, 72, 48, .4), 0 0 1px rgba(96, 72, 48, .25);
}
body[data-theme="bordeaux-lace"] .plate-mono i { font-family: var(--rg-display); font-style: italic; font-size: .42em; font-weight: 400; translate: 0 -.25em; }
/* połysk na pieczęci, zanim gość dotknie */
body[data-theme="bordeaux-lace"] .sk-pieczec::after {
  content: ""; position: absolute; left: calc(50% - 16.6665%); top: calc(50% - 9.374906249999999%);
  width: 33.333%; height: 18.749812499999997%; border-radius: 50%; pointer-events: none;
  background: linear-gradient(115deg, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, .65) 50%, rgba(255, 255, 255, 0) 60%) 100% 0 / 300% 100% no-repeat;
  animation: t15-blysk 5.2s ease-in-out 1s infinite;
}
@keyframes t15-blysk { 0% { background-position: 100% 0; } 45%, 100% { background-position: 0% 0; } }
/* — po dotknięciu — */
body[data-theme="bordeaux-lace"] .plate-reveal.opening .sk-pieczec::after { animation: none; opacity: 0; }
body[data-theme="bordeaux-lace"] .plate-reveal.opening .sk-pieczec { animation: t15-pieczec .7s cubic-bezier(.3, 0, .6, 1) 0s both; }
body[data-theme="bordeaux-lace"] .plate-reveal.opening .sk-pole-l { animation: t15-lewo 1.35s cubic-bezier(.55, .05, .3, 1) .45s both; }
body[data-theme="bordeaux-lace"] .plate-reveal.opening .sk-pole-p { animation: t15-prawo 1.35s cubic-bezier(.55, .05, .3, 1) .45s both; }
body[data-theme="bordeaux-lace"] .plate-reveal.opening .sk-pole-g { animation: t15-gora 1.35s cubic-bezier(.55, .05, .3, 1) .75s both; }
body[data-theme="bordeaux-lace"] .plate-reveal.opening .sk-pole-d { animation: t15-dol 1.35s cubic-bezier(.55, .05, .3, 1) .75s both; }
body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-canvas { animation: t15-karta 1.1s cubic-bezier(.45, 0, .25, 1) 1.95s both; }
body[data-theme="bordeaux-lace"] .plate-reveal.opening { opacity: 0; transition: opacity .5s ease-in 2.8s; }
body[data-theme="bordeaux-lace"] .plate-reveal.opened { opacity: 0; }
@keyframes t15-pieczec { 0% { transform: none; opacity: 1; filter: none; } 35% { transform: scale(1.08); filter: brightness(1.1); opacity: 1; } 100% { transform: scale(1.35); filter: brightness(1.3) blur(2px); opacity: 0; } }
@keyframes t15-lewo  { 0% { transform: none; opacity: 1; } 75% { opacity: 1; } 100% { transform: rotateY(-118deg); opacity: 0; } }
@keyframes t15-prawo { 0% { transform: none; opacity: 1; } 75% { opacity: 1; } 100% { transform: rotateY(118deg); opacity: 0; } }
@keyframes t15-gora  { 0% { transform: none; opacity: 1; } 75% { opacity: 1; } 100% { transform: rotateX(118deg); opacity: 0; } }
@keyframes t15-dol   { 0% { transform: none; opacity: 1; } 75% { opacity: 1; } 100% { transform: rotateX(-118deg); opacity: 0; } }
@keyframes t15-karta { to { transform: translateY(var(--t15-dy, 0px)); } }
/* napis „Dotknij…” pod pieczęcią */
body[data-theme="bordeaux-lace"] .plate-reveal .plate-cta {
  --t-h: calc(var(--t15-w) * 16 / 9);
  bottom: auto; top: min(calc((100svh - var(--t-h)) / 2 + var(--t-h) * 0.64), calc(100svh - 72px));
  z-index: 7; padding: .95em 2.3em;
  background: rgba(91, 26, 42, .86); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  border: 1px solid rgba(251, 245, 236, .5); border-radius: 999px; outline: none;
  box-shadow: 0 10px 28px rgba(60, 20, 30, .28);
  font-family: var(--rg-label); font-weight: 500; font-size: max(11px, calc(var(--t-h) * .0122));
  letter-spacing: .32em; text-transform: uppercase; color: #FBF5EC; opacity: 1; white-space: nowrap;
  animation: t15-cta 3.4s ease-in-out infinite;
}
body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-cta { animation: none; opacity: 0; transition: opacity .3s; }
@keyframes t15-cta { 0%, 100% { opacity: 1; } 50% { opacity: .78; } }

/* v394: telefon (ekran wyższy niż 9:16) — pakunek wypełnia CAŁY ekran, bez pasów u góry
   i u dołu: plansza ma wysokość ekranu, a jej boki wychodzą poza kadr (środek z pieczęcią
   zostaje na środku). Po rozchyleniu pół karta zwęża się do szerokości kolumny zaproszenia
   i zostaje u góry — dokładnie tam, gdzie leży kartusz pierwszego ekranu. */
@media (max-aspect-ratio: 9/16) {
  body[data-theme="bordeaux-lace"] .plate-reveal { --t15-w: 56.25svh; --t15-dy: 0px; align-items: flex-start; justify-content: center; overflow: hidden; background: #EFE6DA; }
  body[data-theme="bordeaux-lace"] .plate-stage { flex: none; width: 56.25svh; height: 100svh; }
  body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-canvas { animation: none; }
  body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-stage { animation: t15-dopasuj 1.1s cubic-bezier(.45, 0, .25, 1) 1.95s both; }
  body[data-theme="bordeaux-lace"] .plate-reveal .plate-cta { top: min(calc(100svh * .64), calc(100svh - 72px)); }
}
@keyframes t15-dopasuj { to { width: min(100vw, var(--rg-w, 760px)); height: calc(min(100vw, var(--rg-w, 760px)) * 16 / 9); } }

@media (prefers-reduced-motion: reduce) {
  body[data-theme="bordeaux-lace"] .plate-skrz, body[data-theme="bordeaux-lace"] .plate-skrz::after, body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-skrz, body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-canvas { animation: none !important; transform: none; }
  body[data-theme="bordeaux-lace"] .plate-reveal.opening { transition: opacity .6s ease .3s; }
}
/* Prezenty: na bordowej planszy z koronką; tekst szeryfowy jak w całym motywie. */
body[data-theme="bordeaux-lace"] #rgGifts { --g-ink: #5B1A2A; --g-acc: #8A3B4C; --g-paper: #FAF5ED; }
body[data-theme="bordeaux-lace"] #rgGifts .rg-gifts-orn { display: none; }
body[data-theme="bordeaux-lace"] #rgGifts .rg-gifts-h { font-family: var(--rg-display); font-style: italic; font-weight: 400; font-size: clamp(30px, calc(var(--rg-w, 760px) * .085), 62px); }
body[data-theme="bordeaux-lace"] #rgGifts .rg-gifts-text { font-family: var(--rg-text); font-weight: 500; font-size: clamp(15px, calc(var(--rg-w, 760px) * .026), 19px); line-height: 1.5; }
body[data-theme="bordeaux-lace"] #rgGifts :is(.rg-gifts-lbl, .rg-gifts-kopiuj) { font-family: var(--rg-label); font-weight: 500; }

/* ══ v408 (uwagi Dawida) ══════════════════════════════════════════
   Ekran 2: kolejność jak w pozostałych motywach — u góry imiona, pod
   nimi zdanie zapraszające, na końcu data i miejsce. */
body[data-theme="bordeaux-lace"] .rg-date .rg-names { top: calc(var(--t-px) * 555); left: calc(var(--t-px) * 215); width: calc(var(--t-px) * 470); }
body[data-theme="bordeaux-lace"] .rg-date .rg-sub { top: calc(var(--t-px) * 760); max-height: calc(var(--t-px) * 180); }
body[data-theme="bordeaux-lace"] .rg-date .rg-dateline { top: calc(var(--t-px) * 1040); }
/* Plan dnia: nagłówek „Harmonogram" wyżej — nad nim było ok. 280 px pustego
   lnu (płótno 900). Teraz stoi między narożnikami, lista podjeżdża razem z nim. */
body[data-theme="bordeaux-lace"] .rg-schedule > .rg-inner { padding-top: calc(var(--t-px) * 165); }
/* Zakończenie: imiona jedno pod drugim („Imię", „&", „Imię"). */
body[data-theme="bordeaux-lace"] .rg-outro .rg-monogram { top: calc(var(--t-px) * 1128); font-size: calc(var(--t-px) * 118 * var(--rg-kw, 1)); line-height: 1.08; }
body[data-theme="bordeaux-lace"] .rg-outro .rg-monogram > span { display: block; }
body[data-theme="bordeaux-lace"] .rg-outro .rg-monogram .amp { line-height: 1.7; }
/* Tekst „Kilka słów" wyśrodkowany między nagłówkiem a imionami. */
body[data-theme="bordeaux-lace"] .rg-outro .rg-cols { top: calc(var(--t-px) * 812); translate: 0 -50%; max-height: calc(var(--t-px) * 296); }
/* v410 (uwaga Dawida): „Kilka słów od pary" dotykał bukieciku konwalii
   (koniec rysunku 546 px płótna) — nagłówek niżej, w połowie między
   bukietem a tekstem; tekst na środku między nagłówkiem a imionami. */
body[data-theme="bordeaux-lace"] .rg-screen.rg-outro .rg-h { top: calc(var(--t-px) * 602); }
body[data-theme="bordeaux-lace"] .rg-screen.rg-outro .rg-cols { top: calc(var(--t-px) * 845); }

/* v414 (uwaga Dawida): po rozchyleniu pół karta stała chwilę sama, zanim
   pokazało się zaproszenie. Samo otwarcie (pieczęć, poły) bez zmian —
   przyspieszone jest tylko to, co dzieje się po nim: karta dosuwa się
   szybciej, a nakładka gaśnie zaraz po rozchyleniu (koniec 2,5 s zamiast 3,3 s). */
body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-canvas { animation: t15-karta .6s cubic-bezier(.45, 0, .25, 1) 1.8s both; }
body[data-theme="bordeaux-lace"] .plate-reveal.opening { transition: opacity .4s ease-in 2.1s; }
@media (max-aspect-ratio: 9/16) {
  body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-canvas { animation: none; }
  body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-stage { animation: t15-dopasuj .6s cubic-bezier(.45, 0, .25, 1) 1.8s both; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-theme="bordeaux-lace"] .plate-reveal.opening .plate-canvas { animation: none !important; }
  body[data-theme="bordeaux-lace"] .plate-reveal.opening { transition: opacity .6s ease .3s; }
}
/* v418 (przegląd): na wąskim telefonie najdłuższy tekst „Kilka słów"
   dochodził do imion — tekst o włos wyżej i niższy, imiona trochę niżej. */
@media (max-width: 379px) {
  body[data-theme="bordeaux-lace"] .rg-screen.rg-outro .rg-cols { top: calc(var(--t-px) * 800); max-height: calc(var(--t-px) * 276); }
  body[data-theme="bordeaux-lace"] .rg-outro .rg-monogram { top: calc(var(--t-px) * 1146); }
}
