*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:Inter,sans-serif;
background:#ffffff;
color:#111827;
}

img{
display:block;
max-width:100%;
height:auto;
}

a{
text-decoration:none;
transition:.3s;
}

button{
cursor:pointer;
transition:.3s;
}

input,
select,
textarea{
outline:none;
}

::-webkit-scrollbar{
width:8px;
}

::-webkit-scrollbar-track{
background:#f3f4f6;
}

::-webkit-scrollbar-thumb{
background:#111827;
border-radius:50px;
}

::-webkit-scrollbar-thumb:hover{
background:#000;
}

header{
transition:.3s;
}

.product-card{
transition:.35s;
border-radius:18px;
overflow:hidden;
background:#fff;
}

.product-card:hover{
transform:translateY(-6px);
box-shadow:0 15px 35px rgba(0,0,0,.12);
}

.product-card img{
transition:.4s;
}

.product-card:hover img{
transform:scale(1.06);
}

.hero-btn{
transition:.3s;
}

.hero-btn:hover{
transform:translateY(-2px);
}

.size-option{
display:flex;
align-items:center;
justify-content:center;
width:48px;
height:48px;
border:1px solid #d1d5db;
border-radius:10px;
cursor:pointer;
transition:.3s;
user-select:none;
}

.size-option:hover{
background:#000;
color:#fff;
border-color:#000;
}

.gallery-thumb{
border:2px solid transparent;
border-radius:12px;
cursor:pointer;
transition:.3s;
}

.gallery-thumb:hover{
border-color:#000;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button{
-webkit-appearance:none;
margin:0;
}

table{
border-collapse:collapse;
width:100%;
}

table tbody tr:hover{
background:#f9fafb;
}

footer a{
transition:.3s;
}

footer a:hover{
color:#fff;
}

.shadow-hover{
transition:.35s;
}

.shadow-hover:hover{
box-shadow:0 20px 40px rgba(0,0,0,.12);
}

.fade-up{
animation:fadeUp .6s ease;
}

@keyframes fadeUp{
0%{
opacity:0;
transform:translateY(30px);
}
100%{
opacity:1;
transform:translateY(0);
}
}

.zoom{
overflow:hidden;
}

.zoom img{
transition:.4s;
}

.zoom:hover img{
transform:scale(1.08);
}

.btn-black{
background:#000;
color:#fff;
transition:.3s;
}

.btn-black:hover{
background:#222;
}

.btn-outline{
border:1px solid #000;
transition:.3s;
}

.btn-outline:hover{
background:#000;
color:#fff;
}

.badge{
display:inline-flex;
align-items:center;
justify-content:center;
min-width:22px;
height:22px;
padding:0 6px;
border-radius:999px;
background:#000;
color:#fff;
font-size:12px;
font-weight:600;
}

@media(max-width:1024px){
.hero-title{
font-size:42px;
}
}

@media(max-width:768px){
.hero-title{
font-size:34px;
line-height:1.2;
}

.product-card img{
height:320px;
object-fit:cover;
}

table{
display:block;
overflow-x:auto;
white-space:nowrap;
}
}

@media(max-width:480px){
.hero-title{
font-size:28px;
}

.product-card img{
height:280px;
}

button,
a{
font-size:14px;
}
}