*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --coral:#e8635a;
  --coral-dark:#c44a42;
  --teal:#2db5a3;
  --teal-dark:#1d8a7c;
  --yellow:#fdd85d;
  --yellow-light:#fff8e1;
  --purple:#7c5cbf;
  --bg:#ffffff;
  --bg-light:#f7f7f9;
  --text:#2a2a2a;
  --text-light:#5c5c5c;
  --border:#e8e8e8;
}
body{font-family:'Helvetica Neue',Arial,sans-serif;line-height:1.65;color:var(--text);background:var(--bg)}
.container{max-width:1120px;margin:0 auto;padding:0 2rem}

/* Header */
header{background:var(--bg);border-bottom:3px solid var(--coral);padding:0.9rem 0;position:sticky;top:0;z-index:100;box-shadow:0 1px 8px rgba(0,0,0,0.05)}
header nav{display:flex;justify-content:space-between;align-items:center;max-width:1120px;margin:0 auto;padding:0 2rem}
.brand{display: inline-flex;align-items:center;gap:0.6rem;text-decoration:none}
.brand svg{width:36px;height:36px}
.brand span{font-weight:800;font-size:1.3rem;color:var(--coral-dark);letter-spacing:-0.3px}
.nav-links{display:flex;gap:1.5rem}
.nav-links a{color:var(--text);text-decoration:none;font-weight:600;font-size:0.95rem;transition:color 0.2s}
.nav-links a:hover{color:var(--coral)}

/* Hero */
.hero{background:linear-gradient(135deg,var(--coral) 0%,var(--purple) 50%,var(--teal) 100%);padding:5rem 2rem;text-align:center;color:var(--bg)}
.hero h1{font-size:3rem;margin-bottom:0.8rem;font-weight:800;letter-spacing:-1px}
.hero p{font-size:1.2rem;opacity:0.92;max-width:620px;margin:0 auto 2rem}
.btn{display:inline-block;background:var(--yellow);color:var(--text);padding:0.85rem 2.2rem;text-decoration:none;font-weight:700;border-radius:50px;transition:transform 0.2s,box-shadow 0.2s;font-size:1rem}
.btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(253,216,93,0.5)}
.btn-coral{background:var(--coral);color:var(--bg)}
.btn-coral:hover{background:var(--coral-dark);box-shadow:0 6px 20px rgba(232,99,90,0.4)}

/* Sections */
section{padding:4rem 0}
section.light{background:var(--bg-light)}
section.yellow{background:var(--yellow-light)}
h2{font-size:2rem;color:var(--text);margin-bottom:1.5rem;text-align:center;font-weight:800}
h3{font-size:1.2rem;color:var(--text);margin-bottom:0.6rem;font-weight:700}
p{margin-bottom:1rem}

/* Grid */
.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2.5rem;margin-top:2rem;align-items:center}
.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.8rem;margin-top:2rem}

/* Cards */
.card{background:var(--bg);border-radius:12px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,0.06);transition:transform 0.2s,box-shadow 0.2s}
.card:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,0.1)}
.card img{width:100%;height:220px;object-fit:cover}
.card-body{padding:1.5rem}
.card-body p{color:var(--text-light);font-size:0.95rem}

/* Category cards */
.cat-card{background:var(--bg);border-radius:12px;overflow:hidden;text-align:center;box-shadow:0 2px 12px rgba(0,0,0,0.06);transition:transform 0.2s}
.cat-card:hover{transform:translateY(-4px)}
.cat-card img{width:100%;height:180px;object-fit:cover}
.cat-card h3{padding:1.2rem 1rem 0.4rem}
.cat-card p{padding:0 1rem 1.2rem;font-size:0.9rem;color:var(--text-light)}

/* Tag */
.tag{display:inline-block;padding:0.3rem 0.8rem;border-radius:20px;font-size:0.8rem;font-weight:700;margin-right:0.5rem;margin-bottom:0.5rem}
.tag-coral{background:#fde8e6;color:var(--coral-dark)}
.tag-teal{background:#e0f5f2;color:var(--teal-dark)}
.tag-purple{background:#ece5f6;color:var(--purple)}

/* Feature image */
.feature-img{width:100%;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,0.08)}

/* Tip boxes */
.tip-box{background:var(--bg);border-left:4px solid var(--teal);padding:1.5rem;border-radius:0 8px 8px 0;margin-bottom:1.5rem}
.tip-box h3{color:var(--teal-dark);margin-bottom:0.4rem}
.tip-box p{margin-bottom:0;color:var(--text-light)}

/* CTA */
.cta-band{background:var(--coral);color:var(--bg);text-align:center;padding:4rem 2rem}
.cta-band h2{color:var(--bg)}
.cta-band p{opacity:0.92;max-width:500px;margin:0 auto 1.5rem}

/* Footer */
footer{background:var(--text);color:#ccc;padding:3rem 0;font-size:0.9rem}
.footer-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:2rem;max-width:1120px;margin:0 auto;padding:0 2rem}
.footer-col h4{color:var(--yellow);margin-bottom:0.7rem;font-size:0.9rem;text-transform:uppercase;letter-spacing:1px;font-weight:700}
.footer-col a{color:#ccc;text-decoration:none;display:block;margin-bottom:0.4rem}
.footer-col a:hover{color:var(--yellow)}
.footer-bottom{text-align:center;padding-top:2rem;margin-top:2rem;border-top:1px solid #444;color:#777;font-size:0.85rem}

/* Responsive */
@media(max-width:768px){
  .hero h1{font-size:2.1rem}
  .hero{padding:3rem 1.5rem}
  .grid-2{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr}
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .nav-links{gap:0.8rem}
  .nav-links a{font-size:0.85rem}
  .footer-inner{flex-direction:column;text-align:center}
  header nav{flex-direction:column;gap:1rem}
}

.brand-icon { width: 24px; height: 24px; flex-shrink: 0; vertical-align: middle; margin-right: 6px; }
