body{
margin:0;
font-family:Arial, sans-serif;
background:linear-gradient(135deg,#eef2f7,#e3f2ff);
}

/* TOPBAR */

.topbar{
background:#111;
color:white;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
align-items:center;
padding:15px 25px;
gap:10px;
}

.logo{
font-size:22px;
font-weight:bold;
letter-spacing:1px;
}

.topbar input{
padding:8px;
border-radius:5px;
border:none;
width:180px;
}

nav{
display:flex;
flex-wrap:wrap;
gap:12px;
}

nav a{
color:white;
text-decoration:none;
font-size:14px;
opacity:0.9;
}

nav a:hover{
opacity:1;
}

/* HERO */

.hero{
background:linear-gradient(120deg,#0073e6,#00c6ff);
color:white;
text-align:center;
padding:80px 20px;
}

.hero h2{
font-size:32px;
margin-bottom:10px;
}

/* BANNERS */

.banner-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
gap:20px;
padding:30px;
}

.banner{
background:#0073e6;
color:white;
padding:40px;
text-align:center;
border-radius:10px;
font-weight:bold;
transition:0.3s;
}

.banner:hover{
transform:translateY(-5px);
background:#005ed1;
}

/* PRODUCTS */

.products{
max-width:1200px;
margin:auto;
padding:40px 20px;
}

.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:25px;
}

.card{
background:white;
padding:15px;
border-radius:12px;
box-shadow:0 6px 16px rgba(0,0,0,0.1);
text-align:center;
transition:0.3s;
position:relative;
}

.card:hover{
transform:translateY(-6px);
}

.card img{
width:100%;
border-radius:8px;
margin-bottom:10px;
}

/* BADGE */

.badge{
position:absolute;
top:10px;
left:10px;
background:#ff3b3b;
color:white;
padding:4px 8px;
font-size:12px;
border-radius:5px;
font-weight:bold;
}

/* PRICE */

.price{
font-size:15px;
font-weight:bold;
color:#0073e6;
}

/* RATING */

.rating{
font-size:14px;
margin:5px 0;
}

/* BUY BUTTON */

.buy{
display:inline-block;
background:#0073e6;
color:white;
padding:10px 16px;
border-radius:6px;
margin-top:10px;
text-decoration:none;
font-size:14px;
transition:0.3s;
}

.buy:hover{
background:#005ed1;
}

/* REVIEWS */

.review-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:20px;
padding:30px;
}

.review{
background:white;
padding:20px;
border-radius:10px;
box-shadow:0 2px 10px rgba(0,0,0,0.1);
}

/* NEWSLETTER */

.newsletter{
text-align:center;
padding:50px;
background:#f0f4ff;
}

.newsletter input{
padding:10px;
border:1px solid #ccc;
border-radius:5px;
width:220px;
max-width:90%;
}

.newsletter button{
padding:10px 20px;
background:#ff6600;
color:white;
border:none;
border-radius:5px;
margin-left:10px;
cursor:pointer;
transition:0.3s;
}

.newsletter button:hover{
background:#e65c00;
}

/* FOOTER */

footer{
background:#000;
color:white;
text-align:center;
padding:20px;
margin-top:40px;
}

/* MOBILE */

@media (max-width:768px){

.topbar{
flex-direction:column;
align-items:flex-start;
}

nav{
justify-content:center;
}

.hero h2{
font-size:24px;
}

.banner{
padding:25px;
}

.newsletter button{
margin-top:10px;
}

.grid{
grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
}

}