* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: #333; /* Szare tło */
    font-family: 'Barlow Condensed', sans-serif; /* Użycie fontu Barlow Condensed */
}

.slider {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 50%; /* Proporcje 2:1 */
    overflow: hidden;
}

.slides {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.slide {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0; /* Domyślnie ukryty */
    transition: opacity 1s ease; /* Płynne przejście dla opacności */
}

.slide img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Zachowuje proporcje zdjęć */
}

/* Efekt przenikania */
.fade {
    opacity: 0; /* Na początku przezroczysty */
}

.fade.show {
    opacity: 1; /* Po dodaniu klasy, staje się widoczny */
}

/* Styl dla kontenera slidera */
.slider {
    position: relative; /* Pozwala na pozycjonowanie elementów w środku */
    width: 100%;
    height: auto; /* Automatyczna wysokość, aby dostosować się do obrazków */
}

/* Styl dla napisów na sliderze */
.slider-caption {
    position: absolute;
    top: 80%; /* Ustawienie wyśrodkowania */
    left: 50%; /* Wyśrodkowanie w poziomie */
    transform: translate(-50%, -60%); /* Przesunięcie, aby wycentrować w obu osiach */
    text-align: center;
    z-index: 2; /* Zapewnia, że napis będzie nad slajdami */
    color: white; /* Kolor napisu */
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7); /* Dodanie cienia */
}

/* Styl dla górnej części napisu */
.caption-top {
    font-size: 2em; /* Duży rozmiar czcionki */
    font-weight: bold; /* Opcjonalnie pogrubienie */
}

/* Styl dla dolnej części napisu */
.caption-bottom {
    font-size: 1.1em; /* Połowa rozmiaru fontu względem górnego */
    margin-top: 5px; /* Dystans między górnym a dolnym tekstem */
    font-weight: 100; /* Lżejszy font, jeśli chcesz uzyskać delikatniejszy efekt */
}






/* Styl dla stopki */
.footer {
    text-align: center; /* Wyśrodkowanie tekstu */
    background-color: rgba(255, 255, 255, 0.1); /* Przezroczyste tło (10%) */
    color: white; /* Biały kolor tekstu */
    padding: 20px 0; /* Padding górny i dolny */
    position: relative; /* Może być potrzebne, aby upewnić się, że stopka będzie dobrze pozycjonowana */
    width: 100%; /* Pełna szerokość */
    bottom: 0; /* Przypinanie do dołu kontenera */
}

/* Styl dla kontenera menu */
.menu-container {
    display: flex; /* Umożliwia elastyczne pozycjonowanie */
    justify-content: space-between; /* Rozkłada elementy na boki */
    align-items: center; /* Wyrównuje elementy w pionie */
    max-width: 1440px; /* Maksymalna szerokość kontenera */
    margin: 0 auto; /* Wyśrodkowanie kontenera */
    padding: 20px; /* Padding wewnętrzny */
    position: absolute; /* Umożliwia nakładanie się na slider */
    top: 0; /* Przypinanie do góry */
    left: 0; /* Przypinanie do lewej */
    right: 0; /* Przypinanie do prawej */
    z-index: 10; /* Upewnia się, że menu jest nad sliderem */
}

/* Styl dla logo */
.logo {
    max-width: 25%; /* Ogranicza szerokość logo do 25% szerokości kontenera */
    max-height: 60px; /* Zachowuje proporcje logo */
}

/* Styl dla linków w menu */
.menu-container a {
    font-family: 'Barlow Condensed', sans-serif; /* Użyj tego samego fontu co w stopce */
    color: white; /* Ustala kolor tekstu na biały */
    text-decoration: none; /* Usuwa podkreślenia z linków */
    padding: 10px 10px; /* Padding dla większej klikalności */
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8); /* poziomy, pionowy, rozmycie, kolor */
}

/* Styl dla linków w menu na hover */
.menu-container a:hover {
    opacity: 0.7; /* Efekt przejrzystości przy najechaniu myszką */
    background-color: #000;
    border-radius: 5px;
}

.hamburger {
    display: none; /* Ukrycie hamburgera domyślnie */
    font-size: 24px; /* Rozmiar czcionki dla hamburgera */
    cursor: pointer; /* Kursor wskazujący */
    color: white; /* Ustawienie koloru hamburgera na biały */
    background: transparent; /* Tło przezroczyste */
    border: none; /* Brak obramowania */
}

/* Styl dla galerii */
.gallery {
    display: grid;
    grid-template-columns: repeat(5, 1fr); /* 5 kolumn dla dużych ekranów */
    gap: 0; /* Odległość między miniaturkami */
    width: 100%; /* 100% szerokości */
}

.gallery-img {
    width: 100%;
    filter: brightness(80%); /* Przyciemnienie miniatur */
    transition: filter 0.2s; /* Płynna zmiana jasności */
    cursor: pointer; /* Zmiana kursora przy najechaniu */
}

/* Efekt hover */
.gallery-img:hover {
    filter: brightness(100%); /* Rozjaśnienie po najechaniu */
}

/* Responsywność */
@media (max-width: 1024px) {
    .gallery {
        grid-template-columns: repeat(3, 1fr); /* 3 kolumny dla tabletów */
    }
}

@media (max-width: 768px) {
    .gallery {
        grid-template-columns: repeat(2, 1fr); /* 2 kolumny dla pionowego iPada */
    }
}

@media (max-width: 480px) {
    .gallery {
        grid-template-columns: repeat(2, 1fr); /* 2 kolumny dla telefonów */
    }
}

/* Lightbox */
.lightbox {
    display: none; /* Ukryty domyślnie */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8); /* Przezroczyste tło */
    justify-content: center;
    align-items: center;
    z-index: 1000; /* Wyższy poziom z-index */
}

.close {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 40px;
    color: white;
    cursor: pointer;
}

.nav {
    position: absolute;
    top: 50%;
    width: 100%;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
}

.prev, .next {
    font-size: 40px;
    color: white;
    cursor: pointer;
}

/* Media queries dla hamburger menu */
@media (max-width: 768px) {
    .nav-links {
        display: none; /* Ukrycie odnośników w menu na mniejszych ekranach */
        flex-direction: column; /* Układ w kolumnie */
        position: absolute; /* Pozycjonowanie absolutne */
        top: 100%; /* Tuż pod menu */
        right: 0; /* Do prawej */
        background: rgba(0, 0, 0, 0.8); /* Czarny kolor tła z przezroczystością 80% */
        width: 100%; /* Szerokość na cały ekran */
        z-index: 10; /* Ustawienie z-index, aby menu było nad innymi elementami */
    }

    .nav-links.active {
        display: flex; /* Pokazanie odnośników, gdy są aktywne */
    }

    .hamburger {
        display: block; /* Pokazanie hamburgera na mniejszych ekranach */
    }
}

/* Lightbox */
.lightbox img {
    max-width: 90vw;  /* Skalowanie obrazu do 90% szerokości okna */
    max-height: 90vh; /* Skalowanie obrazu do 90% wysokości okna */
    object-fit: contain;  /* Dopasowanie proporcji bez przycinania */
}

.footer-icon {
    width: auto; /* Ustaw szerokość obrazka */
    height: 20px; /* Automatyczna wysokość, aby zachować proporcje */
    margin-left: 10px; /* Odstęp od tekstu */
    margin-top: 10px;
	vertical-align: middle; /* Wyrównanie obrazka do środka tekstu */
}
.description {
    margin: 20px auto;
    padding: 20px;
    max-width: 800px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 1.2rem;
    line-height: 1.6;
    text-align: center;
    color: white;
}

/* Styl dla linków w stopce */
.footer a {
    font-family: 'Barlow Condensed', sans-serif; /* Użyj tego samego fontu co w menu */
    color: white; /* Ustala kolor tekstu na biały */
    text-decoration: none; /* Usuwa podkreślenia z linków */
    padding: 10px 10px; /* Padding dla większej klikalności */
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8); /* Dodanie cienia */
}

/* Styl dla linków w stopce na hover */
.footer a:hover {
    opacity: 0.7; /* Efekt przejrzystości przy najechaniu myszką */
    background-color: #000; /* Tło zmienia się na czarne */
    border-radius: 5px; /* Dodanie zaokrąglonych rogów */
}

ul {
  list-style-type: square; /* lub circle, disc, none */
  padding-left: 40px;
}

a {
    color: white; /* Kolor tekstu białego */
    text-decoration: none; /* Usuwa podkreślenie */
}
a:hover {
    color: white; /* Zachowaj biały kolor */
    text-decoration: none; /* Nie dodawaj podkreślenia */
}
