*{
margin:0;
padding:0;
box-sizing:border-box;
}

html,
body{
overflow-x:hidden;
}

body {
    margin: 0;
    min-height: 100vh;
    display: block;
    padding: 28px 10px 18px;
    font-family: "Inter", "Segoe UI", sans-serif;
    background: url("../../admin/images/image_1.jpg");
    background-size: cover;
    background-position: center 20%;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

.footer {
    text-align: center;
    padding: 20px;
    color: white;
    font-weight: bold;
    font-family: "Inter", "Segoe UI", sans-serif;
}

.footer a {
    color: blue;
    text-decoration: none;
}

.footer a:hover {
    text-decoration: underline;
}

.container{
    width:100%;
    max-width:980px;
    margin:0 auto;
}

.product-card {
    max-width: 900px;
    width: 100%;
    background: white;
    border-radius: 25px;
    padding: 30px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2);
    margin: 0 auto 12px;
    overflow:hidden;
}

.image{
width:100%;
height:380px;
overflow:hidden;
border-radius:20px;
margin-bottom:25px;
background:#efefef;
}

.image img{
width:100%;
height:100%;
object-fit:contain;
transition:0.4s;
}

.image img:hover{
transform:scale(1.05);
}

.description{
text-align:center;
margin-bottom:30px;
}

.description h2{
font-size:2rem;
margin-bottom:10px;
}

.description p{
color:#555;
line-height:1.6;
max-height:140px;
overflow-y:auto;
padding:0 8px 0 0;
margin:0 auto;
max-width:720px;
scrollbar-width:thin;
}

.price{
margin-top:10px;
color:sienna;
}

.thumbnails{
display:flex;
justify-content:center;
gap:15px;
margin-bottom:30px;
flex-wrap:wrap;
}

.thumbnails img{
width:80px;
height:80px;
border-radius:12px;
object-fit:contain;
cursor:pointer;
border:2px solid transparent;
transition:0.3s;
}

.thumbnails img:hover{
border-color:sienna;
transform:scale(1.05);
}

.purchase{
display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:wrap;
gap:20px;
}

.quantity{
display:flex;
align-items:center;
gap:10px;
}

.quantity button{
width:35px;
height:35px;
border:none;
background:sienna;
color:white;
border-radius:8px;
cursor:pointer;
}

.quantity input{
width:60px;
text-align:center;
padding:5px;
}

.actions{
display:flex;
gap:10px;
}

.cart-btn{
background:sienna;
color:white;
padding:12px 25px;
border:none;
border-radius:25px;
cursor:pointer;
}

.cart-btn:hover{
background:#8b4513;
}

.fav-btn{
background:#eee;
border:none;
padding:12px;
border-radius:50%;
cursor:pointer;
font-size:18px;
}

.fav-btn.active{
background:red;
color:white;
}

.home{
    display:inline-block;
    padding:10px 20px;
    margin-bottom: 10px;
    margin-left:0;
    background-color:sienna;
    color:blanchedalmond;
    text-decoration:none;
    font-family: "Inter", "Segoe UI", sans-serif;
    font-weight:bold;
    border:none;
    border-radius:8px;
    transition:0.3s ease;
}

.home:hover{
    background-color:#7a3b1f;
    color:white;
    text-decoration: none;
}

.sizes{
text-align:center;
margin-bottom:25px;
}

.size-options{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:10px;
margin-top:10px;
max-width:560px;
margin-left:auto;
margin-right:auto;
}

.size{
flex:1 1 calc(25% - 10px);
min-width:72px;
max-width:130px;
padding:10px 8px;
border-radius:8px;
background:#eee;
cursor:pointer;
transition:0.3s;
font-weight:bold;
text-align:center;
}

.size:hover{
background:#ccc;
}

.size.active{
background:#555;
color:white;
}

.size.out-of-stock{
background:#6b0000;
color:#f5dada;
cursor:not-allowed;
opacity:0.85;
text-decoration:line-through;
}

.size.out-of-stock:hover{
background:#6b0000;
transform:none;
}

@media (max-width: 900px){
    body{
        background-attachment: scroll;
        padding: 14px 8px 10px;
    }

    .product-card{
        padding: 16px;
        border-radius: 16px;
    }

    .image{
        height: 320px;
        margin-bottom: 16px;
    }

    .description{
        margin-bottom: 16px;
    }

    .description h2{
        font-size: 1.6rem;
    }

    .description p{
        max-height: none;
        overflow: visible;
    }

    .thumbnails{
        gap: 10px;
        margin-bottom: 16px;
    }

    .thumbnails img{
        width: 66px;
        height: 66px;
    }

    .size-options{
        max-width: 100%;
    }

    .size{
        flex-basis:calc(33.333% - 10px);
    }

    .purchase{
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .quantity{
        justify-content: center;
    }

    .actions,
    .actions form{
        width: 100%;
    }

    .cart-btn{
        width: 100%;
    }
}

@media (max-width: 420px){
    .image{
        height: 260px;
    }

    .size-options{
        justify-content:stretch;
    }

    .size{
        flex-basis:calc(50% - 10px);
        max-width:none;
    }

    .description h2{
        font-size: 1.35rem;
    }
}
