/*
Theme Name: Infine Child
Template:   infine
Theme URI: https://1.envato.market/infine-wp
Description: Life and Business Coach WordPress Theme
Author: Awaiken
Author URI: https://awaikenthemes.com/
Version: 1.0.0
Text Domain: infine-child
*/

/* Dolne Menu Mobilne */
    @media (max-width: 768px) {
        .mobile-bottom-bar-2025 { 
            position: fixed; bottom: 0; left: 0; width: 100%;
            background-color: #3e3e3f;
            display: flex; justify-content: space-around; align-items: stretch;
            z-index: 9999; border-top: 1px solid #2d2d2e;
            padding: 10px 0; /* więcej tła u góry i na dole */
        }
        .mobile-bottom-bar-2025 .bar-item {
            flex: 1;
            text-align: center; font-family: 'Poppins', sans-serif;
            font-size: 10px; line-height: 1.1;
            display: flex; align-items: center; justify-content: center;
            position: relative;
        }
        /* Pionowa kreska #606060 między kolumnami (bez ostatniej) */
        .mobile-bottom-bar-2025 .bar-item:not(:last-child) {
            border-right: 1px solid #606060;
        }

        /* Zawartość kolumny: cała kolumna jako link/blok */
        .mobile-bottom-bar-2025 .bar-link {
            display: flex; flex-direction: column; align-items: center; justify-content: center;
            width: 100%; height: 100%;
            text-decoration: none;
        }

        /* Ikony tylko w pasku – rozmiar (bez marginów, by nie dotykać popupu) */
        .mobile-bottom-bar-2025 .bar-link > img {
            width: 18px; height: 18px;
            display: inline-block;
        }

        /* Etykiety tylko w pasku: złote + odstęp 8px nad napisem (działa w każdej kolumnie) */
        .mobile-bottom-bar-2025 .bar-label { 
            color: #e5d270;
            font-size: 10px;
            margin-top: 8px; /* odstęp między ikoną/flagą a napisem */
            display: inline-block;
        }

        /* Kolumna 1: Język – napis biały; brak filtrów/kolorowań narzucanych na potomków */
        .mobile-bottom-bar-2025 .bar-item--lang .bar-label { color: #ffffff; }

        /* Ikony białe w kolumnach 2–5 (tylko ikonka w pasku) */
        .mobile-bottom-bar-2025 .bar-item--w1 .bar-link > img,
        .mobile-bottom-bar-2025 .bar-item--w2 .bar-link > img,
        .mobile-bottom-bar-2025 .bar-item--w3 .bar-link > img,
        .mobile-bottom-bar-2025 .bar-item--menu .bar-link > img {
            filter: invert(100%) brightness(100%) !important;
        }

        /* Spacer, by treść nie wpadała pod pasek (ok. 60px przy paddingu) */
        .mobile-bottom-bar-spacer { display: block; height: 60px; }
    }
    @media (min-width: 769px) {
        .mobile-bottom-bar-2025, .mobile-bottom-bar-spacer { display: none; }
    }


/* Slajdery - Karuzele działające na przesuwaniu KOLUMN i ich zawartości */
/* ============================================================== MOBILE: pozioma karuzela dla .galeria-slajder1 === */
/* === Strzałki #1 – ukryte na desktop/tablet === */
.galeria-slajder1-arrows { 
  display: none !important; 
}

/* === MOBILE: Slajder #1 === */
@media (max-width: 767px) {

  /* Kontener + miejsce na strzałki */
  .galeria-slajder1 {
    position: relative;
    padding-bottom: 50px;
    overscroll-behavior-x: contain;
  }

  /* Tor przewijania */
  .galeria-slajder1 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 0 12px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Ukryj scrollbar */
  .galeria-slajder1 > .e-con-inner::-webkit-scrollbar { 
    display: none !important; 
  }
  .galeria-slajder1 > .e-con-inner { 
    scrollbar-width: none !important; 
  }

  /* Każdy slajd (kolumna) */
  .galeria-slajder1 .kolumna-slajder1 {
    flex: 0 0 80% !important;
    max-width: 80% !important;
    min-width: 0 !important;
    scroll-snap-align: center !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* Image-box */
  .galeria-slajder1 .elementor-image-box-wrapper {
    display: flex; 
    flex-direction: column; 
    gap: 8px;
  }

  .galeria-slajder1 .elementor-image-box-img img {
    display: block; 
    width: 100%; 
    height: auto; 
    object-fit: cover; 
    max-width: 100%;
  }

  .galeria-slajder1 .elementor-image-box-title { 
    margin: 0; 
    font-size: 1rem; 
    line-height: 1.2; 
  }

  .galeria-slajder1 .elementor-image-box-description { 
    margin: 0; 
    font-size: 0.9rem; 
    line-height: 1.35; 
  }

  /* === Strzałki – 200px od góry, po bokach ekranu === */
  .galeria-slajder1-arrows {
    position: absolute;
    top: 200px; /* <-- TU USTAWIAMY WYSOKOŚĆ STRZAŁEK */
    left: 0;
    width: 100%;
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    z-index: 9999;
    pointer-events: none;
  }

  /* Klikalność tylko na przyciskach */
  .galeria-slajder1-arrows button {
    pointer-events: auto;
    -webkit-tap-highlight-color: transparent;
    background: #fff !important;
    border: 1px solid #000 !important;
    color: #000 !important;
    width: 36px; 
    height: 36px; 
    border-radius: 50%;
    display: flex; 
    align-items: center; 
    justify-content: center;
    padding: 0 !important; 
    box-shadow: none !important; 
    outline: none !important;
    cursor: pointer;
    font-size: 0 !important;
    line-height: 1 !important;
    position: relative;
  }

  /* Lewa strzałka */
  .galeria-slajder1-arrows .gs1-prev {
    margin-left: 10px;
  }

  /* Prawa strzałka */
  .galeria-slajder1-arrows .gs1-next {
    margin-right: 10px;
  }

  /* Symbol strzałki */
  .galeria-slajder1-arrows .gs1-prev::before,
  .galeria-slajder1-arrows .gs1-next::before {
    content: "";
    display: inline-block;
    position: relative;
    font-size: 28px;
    line-height: 1;
    color: #000;
    top: -3px;
  }

  .galeria-slajder1-arrows .gs1-prev::before { content: "‹"; }
  .galeria-slajder1-arrows .gs1-next::before { content: "›"; }

  /* Interakcje */
  .galeria-slajder1-arrows button:hover,
  .galeria-slajder1-arrows button:focus,
  .galeria-slajder1-arrows button:active {
    background: #fff !important; 
    color: #000 !important; 
    border-color: #000 !important;
    box-shadow: none !important; 
    outline: none !important;
  }
}

/* === DESKTOP/TABLET === */
@media (min-width: 768px) {
  .galeria-slajder1 > .e-con-inner {
    overflow: visible !important;
    scroll-snap-type: none !important;
  }
}

/* === Styl modułu obrazka === */
.modul-slajder1 .elementor-image-box-content {
  background: #fff !important; 
  padding: 12px 15px !important;
  border-radius: 0 0 10px 10px; 
  box-sizing: border-box;
}

.modul-slajder1 .elementor-image-box-img { 
  position: relative; 
  overflow: hidden; 
  border-radius: 0; 
}

.modul-slajder1 .elementor-image-box-img img {
  display: block; 
  width: 100%; 
  height: auto; 
  max-width: 100%;
  object-fit: cover; 
  transition: transform 0.6s ease;
}

.modul-slajder1 .elementor-image-box-img:hover img { 
  transform: scale(1.05); 
}

.modul-slajder1 .elementor-image-box-img::after {
  content: ""; 
  position: absolute; 
  width: 200%; 
  height: 0%;
  left: 50%; 
  top: 50%; 
  background-color: rgba(255,255,255,.3);
  transform: translate(-50%,-50%) rotate(-45deg); 
  z-index: 1;
}

.modul-slajder1 .elementor-image-box-img:hover::after {
  height: 250%; 
  transition: all 600ms linear; 
  background-color: transparent;
}

/* ============================================================== MOBILE: pozioma karuzela dla .galeria-slajder3 === */
/* === Strzałki #3 – ukryte na desktop/tablet === */
.galeria-slajder3-arrows { 
  display: none !important; 
}

@media (max-width: 767px) {

  /* Kontener + miejsce na strzałki */
  .galeria-slajder3 {
    position: relative;
    padding-bottom: 50px;
    overscroll-behavior-x: contain;
  }

  /* Tor przewijania */
  .galeria-slajder3 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 0 12px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Ukryj scrollbar */
  .galeria-slajder3 > .e-con-inner::-webkit-scrollbar { 
    display: none !important; 
  }
  .galeria-slajder3 > .e-con-inner { 
    scrollbar-width: none !important; 
  }

  /* Każdy slajd (kolumna) */
  .galeria-slajder3 .kolumna-slajder3 {
    flex: 0 0 80% !important;
    max-width: 80% !important;
    min-width: 0 !important;
    scroll-snap-align: center !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* Image-box */
  .galeria-slajder3 .elementor-image-box-wrapper {
    display: flex; 
    flex-direction: column; 
    gap: 8px;
  }

  .galeria-slajder3 .elementor-image-box-img img {
    display: block; 
    width: 100%; 
    height: auto; 
    object-fit: cover; 
    max-width: 100%;
  }

  .galeria-slajder3 .elementor-image-box-title { 
    margin: 0; 
    font-size: 1rem; 
    line-height: 1.2; 
  }

  .galeria-slajder3 .elementor-image-box-description { 
    margin: 0; 
    font-size: 0.9rem; 
    line-height: 1.35; 
  }

  /* === Strzałki – 200px od góry, po bokach ekranu === */
  .galeria-slajder3-arrows {
    position: absolute;
    top: 200px;
    left: 0;
    width: 100%;
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    z-index: 9999;
    pointer-events: none;
  }

  /* Klikalność tylko na przyciskach */
  .galeria-slajder3-arrows button {
    pointer-events: auto;
    -webkit-tap-highlight-color: transparent;
    background: #fff !important;
    border: 1px solid #000 !important;
    color: #000 !important;
    width: 36px; 
    height: 36px; 
    border-radius: 50%;
    display: flex; 
    align-items: center; 
    justify-content: center;
    padding: 0 !important; 
    box-shadow: none !important; 
    outline: none !important;
    cursor: pointer;
    font-size: 0 !important;
    line-height: 1 !important;
    position: relative;
  }

  /* Lewa strzałka */
  .galeria-slajder3-arrows .gs3-prev {
    margin-left: 10px;
  }

  /* Prawa strzałka */
  .galeria-slajder3-arrows .gs3-next {
    margin-right: 10px;
  }

  /* Symbol strzałki */
  .galeria-slajder3-arrows .gs3-prev::before,
  .galeria-slajder3-arrows .gs3-next::before {
    content: "";
    display: inline-block;
    position: relative;
    font-size: 28px;
    line-height: 1;
    color: #000;
    top: -3px;
  }

  .galeria-slajder3-arrows .gs3-prev::before { content: "‹"; }
  .galeria-slajder3-arrows .gs3-next::before { content: "›"; }

  /* Interakcje */
  .galeria-slajder3-arrows button:hover,
  .galeria-slajder3-arrows button:focus,
  .galeria-slajder3-arrows button:active {
    background: #fff !important; 
    color: #000 !important; 
    border-color: #000 !important;
    box-shadow: none !important; 
    outline: none !important;
  }
}

/* === DESKTOP/TABLET === */
@media (min-width: 768px) {
  .galeria-slajder3 > .e-con-inner {
    overflow: visible !important;
    scroll-snap-type: none !important;
  }
}

/* === Styl modułu obrazka === */
.modul-slajder3 .elementor-image-box-content {
  background: #fff !important; 
  padding: 12px 15px !important;
  border-radius: 0 0 10px 10px; 
  box-sizing: border-box;
}

.modul-slajder3 .elementor-image-box-img { 
  position: relative; 
  overflow: hidden; 
  border-radius: 0; 
}

.modul-slajder3 .elementor-image-box-img img {
  display: block; 
  width: 100%; 
  height: auto; 
  max-width: 100%;
  object-fit: cover; 
  transition: transform 0.6s ease;
}

.modul-slajder3 .elementor-image-box-img:hover img { 
  transform: scale(1.05); 
}

.modul-slajder3 .elementor-image-box-img::after {
  content: ""; 
  position: absolute; 
  width: 200%; 
  height: 0%;
  left: 50%; 
  top: 50%; 
  background-color: rgba(255,255,255,.3);
  transform: translate(-50%,-50%) rotate(-45deg); 
  z-index: 1;
}

.modul-slajder3 .elementor-image-box-img:hover::after {
  height: 250%; 
  transition: all 600ms linear; 
  background-color: transparent;
}

/* Slajder działający na siatkę Elementora */
/* ============================================================== MOBILE: karuzela z siatki .kolumna-slajder2 wewnątrz .galeria-slajder2 === */
/* Strzałki ukryte poza mobile */
.galeria-slajder2-arrows { 
  display: none !important; 
}

@media (max-width: 767px) {

  /* zewnętrzny wrapper nie przewija */
  .galeria-slajder2 > .e-con-inner {
    overflow: visible !important;
    padding: 0 !important;
    scroll-snap-type: none !important;
  }

  /* Kontener – pozycjonowanie dla strzałek */
  .galeria-slajder2 {
    position: relative;
    overscroll-behavior-x: contain;
    padding-bottom: 50px; /* opcjonalnie */
  }

  /* TOR KARUZELI = wewnętrzna kolumna-siatka */
  .galeria-slajder2 > .e-con-inner > .kolumna-slajder2.e-grid,
  .galeria-slajder2 > .e-con-inner > .kolumna-slajder2.e-con {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 0 12px !important;
    width: 100% !important;
    max-width: 100% !important;

    /* wyłącz układ grid na mobile */
    grid-template-columns: none !important;
    column-gap: 12px !important;
    row-gap: 0 !important;
  }

  /* ukryj pasek przewijania */
  .galeria-slajder2 > .e-con-inner > .kolumna-slajder2.e-grid::-webkit-scrollbar,
  .galeria-slajder2 > .e-con-inner > .kolumna-slajder2.e-con::-webkit-scrollbar { display: none !important; }
  .galeria-slajder2 > .e-con-inner > .kolumna-slajder2.e-grid,
  .galeria-slajder2 > .e-con-inner > .kolumna-slajder2.e-con { scrollbar-width: none !important; }

  /* każdy slajd */
  .galeria-slajder2 > .e-con-inner > .kolumna-slajder2.e-grid > .modul-slajder2,
  .galeria-slajder2 > .e-con-inner > .kolumna-slajder2.e-con  > .modul-slajder2 {
    flex: 0 0 80% !important;     /* 70%/60% = więcej w kadrze */
    max-width: 80% !important;
    min-width: 0 !important;
    scroll-snap-align: center !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* === Strzałki – styl i położenie jak w #1/#3 === */
  .galeria-slajder2-arrows {
    position: absolute;
    top: 200px;          /* wysokość strzałek; dopasuj wg potrzeby */
    left: 0;
    width: 100%;
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    z-index: 9999;
    pointer-events: none; /* klik poza przyciskiem przechodzi niżej */
  }

  .galeria-slajder2-arrows button {
    pointer-events: auto;                 /* aktywne tylko przyciski */
    -webkit-tap-highlight-color: transparent;
    background: #fff !important;
    border: 1px solid #000 !important;
    color: #000 !important;
    width: 36px; 
    height: 36px; 
    border-radius: 50%;
    display: flex; 
    align-items: center; 
    justify-content: center;
    padding: 0 !important; 
    box-shadow: none !important; 
    outline: none !important;
    cursor: pointer;
    font-size: 0 !important;  /* ukrywa ewentualny znak wewnątrz <button> */
    line-height: 1 !important;
    position: relative;
  }

  /* odsunięcie od krawędzi ekranu jak w #1/#3 */
  .galeria-slajder2-arrows .gs2-prev { margin-left: 10px; }
  .galeria-slajder2-arrows .gs2-next { margin-right: 10px; }

  /* Rysunek strzałek */
  .galeria-slajder2-arrows .gs2-prev::before,
  .galeria-slajder2-arrows .gs2-next::before {
    content: "";
    display: inline-block;
    position: relative;
    font-size: 28px;
    line-height: 1;
    color: #000;
    top: -3px; /* mikro-korekta pionu */
  }
  .galeria-slajder2-arrows .gs2-prev::before { content: "‹"; }
  .galeria-slajder2-arrows .gs2-next::before { content: "›"; }

  .galeria-slajder2-arrows button:hover,
  .galeria-slajder2-arrows button:focus,
  .galeria-slajder2-arrows button:active {
    background: #fff !important; 
    color: #000 !important; 
    border-color: #000 !important;
    box-shadow: none !important; 
    outline: none !important;
  }
}

/* DESKTOP/TABLET: wracamy do siatki */
@media (min-width: 768px) {
  .galeria-slajder2 > .e-con-inner > .kolumna-slajder2.e-grid,
  .galeria-slajder2 > .e-con-inner > .kolumna-slajder2.e-con {
    overflow: visible !important;
    scroll-snap-type: none !important;
  }
}

/* === Estetyka jak w #1/#3 (biały box + „błysk”) === */
.modul-slajder2 .elementor-image-box-content {
  background: #fff !important;
  padding: 12px 15px !important;
  border-radius: 0 0 10px 10px;
  box-sizing: border-box;
}
.modul-slajder2 .elementor-image-box-img { 
  position: relative; 
  overflow: hidden; 
  border-radius: 0; 
}
.modul-slajder2 .elementor-image-box-img img {
  display: block; width: 100%; height: auto; max-width: 100%;
  object-fit: cover; transition: transform .6s ease;
}
.modul-slajder2 .elementor-image-box-img:hover img { transform: scale(1.05); }
.modul-slajder2 .elementor-image-box-img::after{
  content:""; position:absolute; width:200%; height:0%;
  left:50%; top:50%; transform:translate(-50%,-50%) rotate(-45deg);
  background-color:rgba(255,255,255,.3); z-index:1;
}
.modul-slajder2 .elementor-image-box-img:hover::after{
  height:250%; transition:all 600ms linear; background-color:transparent;
}





/* kosmetyka kursora przy przeciąganiu na mobile */
.is-grabbing { cursor: grabbing !important; }
