:root{
  --indigo: #2A2E7C;
  --blue: #1C8FD1;
  --cyan: #29ABE2;
  --mist: #EAF6FC;
  --ink: #101A3D;
  --leaf: #3FA66B;
  --white: #FFFFFF;
  --max: 1180px;
  --radius: 18px;
}

*{ box-sizing: border-box; }
html{ scroll-behavior: smooth; overflow-x: hidden; }
body{
  margin:0;
  font-family: 'Inter', sans-serif;
  color: var(--ink);
  background: var(--white);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  max-width: 100vw;
}
h1,h2,h3{ font-family:'Poppins', sans-serif; margin:0; line-height:1.15; }
p{ margin:0; }
a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; }
:focus-visible{ outline:3px solid var(--cyan); outline-offset:2px; }

.section-inner{ max-width: var(--max); margin:0 auto; padding: 0 28px; }

/* ===== NAV ===== */
.nav{
  position: sticky; top:0; z-index: 50;
  background: rgba(255,255,255,0.88);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(42,46,124,0.08);
}
.nav-inner{
  max-width: var(--max); margin:0 auto; padding: 12px 28px;
  display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.nav-logo{ height: 38px; width:auto; }
.nav-links{ display:flex; gap:32px; }
.nav-links a{
  font-size: 0.95rem; font-weight:500; color: var(--ink);
  position:relative; padding: 4px 0;
}
.nav-links a::after{
  content:''; position:absolute; left:0; bottom:-2px; width:0; height:2px;
  background: var(--cyan); transition: width .2s ease;
}
.nav-links a:hover::after{ width:100%; }
.nav-cta{
  background: var(--indigo); color:#fff; padding: 10px 20px;
  border-radius: 999px; font-weight:600; font-size:0.9rem;
  white-space:nowrap; transition: transform .15s ease, background .2s ease;
}
.nav-cta:hover{ background: var(--blue); transform: translateY(-1px); }

@media (max-width: 760px){
  .nav-links{ display:none; }
  .nav-inner{ padding: 12px 18px; }
  .nav-cta{ padding: 9px 14px; font-size: 0.82rem; }
  .nav-logo{ height: 32px; }
}

/* ===== HERO ===== */
.hero{ position:relative; overflow:hidden; background: var(--mist); }
.hero-bg{ position:absolute; inset:0; opacity:0.55; z-index:0; }
.hero-wave{ width:100%; height:100%; }

.hero-inner{
  position:relative; z-index:1;
  max-width: var(--max); margin:0 auto; padding: 64px 28px 40px;
  display:grid; grid-template-columns: 1.1fr 0.9fr; gap: 32px; align-items:center;
}
.eyebrow{
  font-size: 0.78rem; font-weight:600; letter-spacing: 0.08em; text-transform: uppercase;
  margin-bottom: 18px; display:block;
}
.eyebrow-dark{ color: var(--blue); }
.eyebrow-light{ color: var(--cyan); }

.hero-logo{ width: 280px; margin-bottom: 6px; }
.hero-tagline{
  font-family:'Poppins',sans-serif; font-weight:700; font-size: 1.3rem;
  color: var(--blue); letter-spacing:0.04em; margin-bottom:18px;
}
.hero-sub{ font-size: 1.05rem; line-height:1.65; color:#3A4566; max-width:480px; margin-bottom: 30px; }
.hero-actions{ display:flex; gap:16px; flex-wrap:wrap; }
.hero-copy, .hero-art{ min-width: 0; }

.btn{
  display:inline-block; padding: 14px 26px; border-radius: 999px;
  font-weight:600; font-size:0.95rem; transition: transform .15s ease, box-shadow .2s ease, background .2s ease;
}
.btn-primary{ background: linear-gradient(135deg, var(--cyan), var(--indigo)); color:#fff; box-shadow: 0 10px 24px -8px rgba(42,46,124,0.45); }
.btn-primary:hover{ transform: translateY(-2px); box-shadow: 0 14px 28px -8px rgba(42,46,124,0.55); }
.btn-ghost{ border: 2px solid var(--indigo); color: var(--indigo); }
.btn-ghost:hover{ background: var(--indigo); color:#fff; }

.hero-art{ position:relative; display:flex; justify-content:center; }
.hero-bottles{ max-width: 360px; width:100%; filter: drop-shadow(0 30px 40px rgba(42,46,124,0.25)); }

.hero-divider{ display:block; width:100%; height:60px; position:relative; z-index:1; margin-top:-4px; }

@media (max-width: 860px){
  .hero-inner{ grid-template-columns: 1fr; padding-top: 36px; text-align:center; }
  .hero-sub{ margin-left:auto; margin-right:auto; }
  .hero-actions{ justify-content:center; }
  .hero-logo{ margin-left:auto; margin-right:auto; }
  .hero-art{ order:-1; margin-bottom: 8px; }
  .hero-bottles{ max-width: 240px; }
  .eyebrow{ font-size: 0.7rem; padding: 0 6px; }
}

/* ===== STORY ===== */
.story{ padding: 96px 0; }
.story-grid{ display:grid; grid-template-columns: 1.3fr 0.9fr; gap: 56px; align-items:start; }
.story-copy, .story-stats{ min-width: 0; }
.story h2{ font-size: clamp(1.7rem, 3vw, 2.3rem); margin-bottom: 22px; color: var(--ink); }
.story-text{ font-size:1.02rem; line-height:1.75; color:#3A4566; margin-bottom:16px; }
.story-quote{
  margin-top: 26px; padding: 24px 28px; border-left: 4px solid var(--cyan);
  background: var(--mist); border-radius: 0 var(--radius) var(--radius) 0;
}
.story-quote p{ font-style: italic; font-size:1.05rem; color: var(--indigo); line-height:1.6; }

.story-stats{ display:grid; grid-template-columns: 1fr 1fr; gap:18px; }
.stat-box{
  border: 1.5px solid rgba(28,143,209,0.25); border-radius: var(--radius);
  padding: 24px 18px; text-align:center; background: #fff;
}
.stat-num{ display:block; font-family:'Poppins',sans-serif; font-weight:800; font-size:1.9rem; color: var(--blue); margin-bottom:6px; }
.stat-label{ font-size:0.85rem; color:#5A6483; line-height:1.4; }

@media (max-width: 860px){
  .story-grid{ grid-template-columns: 1fr; }
}

/* ===== WHY ===== */
.why{ background: linear-gradient(160deg, var(--indigo), #1C2068 70%); padding: 96px 0; color:#fff; }
.why-heading{ font-size: clamp(1.7rem, 3vw, 2.3rem); max-width: 620px; margin-bottom: 50px; color:#fff; }
.why-grid{ display:grid; grid-template-columns: repeat(3, 1fr); gap:22px; }
.why-card{ min-width: 0; }
.why-card{
  background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.14);
  border-radius: var(--radius); padding: 30px 24px; transition: background .2s ease, transform .2s ease;
}
.why-card:hover{ background: rgba(255,255,255,0.1); transform: translateY(-4px); }
.why-icon{ width:40px; height:40px; color: var(--cyan); margin-bottom:18px; }
.why-card h3{ color:#fff; font-size:1.1rem; margin-bottom:10px; }
.why-card p{ color: rgba(255,255,255,0.78); font-size:0.92rem; line-height:1.55; }

@media (max-width: 860px){
  .why-grid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px){
  .why-grid{ grid-template-columns: 1fr; }
}

/* ===== PRODUCTS ===== */
.products{ padding: 100px 0 90px; text-align:center; }
.products h2{ font-size: clamp(1.7rem, 3vw, 2.3rem); margin: 14px 0 12px; }
.products-sub{ color:#5A6483; max-width:520px; margin: 0 auto 56px; font-size:1.02rem; }

.bottle-lineup{
  display:flex; align-items:flex-end; justify-content:center; gap: clamp(14px, 3vw, 40px);
  padding: 0 10px 18px; border-bottom: 3px solid var(--mist);
}
.bottle-item{ display:flex; flex-direction:column; align-items:center; flex: 0 1 140px; }
.bottle-shape{
  height: 190px; display:flex; align-items:flex-end; justify-content:center;
  width:100%; margin-bottom: 14px;
  transform: scaleY(var(--h)); transform-origin: bottom;
}
.bottle-svg{ height: 190px; width:auto; }
.bottle-size{ font-family:'Poppins',sans-serif; font-weight:700; color: var(--indigo); font-size:1rem; margin-bottom:6px; }
.bottle-use{ font-size:0.85rem; color:#5A6483; line-height:1.4; }
.bottle-caption{ margin-top: 22px; font-size:0.85rem; color:#8A93AD; font-style: italic; }

@media (max-width: 700px){
  .bottle-lineup{ flex-wrap: wrap; gap: 28px 18px; }
  .bottle-item{ flex: 0 1 100px; }
  .bottle-shape{ height: 130px; }
  .bottle-svg{ height: 130px; }
}

/* ===== CONTACT ===== */
.contact{ background: var(--mist); padding: 96px 0; }
.contact-grid{ display:grid; grid-template-columns: 1.2fr 0.8fr; gap: 48px; align-items:start; }
.contact-copy, .contact-card{ min-width: 0; }
.contact h2{ font-size: clamp(1.7rem, 3vw, 2.3rem); margin-bottom:18px; }
.contact-sub{ color:#3A4566; font-size:1.02rem; line-height:1.65; max-width:480px; margin-bottom: 36px; }

.contact-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:22px; }
.contact-list li{ display:flex; gap:16px; align-items:flex-start; }
.contact-list svg{ width:24px; height:24px; flex-shrink:0; color: var(--blue); margin-top:2px; }
.contact-list div{ display:flex; flex-direction:column; gap:4px; }
.contact-list a{ font-weight:500; }
.contact-list a:hover{ color: var(--blue); }

.contact-card{
  background:#fff; border-radius: var(--radius); padding: 34px 30px;
  box-shadow: 0 20px 50px -20px rgba(42,46,124,0.25);
}
.contact-card-label{ font-size:0.78rem; text-transform:uppercase; letter-spacing:0.06em; color:#8A93AD; margin-bottom:8px; }
.contact-card-name{ font-family:'Poppins',sans-serif; font-weight:700; font-size:1.3rem; color: var(--ink); margin-bottom:6px; }
.contact-card-detail{ font-size:0.88rem; color:#5A6483; margin-bottom:20px; }
.contact-badges{ display:flex; gap:10px; margin-bottom: 26px; }
.badge{
  background: var(--mist); color: var(--blue); font-size:0.78rem; font-weight:700;
  padding: 6px 14px; border-radius:999px; letter-spacing:0.03em;
}
.contact-btn{ width:100%; text-align:center; }

@media (max-width: 860px){
  .contact-grid{ grid-template-columns: 1fr; }
}

/* ===== FOOTER ===== */
.footer{ background: var(--ink); padding: 50px 0; text-align:center; }
.footer-logo{ height: 40px; margin: 0 auto 10px; filter: brightness(0) invert(1); opacity:0.92; }
.footer-tagline{ color: var(--cyan); font-family:'Poppins',sans-serif; font-weight:600; letter-spacing:0.06em; font-size:0.9rem; margin-bottom:16px; }
.footer-copy{ color: rgba(255,255,255,0.5); font-size:0.82rem; }
