/* ================= GLOBAL ================= */

*{
box-sizing:border-box;
}

html,body{
margin:0;
padding:0;
overflow-x:hidden;
font-family:'Poppins',sans-serif;
background:#ffffff;
color:#111;
}

h1,h2,h3,h4{
margin:0;
color:#111;
}

section{
padding:80px 20px;
}

p{
color:#555;
line-height:1.6;
}


/* ================= NAVBAR ================= */

.navbar{
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 40px;
background:#ffffff;
border-bottom:1px solid #eee;
position:sticky;
top:0;
z-index:1000;
}

.logo{
font-size:24px;
font-weight:700;
color:#e60023;
}

.nav-links{
display:flex;
align-items:center;
}

.nav-links a{
color:#111;
text-decoration:none;
margin-left:28px;
font-weight:500;
transition:0.3s;
}

.nav-links a:hover{
color:#e60023;
}


/* ================= HERO ================= */

.hero{
text-align:center;
padding:120px 20px 90px;
max-width:900px;
margin:auto;
}

.hero h1{
font-size:48px;
margin-bottom:20px;
}

.hero p{
font-size:16px;
}

.hero button{
margin-top:30px;
padding:14px 34px;
border-radius:30px;
border:none;
background:#e60023;
color:white;
font-size:15px;
cursor:pointer;
transition:0.3s;
}

.hero button:hover{
background:#c9001e;
transform:translateY(-2px);
}


/* ================= ABOUT ================= */

#about{
text-align:center;
max-width:900px;
margin:auto;
}


/* ================= PRODUCTS ================= */

.products{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
max-width:1200px;
margin:auto;
}

/* Tablet */

@media (max-width:1000px){
.products{
grid-template-columns:repeat(3,1fr);
}
}

/* Smartphone */

@media (max-width:768px){
.products{
grid-template-columns:repeat(2,1fr);
gap:18px;
}
}


/* ================= PRODUCT CARD ================= */

.card{

background:#fff;
border-radius:12px;

padding:0 0 18px;

display:flex;
flex-direction:column;
align-items:center;

border:1px solid #eee;

transition:0.3s;
overflow:hidden;
}

.card:hover{
transform:translateY(-6px);
box-shadow:0 15px 35px rgba(0,0,0,0.08);
}


/* IMAGE CONTAINER */

.card img{
width:100%;
height:180px;
object-fit:cover;   /* CROPS IMAGE */
display:block;
}


/* TEXT AREA */

.card h3{
font-size:16px;
margin-top:12px;
text-align:center;
padding:0 10px;
}

.card p{
font-size:13px;
margin:5px 0 12px;
color:#666;
text-align:center;
padding:0 10px;
}

.card button{
padding:7px 16px;
border-radius:20px;
border:none;
background:#e60023;
color:white;
cursor:pointer;
font-size:13px;
transition:0.3s;
}

.card button:hover{
background:#c9001e;
}


/* ================= WHY ================= */

.why{
text-align:center;
background:#fafafa;
}

.why h2{
margin-bottom:45px;
}

.why-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
max-width:1100px;
margin:auto;
}

@media (max-width:768px){
.why-grid{
grid-template-columns:repeat(2,1fr);
}
}

.why-box{
padding:35px;
border-radius:12px;
background:#fff;
border:1px solid #eee;
transition:0.3s;
}

.why-box:hover{
box-shadow:0 15px 35px rgba(0,0,0,0.07);
transform:translateY(-6px);
}

.why-box i{
font-size:28px;
margin-bottom:12px;
color:#e60023;
}


/* ================= CTA ================= */

.cta{
text-align:center;
background:#111;
color:white;
}

.cta h2{
color:white;
margin-bottom:20px;
}

.cta button{
padding:14px 34px;
border-radius:30px;
border:none;
background:#25d366;
color:white;
font-size:16px;
cursor:pointer;
transition:0.3s;
}

.cta button:hover{
background:#1ebe5d;
}


/* ================= FOOTER ================= */

footer{
background:#111;
color:white;
padding:60px 20px;
}

.footer-grid{
max-width:1100px;
margin:auto;
display:grid;
grid-template-columns:repeat(3,1fr);
gap:40px;
}

.footer-box h3{
margin-bottom:12px;
color:#e60023;
}

.footer-box p,
.footer-box a{
color:#ccc;
text-decoration:none;
line-height:1.7;
}

.footer-box a:hover{
color:white;
}

.social-icons{
display:flex;
gap:12px;
margin-top:10px;
}

.social-icons a{
width:38px;
height:38px;
border-radius:50%;
background:#222;
display:flex;
justify-content:center;
align-items:center;
color:white;
transition:0.3s;
}

.social-icons a:hover{
background:#e60023;
}

.bottom{
text-align:center;
margin-top:40px;
color:#aaa;
font-size:14px;
}


/* ================= MOBILE MENU ================= */

.menu-toggle{
display:none;
font-size:24px;
cursor:pointer;
}

@media (max-width:768px){

.menu-toggle{
display:block;
}

.nav-links{
position:absolute;
top:70px;
right:-100%;
background:#fff;
flex-direction:column;
width:220px;
text-align:center;
padding:25px;
border-radius:10px;
box-shadow:0 15px 40px rgba(0,0,0,0.1);
transition:0.35s;
}

.nav-links a{
margin:15px 0;
color:#111;
}

.nav-links.active{
right:20px;
}

.footer-grid{
grid-template-columns:1fr;
text-align:center;
}

.social-icons{
justify-content:center;
}

}