/* Organizacja przyjęć — układ oparty na istniejącym .container motywu. */
.events-page{background:#1a2718;color:#fff;overflow:hidden}
.events-page *, .events-page *::before,.events-page *::after{box-sizing:border-box}
.events-page .container{position:relative}
.events-page .events-heading{font-family:'EB Garamond',Georgia,serif;font-weight:400;color:#c9ab81;line-height:1.15;margin:0 0 17px;font-size:clamp(31px,2.5vw,49px)}
.events-page .events-body{font-size:clamp(13px,.86vw,15px);line-height:1.65;color:#f8f6f0}
.events-page .events-body p{margin:0 0 14px}.events-page .events-body p:last-child{margin-bottom:0}
.events-page .events-intro{position:relative;z-index:3;padding:70px 0 0;background:#1a2718}
.events-page .events-intro>.container{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,65px);align-items:center;padding-left:clamp(22px,6.5vw,106px);padding-right:clamp(22px,6.5vw,106px)}
.events-page .events-intro-copy{position:relative;z-index:3;padding:30px 0 72px}
.events-page .events-intro-copy .events-body{max-width:430px}
.events-page .events-intro-image{position:relative;z-index:4;min-width:0;height:clamp(325px,29vw,510px);transform:translateY(56px);margin-top:-45px}
.events-page .events-gallery-swiper{position:relative;width:100%;height:100%;overflow:hidden}
.events-page .events-gallery-swiper .swiper-wrapper,.events-page .events-gallery-swiper .swiper-slide{height:100%}
.events-page .events-photo{display:block;width:100%;height:100%;object-fit:cover}
.events-page .events-photo-placeholder{min-height:100%;background:#253428;border:1px solid #8f7955;color:#c9ab81;display:flex;align-items:center;justify-content:center;padding:25px;text-align:center}
.events-page .events-gallery-swiper .swiper-button-prev,.events-page .events-gallery-swiper .swiper-button-next{color:#eee8dc;transform:scale(.70)}
.events-page .events-pattern{background-color:#424649;background-image:url('../images/bgflower.png');background-repeat:repeat;background-position:center top}
.events-page .events-rooms{position:relative;z-index:2;padding:112px 0 38px}
.events-page .events-rooms>.container{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,65px);padding-left:clamp(22px,6.5vw,106px);padding-right:clamp(22px,6.5vw,106px)}
.events-page .events-room{min-width:0;position:relative;z-index:2}
.events-page .events-room .events-heading{font-size:clamp(30px,2.4vw,45px)}
.events-page .events-garden{position:relative;z-index:2;padding:0 0 90px}
.events-page .events-garden-inner{border-top:1px solid rgba(201,171,129,.65);padding:40px clamp(22px,6.5vw,106px) 0}
.events-page .events-garden-lead{font-family:'EB Garamond',Georgia,serif;color:#c9ab81;font-size:clamp(22px,1.65vw,30px);line-height:1.28;margin-bottom:18px;max-width:1100px}
.events-page .events-garden-lead p{margin:0}
.events-page .events-gold-stroke{position:absolute;max-width:none;height:auto;pointer-events:none;object-fit:contain}


.events-page .events-cards{position:relative;padding:85px 0 92px;border-bottom:1px solid rgba(201,171,129,.6);background:#1a2718}
.events-page .events-slider-wrap{padding-left:clamp(22px,6.5vw,106px);padding-right:clamp(22px,6.5vw,106px)}
.events-page .events-cards-nav{display:flex;justify-content:flex-end;gap:9px;margin:0 0 18px;position:relative;z-index:10}
.events-page .events-cards-nav button{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:1px solid #fff;background:transparent;color:#fff;line-height:1;font-size:23px;cursor:pointer;padding:0}
.events-page .events-cards-nav button.swiper-button-disabled{opacity:.33;cursor:default}
.events-page .events-cards-nav button:not(.swiper-button-disabled):hover{background:#fff;color:#1a2718}
.events-page .events-cards-swiper{width:100%;overflow:visible!important;position:relative;z-index:2}
.events-page .events-cards-swiper .swiper-wrapper{display:flex;align-items:stretch}
.events-page .events-cards-swiper > .swiper-wrapper > .swiper-slide{flex-shrink:0;min-width:0;height:auto;box-sizing:border-box}
.events-page .events-card-photo{height:clamp(250px,23vw,400px);overflow:hidden}
.events-page .events-card-body{padding:17px 5px 0}
.events-page .events-card-body .events-heading{font-size:clamp(29px,2.1vw,39px);margin:0 0 7px}
.events-page .events-subtitle{font-size:12px;line-height:1.45;font-weight:600;border-bottom:1px solid rgba(201,171,129,.4);padding-bottom:15px;margin:0 0 17px}
.events-page .events-richtext{padding-right:14px}

@media(min-width:1650px){.events-page .events-intro{padding-top:90px}.events-page .events-intro-image{height:480px}.events-page .events-cards{padding-top:105px}}
@media(max-width:1023px){.events-page .events-intro{padding-top:36px}.events-page .events-intro>.container,.events-page .events-rooms>.container{padding-left:25px;padding-right:25px;gap:28px}.events-page .events-intro-image{height:345px}.events-page .events-slider-wrap{padding-left:25px;padding-right:25px}.events-page .events-garden-inner{padding-left:25px;padding-right:25px}.events-page .events-cards{padding-top:70px}}
@media(max-width:767px){.events-page .events-intro{padding-top:20px}.events-page .events-intro>.container{display:flex;flex-direction:column;gap:12px;align-items:stretch}.events-page .events-intro-copy{padding:35px 0 5px}.events-page .events-intro-image{height:310px;transform:translateY(35px);margin:0}.events-page .events-rooms{padding-top:85px;padding-bottom:35px}.events-page .events-rooms>.container{grid-template-columns:1fr;gap:32px}.events-page .events-garden{padding-bottom:60px}.events-page .events-garden-inner{padding-top:28px}.events-page .events-cards{padding:53px 0 65px}.events-page .events-card-photo{height:250px}.events-page .events-heading{font-size:33px}}

/* Slider eventów: stała maksymalna szerokość kart, kolejne wychodzą poza .container.
   Kontener wyznacza wyrównanie lewej krawędzi; nie ogranicza widoczności kolejnych slajdów. */
.events-page .events-cards-swiper {
  width: 100%;
  overflow: visible !important;
}
.events-page .events-cards-swiper > .swiper-wrapper > .swiper-slide {
  width: min(972px, calc(100vw - 48px));
  max-width: 100%;
  flex: 0 0 auto;
}
.events-page .events-cards-swiper .events-card-photo {
  width: 100%;
  height: auto;
  aspect-ratio: 972 / 622;
}
.events-page .events-cards-swiper .events-card-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 1023px) {
  .events-page .events-cards-swiper > .swiper-wrapper > .swiper-slide {
    width: min(74vw, 700px);
  }
}
@media (max-width: 767px) {
  .events-page .events-cards-swiper > .swiper-wrapper > .swiper-slide {
    width: min(84vw, 440px);
  }
}

/* Ozdobniki: odpowiadają dokładnie zasobom z motywu; nie zasłaniają kart wydarzeń. */
.events-page .events-gold-stroke{display:block;pointer-events:none;user-select:none}




/* Dekoracje: dokładnie względem siatki motywu, bez wpływu na layout. */
.events-page .events-intro > .container,
.events-page .events-rooms > .container,
.events-page .events-garden-inner { position: relative; }
.events-page .events-gold-stroke {
  display: block;
  position: absolute;
  max-width: none;
  height: auto;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
}
/* Lewy poziomy brush: oryginalny rozmiar 613px, przy granicy hero/sale. */
.events-page .events-intro > .container > .events-gold-stroke--intro {
  width: min(613px, 45%);
  left: clamp(22px, 6.5vw, 106px);
  bottom: -42px;
  z-index: 6;
}
/* Ukośny brush: górny prawy narożnik szarej sekcji, w siatce .container. */
.events-page .events-rooms > .container > .events-gold-stroke--rooms {
  width: min(314px, 29%);
  height: auto;
  right: clamp(22px, 6.5vw, 106px);
  top: -150px;
  z-index: 5;
}
/* Prawy brush: 680px wg projektu; dolna granica szarej sekcji. */
.events-page .events-garden-inner > .events-gold-stroke--garden {
  width: min(680px, 55%);
  right: clamp(22px, 6.5vw, 106px);
  bottom: -102px;
  z-index: 6;
}
@media(max-width:1023px) {
  .events-page .events-intro > .container > .events-gold-stroke--intro {width:min(440px,56%);left:25px;bottom:-38px;}
  .events-page .events-rooms > .container > .events-gold-stroke--rooms {width:min(230px,30%);right:25px;top:-115px;}
  .events-page .events-garden-inner > .events-gold-stroke--garden {width:min(480px,55%);right:25px;bottom:-95px;}
}
@media(max-width:767px) {
  .events-page .events-intro > .container > .events-gold-stroke--intro {width:min(310px,65%);left:25px;bottom:-56px;}
  .events-page .events-rooms > .container > .events-gold-stroke--rooms {width:min(155px,36%);right:0;top:-72px;}
  .events-page .events-garden-inner > .events-gold-stroke--garden {width:min(300px,65%);right:20px;bottom:-78px;}
}

/* Sekcja sal i ogródka: jeden wspólny element section i jedno tło. */
.events-page .events-rooms { padding: 112px 0 90px; }
.events-page .events-rooms > .events-rooms-container { display:block; padding-left:clamp(22px,6.5vw,106px); padding-right:clamp(22px,6.5vw,106px); }
.events-page .events-rooms-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(24px,4vw,65px); }
.events-page .events-rooms .events-garden-inner { margin-top:48px; padding:40px 0 0; border-top:1px solid rgba(201,171,129,.65); }
.events-page .events-rooms > .container > .events-gold-stroke--garden { width:min(680px,55%); right:clamp(22px,6.5vw,106px); bottom:-120px; z-index:6; }
@media(max-width:1023px){
 .events-page .events-rooms > .events-rooms-container {padding-left:25px;padding-right:25px}
 .events-page .events-rooms > .container > .events-gold-stroke--garden {width:min(480px,55%);right:25px;bottom:-100px}
}
@media(max-width:767px){
 .events-page .events-rooms {padding:85px 0 65px}
 .events-page .events-rooms-grid {grid-template-columns:1fr;gap:32px}
 .events-page .events-rooms .events-garden-inner {margin-top:32px;padding-top:28px}
 .events-page .events-rooms > .container > .events-gold-stroke--garden {width:min(300px,65%);right:20px;bottom:-75px}
}

/* Poprawka sekcji: slajdy widoczne za .container, ale nie poza viewportem. */
.events-page .events-cards {
  overflow: hidden;
}
.events-page .events-cards .events-slider-wrap {
  overflow: visible;
}
.events-page .events-cards .events-cards-swiper {
  overflow: visible !important;
}

/* Spójny separator w kształcie L, zgodnie z makietą sal. */
.events-page .events-rooms .events-rooms-grid {
  position: relative;
  padding-bottom: 46px;
  border-right: 1px solid rgba(201,171,129,.65);
  border-bottom: 1px solid rgba(201,171,129,.65);
}
.events-page .events-rooms .events-garden-inner {
  border-top: 0;
  margin-top: 0;
  padding-top: 40px;
}
@media (max-width: 767px) {
  .events-page .events-rooms .events-rooms-grid {
    padding-bottom: 28px;
  }
  .events-page .events-rooms .events-garden-inner {
    padding-top: 28px;
  }
}

/* Design: wyróżniony tekst sekcji ogródka — EB Garamond Regular 30/36. */
.events-page .events-rooms .events-garden-lead,
.events-page .events-rooms .events-garden-lead p {
  font-family: 'EB Garamond', Georgia, serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 36px;
  letter-spacing: 0;
  color: #c9ab81;
}
@media (max-width: 767px) {
  .events-page .events-rooms .events-garden-lead,
  .events-page .events-rooms .events-garden-lead p {
    font-size: 24px;
    line-height: 30px;
  }
}

/* Korekta względem projektu: przestrzeń między sliderem hero a salami. */
@media (min-width: 1024px) {
  .events-page .events-rooms {
    padding-top: 172px;
  }

  /* Przesuń ukośny ornament poza treść prawej sali, w stronę prawej
     krawędzi szarej sekcji. Nie nakłada się już na zdjęcie ani opis. */
  .events-page .events-rooms > .events-rooms-container > .events-gold-stroke--rooms,
  .events-page .events-rooms > .container > .events-gold-stroke--rooms {
    right: calc(-1 * clamp(22px, 6.5vw, 106px));
    top: -108px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .events-page .events-rooms { padding-top: 140px; }
  .events-page .events-rooms > .events-rooms-container > .events-gold-stroke--rooms,
  .events-page .events-rooms > .container > .events-gold-stroke--rooms {
    right: -20px;
    top: -90px;
  }
}

/* Ukośny ornament przy PRAWEJ krawędzi całej szarej sekcji, nie .container.
   Obrazek jest bezpośrednim dzieckiem .events-rooms. */
.events-page .events-rooms > .events-gold-stroke--rooms {
  position: absolute;
  right: 0;
  top: 64px;
  width: 314px;
  max-width: none;
  height: auto;
  z-index: 5;
  pointer-events: none;
}
@media (max-width: 1023px) {
  .events-page .events-rooms > .events-gold-stroke--rooms {
    width: 230px;
    top: 48px;
  }
}
@media (max-width: 767px) {
  .events-page .events-rooms > .events-gold-stroke--rooms {
    width: 155px;
    top: 25px;
  }
}

/* Korekta geometrii sal względem zdjęcia hero i makiety (08.10.2026).
   Slider hero nadal nachodzi na tło tej sekcji; nie zmieniamy jego pozycji. */
@media (min-width: 1024px) {
  .events-page .events-rooms {
    padding-top: 214px;
  }
  .events-page .events-rooms-grid {
    align-items: start;
  }
  .events-page .events-rooms-grid > .events-room:nth-child(2) {
    padding-left: clamp(16px, 2vw, 34px);
  }
  .events-page .events-rooms-grid .events-body {
    max-width: 560px;
  }
  .events-page .events-rooms .events-garden-inner {
    margin-top: 56px;
    padding-top: 45px;
  }
}

/* Slider wydarzeń — typografia zgodna z projektem Figma. */
@media (min-width: 1024px) {
  .events-page .events-cards .events-card-body .events-heading {
    font-family: 'EB Garamond', Georgia, serif;
    font-size: 45px;
    line-height: 60px;
    font-weight: 400;
    letter-spacing: 0;
    color: #c9ab81;
    margin: 0;
  }
  .events-page .events-cards .events-subtitle {
    font-family: Inter, sans-serif;
    font-size: 20px;
    line-height: 30px;
    font-weight: 400;
    letter-spacing: 0;
    color: #fff;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #c9ab81;
  }
  .events-page .events-cards .events-richtext,
  .events-page .events-cards .events-richtext p {
    font-family: Inter, sans-serif;
    font-size: 16px;
    line-height: 30px;
    font-weight: 500;
    letter-spacing: 0;
    color: #fff;
  }
  .events-page .events-cards .events-richtext p { margin: 0 0 24px; }
  .events-page .events-cards .events-richtext p:last-child { margin-bottom: 0; }
}
@media (max-width: 1023px) {
  .events-page .events-cards .events-card-body .events-heading {
    font-family: 'EB Garamond', Georgia, serif;
    font-size: clamp(30px, 4vw, 40px);
    line-height: 1.2;
    font-weight: 400;
    color: #c9ab81;
    margin-bottom: 4px;
  }
  .events-page .events-cards .events-subtitle {
    font-family: Inter, sans-serif;
    font-size: clamp(15px, 2vw, 18px);
    line-height: 1.5;
    font-weight: 400;
    color: #fff;
    border-bottom: 1px solid #c9ab81;
    padding-bottom: 16px;
  }
  .events-page .events-cards .events-richtext,
  .events-page .events-cards .events-richtext p {
    font-family: Inter, sans-serif;
    font-size: 15px;
    line-height: 1.75;
    font-weight: 500;
    color: #fff;
  }
}


/* ================================================================
   ORGANIZACJA PRZYJĘĆ / RESPONSIVE FINAL
   Reguły końcowe dla istniejącego template-events.php; wyłącznie
   strona events-page, bez modyfikowania globalnego .container.
   ================================================================ */
.events-page { width:100%; max-width:100%; overflow-x:clip; }
.events-page .events-intro-image { height:auto; aspect-ratio:645 / 615; }
.events-page .events-gallery-swiper,
.events-page .events-gallery-swiper .swiper-wrapper,
.events-page .events-gallery-swiper .swiper-slide { height:100%; }
.events-page .events-gallery-swiper .events-photo { width:100%; height:100%; object-fit:cover; }
.events-page .events-gallery-swiper .swiper-button-prev,
.events-page .events-gallery-swiper .swiper-button-next {
  width:27px; height:27px; min-width:27px; min-height:27px;
  top:50%; margin-top:-13.5px; padding:0;
  transform:none; border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:1px solid #fff; color:#fff; background:rgba(19,31,19,.25);
}
.events-page .events-gallery-swiper .swiper-button-prev::after,
.events-page .events-gallery-swiper .swiper-button-next::after {font-size:12px;font-weight:600;}
.events-page .events-gallery-swiper .swiper-button-prev {left:12px;right:auto;}
.events-page .events-gallery-swiper .swiper-button-next {right:12px;left:auto;}
/* Slider kart może wystawać poza container, ale tylko do krawędzi sekcji */
.events-page .events-cards {overflow:hidden;}
.events-page .events-cards-swiper {overflow:visible!important;}
.events-page .events-cards-swiper > .swiper-wrapper > .swiper-slide {width:min(972px,calc(100vw - 40px));max-width:none;flex-shrink:0;}
.events-page .events-cards-swiper .events-card-photo {height:auto;aspect-ratio:972 / 622;}
.events-page .events-cards-swiper .events-card-photo .events-photo {width:100%;height:100%;object-fit:cover;}
.events-page .events-cards .events-card-body .events-heading {font-family:'EB Garamond',Georgia,serif;font-weight:400;color:#c9ab81;}
.events-page .events-cards .events-subtitle {font-family:Inter,sans-serif;color:#fff;font-weight:400;border-bottom:1px solid #c9ab81;}
.events-page .events-cards .events-richtext,
.events-page .events-cards .events-richtext p {font-family:Inter,sans-serif;color:#fff;font-weight:500;}
.events-page .events-rooms .events-garden-lead,
.events-page .events-rooms .events-garden-lead p {font-family:'EB Garamond',Georgia,serif;color:#c9ab81;font-weight:400;letter-spacing:0;}
/* Ukośny ornament przy krawędzi CAŁEJ szarej sekcji */
.events-page .events-rooms > .events-gold-stroke--rooms {position:absolute;right:0;z-index:3;pointer-events:none;}

@media (min-width: 1200px) {
  .events-page .events-intro-image {height:auto;aspect-ratio:645 / 615;transform:translateY(56px);margin-top:-45px;}
  .events-page .events-rooms {padding-top:clamp(190px,15vw,245px);}
  .events-page .events-rooms > .events-gold-stroke--rooms {width:314px;top:64px;}
  .events-page .events-rooms .events-garden-lead,
  .events-page .events-rooms .events-garden-lead p {font-size:30px;line-height:36px;}
  .events-page .events-cards .events-card-body .events-heading {font-size:45px;line-height:60px;margin:0;}
  .events-page .events-cards .events-subtitle {font-size:20px;line-height:30px;padding-bottom:20px;margin-bottom:20px;}
  .events-page .events-cards .events-richtext,
  .events-page .events-cards .events-richtext p {font-size:16px;line-height:30px;}
}
@media (min-width: 768px) and (max-width: 1199px) {
  .events-page .events-intro > .container {grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .events-page .events-intro-image {height:auto;aspect-ratio:645/615;transform:translateY(40px);margin-top:0;}
  .events-page .events-rooms {padding-top:clamp(110px,14vw,175px);}
  .events-page .events-rooms > .events-gold-stroke--rooms {width:clamp(165px,22vw,260px);top:40px;}
  .events-page .events-rooms .events-garden-lead,
  .events-page .events-rooms .events-garden-lead p {font-size:26px;line-height:32px;}
  .events-page .events-cards-swiper > .swiper-wrapper > .swiper-slide {width:min(74vw,800px);}
  .events-page .events-cards .events-card-body .events-heading {font-size:38px;line-height:48px;margin:0;}
  .events-page .events-cards .events-subtitle {font-size:18px;line-height:27px;}
  .events-page .events-cards .events-richtext,
  .events-page .events-cards .events-richtext p {font-size:15px;line-height:26px;}
}
@media (max-width: 767px) {
  .events-page .events-intro > .container {display:flex;flex-direction:column;align-items:stretch;gap:0;}
  .events-page .events-intro-copy {padding:30px 0 20px;}
  .events-page .events-intro-image {height:auto;aspect-ratio:645/615;transform:translateY(28px);margin:0;}
  .events-page .events-intro > .container > .events-gold-stroke--intro {width:min(300px,58%);bottom:-48px;left:25px;}
  .events-page .events-rooms {padding-top:95px;padding-bottom:64px;}
  .events-page .events-rooms .events-rooms-grid {grid-template-columns:1fr;gap:26px;padding-bottom:28px;}
  .events-page .events-rooms .events-room .events-heading {font-size:32px;line-height:1.15;}
  .events-page .events-rooms > .events-gold-stroke--rooms {width:min(33vw,170px);top:20px;opacity:.85;}
  .events-page .events-rooms .events-garden-inner {padding-top:26px;}
  .events-page .events-rooms .events-garden-lead,
  .events-page .events-rooms .events-garden-lead p {font-size:24px;line-height:30px;}
  .events-page .events-cards {padding-top:60px;padding-bottom:70px;}
  .events-page .events-cards-swiper > .swiper-wrapper > .swiper-slide {width:82vw;}
  .events-page .events-cards .events-card-body .events-heading {font-size:32px;line-height:40px;margin:0 0 3px;}
  .events-page .events-cards .events-subtitle {font-size:16px;line-height:24px;padding-bottom:13px;margin-bottom:16px;}
  .events-page .events-cards .events-richtext,
  .events-page .events-cards .events-richtext p {font-size:14px;line-height:24px;}
  .events-page .events-cards .events-richtext p {margin-bottom:14px;}
  .events-page .events-gallery-swiper .swiper-button-prev {left:8px;}
  .events-page .events-gallery-swiper .swiper-button-next {right:8px;}
}
@media (max-width: 390px) {
  .events-page .events-intro > .container,
  .events-page .events-rooms > .events-rooms-container,
  .events-page .events-slider-wrap {padding-left:16px;padding-right:16px;}
  .events-page .events-cards-swiper > .swiper-wrapper > .swiper-slide {width:86vw;}
  .events-page .events-rooms > .events-gold-stroke--rooms {width:105px;}
}
@media (prefers-reduced-motion: reduce) {
  .events-page .events-gallery-swiper *, .events-page .events-cards-swiper * {scroll-behavior:auto;}
}


/* ============================================================
   NAWIGACJA SLIDERÓW — ZŁOTO / 54 × 54 px
   Hero, galerie wewnątrz kart i slider rodzajów przyjęć.
   Jeden zestaw reguł zamiast nakładających się poprawek.
   ============================================================ */

.events-page {
  --events-nav-gold: #c9ab81;
  --events-nav-dark: #1a2718;
  --events-nav-size: 54px;
}

/* Wszystkie przyciski — wspólny wygląd. */
.events-page .events-intro .events-gallery-swiper > .swiper-button-prev,
.events-page .events-intro .events-gallery-swiper > .swiper-button-next,
.events-page .events-card-gallery > .events-card-gallery-prev,
.events-page .events-card-gallery > .events-card-gallery-next,
.events-page .events-cards .events-cards-nav > .events-cards-prev,
.events-page .events-cards .events-cards-nav > .events-cards-next {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 var(--events-nav-size) !important;
  width: var(--events-nav-size) !important;
  height: var(--events-nav-size) !important;
  min-width: var(--events-nav-size) !important;
  min-height: var(--events-nav-size) !important;
  padding: 0 !important;
  border: 2px solid var(--events-nav-gold) !important;
  border-radius: 50% !important;
  background: rgba(26,39,24,.42) !important;
  color: var(--events-nav-gold) !important;
  font-size: 0 !important; /* ukryj znaki ‹ i › w dolnym sliderze */
  line-height: 0 !important;
  opacity: 1;
  cursor: pointer;
  transition: color .25s ease, background-color .25s ease, border-color .25s ease;
  touch-action: manipulation;
}

/* Hero i galerie kart: nawigacja nakładana na zdjęcie. */
.events-page .events-intro .events-gallery-swiper > .swiper-button-prev,
.events-page .events-intro .events-gallery-swiper > .swiper-button-next,
.events-page .events-card-gallery > .events-card-gallery-prev,
.events-page .events-card-gallery > .events-card-gallery-next {
  position: absolute !important;
  z-index: 15 !important;
  top: 50% !important;
  margin-top: 0 !important;
  transform: translateY(-50%) !important;
}
.events-page .events-intro .events-gallery-swiper > .swiper-button-prev,
.events-page .events-card-gallery > .events-card-gallery-prev {
  left: 18px !important;
  right: auto !important;
}
.events-page .events-intro .events-gallery-swiper > .swiper-button-next,
.events-page .events-card-gallery > .events-card-gallery-next {
  right: 18px !important;
  left: auto !important;
}

/* Groty: niezależne od fontu ikon Swipera. */
.events-page .events-intro .events-gallery-swiper > .swiper-button-prev::after,
.events-page .events-intro .events-gallery-swiper > .swiper-button-next::after,
.events-page .events-card-gallery > .events-card-gallery-prev::after,
.events-page .events-card-gallery > .events-card-gallery-next::after,
.events-page .events-cards .events-cards-nav > .events-cards-prev::after,
.events-page .events-cards .events-cards-nav > .events-cards-next::after {
  content: '' !important;
  box-sizing: border-box !important;
  display: block !important;
  flex: 0 0 14px !important;
  width: 14px !important;
  height: 14px !important;
  border: 0 !important;
  border-top: 3px solid currentColor !important;
  border-right: 3px solid currentColor !important;
  font-family: inherit !important;
  font-size: 0 !important;
  line-height: 0 !important;
}
.events-page .events-intro .events-gallery-swiper > .swiper-button-prev::after,
.events-page .events-card-gallery > .events-card-gallery-prev::after,
.events-page .events-cards .events-cards-nav > .events-cards-prev::after {
  transform: translateX(2px) rotate(-135deg) !important;
}
.events-page .events-intro .events-gallery-swiper > .swiper-button-next::after,
.events-page .events-card-gallery > .events-card-gallery-next::after,
.events-page .events-cards .events-cards-nav > .events-cards-next::after {
  transform: translateX(-2px) rotate(45deg) !important;
}

/* Interakcje: hover, focus klawiatury, disabled. */
.events-page .events-intro .events-gallery-swiper > .swiper-button-prev:hover,
.events-page .events-intro .events-gallery-swiper > .swiper-button-next:hover,
.events-page .events-card-gallery > button:hover,
.events-page .events-cards .events-cards-nav > button:hover:not(.swiper-button-disabled),
.events-page .events-intro .events-gallery-swiper > .swiper-button-prev:focus-visible,
.events-page .events-intro .events-gallery-swiper > .swiper-button-next:focus-visible,
.events-page .events-card-gallery > button:focus-visible,
.events-page .events-cards .events-cards-nav > button:focus-visible {
  background: var(--events-nav-gold) !important;
  color: var(--events-nav-dark) !important;
}
.events-page .events-intro .events-gallery-swiper > .swiper-button-prev:focus-visible,
.events-page .events-intro .events-gallery-swiper > .swiper-button-next:focus-visible,
.events-page .events-card-gallery > button:focus-visible,
.events-page .events-cards .events-cards-nav > button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}
.events-page .events-gallery-swiper > .swiper-button-disabled,
.events-page .events-card-gallery > .swiper-button-disabled,
.events-page .events-cards .events-cards-nav > .swiper-button-disabled {
  opacity: .35 !important;
  cursor: default !important;
}

/* RWD: więcej miejsca na treść i gesty na telefonie. */
@media (max-width: 767px) {
  .events-page { --events-nav-size: 44px; }
  .events-page .events-intro .events-gallery-swiper > .swiper-button-prev,
  .events-page .events-card-gallery > .events-card-gallery-prev { left: 8px !important; }
  .events-page .events-intro .events-gallery-swiper > .swiper-button-next,
  .events-page .events-card-gallery > .events-card-gallery-next { right: 8px !important; }
  .events-page .events-intro .events-gallery-swiper > .swiper-button-prev::after,
  .events-page .events-intro .events-gallery-swiper > .swiper-button-next::after,
  .events-page .events-card-gallery > .events-card-gallery-prev::after,
  .events-page .events-card-gallery > .events-card-gallery-next::after,
  .events-page .events-cards .events-cards-nav > .events-cards-prev::after,
  .events-page .events-cards .events-cards-nav > .events-cards-next::after {
    flex-basis: 12px !important;
    width: 12px !important;
    height: 12px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .events-page .events-gallery-swiper > .swiper-button-prev,
  .events-page .events-gallery-swiper > .swiper-button-next,
  .events-page .events-card-gallery > button,
  .events-page .events-cards .events-cards-nav > button { transition: none; }
}


/* Galerie zdjęć w kartach: NIE dziedziczą wymiarów slajdów zewnętrznych. */
.events-page .events-cards-swiper .events-card-photo { position: relative; }
.events-page .events-cards-swiper .events-card-gallery {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  isolation: isolate;
}
.events-page .events-cards-swiper .events-card-gallery > .swiper-wrapper {
  display: flex;
  width: 100%;
  height: 100%;
}
.events-page .events-cards-swiper .events-card-gallery > .swiper-wrapper > .swiper-slide {
  flex: 0 0 100%;
  width: 100% !important;
  min-width: 0;
  max-width: none;
  height: 100%;
}
.events-page .events-cards-swiper .events-card-gallery > .swiper-wrapper > .swiper-slide > .events-photo {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* Jawna widoczność nawigacji galerii kart, również w zagnieżdżonym Swiperze. */
.events-page .events-card-photo .events-card-gallery > .events-card-gallery-prev,
.events-page .events-card-photo .events-card-gallery > .events-card-gallery-next {
  appearance: none;
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  top: 50% !important;
  z-index: 30 !important;
  pointer-events: auto !important;
}
.events-page .events-card-photo .events-card-gallery > .events-card-gallery-prev { left: 18px !important; }
.events-page .events-card-photo .events-card-gallery > .events-card-gallery-next { right: 18px !important; }
@media (max-width: 767px) {
  .events-page .events-card-photo .events-card-gallery > .events-card-gallery-prev { left: 8px !important; }
  .events-page .events-card-photo .events-card-gallery > .events-card-gallery-next { right: 8px !important; }
}

/* Empty event subtitles preserve a full typographic line and golden divider.
   The pseudo-content is visually hidden, but keeps the line box height. */
.events-page .events-cards .events-subtitle:empty::before {
  content: "\00a0";
  visibility: hidden;
}

/* Stabilne miejsce na jeden wiersz podtytułu także przy pustym ACF.
   &nbsp; jest emitowane przez PHP, więc wiersz powstaje bez pseudoelementów. */
.events-page .events-cards .events-card-body .events-subtitle {
  box-sizing: border-box;
  min-height: calc(1em * 1.5 + 20px + 1px);
}
.events-page .events-cards .events-card-body .events-subtitle--empty {
  color: transparent !important;
}
@media (min-width: 1200px) {
  .events-page .events-cards .events-card-body .events-subtitle { min-height: 51px; }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .events-page .events-cards .events-card-body .events-subtitle { min-height: 48px; }
}
@media (max-width: 767px) {
  .events-page .events-cards .events-card-body .events-subtitle { min-height: 38px; }
}

/* EVENTS CARDS — compact portrait galleries (source photography 1080×1350, 4:5).
   Scope width to the OUTER swiper only, never nested gallery slides. */
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card.swiper-slide {
  width: min(440px, calc(100vw - 48px));
  max-width: none;
  flex: 0 0 auto;
}
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card > .events-card-photo {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  overflow: hidden;
}
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card > .events-card-photo > .events-photo,
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card > .events-card-photo > .events-card-gallery {
  width: 100%;
  height: 100%;
}
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card > .events-card-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card.swiper-slide {
    width: min(390px, 62vw);
  }
}
@media (max-width: 767px) {
  .events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card.swiper-slide {
    width: min(360px, 82vw);
  }
}

/* EVENTS CARDS — compact, aligned title/subtitle without large blank gaps. */
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body {
  padding-top: 12px;
}
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-heading {
  font-family: 'EB Garamond', Georgia, serif;
  font-size: 26px;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: 0;
  color: #c9ab81;
  height: 60px; /* max two lines; titles sit on the same baseline */
  min-height: 0;
  margin: 0 0 4px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-subtitle {
  box-sizing: border-box;
  display: block;
  font-family: Inter, sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 18px;
  color: #fff;
  height: 41px; /* up to two lines + 4px padding + 1px separator */
  min-height: 0;
  margin: 0 0 9px;
  padding: 0 0 4px;
  border: 0;
  border-bottom: 1px solid #c9ab81;
  overflow: hidden;
  overflow-wrap: anywhere;
}
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-subtitle--empty {
  color: transparent !important;
}
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-richtext {
  margin-top: 0;
}
@media (max-width: 767px) {
  .events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-heading {
    font-size: 24px;
    line-height: 28px;
    height: 56px;
  }
  .events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-subtitle {
    font-size: 15px;
    line-height: 18px;
    height: 41px;
  }
}

/* Events cards — descriptions reduced to 14px on all viewports.
   Keep selector scoped to the outer events-card to avoid other page copy. */
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body .events-richtext,
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body .events-richtext p,
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body .events-richtext li {
  font-size: 14px;
  line-height: 23px;
}

/* EVENTS CARDS — compact text rhythm, keep aligned title/subtitle rows. */
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-richtext,
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-richtext p,
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-richtext li {
  font-size: 14px;
  line-height: 25px;
}
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-richtext p {
  margin: 0 0 10px;
}
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-richtext p:last-child {
  margin-bottom: 0;
}
.events-page .events-cards .events-cards-swiper > .swiper-wrapper > .events-card .events-card-body > .events-subtitle {
  margin-bottom: 9px;
}
