:root{
  --sand:#D9C2A7;
  --white:#FFFFFF;
  --espresso:#4A3A34;
  --softgray:#6F625D;
  --aqua:#9CD5FF;
  --lav:#C6A2FF;
  --pink:#F7A6C2;
  --peach:#F7C79C;
}

*{box-sizing:border-box;}

body{
  margin:0;
  font-family:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:var(--sand);
  color:var(--espresso);
  line-height:1.7;
}

.container{
  max-width:1080px;
  margin:0 auto;
  padding:0 1.2rem;
}

/* NAV */
nav{
  background:rgba(245,230,210,0.9);
  border-bottom:1px solid rgba(111,98,93,0.35);
  padding:0.7rem 0;
}
nav .inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  flex-wrap:wrap;
}
nav .brand{
  display:flex;
  align-items:center;
  gap:0.6rem;
}
nav .brand span{
  font-weight:700;
  letter-spacing:0.12em;
  font-size:0.78rem;
  text-transform:uppercase;
  color:var(--softgray);
}
nav .logo{
  height:42px;
  border-radius:999px;
}
nav .links a{
  color:var(--espresso);
  text-decoration:none;
  margin:0 0.35rem;
  font-size:0.9rem;
  font-weight:500;
  padding:0.3rem 0.6rem;
  border-radius:999px;
}
nav .links a:hover{
  background:rgba(255,255,255,0.8);
  box-shadow:0 0 0 1px rgba(156,213,255,0.7);
}

/* HEADER */
header{
  padding:1.4rem 0 1rem;
  text-align:center;
}
header h1{
  margin:0;
  font-size:1.9rem;
  color:var(--espresso);
}
header p{
  margin:0.4rem 0 0;
  color:var(--softgray);
  font-size:0.95rem;
}

/* HERO */
.hero{
  padding:3.5rem 1.2rem 3rem;
}
.hero-inner{
  max-width:840px;
  margin:0 auto;
  text-align:center;
  background:radial-gradient(circle at top,
    rgba(156,213,255,0.35) 0%,
    rgba(214,178,150,0.8) 45%,
    var(--sand) 100%);
  border-radius:28px;
  padding:2.4rem 2rem 2.6rem;
  box-shadow:0 18px 36px rgba(74,58,52,0.35);
}
.hero-logo{
  height:130px;
  border-radius:22px;
}
.hero h2{
  margin-top:1.2rem;
  font-size:1.7rem;
}
.hero .tagline{
  margin-top:0.3rem;
  margin-bottom:1.2rem;
  font-size:1.02rem;
  color:var(--espresso);
}
.badge{
  display:inline-block;
  font-size:0.78rem;
  letter-spacing:0.14em;
  text-transform:uppercase;
  padding:0.25rem 0.7rem;
  border-radius:999px;
  border:1px solid rgba(111,98,93,0.6);
  color:var(--softgray);
}

/* SECTIONS */
.section{
  padding:2.8rem 1.2rem 2.4rem;
}
.card{
  background:var(--white);
  border-radius:22px;
  border:1px solid rgba(111,98,93,0.15);
  padding:1.7rem 1.8rem;
  box-shadow:0 10px 24px rgba(0,0,0,0.12);
  margin-bottom:2rem;
}
.card h2{
  margin-top:0;
  font-size:1.25rem;
  color:var(--espresso);
}
.card p{
  margin:0.4rem 0 0.8rem;
  color:var(--softgray);
}
.card ul{
  padding-left:1.1rem;
}
.card li{
  margin-bottom:0.25rem;
}

/* PRICE BOX */
.price{
  background:#f7eee3;
  border-radius:14px;
  padding:0.9rem 1rem;
  border:1px solid rgba(111,98,93,0.4);
  margin-top:0.8rem;
}

/* BUTTON */
.btn{
  display:inline-block;
  padding:0.85rem 1.8rem;
  border-radius:999px;
  background:linear-gradient(120deg,var(--aqua),var(--lav),var(--pink),var(--peach));
  color:#3b2e28;
  text-decoration:none;
  font-weight:700;
  font-size:0.98rem;
  box-shadow:0 10px 24px rgba(0,0,0,0.25);
}
.btn:hover{
  filter:brightness(1.05);
}

/* FOOTER */
footer{
  margin-top:2rem;
  padding:1.2rem 0 1.5rem;
  text-align:center;
  color:var(--softgray);
  font-size:0.88rem;
}
footer .container{
  border-top:1px solid rgba(111,98,93,0.35);
  padding-top:1rem;
}

/* ANIMATIONS */
@keyframes fadeInUp{
  from{opacity:0; transform:translateY(14px);}
  to{opacity:1; transform:translateY(0);}
}
.fade{
  animation:fadeInUp 0.8s ease both;
}

/* MOBILE */
@media (max-width: 720px){
  header h1{font-size:1.6rem;}
  .hero-inner{padding:2rem 1.4rem;}
  nav .inner{flex-direction:column;align-items:flex-start;}
}
