*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    position:relative;
    font-family:'Manrope',sans-serif;
    background:white;

}

.page-blob{

    position:absolute;
    left:0;
    right:0;
    height:460px;
    z-index:-1;
    pointer-events:none;

}

.blob-teal{

    background: radial-gradient(ellipse 700px 220px at 80% 50%, rgba(40,215,210,.55), transparent 100%);

}

.blob-pink{

    background: radial-gradient(ellipse 700px 220px at 20% 50%, rgba(255,105,180,.55), transparent 100%);

}

.navbar{

    padding:25px 0;
    transition:.35s;

}

.navbar-brand img{

    width:220px;
    transition:.35s;
    filter:brightness(0) invert(1);

}

.navbar.scrolled .navbar-brand img{

    filter:none;

}


.nav-link{

    color:white;
    margin-left:40px;
    font-weight:600;
    position:relative;
    transition:.3s;


}

.nav-link:hover{

    color:#ff69b4;

}

.hero{

    min-height:100vh;

    background-image:
    linear-gradient(rgba(10,20,25,.60),rgba(10,20,25,.35)),
    url("images/hero.png");

    background-size:cover;
    background-position:center;

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

    text-align:center;

    color:white;

}

.hero-content{

    max-width:900px;
    padding:20px;
    animation:fadeUp 1.8s ease-out;


}

.hero h1{

    font-size:96px;
    font-weight:800;
    margin-bottom:25px;
    letter-spacing:-3px;

}

.hero p{

    font-size:24px;
    opacity:.95;
    margin-bottom:40px;

}

.btn-main{

    background:#28D7D2;
    color:white;

    padding:18px 46px;

    border-radius:999px;

    font-weight:700;

    transition:.35s;

    box-shadow:0 15px 35px rgba(40,215,210,.35);


}

.btn-main:hover{

    transform:translateY(-5px);

    background:#ff5aa7;

    box-shadow:0 18px 45px rgba(255,90,167,.35);

    color:white;


}

.navbar-brand{

    padding:0;

}

.navbar-brand img{

    height:75px;
    filter: brightness(0) invert(1);

}.about{

    padding:60px 0;
    background:transparent;
    scroll-margin-top:100px;

}

.about h2{

    font-size:48px;
    font-weight:800;
    margin-bottom:30px;

}

.about p{

    font-size:20px;
    line-height:1.8;
    color:#666;

}

.gradient-text{

    font-weight:700;
    background:linear-gradient(90deg, #ff69b4, #28D7D2);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    color:transparent;

}

.about img{

    box-shadow:0 30px 60px rgba(0,0,0,.15);

}

@keyframes fadeUp{

    from{

        opacity:0;
        transform:translateY(40px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}

.nav-link::after{

    content:"";
    position:absolute;
    left:0;
    bottom:-6px;

    width:0;
    height:2px;

    background:#28D7D2;

    transition:.3s;

}

.nav-link:hover::after{

    width:100%;

}
.navbar.scrolled .nav-link{

    color:#222;

}
.menu-section{

    padding:60px 0;
    background:transparent;
    scroll-margin-top:100px;

}

.menu-section h2{

    font-size:48px;
    font-weight:800;

}

.menu-section p{

    color:#777;
    margin-bottom:0;

}

.drink-card-link{

    display:block;
    color:inherit;
    text-decoration:none;

}

.drink-card{

    background:white;
    border-radius:24px;
    overflow:hidden;
    text-align:center;
    padding-bottom:30px;

    transition:transform .35s ease, box-shadow .35s ease;

    box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.drink-card:hover{

    transform:translateY(-8px);
    box-shadow:0 20px 50px rgba(0,0,0,.14);

}

.drink-card img{

    display:block;

    width:100%;

    aspect-ratio:1/1;

    object-fit:cover;

    transition:transform .35s ease;

}

.drink-card:hover img{

    transform:scale(1.02);

}


.drink-card h3{

    margin-top:25px;
    font-weight:700;

}

.drink-card p{

    padding:0 25px;

}
.drink-card{

    background:white;
    border-radius:24px;
    overflow:hidden;

    text-align:center;

    padding-bottom:30px;

    transition:.35s;

    box-shadow:0 15px 40px rgba(0,0,0,.08);

    position:relative;

}
/* ===== PRODEJNY ===== */

.store-section{

    padding:60px 0;
    background:transparent;
    scroll-margin-top:100px;

}

.store-section h2{

    font-size:52px;
    font-weight:800;
    margin-bottom:25px;

}

.store-section p{

    font-size:20px;
    color:#666;
    line-height:1.8;

}

.store{

    margin-top:40px;

}

.store h5{

    font-size:32px;
    font-weight:700;

}

.store p{

    margin:15px 0;
    font-size:18px;

}

.store a{

    display:inline-block;
    margin-top:10px;

    color:#28D7D2;
    text-decoration:none;
    font-weight:700;

    transition:.3s;

}

.store a:hover{

    color:#ff4fa8;

}

.store-section iframe{

    border-radius:25px;

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

}
.footer{

    background:#111;
    color:white;
    padding:60px 0;
    text-align:center;
    scroll-margin-top:100px;

}

.footer-logo{

    width:180px;
    filter:brightness(0) invert(1);
    margin-bottom:25px;

}

.footer p{

    color:#bbb;
    margin-bottom:25px;

}

.footer-links{

    display:flex;
    justify-content:center;
    gap:35px;
    margin-bottom:25px;

}

.footer-links a{

    color:white;
    text-decoration:none;
    font-weight:600;
    transition:.3s;

}

.footer-links a:hover{

    color:#28D7D2;

}

.footer-contact{

    color:#999;
    font-size:14px;
    line-height:1.8;
    margin-bottom:25px;

}

.footer-contact a{

    color:#999;
    text-decoration:none;
    transition:.3s;

}

.footer-contact a:hover{

    color:#28D7D2;

}

.footer small{

    color:#777;

}
html{

    scroll-behavior:smooth;

}
.navbar{

    background:transparent;
    transition:.35s;

}
.navbar.scrolled{

    background:white;
    box-shadow:0 8px 25px rgba(0,0,0,.08);

}
.full-menu{

    padding:60px 0;
    background:transparent;

}

.premium-section{

    padding-top:60px;
    scroll-margin-top:130px;

}

.premium-section h3{

    text-align:center;
    font-size:60px;
    font-weight:800;
    margin-bottom:10px;

}

.premium-card{

    background:white;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 6px 16px rgba(0,0,0,.06);
    transition: transform .35s ease, box-shadow .35s ease;
    padding:30px;

    flex:0 0 300px;
    scroll-snap-align:start;

}

.premium-card:hover{

    transform:translateY(-8px);
    box-shadow:0 10px 24px rgba(0,0,0,.10);

}

.premium-card img{

    height:290px;
    width:auto;
    display:block;
    margin:30px auto 10px;
    transition: transform .35s ease;

}

.premium-card:hover img{

    transform:scale(1.05);

}

.premium-card h4{

    font-size:28px;
    font-weight:700;
    text-align:center;
    margin:15px 0 10px;

}

.premium-card p{

    text-align:center;
    color:#666;
    padding:0 15px 25px;
    max-width:320px;
    min-height:60px;
    margin:0 auto;
}

.premium-card p.drink-combo{

    font-weight:800;
    color:#111;
    padding-bottom:0;
    min-height:0;

}
.drink-line{

    width:50px;
    height:4px;
    background:#38D5D1;
    border-radius:999px;

    margin:15px auto 18px;

}
.carousel-wrapper{

    position:relative;
    margin-top:50px;
    margin-bottom:60px;

}

.carousel-track{

    display:flex;
    gap:24px;

    overflow-x:auto;
    scroll-snap-type:x mandatory;

    padding:20px 5px 40px;

    scrollbar-width:none;
    -ms-overflow-style:none;

}

.carousel-track::-webkit-scrollbar{

    display:none;

}

.carousel-btn{

    position:absolute;
    top:50%;
    transform:translateY(-50%);

    width:48px;
    height:48px;
    border:none;
    border-radius:50%;

    background:white;
    color:#28D7D2;
    font-size:26px;
    line-height:1;

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

    box-shadow:0 10px 25px rgba(0,0,0,.15);
    cursor:pointer;
    transition:.3s;

    z-index:2;

}

.carousel-btn:hover{

    background:#28D7D2;
    color:white;

}

.carousel-wrapper.no-scroll .carousel-btn{

    display:none;

}

.carousel-wrapper.no-scroll .carousel-track{

    justify-content:center;

}

.carousel-prev{

    left:-24px;

}

.carousel-next{

    right:-24px;

}

@media (max-width:768px){

    .carousel-btn{

        width:38px;
        height:38px;
        font-size:20px;

    }

    .carousel-prev{

        left:-12px;

    }

    .carousel-next{

        right:-12px;

    }

    .navbar-brand img{

        width:160px;

    }

    .hero h1{

        font-size:52px;
        letter-spacing:-1px;

    }

    .hero p{

        font-size:18px;

    }

    .about h2,
    .menu-section h2{

        font-size:32px;

    }

    .store-section h2{

        font-size:34px;

    }

    .premium-section h3{

        font-size:38px;

    }

    .carousel-track{

        padding-left:calc(50% - 150px);
        padding-right:calc(50% - 150px);

    }

    .premium-card{

        scroll-snap-align:center;

    }

}

@media (max-width:480px){

    .hero h1{

        font-size:40px;

    }

    .navbar-brand img{

        width:140px;

    }

}