/* DJ HuNi Premium Website - corrected style.css */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Poppins',sans-serif;background:#090909;color:#fff;overflow-x:hidden;line-height:1.7}
:root{--gold:#d4af37;--gold-light:#f6d365;--black:#090909;--dark:#121212;--card:#181818;--white:#fff;--gray:#bbb;--transition:.35s;--shadow:0 20px 60px rgba(0,0,0,.35)}
img{max-width:100%}.container{width:min(1200px,90%);margin:auto}
header{position:fixed;top:0;left:0;width:100%;z-index:1000;transition:.4s;padding:22px 0;background:rgba(0,0,0,.20);backdrop-filter:blur(16px)}
header .container{display:flex;justify-content:space-between;align-items:center}.logo img{height:80px;width:auto;display:block}
nav{display:flex;gap:45px}nav a{color:white;text-decoration:none;font-weight:500;transition:.3s;position:relative}nav a::after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--gold);transition:.35s}nav a:hover{color:var(--gold)}nav a:hover::after{width:100%}
.menu-btn{display:none;color:white;font-size:28px;cursor:pointer;background:none;border:0;padding:6px}
.hero{min-height:100vh;display:flex;align-items:center;background:radial-gradient(circle at top right,rgba(212,175,55,.20),transparent 45%),linear-gradient(#090909,#111);position:relative;overflow:hidden;padding-top:120px}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(0,0,0,.85),rgba(0,0,0,.35))}.hero-content{position:relative;z-index:2;width:min(1200px,90%);margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px}.hero-text span{color:var(--gold);letter-spacing:3px;text-transform:uppercase;font-size:.9rem}.hero-text h1{font-size:4.2rem;line-height:1.05;margin:25px 0}.hero-text p{color:#d5d5d5;max-width:560px;font-size:1.1rem}
.hero-buttons{display:flex;gap:20px;margin-top:40px;flex-wrap:wrap}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:18px 36px;border-radius:60px;text-decoration:none;font-weight:600;transition:all .35s ease;cursor:pointer;font-family:inherit;font-size:1rem}.btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-light));color:#111;box-shadow:0 15px 40px rgba(212,175,55,.35);border:none}.btn-primary:hover{transform:translateY(-4px);box-shadow:0 25px 60px rgba(212,175,55,.50)}.btn-secondary{border:2px solid rgba(255,255,255,.2);color:#fff;backdrop-filter:blur(10px)}.btn-secondary:hover{border-color:var(--gold);color:var(--gold)}
.hero-image{display:flex;justify-content:center;align-items:center}.hero-image img{width:100%;max-width:1000px;border-radius:30px;box-shadow:0 30px 80px rgba(0,0,0,.45);animation:floating 5s ease-in-out infinite}@keyframes floating{0%{transform:translateY(0)}50%{transform:translateY(-15px)}100%{transform:translateY(0)}}
.about{padding:120px 0;background:#111}.about .container{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-image img{width:100%;border-radius:25px;box-shadow:var(--shadow)}.about-content h2{font-size:2.8rem;margin:15px 0 25px}.about-content p{color:#d0d0d0;margin-bottom:20px}.section-subtitle{color:var(--gold);text-transform:uppercase;letter-spacing:2px;font-weight:600}
.stats{background:#0d0d0d;padding:90px 0}.stats .container{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.stat-box{background:var(--card);border:1px solid rgba(255,255,255,.05);border-radius:20px;padding:40px;text-align:center;transition:.35s}.stat-box:hover{transform:translateY(-8px);border-color:rgba(212,175,55,.35)}.stat-box h2{font-size:3rem;color:var(--gold)}.stat-box p{margin-top:10px;color:#cfcfcf}
.section-heading{text-align:center;margin-bottom:70px}.section-heading span{color:var(--gold);text-transform:uppercase;letter-spacing:3px;font-weight:600}.section-heading h2{font-size:2.8rem;margin:18px 0}.section-heading p{max-width:700px;margin:auto;color:#cfcfcf}
.offer{padding:120px 0;background:#111}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.offer-card{background:var(--card);padding:45px 35px;border-radius:24px;text-align:center;transition:.35s;border:1px solid rgba(255,255,255,.05)}.offer-card:hover{transform:translateY(-10px);border-color:rgba(212,175,55,.35);box-shadow:0 20px 50px rgba(0,0,0,.35)}.offer-card i{font-size:3rem;color:var(--gold);margin-bottom:25px}.offer-card h3{margin-bottom:18px;font-size:1.5rem}.offer-card p{color:#d2d2d2}
.extras{padding:120px 0;background:#0d0d0d}.extras-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.extra-card{background:#181818;padding:35px;border-radius:22px;text-align:center;transition:.35s}.extra-card:hover{transform:translateY(-8px);background:#202020}.extra-card i{font-size:2.7rem;color:var(--gold);margin-bottom:20px}.extra-card h3{margin-bottom:15px}.extra-card p{color:#cfcfcf}
.timeline{padding:120px 0;background:#111}.timeline-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.timeline-card{background:var(--card);padding:45px 35px;border-radius:24px;position:relative;transition:.35s}.timeline-card:hover{transform:translateY(-10px)}.timeline-card .number{font-size:3.5rem;font-weight:800;color:rgba(212,175,55,.15);position:absolute;top:20px;right:25px}.timeline-card h3{margin-bottom:18px;color:var(--gold)}.timeline-card p{color:#d2d2d2}
.cta{padding:110px 0;text-align:center;background:linear-gradient(rgba(0,0,0,.82),rgba(0,0,0,.82)),url("cta.jpg") center/cover}.cta h2{font-size:3rem;margin-bottom:20px}.cta p{max-width:700px;margin:0 auto 40px;color:#d7d7d7;font-size:1.1rem}
.gallery{padding:120px 0;background:#090909}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.gallery-item{overflow:hidden;border-radius:22px;cursor:pointer;position:relative}.gallery-item img{width:100%;height:340px;object-fit:cover;display:block;transition:.6s}.gallery-item:hover img{transform:scale(1.08)}.gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.45),transparent);opacity:0;transition:.4s;pointer-events:none}.gallery-item:hover::after{opacity:1}
.reviews{padding:120px 0;background:#111}.reviews-platforms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:10px;margin-bottom:55px}.platform-card{min-height:155px;background:#181818;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:20px 16px;text-align:center;text-decoration:none;color:#fff;display:flex;align-items:center;justify-content:center;gap:16px;transition:.35s}.platform-card img{width:52px!important;height:52px!important;max-width:52px!important;max-height:52px!important;flex:0 0 52px;object-fit:contain;display:block;margin:0}.platform-content{min-width:0;text-align:left}.platform-card h3{margin:0 0 4px;font-size:1.08rem;line-height:1.25}.platform-card p{margin:0;color:var(--gold);font-weight:700;font-size:1rem}.platform-card span{display:block;margin-top:3px;color:#bfbfbf;font-size:.88rem}.platform-card:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 16px 35px rgba(0,0,0,.25)}.platform-card.google:hover{border-color:#4285F4}.platform-card.facebook:hover{border-color:#1877F2}.platform-card.wesele:hover{border-color:#ff5b9f}.platform-card.wedding:hover{border-color:#d81b60}
.reviews-slider{position:relative;display:flex;align-items:center;gap:14px}.reviews-track-wrapper{overflow:hidden;width:100%}.reviews-track{display:flex;gap:24px;transition:transform .55s ease;will-change:transform}.review-card{flex:0 0 calc((100% - 48px)/3);background:#181818;border:1px solid rgba(255,255,255,.07);border-radius:22px;padding:30px;min-height:310px;box-shadow:0 12px 35px rgba(0,0,0,.18)}.review-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.review-card h3{font-size:1.05rem;line-height:1.35}.review-source{display:block;margin-top:4px;color:#aaa;font-size:.85rem}.review-stars{color:var(--gold);letter-spacing:2px;white-space:nowrap;font-size:.95rem}.review-card p{color:#d2d2d2;font-size:.96rem}.review-arrow{flex:0 0 46px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:#181818;color:#fff;cursor:pointer;transition:.3s;display:flex;align-items:center;justify-content:center}.review-arrow:hover{color:#111;background:var(--gold);border-color:var(--gold)}.reviews-dots{display:flex;justify-content:center;gap:8px;margin-top:28px}.reviews-dots button{width:9px;height:9px;border-radius:50%;border:0;background:#555;cursor:pointer;transition:.25s;padding:0}.reviews-dots button.active{width:24px;border-radius:20px;background:var(--gold)}
.banner{padding:85px 0;text-align:center;background:#0b0b0b;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}.banner h2{font-size:2.6rem;margin-bottom:15px}.banner p{max-width:760px;margin:auto;color:#cfcfcf}
.faq{padding:120px 0;background:#0d0d0d}.faq-container{max-width:900px;margin:60px auto 0}.faq-item{background:#181818;margin-bottom:18px;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.05)}.faq-question{width:100%;background:none;border:none;color:#fff;padding:25px;font-size:1.05rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;text-align:left;font-family:inherit}.faq-question i{color:var(--gold);transition:.3s}.faq-answer{display:none;padding:0 25px 25px;color:#cfcfcf}
.contact{padding:120px 0;background:#111}.contact .container{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.contact-left>span{color:var(--gold);text-transform:uppercase;letter-spacing:2px}.contact-left h2{font-size:2.8rem;margin:20px 0}.contact-left p{color:#d0d0d0;margin-bottom:30px}.contact-info{display:flex;flex-direction:column;gap:18px;margin-bottom:35px}.contact-info div{display:flex;align-items:center;gap:15px}.contact-info i{color:var(--gold);width:28px;font-size:1.2rem}.contact-info a,.contact-info span{color:#ddd;text-decoration:none;transition:.3s}.contact-info a:hover{color:var(--gold)}.socials{display:flex;gap:18px}.socials a{width:50px;height:50px;display:flex;justify-content:center;align-items:center;border-radius:50%;background:#1a1a1a;color:#fff;text-decoration:none;transition:.35s;border:1px solid rgba(255,255,255,.06)}.socials a:hover{background:var(--gold);color:#111;transform:translateY(-4px)}
.contact-right{background:linear-gradient(145deg,#171717,#111);border:1px solid rgba(212,175,55,.28);border-radius:28px;padding:38px;box-shadow:0 25px 70px rgba(0,0,0,.35)}.contact-right form{display:flex;flex-direction:column;gap:18px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.9rem;color:#d6d6d6;font-weight:500}.contact-right input,.contact-right textarea,.contact-right select{width:100%;padding:17px 18px;background:#0f0f0f;border:1px solid rgba(255,255,255,.10);border-radius:14px;color:#fff;font-size:1rem;font-family:inherit;outline:none;transition:.3s}.contact-right textarea{resize:vertical;min-height:150px}.contact-right input::placeholder,.contact-right textarea::placeholder{color:#7f7f7f}.contact-right input:focus,.contact-right textarea:focus,.contact-right select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.10)}.contact-right .btn-primary{width:100%;margin-top:4px}.form-note{text-align:center;color:#858585;font-size:.82rem;margin:0}
footer{background:#050505;padding:60px 0;text-align:center;border-top:1px solid rgba(255,255,255,.08)}.footer-logo img{max-width:180px;margin-bottom:20px}footer p{color:#999;margin:8px 0}
.scroll-top{position:fixed;right:25px;bottom:25px;width:55px;height:55px;border:none;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-light));color:#111;font-size:20px;cursor:pointer;display:none;justify-content:center;align-items:center;box-shadow:0 15px 35px rgba(212,175,55,.35);transition:.35s;z-index:999}.scroll-top:hover{transform:translateY(-5px)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;justify-content:center;align-items:center;z-index:9999;padding:30px}.lightbox img{max-width:90%;max-height:90%;border-radius:20px}.close-lightbox{position:absolute;top:25px;right:35px;color:#fff;font-size:50px;cursor:pointer;background:none;border:0;line-height:1}
section{animation:fadeUp .8s ease}@keyframes fadeUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.reviews-platforms{grid-template-columns:repeat(2,1fr)}.review-card{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:992px){.hero-content,.about .container,.contact .container{grid-template-columns:1fr}.offer-grid,.extras-grid,.timeline-grid,.gallery-grid,.stats .container{grid-template-columns:1fr 1fr}.hero-text{text-align:center}.hero-text p{margin-left:auto;margin-right:auto}.hero-buttons{justify-content:center}.hero-text h1{font-size:3rem}.contact-right{padding:32px}}
@media(max-width:768px){header{padding:14px 0}.logo img{height:64px}nav{display:none}.menu-btn{display:block}.offer-grid,.extras-grid,.timeline-grid,.gallery-grid,.stats .container{grid-template-columns:1fr}.hero{padding-top:120px}.hero-text h1{font-size:2.4rem}.section-heading h2,.about-content h2,.contact-left h2{font-size:2rem}.hero-image img{max-width:100%}.btn-primary,.btn-secondary{width:100%}.gallery-item img{height:300px}.review-card{flex-basis:100%;min-height:auto}.review-arrow{flex-basis:42px;width:42px;height:42px}.contact-right input,.contact-right textarea,.contact-right select{font-size:16px}}
@media(max-width:650px){.reviews-platforms{grid-template-columns:1fr}.platform-card{min-height:110px;justify-content:flex-start;padding:18px 20px}.reviews-slider{gap:8px}.review-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;background:rgba(15,15,15,.92)}.review-arrow:hover{transform:translateY(-50%)}.review-prev{left:8px}.review-next{right:8px}.review-card{padding:28px 48px}.review-top{flex-direction:column;gap:8px}.contact-right{padding:24px 20px;border-radius:22px}}
/* ===========================================
   MENU MOBILNE - POPRAWKA
=========================================== */

@media (max-width:768px){

    header .container{
        position:relative;
    }

    nav{
        display:none;
        position:absolute;

        top:85px;
        left:0;

        width:100%;

        flex-direction:column;

        gap:0;

        padding:15px;

        background:rgba(9,9,9,.98);

        border:1px solid rgba(212,175,55,.25);

        border-radius:18px;

        box-shadow:0 25px 60px rgba(0,0,0,.55);

        backdrop-filter:blur(20px);
    }


    nav.active{
        display:flex;
    }


    nav a{
        display:block;

        width:100%;

        padding:16px 18px;

        color:#fff;

        font-size:17px;

        border-bottom:1px solid rgba(255,255,255,.07);
    }


    nav a:last-child{
        border-bottom:none;
    }


    nav a:hover,
    nav a.active{
        color:var(--gold);
    }


    .menu-btn{
        position:relative;
        z-index:1002;
    }

}
/* ===========================================
        DODATKOWE ATRAKCJE - NOWA WERSJA
=========================================== */

.extras-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-top:50px;
}

.extra-photo-card{
    position:relative;
    min-height:380px;
    padding:0;
    overflow:hidden;
    border:1px solid rgba(212,175,55,.25);
    border-radius:24px;
    background:#111;
    cursor:pointer;
    text-align:left;
    box-shadow:0 20px 45px rgba(0,0,0,.28);
    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}

.extra-photo-card img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s ease;
}

.extra-photo-card .extra-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            to top,
            rgba(0,0,0,.96) 0%,
            rgba(0,0,0,.74) 45%,
            rgba(0,0,0,.35) 100%
        );
}

.extra-content{
    position:absolute;
    inset:0;
    z-index:2;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:32px;
}

.extra-content i{
    width:54px;
    height:54px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
    border-radius:50%;
    background:rgba(212,175,55,.12);
    border:1px solid rgba(212,175,55,.5);
    color:var(--gold);
    font-size:22px;
    backdrop-filter:blur(8px);
}

.extra-content h3{
    margin:0 0 12px;
    color:#fff;
    font-size:26px;
}

.extra-content p{
    margin:0 0 18px;
    color:rgba(255,255,255,.76);
    line-height:1.6;
}

.extra-more{
    display:inline-block;
    color:var(--gold);
    font-weight:600;
    font-size:14px;
    letter-spacing:.4px;
    transition:transform .3s ease;
}

.extra-photo-card:hover{
    transform:translateY(-7px);
    border-color:rgba(212,175,55,.75);
    box-shadow:0 28px 60px rgba(0,0,0,.42);
}

.extra-photo-card:hover img{
    transform:scale(1.07);
}

.extra-photo-card:hover .extra-more{
    transform:translateX(6px);
}


/* NAPIS LOVE - LEPSZE KADROWANIE */

.love-card img{
    object-position:18% center;
}


/* WIATRAKI - TROCHĘ CIEMNIEJSZE ZDJĘCIE */

.fans-card .extra-overlay{
    background:
        linear-gradient(
            to top,
            rgba(0,0,0,.97) 0%,
            rgba(0,0,0,.82) 55%,
            rgba(0,0,0,.48) 100%
        );
}


/* ===========================================
              LIGHTBOX ATRAKCJI
=========================================== */

.extras-lightbox{
    position:fixed;
    inset:0;
    z-index:99999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:30px;
    background:rgba(0,0,0,.94);
    opacity:0;
    visibility:hidden;
    transition:
        opacity .3s ease,
        visibility .3s ease;
}

.extras-lightbox.active{
    opacity:1;
    visibility:visible;
}

.extras-lightbox-content{
    position:relative;
    max-width:1100px;
    width:100%;
    max-height:88vh;
    display:flex;
    flex-direction:column;
    align-items:center;
}

.extras-lightbox-content img{
    display:block;
    max-width:100%;
    max-height:78vh;
    width:auto;
    height:auto;
    object-fit:contain;
    border-radius:18px;
    border:1px solid rgba(212,175,55,.35);
    box-shadow:0 30px 80px rgba(0,0,0,.75);
}

.extras-lightbox-info{
    margin-top:18px;
    text-align:center;
}

.extras-lightbox-info h3{
    margin:0;
    color:#fff;
    font-size:24px;
}

.extras-lightbox-info p{
    margin:7px 0 0;
    color:var(--gold);
    font-size:14px;
}

.extras-close{
    position:absolute;
    top:22px;
    right:28px;
    z-index:4;
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(212,175,55,.45);
    border-radius:50%;
    background:rgba(10,10,10,.8);
    color:#fff;
    font-size:34px;
    cursor:pointer;
}

.extras-arrow{
    position:absolute;
    top:50%;
    z-index:4;
    transform:translateY(-50%);
    width:52px;
    height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(212,175,55,.45);
    border-radius:50%;
    background:rgba(10,10,10,.82);
    color:var(--gold);
    font-size:18px;
    cursor:pointer;
    transition:.25s ease;
}

.extras-arrow:hover{
    background:var(--gold);
    color:#111;
}

.extras-prev{
    left:28px;
}

.extras-next{
    right:28px;
}


/* ===========================================
                    TABLET
=========================================== */

@media(max-width:1000px){

    .extras-grid{
        grid-template-columns:repeat(2,1fr);
    }

}


/* ===========================================
                    TELEFON
=========================================== */

@media(max-width:650px){

    .extras-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    .extra-photo-card{
        min-height:330px;
        border-radius:20px;
    }

    .extra-content{
        padding:25px;
    }

    .extra-content h3{
        font-size:23px;
    }

    .extras-lightbox{
        padding:18px;
    }

    .extras-arrow{
        width:44px;
        height:44px;
        top:auto;
        bottom:25px;
    }

    .extras-prev{
        left:22px;
    }

    .extras-next{
        right:22px;
    }

    .extras-close{
        top:16px;
        right:16px;
        width:44px;
        height:44px;
    }

    .extras-lightbox-content img{
        max-height:68vh;
    }

}
/* ===========================================
   ATRAKCJE - WYRAŹNY EFEKT HOVER
=========================================== */

.extra-photo-card{
    position:relative;
    overflow:hidden;
    cursor:pointer;
}

.extra-photo-card > img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .6s ease, filter .6s ease;
}

.extra-photo-card:hover > img{
    transform:scale(1.10);
    filter:brightness(1.08);
}

.extra-photo-card:hover{
    transform:translateY(-8px);
    border-color:rgba(212,175,55,.9);
    box-shadow:
        0 25px 60px rgba(0,0,0,.5),
        0 0 25px rgba(212,175,55,.12);
}

.extra-photo-card:hover .extra-more{
    transform:translateX(8px);
}
/* ===========================================
             PAS EMOCJI
=========================================== */

.emotion-banner{
    position:relative;
    min-height:420px;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
}

.emotion-slides{
    position:absolute;
    inset:0;
}

.emotion-slide{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    opacity:0;
    transform:scale(1.05);
    transition:
        opacity 1.8s ease,
        transform 8s ease;
}

.emotion-slide.active{
    opacity:1;
    transform:scale(1.12);
}

.emotion-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.88),
            rgba(0,0,0,.48),
            rgba(0,0,0,.82)
        );
    z-index:1;
}

.emotion-content{
    position:relative;
    z-index:2;
    text-align:center;
    padding:80px 20px;
}

.emotion-content span{
    color:var(--gold);
    text-transform:uppercase;
    letter-spacing:5px;
    font-size:14px;
    font-weight:600;
}

.emotion-content h2{
    margin:12px 0 0;
    color:#fff;
    font-size:4rem;
    text-transform:uppercase;
    letter-spacing:2px;
}

.emotion-subtitle{
    margin-top:4px;
    color:#fff;
    font-size:1.45rem;
    font-style:italic;
}

.emotion-line{
    display:inline-block;
    margin-top:28px;
    padding-top:18px;
    border-top:1px solid rgba(212,175,55,.55);
    color:var(--gold);
    font-size:1rem;
    letter-spacing:2px;
    text-transform:uppercase;
}

@media(max-width:768px){

    .emotion-banner{
        min-height:330px;
    }

    .emotion-content{
        padding:60px 20px;
    }

    .emotion-content h2{
        font-size:2.5rem;
    }

    .emotion-subtitle{
        font-size:1.15rem;
    }

    .emotion-line{
        font-size:.78rem;
        line-height:1.7;
        letter-spacing:1.3px;
    }

}
/* ===========================================
        DODATKOWE PASKI ZDJĘCIOWE
=========================================== */

.photo-break{
    position:relative;
    min-height:360px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;

    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}

.photo-break-stats{
    background-image:url("liczniki-bg.jpg");
}

.photo-break-faq{
    background-image:url("faq-bg.jpg");
    background-position:center 48%;
}

.photo-break-overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.78),
            rgba(0,0,0,.38),
            rgba(0,0,0,.72)
        );
}

.photo-break-content{
    position:relative;
    z-index:2;
    text-align:center;
    padding:70px 20px;
}

.photo-break-content h2{
    margin:0;
    color:#fff;
    font-size:3.1rem;
    text-transform:uppercase;
    letter-spacing:1.5px;
    text-shadow:0 4px 25px rgba(0,0,0,.65);
}

.photo-break-content p{
    margin-top:14px;
    color:var(--gold);
    font-size:1.2rem;
    letter-spacing:.7px;
    text-shadow:0 3px 15px rgba(0,0,0,.8);
}

/* DELIKATNY EFEKT PRZY NAJECHANIU */

.photo-break::before{
    content:"";
    position:absolute;
    inset:-15px;

    background:inherit;
    background-size:cover;
    background-position:inherit;

    transform:scale(1);
    transition:transform 2s ease;
}

.photo-break:hover::before{
    transform:scale(1.04);
}

/* ponieważ zdjęcie przejmuje ::before */

}


/* TELEFON */

@media(max-width:768px){

    .photo-break{
        min-height:300px;
    }

    .photo-break-content{
        padding:55px 18px;
    }

    .photo-break-content h2{
        font-size:2rem;
        line-height:1.2;
    }

    .photo-break-content p{
        font-size:1rem;
        line-height:1.5;
    }

    .photo-break-stats::before{
        background-position:center;
    }

    .photo-break-faq::before{
        background-position:center;
    }

}
.photo-break-stats{
    background:
        linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.45)),
        url("liczniki-bg.jpg") center/cover no-repeat !important;
}

.photo-break-faq{
    background:
        linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.45)),
        url("faq-bg.jpg") center/cover no-repeat !important;
}
/* ===========================================
   ROZWIJANA GALERIA
=========================================== */

.gallery-more-wrap{
    text-align:center;
    margin-top:35px;
}

.gallery-more-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:14px 28px;

    border:1px solid var(--gold);
    border-radius:30px;

    background:transparent;
    color:var(--gold);

    font-size:15px;
    font-weight:600;
    letter-spacing:.5px;

    cursor:pointer;
    transition:.3s ease;
}

.gallery-more-btn:hover{
    background:var(--gold);
    color:#111;
}

.gallery-more-btn i{
    transition:transform .35s ease;
}

.gallery-more-btn.active i{
    transform:rotate(180deg);
}

/* dodatkowe zdjęcia */

.gallery-more-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;

    max-height:0;
    overflow:hidden;
    opacity:0;

    margin-top:0;

    transition:
        max-height .8s ease,
        opacity .5s ease,
        margin-top .5s ease;
}

.gallery-more-grid.active{
    max-height:3000px;
    opacity:1;
    margin-top:35px;
}

.gallery-more-grid .gallery-item{
    border-radius:18px;
    overflow:hidden;
}

.gallery-more-grid .gallery-item img{
    width:100%;
    height:280px;
    object-fit:cover;
    display:block;

    transition:transform .6s ease;
}

.gallery-more-grid .gallery-item:hover img{
    transform:scale(1.06);
}

@media(max-width:900px){

    .gallery-more-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:600px){

    .gallery-more-grid{
        grid-template-columns:1fr;
    }

    .gallery-more-grid .gallery-item img{
        height:250px;
    }

}
/* ===========================================
   IKONA - BAŃKI Z DYMEM
=========================================== */

.bubble-icon{
    width:54px;
    height:54px;
    position:relative;
    display:block;
    flex-shrink:0;

    margin-bottom:20px;

    border-radius:50%;
    background:rgba(212,175,55,.12);
    border:1px solid rgba(212,175,55,.5);

    backdrop-filter:blur(8px);
}

/* wszystkie bąbelki */

.bubble-icon span{
    position:absolute;
    display:block;
    border:2px solid var(--gold);
    border-radius:50%;
}

/* duża bańka */

.bubble-icon span:nth-child(1){
    width:15px;
    height:15px;
    left:12px;
    top:23px;
}

/* średnia */

.bubble-icon span:nth-child(2){
    width:11px;
    height:11px;
    right:11px;
    top:14px;
}

/* mała */

.bubble-icon span:nth-child(3){
    width:7px;
    height:7px;
    left:21px;
    top:10px;
}

/* najmniejsza */

.bubble-icon span:nth-child(4){
    width:6px;
    height:6px;
    right:15px;
    bottom:10px;
}
/* ===========================================
   SOCIAL MEDIA W NAGŁÓWKU
=========================================== */

.header-inner{
    display:flex;
    align-items:center;
}

.header-socials{
    display:flex;
    align-items:center;
    gap:10px;

    margin-left:26px;
    margin-right:30px;

    flex-shrink:0;
}

.header-socials a{
    width:42px;
    height:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:1px solid rgba(212,175,55,.6);
    border-radius:50%;

    background:rgba(212,175,55,.07);
    color:var(--gold);

    font-size:18px;
    text-decoration:none;

    transition:
        transform .3s ease,
        background .3s ease,
        color .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.header-socials a:hover{
    transform:translateY(-3px);

    background:var(--gold);
    color:#111;
    border-color:var(--gold);

    box-shadow:
        0 8px 22px rgba(0,0,0,.35),
        0 0 18px rgba(212,175,55,.22);
}


/* LAPTOP / MNIEJSZY EKRAN */

@media(max-width:1200px){

    .header-socials{
        gap:7px;
        margin-left:16px;
        margin-right:18px;
    }

    .header-socials a{
        width:37px;
        height:37px;
        font-size:15px;
    }

}


/* TELEFON / TABLET */

@media(max-width:900px){

    .header-socials{
        display:none;
    }

}
/* ===========================================
   SOCIAL MEDIA HEADER - FINAL
=========================================== */

header .header-inner .header-socials{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    gap:10px !important;

    margin-left:45px !important;
    margin-right:auto !important;

    flex-shrink:0 !important;
}

header .header-inner .header-socials a{
    width:42px !important;
    height:42px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    padding:0 !important;
    margin:0 !important;

    border:1px solid rgba(212,175,55,.65) !important;
    border-radius:50% !important;

    background:rgba(212,175,55,.07) !important;

    color:#d4af37 !important;

    font-size:18px !important;
    line-height:1 !important;

    text-decoration:none !important;

    transition:
        transform .3s ease,
        background .3s ease,
        color .3s ease,
        box-shadow .3s ease !important;
}

header .header-inner .header-socials a i{
    color:#d4af37 !important;
    font-size:18px !important;
}

header .header-inner .header-socials a:hover{
    background:#d4af37 !important;
    color:#111 !important;

    transform:translateY(-3px);

    box-shadow:
        0 7px 20px rgba(0,0,0,.4),
        0 0 18px rgba(212,175,55,.25) !important;
}

header .header-inner .header-socials a:hover i{
    color:#111 !important;
}


/* TABLET / TELEFON */

@media(max-width:900px){

    header .header-inner .header-socials{
        display:none !important;
    }

}
/* ===========================================
   COOKIE BANNER
=========================================== */

.cookie-banner{
    position:fixed;
    left:20px;
    right:20px;
    bottom:20px;

    z-index:99999;

    opacity:0;
    visibility:hidden;
    transform:translateY(30px);

    transition:
        opacity .4s ease,
        transform .4s ease,
        visibility .4s ease;
}

.cookie-banner.show{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.cookie-inner{
    max-width:1180px;
    margin:0 auto;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    padding:20px 24px;

    background:rgba(12,12,12,.97);

    border:1px solid rgba(212,175,55,.45);
    border-radius:18px;

    box-shadow:
        0 20px 60px rgba(0,0,0,.65),
        0 0 25px rgba(212,175,55,.06);

    backdrop-filter:blur(15px);
}

.cookie-text{
    display:flex;
    align-items:center;
    gap:18px;

    max-width:750px;
}

.cookie-text > i{
    color:#d4af37;
    font-size:30px;
    flex-shrink:0;
}

.cookie-text strong{
    display:block;

    margin-bottom:5px;

    color:#d4af37;

    font-size:16px;
    font-weight:600;
}

.cookie-text p{
    margin:0;

    color:rgba(255,255,255,.72);

    font-size:13px;
    line-height:1.6;
}

.cookie-buttons{
    display:flex;
    align-items:center;
    gap:10px;

    flex-shrink:0;
}

.cookie-btn{
    min-height:44px;

    padding:0 20px;

    border-radius:24px;

    font-size:13px;
    font-weight:600;

    cursor:pointer;

    transition:
        background .3s ease,
        color .3s ease,
        border-color .3s ease,
        transform .3s ease;
}

.cookie-reject{
    border:1px solid rgba(255,255,255,.25);

    background:transparent;

    color:rgba(255,255,255,.8);
}

.cookie-reject:hover{
    border-color:#fff;
    color:#fff;

    transform:translateY(-2px);
}

.cookie-accept{
    border:1px solid #d4af37;

    background:#d4af37;

    color:#111;
}

.cookie-accept:hover{
    background:#e5c457;
    border-color:#e5c457;

    transform:translateY(-2px);
}


/* TELEFON */

@media(max-width:700px){

    .cookie-banner{
        left:10px;
        right:10px;
        bottom:10px;
    }

    .cookie-inner{
        display:block;

        padding:18px;

        border-radius:16px;
    }

    .cookie-text{
        align-items:flex-start;
        gap:13px;
    }

    .cookie-text > i{
        font-size:24px;
        margin-top:2px;
    }

    .cookie-text p{
        font-size:12px;
    }

    .cookie-buttons{
        margin-top:16px;

        width:100%;
    }

    .cookie-btn{
        flex:1;

        padding:0 12px;
    }
/* ===========================================
   COOKIE BANNER
=========================================== */

.cookie-banner{
    position:fixed;
    left:20px;
    right:20px;
    bottom:20px;

    z-index:99999;

    opacity:0;
    visibility:hidden;
    transform:translateY(30px);

    transition:
        opacity .4s ease,
        transform .4s ease,
        visibility .4s ease;
}

.cookie-banner.show{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.cookie-inner{
    max-width:1180px;
    margin:0 auto;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    padding:20px 24px;

    background:rgba(12,12,12,.97);

    border:1px solid rgba(212,175,55,.45);
    border-radius:18px;

    box-shadow:
        0 20px 60px rgba(0,0,0,.65),
        0 0 25px rgba(212,175,55,.06);

    backdrop-filter:blur(15px);
}

.cookie-text{
    display:flex;
    align-items:center;
    gap:18px;
    max-width:750px;
}

.cookie-text > i{
    color:#d4af37;
    font-size:30px;
    flex-shrink:0;
}

.cookie-text strong{
    display:block;
    margin-bottom:5px;
    color:#d4af37;
    font-size:16px;
}

.cookie-text p{
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:13px;
    line-height:1.6;
}

.cookie-buttons{
    display:flex;
    align-items:center;
    gap:10px;
    flex-shrink:0;
}

.cookie-btn{
    min-height:44px;
    padding:0 20px;
    border-radius:24px;

    font-size:13px;
    font-weight:600;

    cursor:pointer;

    transition:.3s ease;
}

.cookie-reject{
    border:1px solid rgba(255,255,255,.25);
    background:transparent;
    color:rgba(255,255,255,.8);
}

.cookie-reject:hover{
    border-color:#fff;
    color:#fff;
    transform:translateY(-2px);
}

.cookie-accept{
    border:1px solid #d4af37;
    background:#d4af37;
    color:#111;
}

.cookie-accept:hover{
    background:#e5c457;
    border-color:#e5c457;
    transform:translateY(-2px);
}


/* ===========================================
   STOPKA - LINKI
=========================================== */

.footer-legal{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;

    margin-top:12px;

    font-size:13px;
}

.footer-legal a{
    color:rgba(255,255,255,.55);
    text-decoration:none;
    transition:color .3s ease;
}

.footer-legal a:hover{
    color:#d4af37;
}

.footer-legal span{
    color:rgba(212,175,55,.5);
}


/* ===========================================
   POLITYKA PRYWATNOŚCI
=========================================== */

.privacy-modal{
    position:fixed;
    inset:0;
    z-index:100000;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:20px;

    background:rgba(0,0,0,.82);
    backdrop-filter:blur(8px);

    opacity:0;
    visibility:hidden;

    transition:.3s ease;
}

.privacy-modal.show{
    opacity:1;
    visibility:visible;
}

.privacy-box{
    position:relative;

    width:100%;
    max-width:850px;
    max-height:85vh;

    padding:38px;

    overflow-y:auto;

    background:#111;

    border:1px solid rgba(212,175,55,.4);
    border-radius:22px;

    box-shadow:
        0 30px 80px rgba(0,0,0,.7),
        0 0 30px rgba(212,175,55,.08);
}

.privacy-label{
    display:block;
    margin-bottom:7px;
    color:#d4af37;

    font-size:12px;
    font-weight:600;

    letter-spacing:2px;
    text-transform:uppercase;
}

.privacy-box h2{
    margin:0 45px 30px 0;
    color:#fff;
    font-size:30px;
}

.privacy-content h3{
    margin:26px 0 8px;
    color:#d4af37;
    font-size:16px;
}

.privacy-content p{
    margin:0 0 12px;
    color:rgba(255,255,255,.7);
    font-size:14px;
    line-height:1.75;
}

.privacy-content strong{
    color:#fff;
}

.privacy-close{
    position:absolute;
    top:18px;
    right:20px;

    width:42px;
    height:42px;

    border:1px solid rgba(212,175,55,.4);
    border-radius:50%;

    background:transparent;
    color:#d4af37;

    font-size:27px;

    cursor:pointer;

    transition:.3s ease;
}

.privacy-close:hover{
    background:#d4af37;
    color:#111;
}


/* ===========================================
   MOBILE
=========================================== */

@media(max-width:700px){

    .cookie-banner{
        left:10px;
        right:10px;
        bottom:10px;
    }

    .cookie-inner{
        display:block;
        padding:18px;
    }

    .cookie-text{
        align-items:flex-start;
        gap:13px;
    }

    .cookie-buttons{
        margin-top:16px;
        width:100%;
    }

    .cookie-btn{
        flex:1;
        padding:0 12px;
    }

    .privacy-box{
        padding:28px 20px;
        max-height:88vh;
    }

    .privacy-box h2{
        font-size:23px;
    }
/* ===========================================
   POLITYKA PRYWATNOŚCI - NAPRAWA
=========================================== */

.privacy-modal{
    position:fixed !important;
    inset:0 !important;
    z-index:100000 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    padding:20px !important;

    background:rgba(0,0,0,.85) !important;
    backdrop-filter:blur(8px);

    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;

    transition:
        opacity .3s ease,
        visibility .3s ease !important;
}

.privacy-modal.show{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
}

.privacy-box{
    position:relative !important;

    width:100% !important;
    max-width:850px !important;
    max-height:85vh !important;

    padding:38px !important;

    overflow-y:auto !important;

    background:#111 !important;

    border:1px solid rgba(212,175,55,.45) !important;
    border-radius:22px !important;

    box-shadow:0 30px 80px rgba(0,0,0,.75) !important;
}

.privacy-label{
    display:block;
    margin-bottom:7px;

    color:#d4af37 !important;

    font-size:12px;
    font-weight:600;
    letter-spacing:2px;
    text-transform:uppercase;
}

.privacy-box h2{
    margin:0 50px 30px 0 !important;

    color:#fff !important;
    font-size:30px !important;
}

.privacy-content h3{
    margin:26px 0 8px !important;

    color:#d4af37 !important;
    font-size:16px !important;
}

.privacy-content p{
    margin:0 0 12px !important;

    color:rgba(255,255,255,.72) !important;

    font-size:14px !important;
    line-height:1.75 !important;
}

.privacy-close{
    position:absolute !important;

    top:18px !important;
    right:20px !important;

    width:42px !important;
    height:42px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    border:1px solid rgba(212,175,55,.45) !important;
    border-radius:50% !important;

    background:transparent !important;
    color:#d4af37 !important;

    font-size:27px !important;

    cursor:pointer !important;
}

.privacy-close:hover{
    background:#d4af37 !important;
    color:#111 !important;
}

@media(max-width:600px){

    .privacy-box{
        padding:28px 20px !important;
        max-height:88vh !important;
    }

    .privacy-box h2{
        font-size:23px !important;
    }
.cookie-banner{
    position:fixed;
    left:20px;
    right:20px;
    bottom:20px;
    z-index:100001;

    display:none;
}

.cookie-banner.open{
    display:block;
}

.cookie-inner{
    max-width:1180px;
    margin:0 auto;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    padding:20px 24px;

    background:rgba(12,12,12,.98);

    border:1px solid rgba(212,175,55,.5);
    border-radius:18px;

    box-shadow:0 20px 60px rgba(0,0,0,.7);
}

.cookie-text{
    display:flex;
    align-items:center;
    gap:18px;
    max-width:760px;
}

.cookie-text > i{
    color:#d4af37;
    font-size:30px;
}

.cookie-text strong{
    display:block;
    margin-bottom:5px;

    color:#d4af37;
    font-size:16px;
}

.cookie-text p{
    margin:0;

    color:rgba(255,255,255,.75);
    font-size:13px;
    line-height:1.6;
}

.cookie-buttons{
    display:flex;
    gap:10px;
    flex-shrink:0;
}

.cookie-btn{
    min-height:44px;
    padding:0 20px;

    border-radius:24px;

    font-size:13px;
    font-weight:600;

    cursor:pointer;

    transition:.3s ease;
}

.cookie-reject{
    border:1px solid rgba(255,255,255,.3);
    background:transparent;
    color:#fff;
}

.cookie-reject:hover{
    border-color:#fff;
}

.cookie-accept{
    border:1px solid #d4af37;
    background:#d4af37;
    color:#111;
}

.cookie-accept:hover{
    background:#e5c457;
}

@media(max-width:700px){

    .cookie-banner{
        left:10px;
        right:10px;
        bottom:10px;
    }

    .cookie-inner{
        display:block;
        padding:18px;
    }

    .cookie-text{
        align-items:flex-start;
        gap:13px;
    }

    .cookie-buttons{
        margin-top:16px;
        width:100%;
    }

    .cookie-btn{
        flex:1;
    }


}
