:root {
  --glass: rgba(255, 255, 255, .58);
  --glass-strong: rgba(255, 255, 255, .76);
  --glass-dark: rgba(4, 54, 51, .58);
  --glass-line: rgba(255, 255, 255, .66);
  --glass-shadow: 0 28px 70px rgba(5, 61, 57, .14);
}

body {
  background:
    radial-gradient(circle at 10% 18%, rgba(104, 221, 207, .35), transparent 28%),
    radial-gradient(circle at 88% 34%, rgba(166, 226, 214, .4), transparent 30%),
    linear-gradient(145deg, #edf9f7 0%, #dcefeb 48%, #f6fbfa 100%);
  background-attachment: fixed;
}

.nav {
  position: sticky;
  top: 0;
  background: rgba(247, 253, 251, .7);
  border-bottom: 1px solid rgba(255, 255, 255, .82);
  box-shadow: 0 10px 35px rgba(7, 61, 58, .08);
  backdrop-filter: blur(24px) saturate(155%);
  -webkit-backdrop-filter: blur(24px) saturate(155%);
}

.brand-mark,
.nav-cta,
.primary {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .34),
    0 10px 25px rgba(8, 118, 109, .2);
  border: 1px solid rgba(255, 255, 255, .24);
}

.nav-cta,
.primary {
  border-radius: 999px;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.nav-cta:hover,
.primary:hover {
  transform: translateY(-2px);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .45),
    0 15px 34px rgba(8, 118, 109, .28);
}

.hero {
  isolation: isolate;
}

.hero-image {
  filter: saturate(.9) contrast(.96);
  transform: scale(1.015);
}

.hero-shade {
  background:
    linear-gradient(90deg, rgba(232, 248, 245, .88) 0%, rgba(238, 250, 248, .68) 48%, rgba(231, 247, 244, .08) 78%),
    linear-gradient(180deg, rgba(255, 255, 255, .14), rgba(5, 74, 69, .08));
}

.hero-copy {
  max-width: 720px;
  padding: clamp(28px, 4vw, 52px);
  margin-left: clamp(-26px, -2vw, 0px);
  border: 1px solid rgba(255, 255, 255, .7);
  border-radius: 34px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .68), rgba(240, 251, 248, .38));
  box-shadow: var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, .94);
  backdrop-filter: blur(24px) saturate(145%);
  -webkit-backdrop-filter: blur(24px) saturate(145%);
}

.trust-strip {
  left: clamp(18px, 3vw, 46px);
  right: clamp(18px, 3vw, 46px);
  bottom: 22px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 22px;
  background: linear-gradient(110deg, rgba(3, 56, 53, .82), rgba(7, 91, 84, .68));
  box-shadow: 0 20px 48px rgba(4, 54, 51, .24), inset 0 1px 0 rgba(255, 255, 255, .18);
  backdrop-filter: blur(22px) saturate(140%);
  -webkit-backdrop-filter: blur(22px) saturate(140%);
}

.care,
.products,
.about {
  background: transparent;
}

.care {
  margin: clamp(22px, 4vw, 62px);
  padding: clamp(62px, 7vw, 105px);
  border: 1px solid var(--glass-line);
  border-radius: 38px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .7), rgba(241, 251, 249, .42));
  box-shadow: var(--glass-shadow), inset 0 1px 0 rgba(255, 255, 255, .92);
  backdrop-filter: blur(26px) saturate(140%);
  -webkit-backdrop-filter: blur(26px) saturate(140%);
}

.products {
  position: relative;
  margin: clamp(22px, 4vw, 62px);
  padding: clamp(68px, 7vw, 100px);
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 40px;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 18%, rgba(69, 176, 164, .3), transparent 30%),
    linear-gradient(145deg, rgba(3, 57, 54, .94), rgba(4, 77, 72, .82));
  box-shadow: 0 32px 80px rgba(4, 54, 51, .24), inset 0 1px 0 rgba(255, 255, 255, .16);
}

.product-card {
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(244, 253, 250, .78), rgba(214, 239, 234, .58));
  box-shadow: 0 24px 55px rgba(1, 40, 38, .22), inset 0 1px 0 rgba(255, 255, 255, .94);
  backdrop-filter: blur(22px) saturate(135%);
  -webkit-backdrop-filter: blur(22px) saturate(135%);
}

.product-card.product-pack {
  background: #e3f7f1;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  gap: clamp(20px, 3vw, 48px);
  padding: clamp(24px, 4vw, 56px);
}

.product-pack > * {
  min-width: 0;
}

.product-pack .product-visual {
  height: auto;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.product-pack .product-visual img {
  width: 100%;
  max-width: 100%;
  height: auto;
  /* Fade only the empty photographic margins into the shared mint surface. */
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent), linear-gradient(0deg, transparent, #000 8%, #000 92%, transparent);
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent), linear-gradient(0deg, transparent, #000 8%, #000 92%, transparent);
  mask-composite: intersect;
}

.product-pack .product-info {
  padding: 0;
  overflow-wrap: anywhere;
}

.product-pack .product-info p {
  font-size: 16px;
  color: #496663;
}

@media (max-width: 1000px) {
  .product-card.product-pack {
    grid-template-columns: minmax(0, 1fr);
    text-align: center;
    gap: 12px;
  }
  .product-pack .product-visual {
    width: min(100%, 640px);
    margin-inline: auto;
  }
  .product-pack .product-info {
    max-width: 560px;
    margin-inline: auto;
  }
}

.about {
  gap: 22px;
  margin: clamp(22px, 4vw, 62px);
}

.about-card,
.about aside {
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 38px;
  box-shadow: 0 28px 64px rgba(4, 54, 51, .2), inset 0 1px 0 rgba(255, 255, 255, .17);
  backdrop-filter: blur(24px) saturate(140%);
  -webkit-backdrop-filter: blur(24px) saturate(140%);
}

.about-card {
  background: linear-gradient(140deg, rgba(8, 118, 109, .92), rgba(5, 84, 78, .76));
}

.about aside {
  background: linear-gradient(145deg, rgba(5, 67, 63, .91), rgba(8, 91, 84, .72));
}

.primary.light {
  border: 1px solid rgba(255, 255, 255, .75);
  background: rgba(255, 255, 255, .84);
  box-shadow: 0 16px 36px rgba(1, 42, 39, .2), inset 0 1px 0 #fff;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

footer {
  margin: 0 clamp(22px, 4vw, 62px) 28px;
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 26px;
  background: rgba(255, 255, 255, .55);
  box-shadow: 0 20px 50px rgba(5, 61, 57, .1), inset 0 1px 0 rgba(255, 255, 255, .94);
  backdrop-filter: blur(22px) saturate(140%);
  -webkit-backdrop-filter: blur(22px) saturate(140%);
}

.float {
  border: 1px solid rgba(255, 255, 255, .42);
  box-shadow: 0 16px 34px rgba(5, 75, 51, .3), inset 0 1px 0 rgba(255, 255, 255, .5);
}

@media (max-width: 820px) {
  .hero-copy {
    margin-left: 0;
    border-radius: 28px;
  }

  .hero-shade {
    background: linear-gradient(90deg, rgba(237, 250, 247, .87), rgba(237, 250, 247, .54));
  }

  .trust-strip {
    bottom: 16px;
  }

  .care,
  .products,
  .about {
    margin: 20px;
  }
}

@media (max-width: 560px) {
  .hero-copy {
    padding: 26px 20px;
    border-radius: 24px;
  }

  .trust-strip {
    left: 12px;
    right: 12px;
    border-radius: 18px;
  }

  .care,
  .products,
  .about {
    margin: 14px;
  }

  .care,
  .products {
    padding-left: 20px;
    padding-right: 20px;
    border-radius: 28px;
  }

  .about-card,
  .about aside {
    border-radius: 28px;
  }

  footer {
    margin: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .nav-cta,
  .primary {
    transition: none;
  }
}
