:root{
  /* Navy blue palette */
  --primary:#0A2472;      /* deep navy */
  --accent1:#1446A0;      /* medium blue */
  --accent2:#2A9DF4;      /* bright sky accent (buttons) */
  --accent2-dark:#1e86d6; /* hover for accent2 */
  --ink:#0C1328;          /* dark text */
  --ink-muted:#59657A;    /* muted gray-blue */
  --surface:#F4F7FB;      /* light background */
  --surface-2:#E9EEF5;
  --border:#D6DEEB;
  --success:#3B82F6;      /* checkmark blue */
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--ink);
  line-height: 1.6; background:#fff;
}

/* Top notice bar */
.notice{
  background: linear-gradient(90deg, var(--primary), var(--accent1), var(--accent2));
  color:#fff; font-weight:700; text-align:center; padding:10px 0;
}
.notice a{ color:#fff; text-decoration:underline; text-underline-offset:3px }

/* HERO */
.hero{
  padding:80px 0;
  background:
    radial-gradient(900px 420px at 18% -10%, rgba(11,163,108,.18) 0%, transparent 60%),
    radial-gradient(800px 380px at 82% -12%, rgba(108,224,192,.18) 0%, transparent 60%),
    linear-gradient(180deg, #F9FFFC 0%, #FFFFFF 60%);
}
.hero-eyebrow{
  display:inline-flex; gap:8px; align-items:center;
  font-weight:700; color:var(--primary); background:#ECFFF7; border:1px solid #D6F5E7;
  border-radius:999px; padding:6px 12px;
}
.hero h1{ font-size:2.8rem; font-weight:600; line-height:1.05; letter-spacing:-.4px; margin-top:14px }
.hero p{ color:#2b3f36; font-size:1.06rem; margin-top:12px }
.cta,.cta-ghost{
  display:inline-block; border-radius:48px; padding:12px 22px; font-weight:600; letter-spacing:.2px; text-decoration:none;
  transition:transform .2s, box-shadow .2s, opacity .2s;
}
.cta{
  color:#fff; background: linear-gradient(90deg, var(--primary), var(--accent1), var(--accent2));
  box-shadow:0 10px 26px rgba(11,163,108,.22);
}
.cta:hover{ transform:translateY(-2px); box-shadow:0 14px 30px rgba(11,163,108,.28) }
.cta-ghost{ border:1.5px solid var(--border); color:#11322a; background:#fff }
.cta-ghost:hover{ transform:translateY(-2px) }

/* SECTION base */
.section{ padding:64px 0 }
.section h2{ font-size:2rem; font-weight:600; letter-spacing:-.3px }
.lead-muted{ color: var(--ink-muted) }

/* Feature cards */
.card-soft{
  background:#fff; border:1px solid var(--border); border-radius:16px; padding:24px; height:100%;
  box-shadow:0 6px 18px rgba(0,0,0,.05);
}
.icon{
  width:48px; height:48px; border-radius:12px; display:flex; align-items:center; justify-content:center;
  background: var(--surface-2); color: var(--primary); margin-bottom:12px;
}
.checklist{ list-style:none; padding:0; margin:0 }
.checklist li{ padding-left:26px; position:relative; margin:8px 0 }
.checklist li::before{
  content:"✓"; position:absolute; left:0; top:0; color:var(--success); font-weight:900
}

/* Chips */
.view-chip{
  display:inline-flex; align-items:center; gap:8px; background:#fff; border:1px solid var(--border);
  border-radius:999px; padding:8px 12px; margin:6px 8px 0 0; font-weight:700; color:#1f3a32
}

/* Ingredients grid */
.logo-grid{
  display:grid; grid-template-columns:repeat(2,1fr); gap:16px; align-items:stretch;
}
@media(min-width:576px){ .logo-grid{ grid-template-columns:repeat(3,1fr) } }
@media(min-width:992px){ .logo-grid{ grid-template-columns:repeat(5,1fr) } }
.logo-item{
  padding:14px; border:1px solid var(--border); border-radius:12px; background:#fff; text-align:center;
}
.logo-item .mini{ font-size:12px; color:var(--ink-muted); margin-top:4px }

/* CTA band */
.cta-band{
  text-align:center; padding:56px 0;
  background:
    radial-gradient(600px 260px at 12% -8%, rgba(11,163,108,.12) 0%, transparent 60%),
    radial-gradient(600px 260px at 88% -8%, rgba(108,224,192,.12) 0%, transparent 60%),
    linear-gradient(180deg, #F4FFF9 0%, #FFFFFF 70%);
}

/* Footer */
footer{ background:#0E1C18; color:#DDF3EA; text-align:center; padding:28px 12px; font-size:13px }
footer a{ color:#b5f1de; text-decoration:none }

/* Testimonials */
.quotes{ background:#fafafa; border-radius:16px; padding:24px; box-shadow:0 3px 8px rgba(0,0,0,.06) }
.quote{ background:#fff; border:1px solid #eee; border-radius:12px; padding:18px 20px; margin-bottom:16px; font-style:italic }
.quote span{ display:block; margin-top:8px; font-style:normal; font-weight:700; color:#333 }

/* Utilities */
.img-fit{ max-width:100%; height:auto }
.width{ width:500px }
.small-muted{ color: var(--ink-muted) }

/* ---------- HERO helpers ---------- */
.shadow-soft{ box-shadow:0 8px 20px rgba(0,0,0,.08) }
.hero-glow{ width:520px; height:520px; border-radius:50%;
  background: radial-gradient(closest-side, rgba(42,157,244,.18), rgba(42,157,244,0) 70%);
  filter: blur(10px); z-index:-1;
}
@media (max-width:575.98px){
  #top .display-5{ font-size:2rem }
  .banner{ width:100%!important }
}

/* =====================================================
   PRICING – unified for .offer-card (new) & .price-card (old)
   (screenshot style: white cards, soft shadow, diagonal ribbon,
    blue outline on featured)
===================================================== */

.pricing-section{ background:#fff; padding:60px 0 }

/* base card */
.offer-card, .price-card{
  position:relative;
  background:#fff;
  border:1px solid #e7ecf6;
  border-radius:20px;
  box-shadow:0 8px 26px rgba(0,0,0,.06);
  transition:.25s ease;
      padding: 30px;
}
.offer-card:hover, .price-card:hover{ transform:translateY(-4px); box-shadow:0 14px 32px rgba(0,0,0,.08) }

/* inner body */
.offer-body{ padding:26px 22px 24px }

/* featured outline */
.offer-featured, .price-card.popular{
  border:2px solid var(--accent2);
  box-shadow:0 16px 40px rgba(42,157,244,.18);
}

/* hero image & thumbs */
.offer-hero{ width:220px; max-width:100%; border-radius:18px; box-shadow:0 10px 24px rgba(0,0,0,.10) }
.offer-thumb{ width:60px; height:60px; object-fit:cover; border-radius:16px; box-shadow:0 8px 18px rgba(0,0,0,.10) }

/* price */
.offer-price, .price-card .price{
  font-size:46px; line-height:1; font-weight:800; color:#0b2a66; margin:8px 0 6px;
}
.price-card .price span{ font-size:1rem; color:#0b2a66 }

/* features list */
.offer-list{ list-style:none; padding-left:0; margin:18px 0 20px }
.offer-list li{ position:relative; padding-left:22px; margin-bottom:10px; color:#0b2a66 }
.offer-list li::before{ content:"✓"; position:absolute; left:0; top:0; color:#0a8f2d; font-weight:700 }

/* button */
.btn-offer, .price-card .btn-buy{
  display:block; width:100%; text-align:center;
  background: var(--accent2); color:#fff; font-weight:700;
  border:none; border-radius:12px; padding:14px 16px;
  box-shadow: 0 10px 22px rgba(42,157,244,.25);
  text-decoration:none; transition:.2s ease;
}
.btn-offer:hover, .price-card .btn-buy:hover{ background: var(--accent2-dark); color:#fff }

/* diagonal ribbon (for Great Deal / Most Popular) */
.ribbon.ribbon-diagonal{
  position:absolute; top:16px; right:-58px;
  background:#2ecc71; color:#0b2a20; font-weight:800;
  padding:10px 80px; transform: rotate(45deg);
  box-shadow:0 8px 16px rgba(0,0,0,.12); letter-spacing:.2px; border-radius:4px;
}

/* keep your old .price-card tag (centered tab) if present */
.price-card .tag{
  position:absolute; top:-10px; left:50%; transform:translateX(-50%);
  font-size:.85rem; border-radius:6px 6px 0 0; background:#ffd600; color:#000; padding:5px 12px; font-weight:700;
}

/* shipping icon color parity */
.price-card i.bi-truck{ font-size:1rem; vertical-align:middle; margin-right:3px; color:#0b2a66 }

/* spacing and responsiveness */
.pricing-section .row{ justify-content:center; gap:1.2rem }
@media (min-width:992px){ .pricing-section .col-md-4{ flex:0 0 auto; width:31% } }
@media (max-width:991.98px){
  .offer-price, .price-card .price{ font-size:38px }
  .offer-thumb{ width:52px; height:52px }
  .ribbon.ribbon-diagonal{ right:-72px; padding:8px 88px }
  .price-card, .offer-card{ max-width:360px; margin:0 auto }
}
