:root{
  --bg: #f7f6f4;
  --card: #ffffff;
  --muted: #9b9b9b;
  --accent: #d8c3ff;
  --accent-2: #ffd6c2;
  --glass: rgba(255,255,255,0.6);
  --radius: 18px;
  --maxw: 1200px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: 'Poppins', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
  background: linear-gradient(180deg,var(--bg),#fbfbfd);
  color:#111;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.1px;
}
.container{max-width:var(--maxw);margin:0 auto;padding:48px 24px}

/* NAV */
header{position:sticky;top:16px;z-index:40}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;background:transparent;padding:8px 12px;border-radius:12px}
.brand{display:flex;align-items:center;gap:12px}
.logo{width:56px;height:56px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent-2));display:grid;place-items:center;font-weight:600;color:#2b2b2b;box-shadow:0 6px 18px rgba(20,20,20,0.06);}
.brand h1{font-size:16px;margin:0}
.brand p{margin:0;font-size:12px;color:var(--muted)}
nav ul{display:flex;gap:18px;list-style:none;margin:0;padding:0;align-items:center}
nav a{color:rgba(10,10,10,0.75);text-decoration:none;font-weight:500}
.cta{padding:10px 14px;background:linear-gradient(90deg,#6e56ff,#ff9a7b);border-radius:12px;color:white;font-weight:600;box-shadow:0 6px 20px rgba(110,86,255,0.12);}

/* HERO */
.hero{display:grid;grid-template-columns:1fr 420px;gap:36px;align-items:center;margin-top:28px}
.eyebrow{display:inline-block;padding:6px 10px;background:linear-gradient(90deg,rgba(110,86,255,0.12),rgba(255,154,123,0.06));border-radius:999px;font-size:13px;color:#6e56ff;margin-bottom:18px}
.hero h2{font-size:44px;line-height:1.02;margin:0 0 18px}
.hero p{color:var(--muted);font-size:16px;margin:0 0 24px}
.hero .actions{display:flex;gap:12px}
.btn{padding:12px 16px;border-radius:12px;border:1px solid rgba(0,0,0,0.06);background:var(--card);cursor:pointer;transition:transform .28s ease,box-shadow .28s ease}
.btn:hover{transform:translateY(-4px);box-shadow:0 10px 30px rgba(16,16,16,0.06)}
.btn.primary{background:linear-gradient(90deg,#6e56ff,#ff9a7b);color:white;border:none}

/* Product card preview */
.preview{background:linear-gradient(180deg, rgba(255,255,255,0.8), rgba(255,255,255,0.6));padding:22px;border-radius:20px;backdrop-filter: blur(6px);box-shadow:0 6px 24px rgba(10,10,10,0.06)}
.product-visual{height:320px;border-radius:12px;background:linear-gradient(135deg,#fff,#f4eefb);display:grid;place-items:center;overflow:hidden;position:relative}
.product-visual svg{filter:drop-shadow(0 20px 30px rgba(110,86,255,0.08))}
.product-info{display:flex;align-items:center;justify-content:space-between;margin-top:14px}

/* GRID */
.section{margin:64px 0}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:var(--card);border-radius:16px;padding:18px;box-shadow:0 6px 20px rgba(12,12,12,0.04);transition:transform .28s ease,box-shadow .28s ease}
.card:hover{transform:translateY(-8px);box-shadow:0 18px 40px rgba(12,12,12,0.07)}
.card h3{margin:0 0 8px}
.muted{color:var(--muted);font-size:14px}

/* footer */
footer{margin-top:48px;padding:28px;border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,0.9),rgba(250,250,252,0.95))}

/* Responsive */
@media (max-width:980px){
  .hero{grid-template-columns:1fr;}
  .grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .nav{padding:6px}
  nav ul{display:none}
  .brand h1{font-size:14px}
  .hero h2{font-size:32px}
  .grid{grid-template-columns:1fr}
  .container{padding:20px}
}

/* micro interactions */
.fade-in{opacity:0;transform:translateY(12px);transition:opacity .6s ease, transform .6s ease}
.fade-in.show{opacity:1;transform:none}

.hero {
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 36px;
  align-items: center;
  margin-top: 28px;
}

.hero-image img {
  width: 100%;
  max-width: 300px;   /* limit maximum width */
  height: auto;
  border-radius: 16px;
  object-fit: cover;
  box-shadow: 0 6px 20px rgba(0,0,0,0.05);
  margin-left: auto;  /* align to right side */
}


@media (max-width:980px){
  .hero {
    grid-template-columns: 1fr;
  }
}

.card-img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  border-radius: 12px;
  margin-bottom: 12px;
}

.shop-cta {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 14px 24px;
  background: linear-gradient(90deg, #6e56ff, #ff9a7b);
  color: white;
  font-weight: 600;
  font-size: 16px;
  text-decoration: none;
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(110,86,255,0.18);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  text-align: center;
}

.shop-cta small {
  font-size: 12px;
  font-weight: 400;
  opacity: 0.85;
  margin-top: 4px;
}

.shop-cta:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(110,86,255,0.25);
}

#social {
  text-align: center;
  margin: 48px 0;
}

.social-links {
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 16px;
}

.social-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  background: linear-gradient(90deg, #6e56ff, #ff9a7b);
  color: white;
  font-weight: 500;
  font-size: 14px;
  border-radius: 14px;
  text-decoration: none;
  box-shadow: 0 6px 20px rgba(110,86,255,0.12);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.social-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 28px rgba(110,86,255,0.2);
}

.social-icon {
  width: 20px;
  height: 20px;
}

