/* Import czcionki Poppins */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/* --- ZMIANA 2: GLOBALNA TYPOGRAFIA --- */
body {
    font-family: 'Poppins', sans-serif;
    background-color: #050505;
    color: #ffffff;
    /* Usuwamy domyślne marginesy przeglądarki */
    margin: 0;
    padding: 0;
}

/* W nowoczesnym designie nagłówki wyglądają lepiej, gdy litery są blisko siebie */
h1, h2, h3, h4, h5, h6 {
    letter-spacing: -0.03em; /* Tight tracking globalnie */
}

/* --- ZMIANA 5: CUSTOM SCROLLBAR (PASEK PRZEWIJANIA) --- */
/* Działa na Chrome, Edge, Safari */
::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #050505; /* Ciemne tło paska */
}

::-webkit-scrollbar-thumb {
    background: #222; /* Ciemnoszary uchwyt */
    border-radius: 5px;
    border: 2px solid #050505; /* Margines wokół uchwytu */
}

::-webkit-scrollbar-thumb:hover {
    background: #7546E8; /* Fioletowy po najechaniu - efekt premium */
}

/* --- STYLE KART I EFEKTY --- */

.glass-card {
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: blur(0px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        box-shadow: none;
}

/* Upewnij się, że w hover też jest !important */
.glass-card:hover {
    background: rgba(117, 70, 232, 0.05);
    border-color: rgba(117, 70, 232, 0.4);
    transform: translateY(-8px);
        box-shadow: 0 0 10px rgba(117, 70, 232, 0.3);
}

    /* To wymusza wygląd aktywnej karty */
    .group.active {
        border-color: #7546E8 !important;   /* Fioletowa ramka (bez przezroczystości) */
        transform: translateY(-8px);        /* Uniesienie w górę */
        box-shadow: 0 0 10px rgba(117, 70, 232, 0.3); /* Fioletowa poświata */
    }

/* --- ZMIANA 3: WINIETA / GŁĘBIA OBRAZKÓW --- */
/* Dodajemy subtelny cień wewnętrzny do kontenerów z obrazkami, żeby nie były płaskie */
.glass-card img, 
.glass-card video {
    mask-image: linear-gradient(to bottom, black 80%, transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom, black 85%, transparent 100%);
}

/* Fioletowy gradient tekstowy */
.gradient-text-purple {
    background: linear-gradient(135deg, #ffffff 30%, #7546E8 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Rozmyte kule w tle (Ambient Light) */
.purple-blob {
    position: absolute;
    width: 400px;
    height: 400px;
    background: #7546E8;
    filter: blur(140px);
    opacity: 0.12;
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
}

/* Wyrównanie cyfr w liczniku */
.counter-value {
    font-variant-numeric: tabular-nums;
}

::selection {
    background: #7546E8; /* Twój fiolet */
    color: white;
}


@keyframes scan-line {
    0% { transform: translateX(-100%); opacity: 0; }
    20% { opacity: 1; }
    80% { opacity: 1; }
    100% { transform: translateX(300%); opacity: 0; }
}

.animate-scan-line {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    animation: scan-line 4s cubic-bezier(0.4, 0, 0.6, 1) infinite !important;
    will-change: transform;
}


@keyframes marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.animate-marquee {
    animation: marquee 15s linear infinite; /* 15s = prędkość (im mniej tym szybciej) */
}

 html, body {
            max-width: 100% !important;
            overflow-x: hidden !important;
            position: relative;
        }


/* Animacja TYLKO dla gór (naprawa latającego WhatsAppa) */
@keyframes waveMove {
    0% { transform: translateX(0) scale(1, 1); }
    50% { transform: translateX(-20px) scale(1, 1.05); }
    100% { transform: translateX(0) scale(1, 1); }
}

/* Używamy nowej klasy .mountain-waves, żeby nie ruszać ikonami */
.mountain-waves path {
    animation: waveMove 10s ease-in-out infinite;
    will-change: transform; /* Optymalizacja dla procesora */
}

/* Różne tempo dla linii */
.mountain-waves path:nth-child(2) { animation-duration: 15s; }
.mountain-waves path:nth-child(3) { animation-duration: 20s;

    /* OPTYMALIZACJA BLURA */
@media (max-width: 768px) {
    .backdrop-blur-md, 
    .backdrop-blur-sm,
    .glass-card {
        backdrop-filter: none !important; /* Wyłączamy ciężkie rozmycie */
        background-color: rgba(10, 10, 10, 0.95) !important; /* Dajemy prawie czarne tło w zamian */
    }
}