.hero {
  position: relative;
  height: 93vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  text-align: center;
}

.hero-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.stats-section {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    /* ważne: wyrównaj elementy do góry */
    flex-wrap: nowrap;
    gap: 40px;
    margin: 0 auto;
    padding: 40px 20px;
    color: #4d4c4c;
    text-align: center;
    flex-direction: row;
}

.stat-item {
    flex: 1;
    max-width: 400px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    /* wymusza wyrównanie do góry */
}

.stat-item img {
    width: 100%;
    max-width: 350px;
    height: auto;
    margin-bottom: 25px;
}

.stat-number {
    font-size: 4rem;
    font-weight: 900;
    margin: 0 0 10px 0;
    flex-shrink: 0;
    height: 4.5rem;
    /* stała wysokość, dopasuj do fontu */
    line-height: 4.5rem;
    /* pionowe wyśrodkowanie tekstu w wysokości */
}

.stat-item p {
    font-size: 1.5rem;
    color: black;
    margin: 0;
    text-align: center;
}

/* 🔹 TELEFONY - pionowo (do 480px) */
@media (max-width: 480px) {
    .hero {
        height: auto;
        min-height: 50vh;
    }

    .hero-video {
        object-fit: contain;
        background-color: black;
    }

    .stats-section {
        flex-direction: column;
        gap: 20px;
        padding: 20px 10px;
    }

    .stat-item {
        max-width: 100%;
        flex: 1 1 100%;
    }

    .stat-number {
        font-size: 2.2rem;
    }

    .stat-item p {
        font-size: 1rem;
    }
}

/* 🔹 TELEFONY - poziomo (481px – 767px) */
@media (min-width: 481px) and (max-width: 767px) {
    .hero {
        min-height: 60vh;
    }

    .hero-video {
        object-fit: cover;
    }

    .stats-section {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
    }

    .stat-item {
        max-width: 45%;
        flex: 1 1 45%;
    }

    .stat-number {
        font-size: 2.5rem;
    }

    .stat-item p {
        font-size: 1.1rem;
    }
}

/* 🔹 TABLETY - małe i duże (768px – 1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
    .hero {
        height: auto;
        min-height: 40vh;
    }

    .hero-video {
        object-fit: cover;
    }

    .stats-section {
        flex-wrap: wrap;
        gap: 30px;
        padding: 30px 20px;
    }

    .stat-item {
        max-width: 42%;
        flex: 1 1 42%;
    }

    .stat-number {
        font-size: 3.2rem;
    }

    .stat-item p {
        font-size: 1.3rem;
    }
}

/* 🔹 LAPTOPY - małe (1024px – 1280px) */
@media (min-width: 1024px) and (max-width: 1280px) {
    .hero {
        min-height: 75vh;
    }

    .hero-video {
        object-fit: contain;
        background-color: black;
    }

    .stats-section {
        gap: 35px;
    }

    .stat-item {
        max-width: 20%;
        flex: 1 1 20%;
    }

    .stat-number {
        font-size: 2.2rem;
    }

    .stat-item p {
        font-size: 0.9rem;
    }
}