body{

    background:black;

    color:white;

    font-family:'Inter',sans-serif;

}

.shop-title{

    position:fixed;

    top:40px;
    left:50px;

    font-size:14px;

    letter-spacing:6px;

    opacity:0.25;

    z-index:100;

}

.shop-grid{

    display:grid;

    grid-template-columns:repeat(8,1fr);

    gap:16px;

    padding:140px 40px 40px;

}

.shop-card{

    text-decoration:none;

    color:white;

}

.shop-card img{

    width:100%;

    aspect-ratio:0.8;

    object-fit:contain;

    display:block;

}

.shop-card:hover img{

    opacity:0.82;

}

.shop-info{

    margin-top:14px;

}

.shop-info p{

    font-size:12px;

    letter-spacing:2px;

    margin-bottom:8px;

    opacity:0.8;

}

.shop-info span{

    font-size:11px;

    opacity:0.5;

}

.product-gallery{

    display:flex;

    overflow-x:auto;

    scroll-snap-type:x mandatory;

    height:100vh;

}

.product-gallery::-webkit-scrollbar{

    display:none;

}

.product-slide{

    flex:0 0 100vw;

    width:100vw;

    height:100vh;

    display:flex;

    justify-content:center;

    align-items:center;

    scroll-snap-align:start;

}

.product-slide img{

    max-width:100%;

    max-height:100%;

    width:auto;

    height:auto;

    object-fit:contain;

}

.product-overlay{

    position:fixed;

    left:60px;
    bottom:60px;

    z-index:100;

    max-width:280px;

}

.product-overlay p{

    font-size:8px;

    letter-spacing:3px;

    opacity:0.4;

    margin-bottom:14px;

}

.product-overlay h1{

    font-size:48px;

    line-height:0.9;

    font-weight:600;

    opacity:0.9;

    margin-bottom:14px;

}

.product-overlay span{

    display:block;

    font-size:12px;

    opacity:0.6;

    margin-bottom:18px;

}

.product-description{

    font-size:12px;

    line-height:1.6;

    opacity:0.8;

    margin-bottom:22px;

}

.sizes{

    display:flex;

    gap:8px;

    margin-bottom:18px;

}

.size-btn{

    width:34px;

    height:34px;

    border:none;

    background:rgba(255,255,255,0.06);

    color:rgba(255,255,255,0.45);

    font-size:10px;

    cursor:pointer;

    transition:0.3s ease;

}

.size-btn:hover{

    background:rgba(255,255,255,0.12);

    color:rgba(255,255,255,0.8);

}

.size-btn.active{

    background:white;

    color:black;

}

.buy-button{

    background:white;

    color:black;

    border:none;

    padding:12px 24px;

    font-size:10px;

    letter-spacing:2px;

    cursor:pointer;

    transition:0.25s ease;

}

.buy-button:hover{

    opacity:0.9;

    transform:scale(1.03);

}

.buy-button:active{

    transform:scale(0.97);

}

.cart-button{

    position:fixed;

    top:40px;
    right:50px;

    z-index:500;

}

.cart-button a{

    color:white;

    text-decoration:none;

    letter-spacing:3px;

    font-size:11px;

    opacity:0.45;

}

#cart-count{

    margin-left:8px;

    opacity:0.35;

}

.cart-page{

    padding:160px 60px;

    min-height:100vh;

}

.cart-page h1{

    font-size:48px;

    margin-bottom:60px;

    opacity:0.9;

}

.cart-item{

    display:flex;

    align-items:center;

    gap:24px;

    margin-bottom:32px;

}

.cart-item img{

    width:120px;

    height:160px;

    object-fit:cover;

}

.cart-item p{

    letter-spacing:2px;

    margin-bottom:8px;

    opacity:0.8;

}

.cart-item span{

    opacity:0.5;

    font-size:12px;

}

.cart-total{

    margin-top:50px;

    margin-bottom:50px;

    font-size:22px;

    letter-spacing:2px;

}

.checkout-info{

    opacity:0.7;

    line-height:2;

}

.checkout-info p{

    margin-bottom:8px;

}

.view-controls{

    position:fixed;

    top:35px;
    right:50px;

    z-index:300;

}

.view-controls button{

    background:transparent;

    border:1px solid rgba(255,255,255,0.15);

    color:rgba(255,255,255,0.35);

    padding:8px 14px;

    cursor:pointer;

    transition:0.3s;

}

.view-controls button:hover{

    border-color:rgba(255,255,255,0.5);

    color:rgba(255,255,255,0.8);

}

.shop-video{

    position:fixed;

    top:0;
    left:0;

    width:100%;
    height:100%;

    object-fit:cover;

    z-index:-2;

    opacity:0.25;

    pointer-events:none;

}

@media(max-width:900px){

    .view-controls{
        display:none;
    }

    .shop-grid{

        grid-template-columns:repeat(2,1fr) !important;

        column-gap:45px;
        row-gap:90px;

        padding:120px 20px 40px;

    }

    .product-slide{

        align-items:flex-start;

        padding-top:70px;

    }

    .product-slide img{

        width:100%;

        height:auto;

    }

    .product-overlay{

        left:20px;
        right:20px;
        bottom:20px;

        max-width:220px;

    }

    .product-overlay h1{

        font-size:38px;

    }

    .product-description{

        font-size:11px;

        line-height:1.5;

    }

    .buy-button{

        width:160px;

        pointer-events:auto;

    }

}

