/*
Theme Name: gtc30
Theme URI: https://wordpress.org/themes/lubgutenstarter/
Author:  Coolbrand
Author URI: https://wordpress.org/
Description: Enviroment with Gulp, Sass and another else.
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, two-columns, right-sidebar, accessibility-ready, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-images, flexible-header, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready, blog
Text Domain: lubgutenstarter
*/

.wpcf7 .form-parents .form-item textarea,
.wpcf7 .form-parents .form-row textarea {
  background-color: #f5f5f5 !important;
  border: none;
  border-radius: 20px;
  padding: 14px 10px;
  width: calc(100% - 20px);
}

/* Ukryj opisy pozycji menu w Max Mega Menu */
.mega-menu .mega-menu-item .mega-menu-link .mega-description,
.mega-menu .mega-menu-item .mega-menu-link .mega-menu-description {
  display: none !important;
}

.site-header-main,
.site-header-menu {
  width: 100%;
}

.archive-title {
  text-align: center;
}

/* 3 losowe wycieczki – zawsze równo w kontenerze */
.wycieczki-related {
  width: 100%;
  margin: 40px 0;
}

.wycieczki-related__title {
  margin: 0 0 18px 0;
}

.wycieczki-related__name {
  font-size: 20px;
}

.wycieczki-related__grid {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  width: 100%;
}

.wycieczki-related__item {
  -webkit-box-flex: 0;
  flex: 0 0 calc((100% - 40px) / 3);
  /* 3 kolumny, 2 przerwy po 20px */
  max-width: calc((100% - 40px) / 3);
}

.wycieczki-related__card {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.wycieczki-related__thumb img {
  display: block;
  width: 100%;
  height: auto;
}

/* Tablet: 2 w rzędzie */
@media (max-width: 1024px) {
  .wycieczki-related__item {
    -webkit-box-flex: 0;
    flex: 0 0 calc((100% - 20px) / 2);
    max-width: calc((100% - 20px) / 2);
  }
}

/* Telefon: 1 w rzędzie */
@media (max-width: 640px) {
  .wycieczki-related__item {
    -webkit-box-flex: 0;
    flex: 0 0 100%;
    max-width: 100%;
  }
}

.wp-block-buttons .wp-block-button__link {
  min-width: 150px;
}

.wp-block-columns.is-layout-flex.wp-container-core-columns-is-layout-9d6595d7.wp-block-columns-is-layout-flex {
  width: 100%;
}

#mega-menu-wrap-primary #mega-menu-primary {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
}

.trip-cta,
.read-more-link,
.wycieczki-related__cta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  width: 150px;
  height: 43px;
  background-color: #3c8c45;
  border-radius: 9999px;
  color: #fff !important;
  font-size: 16px;
  margin: 0 auto;
}

.image-box-link figure {
  margin-left: auto;
  margin-right: auto;
}

.image-box-link p.nagl1,
.image-box-link p.nagl2 {
  text-align: center;
}

.mega-sub-menu {
  padding-left: 1px !important;
}

body.home,
body.archive,
body.home,
body.page,
body.wp-singular {
  background-color: #fff !important;
}

body .trip-posts .trip-box {
  background-color: #f5f5f5 !important;
}

body header.wp-block-template-part {
  background-color: #ffffff !important;
  padding: 0 !important;
  border-top: 1px solid #f5f5f5;
  border-bottom: 1px solid #f5f5f5;
}

/* ================================
   SHORTCODE: [wycieczki_egzotyka_5]
   Układ: 4 małe (lewa) + 1 duża (prawa)
================================ */

.wycieczki-egzotyka {
  margin: 32px 0;
}

.wycieczki-egzotyka__title {
  margin: 0 0 16px;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 700;
}

/* 2 kolumny: lewa (2x2) + prawa (big) */
.wycieczki-egzotyka__layout {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 16px;
  -webkit-box-align: stretch;
  align-items: stretch;
}

/* lewa siatka 2x2 */
.wycieczki-egzotyka__left {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

/* prawa 1 kafel (wysokość = lewa) */
.wycieczki-egzotyka__right {
  height: 100%;
}

/* karta */
.wycieczki-egzotyka__card {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 14px;
  overflow: hidden;
  text-decoration: none;
}

/* obrazek */
.wycieczki-egzotyka__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
  -webkit-transform: scale(1.01);
  transform: scale(1.01);
  -webkit-transition: -webkit-transform .25s ease;
  transition: -webkit-transform .25s ease;
  transition: transform .25s ease;
  transition: transform .25s ease, -webkit-transform .25s ease;
}

/* overlay (ciemny gradient jak na kaflach) */
.wycieczki-egzotyka__overlay {
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear,
      left top, left bottom,
      from(rgba(0, 0, 0, 0.15)),
      color-stop(65%, rgba(0, 0, 0, 0.55)),
      to(rgba(0, 0, 0, 0.75)));
  background: linear-gradient(180deg,
      rgba(0, 0, 0, 0.15) 0%,
      rgba(0, 0, 0, 0.55) 65%,
      rgba(0, 0, 0, 0.75) 100%);
  pointer-events: none;
}

/* tytuł na dole */
.wycieczki-egzotyka__name {
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  z-index: 3;
  color: #fff;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.15;
  text-shadow: 0 2px 10px rgba(0, 0, 0, .35);
  text-align: center;
}

/* badge w lewym górnym rogu (jeśli używasz) */
.wycieczki-egzotyka__badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 3;
  background: rgba(255, 255, 255, 0.92);
  color: #111;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .03em;
  padding: 6px 10px;
  border-radius: 999px;
}

/* wysokości kafli */
.wycieczki-egzotyka__tile--small {
  min-height: 180px;
  /* dopasuj pod screen */
}

.wycieczki-egzotyka__tile--big {
  height: 100%;
  min-height: calc(180px * 2 + 16px);
  /* 2 rzędy + gap */
}

/* hover */
.wycieczki-egzotyka__card:hover .wycieczki-egzotyka__img {
  -webkit-transform: scale(1.06);
  transform: scale(1.06);
}

/* RESPONSYWNOŚĆ */
@media (max-width: 980px) {
  .wycieczki-egzotyka__layout {
    grid-template-columns: 1fr;
  }

  .wycieczki-egzotyka__tile--big {
    min-height: 280px;
  }
}

@media (max-width: 560px) {
  .wycieczki-egzotyka__left {
    grid-template-columns: 1fr;
  }

  .wycieczki-egzotyka__tile--small {
    min-height: 200px;
  }
}

/* ================================
   SHORTCODE: [wycieczki_egzotyka_5]
   Układ: 4 małe (lewa) + 1 duża (prawa)
================================ */

.wycieczki-egzotyka {
  margin: 32px 0;
}

.wycieczki-egzotyka__title {
  margin: 0 0 16px;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 700;
}

/* 2 kolumny: lewa (2x2) + prawa (big) */
.wycieczki-egzotyka__layout {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 16px;
  -webkit-box-align: stretch;
  align-items: stretch;
}

/* lewa siatka 2x2 */
.wycieczki-egzotyka__left {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

/* prawa kolumna */
.wycieczki-egzotyka__right {
  height: 100%;
}

/* kafel (kontener) */
.wycieczki-egzotyka__tile--small {
  min-height: 180px;
}

.wycieczki-egzotyka__tile--big {
  height: 100%;
  min-height: calc(180px * 2 + 16px);
  /* 2 rzędy + gap */
}

/* karta */
.wycieczki-egzotyka__card {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 14px;
  overflow: hidden;
  text-decoration: none;
}

/* obrazek */
.wycieczki-egzotyka__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
  -webkit-transform: scale(1.01);
  transform: scale(1.01);
  -webkit-transition: -webkit-transform .25s ease;
  transition: -webkit-transform .25s ease;
  transition: transform .25s ease;
  transition: transform .25s ease, -webkit-transform .25s ease;
}

/* overlay - gradient */
.wycieczki-egzotyka__overlay {
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear,
      left top, left bottom,
      from(rgba(0, 0, 0, 0.10)),
      color-stop(65%, rgba(0, 0, 0, 0.52)),
      to(rgba(0, 0, 0, 0.78)));
  background: linear-gradient(180deg,
      rgba(0, 0, 0, 0.10) 0%,
      rgba(0, 0, 0, 0.52) 65%,
      rgba(0, 0, 0, 0.78) 100%);
  pointer-events: none;
}

/* tytuł na dole */
.wycieczki-egzotyka__name {
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  z-index: 3;
  color: #fff;
  font-weight: 800;
  font-size: 18px;
  line-height: 1.15;
  text-shadow: 0 2px 10px rgba(0, 0, 0, .35);
}

/* BADGE: biały pill na górze */
.wycieczki-egzotyka__badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 3;
  background: rgba(255, 255, 255, 0.96);
  color: #111;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .04em;
  padding: 6px 10px;
  border-radius: 999px;
  text-transform: uppercase;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .18);
}

/* badge na dużym: większy */
.wycieczki-egzotyka__badge--big {
  font-size: 13px;
  padding: 7px 12px;
}

/* hover */
.wycieczki-egzotyka__card:hover .wycieczki-egzotyka__img {
  -webkit-transform: scale(1.06);
  transform: scale(1.06);
}

/* RESPONSYWNOŚĆ */
@media (max-width: 980px) {
  .wycieczki-egzotyka__layout {
    grid-template-columns: 1fr;
  }

  .wycieczki-egzotyka__tile--big {
    min-height: 280px;
  }
}

@media (max-width: 560px) {
  .wycieczki-egzotyka__left {
    grid-template-columns: 1fr;
  }

  .wycieczki-egzotyka__tile--small {
    min-height: 200px;
  }
}

body .custom-menu {
  flex-wrap: wrap;
  row-gap: 40px;
}

@media (max-width: 1050px) {
  body #mega-menu-wrap-primary .mega-menu-toggle+#mega-menu-primary {
    height: unset;
    top: 0px;
  }

  #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row .mega-menu-column>ul.mega-sub-menu>li.mega-menu-item {
    padding: 5px 15px !important;
  }
}

body .pro-tour .tour-item .icon-day {
  min-width: 90px;
}

/* FULL WIDTH mega-sub-menu dla "Oferta" (#mega-menu-item-51) */
@media (min-width:1051px) {

  /* to jest UL mega-sub-menu, które ma się rozciągać */
  #mega-menu-wrap-primary #mega-menu-item-51>ul.mega-sub-menu {
    position: absolute !important;
    left: calc(50% + 25px) !important;
    right: auto !important;
    -webkit-transform: translateX(-50%) !important;
    transform: translateX(-50%) !important;
    width: 100vw !important;
    max-width: 100vw !important;
  }

  /* marginesy i kontenerowanie zawartości wewnątrz (żeby nie było “od krawędzi do krawędzi”) */
  #mega-menu-wrap-primary #mega-menu-item-51>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu {
    box-sizing: border-box !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
    max-width: 100% !important;
    /* ustaw wg potrzeb */
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width:1050px) {

  /* 1) Zdejmij ograniczenia wysokości z kontenerów MMM */
  #mega-menu-wrap-primary,
  #mega-menu-wrap-primary .mega-menu-toggle,
  #mega-menu-wrap-primary .mega-menu-toggle+#mega-menu-primary,
  #mega-menu-primary {
    max-height: none !important;
    overflow: visible !important;
  }

  /* 2) GŁÓWNY SCROLL: tylko na submenu Oferty (mmm-current) */
  #mega-menu-primary.mmm-drilldown-active>li.mmm-current>.mega-sub-menu {
    display: block !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    -ms-scroll-chaining: none;
    overscroll-behavior: contain;

    /* zostawiamy miejsce na sticky Wstecz + górny pasek */
    max-height: calc(100vh - 120px) !important;
    padding-bottom: 90px !important;
    /* żeby ostatni element nie chował się pod dołem */
  }

  /* 3) Jeśli MMM ukrywa coś wewnątrz */
  #mega-menu-primary.mmm-drilldown-active>li.mmm-current {
    overflow: visible !important;
  }

  /* 4) (opcjonalnie) gdyby tło/warstwa blokowała dotyk */
  #mega-menu-wrap-primary .mega-menu-toggle+#mega-menu-primary {
    touch-action: pan-y !important;
  }
}

@media (max-width:1050px) {
  #mega-menu-primary.mmm-drilldown-active>li.mmm-current>.mega-sub-menu * {
    max-height: none !important;
  }

  #mega-menu-primary.mmm-drilldown-active>li.mmm-current>.mega-sub-menu {
    height: auto !important;
  }
}

body .home-baner figure {
  border-radius: 0;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  height: 500px;
}

body footer {
  background-color: var(--wp--preset--color--links) !important;
}

@media (max-width: 781px) {
  .home-baner .wp-block-search__button-inside.wp-block-search__icon-button.wp-block-search {
    position: absolute !important;
  }
}

body .wp-site-blocks{
padding-top: 0;
}
.home-baner figure img{
  -o-object-position: top !important;
     object-position: top !important;
}