/* ============================ */
/* GLOBALNE USTAWIENIA STRONY   */
/* ============================ */

/* płynne przewijanie do anchorów */
html {
    scroll-behavior: smooth;
}

/* body - czcionka responsywna i odstępy */
body {
    font-size: clamp(13px, 1vw, 17px);
    line-height: 1.7;
}

/* nagłówki responsywne */
h1 {
    font-size: clamp(28px, 4vw, 52px);
    line-height: 1.2;
    font-weight: 700;
}

h2 {
    font-size: clamp(22px, 3vw, 38px);
    line-height: 1.3;
    font-weight: 600;
}

h3 {
    font-size: clamp(18px, 2.2vw, 28px);
    font-weight: 600;
}

h4 {
    font-size: clamp(16px, 1.8vw, 24px);
}

/* paragrafy i listy */
p, li {
    font-size: clamp(13px, 1vw, 17px);
}

/* naprzemienne tła dla sekcji */
section:nth-of-type(even) {
    background-color: #ffffff; /* biały */
}

section:nth-of-type(odd) {
    background-color: #f5f5f5; /* jasny szary */
}

/* animowane linki */
.custom-link a {
    color: #0d6efd;
    text-decoration: none;
    font-weight: normal;
    transition: font-weight 0.2s ease;
}

.custom-link a:hover {
    font-weight: 500;
}


/* ============================ */
/* NAVBAR / PRZYCISK KONTAKT    */
/* ============================ */

.nav-link {
    font-size: clamp(14px, 1vw, 18px);
    font-weight: 500;
    transition: color 0.2s ease;
}

.nav-link:hover {
    color: #fff;
}

.btn {
    font-size: clamp(14px, 1vw, 18px);
    padding: 0.5rem 1rem;
}

/* ============================ */
/* HERO / SEKCJA STARTOWA       */
/* ============================ */

#hero {
    position: relative;
    height: 100vh;
    background-image: url('../media/image_1.JPG'); /* ? */
    background-size: cover;          /* dopasowanie zdjęcia */
    background-position: center;     /* wyśrodkowanie */
    background-repeat: no-repeat; 
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: white;
}

.hero-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.55);
}

.hero-content {
    position: relative;
    z-index: 2;
    padding: 0 1rem;
    max-width: 900px;
}

#hero h1 {
    font-size: clamp(32px, 6vw, 70px);
    font-weight: 700;
}

#hero p {
    font-size: clamp(16px, 2vw, 26px);
    line-height: 1.6;
    margin-top: 1rem;
}

.opis {
    font-size: clamp(13px, 1vw, 17px);
    line-height: 1.7;
    color: #555;
}

/* ============================ */
/* O NAS / ZDJĘCIA I TEKST      */
/* ============================ */

#o-nas p {
    font-size: clamp(14px, 1.1vw, 18px);
    line-height: 1.75;
}

/* zaokrąglone zdjęcia */
#o-nas img {
    border-radius: 12px;
    object-fit: cover;
}

/* odstępy między wierszami */
#o-nas .row {
    margin-bottom: 4rem;
}

#o-nas .row:last-child {
    margin-bottom: 0;
}

/* opcjonalna klasa dla naprzemiennego układu (zdjęcie-lewo/tekst-prawo, odwrotnie) */
.row.flex-lg-row-reverse {
    flex-direction: row-reverse !important;
}

/* ============================ */
/* ZESPÓŁ / ZDJĘCIA OSÓB        */
/* ============================ */

#zespol img {
    border-radius: 12px;
    object-fit: cover;
}

/* maksymalna wysokość dużego zdjęcia zespołu */
#zespol .team-photo {
    max-height: 500px;
    width: 100%;
}

/* ============================ */
/* AKTUALNOŚCI                  */
/* ============================ */

/* kafelki aktualności */
.news-card {
    text-decoration: none;
    color: inherit;
    transition: transform .25s ease, box-shadow .25s ease;
}

.news-card img {
    border-radius: 12px;
}

.news-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.25);
}

/* ustawienia strzałek karuzeli */
#newsCarousel .carousel-control-prev,
#newsCarousel .carousel-control-next {
    width: 5%;
}

#newsCarousel .carousel-control-prev-icon,
#newsCarousel .carousel-control-next-icon {
    filter: invert(1);
}

/* wyśrodkowanie treści */
#newsCarousel .carousel-item {
    padding: 10px 0;
}

/* ============================ */
/* PARTNERZY                    */
/* ============================ */

.center-content {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* ============================ */
/* DOŁĄCZ DO NAS                */
/* ============================ */

/* jasnoszare tło sekcji */
.bg-alt {
    background: #f7f7f7;
}

/* efekt hover spójny z partnerami i aktualnościami */
.card-hover {
    transition: transform .25s ease, box-shadow .25s ease;
}

.card-hover:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.15);
}

/* ikony w kafelkach DOŁĄCZ DO NAS */
.icon-card {
    max-width: 120px;   /* ogranicza szerokość obrazków */
    height: auto;
    margin: 0 auto;
    display: block;
}

/* kafelki nie zajmują całej szerokości */
#dolacz-do-nas .card {
    width: 100%;
    max-width: 250px;   /* maksymalna szerokość kafelka */
    margin: 0 auto;
}

/* efekt hover */
.card-hover:hover {
    transform: translateY(-5px);
    transition: transform 0.3s ease;
}

/* ============================ */
/* FOOTER                       */
/* ============================ */

footer a {
    text-decoration: none;
}

/* ============================ */
/* SEKCJE OGÓLNE / ODSTĘPY     */
/* ============================ */

section {
    scroll-margin-top: 90px;
    padding-top: 4rem;
    padding-bottom: 4rem;
}

/* ============================ */
/* RESPONSYWNOŚĆ / MEDIA QUERY */
/* ============================ */

@media (max-width: 768px) {
    #hero h1 {
        font-size: 2rem;
    }
    #hero p {
        font-size: 1rem;
    }

    .row.flex-lg-row-reverse {
        flex-direction: column !important;
    }
}
