/* GŁÓWNY KONTENER ANIMACJI */
figure {
    width: 305px;
    height: 305px;
    margin: 0;
    position: absolute;
    left: 50%;
    top: 50%;
    /* Efekt 3D na PC */
    transform: translate(-50%, -50%) rotateX(-40deg) rotateY(30deg) scale(1.1, 1.1);
    transition: transform 1.4s !important; /* Pozwala na płynny obrót figure */
    transform-style: preserve-3d;
    z-index: 1;
}

/* BLOKADA MIGANIA: Wyłączamy transition dla wszystkich części składowych animacji */
figure *, .c, .c2, .c3, .c4, .c5, .c6, i {
    transition: none !important;
}

/* REAKCJA NA NAJECHANIE MYSZKĄ */
figure:hover {
    transform: translate(-50%, -50%) rotateX(0deg) rotateY(0deg) scale(1.1, 1.1);
}

/* CZĘŚCI SKŁADOWE (Bez zmian w logice ruchu) */
.c{width:240px;height:240px;border:3px solid;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate3d(-50%,-50%,-50px);}
.c:after{content:"";position:absolute;left:-10px;top:-10px;width:100%;height:100%;border-radius:50%;border:10px solid;border-top-color:transparent;border-bottom-color:transparent;animation:R 10s infinite linear;}
.c2{width:100%;height:100%;border:1px solid;border-radius:50%;position:absolute;top:0;left:0;padding:1px;animation:L 80s infinite linear;box-sizing:border-box;}
.c3{width:33%;height:33%;border:2px solid;border-radius:50%;transform:translate3d(-50%,-50%,5px);position:absolute;top:50%;left:50%;}
.c3:after{content:"";position:absolute;left:-5px;top:-5px;width:100%;height:100%;border-radius:50%;border:5px solid;border-top-color:transparent;border-bottom-color:transparent;animation:L 5s infinite linear;}
.c4{width:75px;height:75px;transform:translate3d(-50%,-50%,0px);position:absolute;left:50%;top:50%;}
.c4:after{content:"";width:100%;height:100%;position:absolute;left:-3px;top:-3px;border-radius:50%;border:3px solid;border-left-color:transparent;animation:R 5s infinite linear;}
.c5{width:77px;height:77px;transform:translate3d(-50%,-50%,65px);position:absolute;left:50%;top:50%;border-radius:50%;}
.c5:after{content:"";width:100%;height:100%;position:absolute;left:-1px;top:-1px;border:1px solid;border-right-color:transparent;border-bottom-color:transparent;border-radius:50%;animation:L 5s infinite linear;}
.c6{width:55px;height:55px;transform:translate3d(-50%,-50%,61px);position:absolute;left:50%;top:50%;border-radius:50%;}
.c6:after{content:"";width:100%;height:100%;position:absolute;left:-1px;top:-1px;border:1px solid;border-right-color:transparent;border-top-color:transparent;border-radius:50%;animation:R 10s infinite linear;}

i{height:15px;width:1px;background-color: unset;position:absolute;left:50%;margin-left:-10px;transform-origin:1000% 1005%;}

/* ... (tutaj zachowaj wszystkie swoje selektory i:nth-child(n) od 1 do 38) ... */

@keyframes R{ 0%{transform:rotate(20deg);} 100%{transform:rotate(380deg)} }
@keyframes L{ 0%{transform:rotate(0deg);} 100%{transform:rotate(-360deg)} }

/* POPRAWKA DLA TELEFONÓW (RESPONSYWNOŚĆ) */
@media (max-width: 768px) {
    figure {
        position: relative; /* Wyjście z trybu 'nad menu' */
        top: 0;
        left: 0;
        margin: 60px auto; /* Centrowanie pod menu z odstępem */
        transform: rotateX(-40deg) rotateY(30deg) scale(0.8); /* Lekkie pomniejszenie */
    }
    
    figure:hover {
        transform: rotateX(0deg) rotateY(0deg) scale(0.85);
    }

    #tekst {
        display: flex;
        flex-direction: column;
        align-items: center;
        min-height: 450px; /* Robi miejsce, żeby animacja nie uciekała */
    }
}