*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Inter,sans-serif;
}

body{

background:#f6f7fb;

}

.topbar{

padding:60px 20px;

text-align:center;

background:white;

margin-bottom:30px;

box-shadow:0 2px 12px rgba(0,0,0,.08);

}

.topbar h1{

font-size:42px;

font-weight:700;

margin-bottom:10px;

}

.topbar p{

font-size:18px;

color:#666;

}

.products{

max-width:1500px;

margin:auto;

padding:20px;

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:25px;

}

.card{

background:#fff;

border-radius:16px;

overflow:hidden;

box-shadow:0 10px 25px rgba(0,0,0,.08);

transition:.3s;

display:flex;

flex-direction:column;

}

.card:hover{

transform:translateY(-8px);

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

}

.card img{

width:100%;

height:300px;

object-fit:contain;

padding:25px;

background:#fafafa;

}

.card h3{

padding:0 20px;

margin-bottom:10px;

font-size:20px;

font-weight:600;

line-height:1.4;

}

.rating{

padding:0 20px;

color:#ff9800;

font-size:17px;

margin-bottom:10px;

}

.rating span{

color:#666;

font-size:15px;

}

.price{

padding:0 20px;

font-size:34px;

font-weight:700;

margin-bottom:20px;

}

.price span{

text-decoration:line-through;

font-size:18px;

color:#777;

margin-left:10px;

}

button{

margin:20px;

height:52px;

border:none;

border-radius:50px;

background:#ffc107;

font-size:18px;

font-weight:700;

cursor:pointer;

transition:.3s;

}

button:hover{

background:#ffb300;

}

@media(max-width:768px){

.topbar h1{

font-size:32px;

}

.card img{

height:220px;

}

.price{

font-size:28px;

}

}