* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Poppins',sans-serif; background:#f8fdff; color:#222; line-height:1.7; }
a { text-decoration:none; }
.red { color:#e63946; }
.navy { color:#1d3557; }

/* HERO */
.hero { text-align:center; padding:80px 20px; background:linear-gradient(135deg, #ffffff 0%, #e6f3ff 100%); }
.logo { width:220px; filter:drop-shadow(0 8px 20px rgba(230,57,70,0.3)); margin-bottom:10px; }
h1 { font-size:48px; font-weight:800; margin:15px 0; }
h1 span { color:#e63946; }
p { font-size:22px; color:#1d3557; margin:10px 0; }
.wa-btn {
    background:#e63946; color:#fff; padding:20px 40px; border-radius:50px;
    font-weight:800; font-size:23px; margin:35px 0; display:inline-block;
    box-shadow:0 12px 30px rgba(230,57,70,0.4); transition:0.3s;
}
.wa-btn:hover { transform:scale(1.1); background:#c1121f; }
.hot { margin-top:50px; display:flex; gap:25px; justify-content:center; flex-wrap:wrap; }
.hot img { 
    width:120px; height:120px; object-fit:cover; border-radius:20px; 
    border:5px solid #fff; box-shadow:0 8px 25px rgba(29,53,87,0.2);
    transition:0.3s;
}
.hot img:hover { transform:scale(1.15); border-color:#e63946; }

/* SHOP */
.shop { padding:80px 20px; background:#fff; text-align:center; }
h2 { font-size:40px; color:#1d3557; margin-bottom:50px; }
.grid {
    display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:30px; max-width:1300px; margin:auto;
}
.card {
    background:#fff; border-radius:22px; overflow:hidden; 
    box-shadow:0 10px 35px rgba(0,0,0,0.08); transition:0.4s; border:2px solid #e6f3ff;
}
.card:hover { transform:translateY(-15px); box-shadow:0 20px 50px rgba(230,57,70,0.15); border-color:#e63946; }
.card img { width:100%; height:200px; object-fit:cover; }
.card h3 { font-size:20px; padding:15px 10px 5px; color:#1d3557; }
.card p { color:#e63946; font-weight:800; font-size:22px; padding:0 10px 12px; }
.card a {
    display:block; background:#1d3557; color:#fff; padding:16px;
    font-weight:600; transition:0.3s;
}
.card a:hover { background:#e63946; }

/* STEPS */
.steps { padding:80px 20px; background:#e6f3ff; text-align:center; }
.steps h2 { color:#e63946; margin-bottom:50px; font-size:38px; }
.step {
    display:inline-block; width:28%; min-width:270px; margin:20px;
    background:#fff; padding:40px 20px; border-radius:22px;
    box-shadow:0 10px 30px rgba(29,53,87,0.1); border:3px solid #1d3557;
}
.step span {
    display:block; width:75px; height:75px; line-height:75px;
    background:#e63946; color:#fff; font-size:32px; font-weight:800;
    border-radius:50%; margin:0 auto 25px; box-shadow:0 0 25px rgba(230,57,70,0.5);
}

/* FOOTER */
footer { padding:60px 20px; text-align:center; background:#1d3557; color:#fff; }
footer a { color:#e63946; font-weight:600; }

/* Mobile */
@media (max-width:768px){
    h1 { font-size:36px; }
    .wa-btn { font-size:20px; padding:18px 30px; }
    .step { width:90%; }
}