:root {
  --page-bg: #fff;
  --hero-bg: #e8f6e1;
  --text: #202020;
  --muted: #58646a;
  --green: #4aa244;
  --blue: #0e5ca8;
  --white: #ffffff;
  --shadow: 0 18px 45px rgba(37, 66, 42, .18);
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
ul.nav-links {
    margin-bottom: 0px;
}
html {
  scroll-behavior: smooth;
}

body {
  font-family: "DM Sans", sans-serif;
  background: var(--page-bg);
  color: var(--text);
  overflow-x: hidden;
}

a {
  color: #000;
  text-decoration: none;
}

img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-shell {
  width: 100%;
  padding: 18px 22px 26px;
}

.hero {
  position: relative;
  width: 100%;
  max-width: 1420px;
  min-height: 836px;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 28px;
  background:
    radial-gradient(circle at 17% 38%, rgba(149, 239, 123, .28), transparent 31%),
    radial-gradient(circle at 78% 26%, rgba(179, 246, 163, .26), transparent 34%),
    radial-gradient(circle at 50% 84%, rgba(190, 248, 174, .24), transparent 30%),
    linear-gradient(180deg, #eaf8e5 0%, #e2f3dc 100%);
  box-shadow: 0 8px 32px rgba(20, 55, 23, .05);
  isolation: isolate;
}

.hero::before,
.hero::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  filter: blur(90px);
  pointer-events: none;
  z-index: -1;
}

.hero::before {
  width: 430px;
  height: 430px;
  left: -110px;
  top: 135px;
  background: rgba(124, 229, 109, .24);
}

.hero::after {
  width: 460px;
  height: 460px;
  right: -110px;
  bottom: 48px;
  background: rgba(141, 231, 117, .22);
}

.navbar {
  position: relative;
  z-index: 20;
  display: grid;
  grid-template-columns: 200px 1fr 200px;
  align-items: center;
  gap: 20px;
  padding: 18px 26px 0;
}

.brand {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  width: 200px;
}

.brand-mark {
  position: relative;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
}

.brand-mark svg {
  width: 100%;
  height: 100%;
  display: block;
}

.brand-copy {
  min-width: 0;
}

.brand-name {
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .4px;
  white-space: nowrap;
}

.brand-sub {
  margin-top: 7px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #1768ad;
  font-size: 12px;
  letter-spacing: 4px;
  white-space: nowrap;
}

.brand-sub::before,
.brand-sub::after {
  content: "";
  width: 24px;
  height: 1px;
  background: #57a74c;
}

.nav-links {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 15px;
  list-style: none;
  color: #4e5c61;
  font-size: 14px;
  font-weight: 500;
}

.nav-links a {
  position: relative;
  transition: .25s ease;
}

.nav-links a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 0;
  height: 2px;
  background: #51a34a;
  transition: .25s ease;
}

.nav-links a:hover {
  color: #1f2f34;
}

.nav-links a:hover::after {
  width: 100%;
}

/* Desktop All Pages dropdown */
.nav-dropdown {
  position: relative;
}

.nav-dropdown-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 24px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #000;
  font: inherit;
  line-height: 1;
  cursor: pointer;
  transition: color .25s ease;
}

.nav-dropdown-toggle:hover,
.nav-dropdown.is-open .nav-dropdown-toggle {
  color: #1f2f34;
}

.dropdown-chevron {
  width: 14px;
  height: 14px;
  display: block;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform-origin: center;
  transition: transform .25s ease;
}

.nav-dropdown.is-open .dropdown-chevron {
  transform: rotate(180deg);
}

.nav-dropdown-menu {
  position: absolute;
  top: calc(100% + 22px);
  left: 50%;
  z-index: 80;
  width: 355px;
  padding: 23px 28px;
  display: grid;
  /* grid-template-columns: 1fr 1fr; */
  column-gap: 42px;
  row-gap: 0;
  border: 1px solid rgba(64, 102, 70, .12);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(34, 70, 40, .15);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, -8px);
  transition:
    opacity .22s ease,
    visibility .22s ease,
    transform .22s ease;
}

.nav-dropdown-menu::before {
  content: "";
  position: absolute;
  top: -22px;
  left: 0;
  right: 0;
  height: 22px;
}

.nav-dropdown.is-open .nav-dropdown-menu,
.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

.nav-dropdown:hover .dropdown-chevron,
.nav-dropdown:focus-within .dropdown-chevron {
  transform: rotate(180deg);
}

/* Keeps the dropdown open while moving the mouse from trigger to panel */
.nav-dropdown::after {
  content: "";
  position: absolute;
  left: -8px;
  right: -8px;
  top: 100%;
  height: 24px;
}

.nav-dropdown-menu a {
  display: flex;
  align-items: center;
  min-height: 40px;
  width: 100%;
  color: #556970;
  font-size: 15px;
  font-weight: 500;
  white-space: nowrap;
  transition: color .2s ease, transform .2s ease;
}

.nav-dropdown-menu a::after {
  display: none !important;
}

.nav-dropdown-menu a:hover {
  color: #1f2f34;
  transform: translateX(3px);
}

.mobile-only-menu-item {
  display: none;
}

.nav-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
}

.call-btn,
.contact-btn,
.primary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  font-weight: 600;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.call-btn:hover,
.contact-btn:hover,
.primary-btn:hover {
  transform: translateY(-2px);
}

.call-btn {
  min-height: 48px;
  padding: 5px 20px 5px 6px;
  gap: 10px;
  background: #fff;
  color: #252525;
  box-shadow: 0 7px 18px rgba(0, 0, 0, .04);
}

.call-icon {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #125ca8;
  color: #fff;
  flex: 0 0 auto;
}

.call-icon svg {
  width: 17px;
  height: 17px;
  fill: currentColor;
}

.contact-btn {
  min-height: 48px;
  padding: 0 29px;
  background: #232323;
  color: #fff;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .12);
}

.menu-toggle {
  display: none;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 50%;
  background: #fff;
  cursor: pointer;
}

.menu-toggle span,
.menu-toggle span::before,
.menu-toggle span::after {
  display: block;
  width: 18px;
  height: 2px;
  margin: auto;
  background: #222;
  content: "";
  transition: .25s ease;
}

.menu-toggle span {
  position: relative;
}

.menu-toggle span::before {
  position: absolute;
  left: 0;
  top: -6px;
}

.menu-toggle span::after {
  position: absolute;
  left: 0;
  top: 6px;
}

/* =========================================
   STICKY HEADER
========================================= */

.hero {
  overflow: visible;
}

.navbar {
  position: sticky;
  top: 20px;
  z-index: 999;

  width: calc(100% - 36px);
  margin: 0 auto;

  padding: 14px 22px;

  border-radius: 22px;

  background: rgba(239, 248, 239, .94);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  box-shadow:
    0 10px 28px rgba(31, 62, 35, .10),
    0 1px 0 rgba(255, 255, 255, .75) inset;

  transition:
    top .3s ease,
    background .3s ease,
    box-shadow .3s ease,
    transform .3s ease;
}

/* Sticky hone ke baad thoda stronger background */
.navbar.is-sticky {
  background: rgba(239, 248, 239, .98);

  box-shadow:
    0 14px 34px rgba(31, 62, 35, .15),
    0 1px 0 rgba(255, 255, 255, .85) inset;
}

/* Header ke niche content overlap na ho */
.hero-copy {
  margin-top: 72px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width:980px) {

  .navbar {
    top: 12px;
    width: calc(100% - 20px);
    padding: 14px 16px;
    border-radius: 20px;
  }

  .navbar.mobile-open {
    position: fixed;
    top: 12px;
    left: 10px;
    right: 10px;
    width: auto;
  }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width:620px) {

  .navbar {
    top: 8px;
    width: calc(100% - 12px);
    padding: 12px 14px;
    border-radius: 18px;
  }

  .navbar.mobile-open {
    top: 8px;
    left: 6px;
    right: 6px;
  }

}

.hero-copy {
  position: relative;
  z-index: 6;
  width: min(560px, 44vw);
  margin: 60px auto 0;
  text-align: center;
}

.approval-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 6px 7px 6px 13px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .82);
  backdrop-filter: blur(12px);
  color: #5b6970;
  font-size: 14px;
  box-shadow: 0 7px 20px rgba(0, 0, 0, .035);
}

.approval-badge a {
  padding: 5px 11px;
  border-radius: 999px;
  background: #fff;
  color: #2d2d2d;
}

.hero-title {
  margin-top: 33px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 68px;
  line-height: .95;
  letter-spacing: -1.8px;
  text-wrap: balance;
}

.hero-description {
  max-width: 520px;
  margin: 23px auto 0;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.55;
}

.primary-btn {
  margin-top: 36px;
  min-height: 48px;
  padding: 0 31px;
  background: #242424;
  color: #fff;
  box-shadow: 0 10px 22px rgba(0, 0, 0, .12);
}

.float-card {
  position: absolute;
  z-index: 3;
  overflow: hidden;
  border: 3px solid rgba(255, 255, 255, .95);
  background: #fff;
  box-shadow: var(--shadow);
  animation: float 6s ease-in-out infinite;
}

.float-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .24);
  pointer-events: none;
}

.float-small {
  width: 154px;
  height: 154px;
  border-radius: 18px;
}

.float-large {
  width: 205px;
  height: 205px;
  border-radius: 18px;
}

.card-left-top {
  left: 54px;
  top: 280px;
  animation-delay: .2s;
}

.card-right-top {
  right: 54px;
  top: 280px;
  animation-delay: 1.1s;
}

.card-left-bottom {
  left: 244px;
  bottom: 47px;
  animation-delay: .7s;
}

.card-right-bottom {
  right: 244px;
  bottom: 47px;
  animation-delay: 1.6s;
}

.info-pill {
  position: absolute;
  z-index: 7;
  left: 50%;
  bottom: 115px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 258px;
  padding: 9px 15px 9px 11px;
  border-radius: 18px;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 15px 24px rgba(45, 78, 49, .07);
  backdrop-filter: blur(10px);
  color: #31373a;
  font-size: 12px;
  line-height: 1.45;
}

.info-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: #f8fbfa;
  flex: 0 0 auto;
}

.info-icon-shape {
  position: relative;
  width: 15px;
  height: 20px;
}

.info-icon-shape::before,
.info-icon-shape::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50%;
}

.info-icon-shape::before {
  top: 0;
  width: 14px;
  height: 14px;
  background: #79c8d0;
}

.info-icon-shape::after {
  bottom: 0;
  width: 17px;
  height: 12px;
  background: #2d7f86;
}

@keyframes float {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

@media (max-width:1180px) {
  .navbar {
    grid-template-columns: 230px 1fr auto;
  }

  .nav-links {
    gap: 22px;
  }

  .brand-name {
    font-size: 24px;
  }

  .float-large {
    width: 180px;
    height: 180px;
  }

  .card-left-bottom {
    left: 145px;
  }

  .card-right-bottom {
    right: 145px;
  }
}
@media (max-width: 1025px){
.menu-toggle {
    display: block;
    position: relative;
    z-index: 3;
    background: transparent;
  }
  
  .navbar {
    grid-template-columns: 1fr auto;
    padding: 16px 18px 0;
  }

  

  .nav-links,
  .nav-actions {
    display: none;
  }

  .navbar.mobile-open {
    position: absolute;
    inset: 0 0 auto 0;
    z-index: 60;
    grid-template-columns: 1fr auto;
    align-items: start;
    min-height: 635px;
    padding: 20px 24px 22px;
    border-radius: 20px;
    background: #edf7ee;
    box-shadow: 0 18px 42px rgba(32, 61, 38, .14);
  }

  .navbar.mobile-open .brand {
    align-self: start;
  }

  .navbar.mobile-open .nav-links,
  .navbar.mobile-open .nav-actions {
    display: flex;
    grid-column: 1 / -1;
  }

  .navbar.mobile-open .nav-links {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 0;
    width: 100%;
    padding: 12px 0 8px;
    font-size: 16px;
  }

  .navbar.mobile-open .nav-links li {
    width: 100%;
  }

  .navbar.mobile-open .nav-links a {
    display: block;
    width: 100%;
    padding: 10px 0;
    color: #586b72;
  }

  .navbar.mobile-open .nav-links a::after {
    display: none;
  }

  .navbar.mobile-open .mobile-only-menu-item {
    display: list-item;
  }

  .navbar.mobile-open .nav-dropdown {
    /* display: none; */
  }

  .navbar.mobile-open .nav-actions {
    align-self: end;
    justify-content: flex-start;
    gap: 10px;
    margin-top: auto;
    padding: 4px 0 0;
  }

  .navbar.mobile-open .call-btn {
    min-height: 50px;
    padding-right: 18px;
    border: 1.5px solid #0e5ca8;
  }

  .navbar.mobile-open .contact-btn {
    min-height: 50px;
    padding: 0 25px;
  }

  .navbar.mobile-open .menu-toggle {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 44px;
    height: 44px;
    margin: 0;
    z-index: 100;
    display: grid;
    place-items: center;
    background: transparent;
  }

  .navbar.mobile-open .menu-toggle span {
    background: transparent;
  }

  .navbar.mobile-open .menu-toggle span::before {
    top: 0;
    transform: rotate(45deg);
  }

  .navbar.mobile-open .menu-toggle span::after {
    top: 0;
    transform: rotate(-45deg);
  }

}
@media (max-width:980px) {
  .page-shell {
    padding: 12px;
  }

  .info-pill {
    display: none;
  }

  .hero {
    min-height: auto;
    padding-bottom: 40px;
  }

  .hero-copy {
    width: min(600px, 86%);
    margin-top: 54px;
  }

  .hero-title {
    font-size: 58px;
  }

  .float-card {
    position: relative;
    inset: auto !important;
    animation: none;
  }

  /* 621px–980px: three images in one horizontal row */
  .mobile-gallery {
    display: grid;
    grid-template-columns: .82fr 1.38fr .82fr;
    grid-template-areas: "woman couple pool";
    align-items: stretch;
    gap: 12px;
    width: calc(100% - 20px);
    max-width: 900px;
    margin: 42px auto 0;
  }

  .mobile-gallery .card-left-top {
    grid-area: woman;
  }

  .mobile-gallery .card-left-bottom {
    grid-area: couple;
  }

  .mobile-gallery .card-right-bottom {
    grid-area: pool;
  }

  /* Hide the extra fourth image on tablet/mobile */
  .mobile-gallery .card-right-top {
    display: none;
  }

  .float-small,
  .float-large {
    width: 100%;
    height: 200px;
    min-width: 0;
  }

  .info-pill {
    position: relative;
    left: auto;
    bottom: auto;
    transform: none;
    width: max-content;
    max-width: calc(100% - 36px);
    margin: 24px auto 0;
  }
}

@media (min-width:981px) {
  .mobile-gallery {
    display: contents;
  }
}

@media (max-width:620px) {
  .page-shell {
    padding: 8px;
  }

  .hero {
    border-radius: 20px;
  }

  .brand-name {
    font-size: 21px;
  }

  .brand-sub {
    letter-spacing: 2.8px;
  }

  .brand-mark {
    width: 36px;
    height: 36px;
  }

  .hero-copy {
    width: calc(100% - 30px);
    margin-top: 42px;
  }

  .approval-badge {
    font-size: 12px;
  }

  .hero-title {
    font-size: 46px;
    letter-spacing: -1px;
  }

  .hero-description {
    font-size: 14px;
  }

  /* Up to 620px: two images on top, third image centered below */
  .mobile-gallery {
    grid-template-columns: .82fr 1.18fr;
    grid-template-areas:
      "woman couple"
      "pool pool";
    gap: 10px;
    width: calc(100% - 16px);
    margin-top: 34px;
  }

  .mobile-gallery .card-left-top {
    grid-area: woman;
  }

  .mobile-gallery .card-left-bottom {
    grid-area: couple;
  }

  .mobile-gallery .card-right-bottom {
    grid-area: pool;
    width: 72%;
    justify-self: center;
  }

  .float-small,
  .float-large {
    height: 198px;
    border-radius: 18px;
  }

  .mobile-gallery .card-right-bottom {
    height: 198px;
  }

  .navbar.mobile-open .nav-actions {
    flex-direction: row;
    flex-wrap: nowrap;
  }

  .navbar.mobile-open .call-btn,
  .navbar.mobile-open .contact-btn {
    width: auto;
    max-width: none;
    white-space: nowrap;
  }
}


@media (max-width:420px) {
  .mobile-gallery {
    gap: 8px;
  }

  .float-small,
  .float-large,
  .mobile-gallery .card-right-bottom {
    height: 188px;
  }

  .mobile-gallery .card-right-bottom {
    width: 68%;
  }
}

/* =========================================
       TEXT + IMAGE ENTRANCE ANIMATIONS
    ========================================== */

.brand,
.nav-links,
.nav-actions,
.approval-badge,
.hero-title,
.hero-description,
.primary-btn,
.info-pill,
.float-card {
  opacity: 0;
  will-change: transform, opacity;
}

body.is-loaded .brand {
  animation: fadeDown .75s cubic-bezier(.2, .75, .25, 1) .08s forwards;
}

body.is-loaded .nav-links {
  animation: fadeDown .75s cubic-bezier(.2, .75, .25, 1) .18s forwards;
}

body.is-loaded .nav-actions {
  animation: fadeDown .75s cubic-bezier(.2, .75, .25, 1) .28s forwards;
}

body.is-loaded .approval-badge {
  animation: fadeUp .75s cubic-bezier(.2, .75, .25, 1) .20s forwards;
}

body.is-loaded .hero-title {
  animation: titleReveal .95s cubic-bezier(.18, .8, .25, 1) .34s forwards;
}

body.is-loaded .hero-description {
  animation: fadeUp .8s cubic-bezier(.2, .75, .25, 1) .52s forwards;
}

body.is-loaded .primary-btn {
  animation: fadeUp .8s cubic-bezier(.2, .75, .25, 1) .66s forwards;
}

body.is-loaded .card-left-top {
  animation: imageFromLeft .9s cubic-bezier(.18, .8, .25, 1) .45s forwards,
    floatingOne 6s ease-in-out 1.35s infinite;
}

body.is-loaded .card-right-top {
  animation: imageFromRight .9s cubic-bezier(.18, .8, .25, 1) .55s forwards,
    floatingTwo 6.5s ease-in-out 1.45s infinite;
}

body.is-loaded .card-left-bottom {
  animation: imageFromBottom .95s cubic-bezier(.18, .8, .25, 1) .64s forwards,
    floatingTwo 7s ease-in-out 1.59s infinite;
}

body.is-loaded .card-right-bottom {
  animation: imageFromBottom .95s cubic-bezier(.18, .8, .25, 1) .74s forwards,
    floatingOne 6.8s ease-in-out 1.69s infinite;
}

body.is-loaded .info-pill {
  animation: infoReveal .85s cubic-bezier(.18, .8, .25, 1) .86s forwards;
}

@keyframes fadeDown {
  from {
    opacity: 0;
    transform: translateY(-24px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes titleReveal {
  from {
    opacity: 0;
    transform: translateY(42px) scale(.97);
    filter: blur(7px);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

@keyframes imageFromLeft {
  from {
    opacity: 0;
    transform: translateX(-55px) scale(.88) rotate(-3deg);
    filter: blur(5px);
  }

  to {
    opacity: 1;
    transform: translateX(0) scale(1) rotate(0);
    filter: blur(0);
  }
}

@keyframes imageFromRight {
  from {
    opacity: 0;
    transform: translateX(55px) scale(.88) rotate(3deg);
    filter: blur(5px);
  }

  to {
    opacity: 1;
    transform: translateX(0) scale(1) rotate(0);
    filter: blur(0);
  }
}

@keyframes imageFromBottom {
  from {
    opacity: 0;
    transform: translateY(55px) scale(.9);
    filter: blur(5px);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

@keyframes infoReveal {
  from {
    opacity: 0;
    transform: translateX(-50%) translateY(25px) scale(.95);
  }

  to {
    opacity: 1;
    transform: translateX(-50%) translateY(0) scale(1);
  }
}

@keyframes floatingOne {

  0%,
  100% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(-9px) rotate(.5deg);
  }
}

@keyframes floatingTwo {

  0%,
  100% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(8px) rotate(-.5deg);
  }
}

.float-card img {
  transition: transform .55s cubic-bezier(.2, .75, .25, 1);
}

.float-card:hover img {
  transform: scale(1.06);
}

.hero-title,
.hero-description,
.approval-badge,
.primary-btn {
  transition: transform .3s ease;
}

.primary-btn:hover {
  transform: translateY(-3px) scale(1.025);
}

/* Mobile menu item stagger animation */
@media (max-width:980px) {
  .navbar.mobile-open .nav-links li {
    opacity: 0;
    animation: mobileMenuItem .45s ease forwards;
  }

  .navbar.mobile-open .nav-links li:nth-child(1) {
    animation-delay: .05s;
  }

  .navbar.mobile-open .nav-links li:nth-child(2) {
    animation-delay: .09s;
  }

  .navbar.mobile-open .nav-links li:nth-child(3) {
    animation-delay: .13s;
  }

  .navbar.mobile-open .nav-links li:nth-child(4) {
    animation-delay: .17s;
  }

  .navbar.mobile-open .nav-links li:nth-child(5) {
    animation-delay: .21s;
  }

  .navbar.mobile-open .nav-links li:nth-child(6) {
    animation-delay: .25s;
  }

  .navbar.mobile-open .nav-links li:nth-child(7) {
    animation-delay: .29s;
  }

  .navbar.mobile-open .nav-links li:nth-child(8) {
    animation-delay: .33s;
  }

  .navbar.mobile-open .nav-links li:nth-child(9) {
    animation-delay: .37s;
  }

  .navbar.mobile-open .nav-links li:nth-child(10) {
    animation-delay: .41s;
  }

  .navbar.mobile-open .nav-links li:nth-child(11) {
    animation-delay: .45s;
  }

  .navbar.mobile-open .nav-links li:nth-child(12) {
    animation-delay: .49s;
  }

  .navbar.mobile-open .nav-actions {
    opacity: 0;
    animation: fadeUp .5s ease .48s forwards;
  }

  @keyframes mobileMenuItem {
    from {
      opacity: 0;
      transform: translateX(-18px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }

  body.is-loaded .float-card {
    opacity: 1;
  }

  body.is-loaded .card-left-top,
  body.is-loaded .card-right-top,
  body.is-loaded .card-left-bottom,
  body.is-loaded .card-right-bottom {
    animation: mobileImageReveal .75s ease forwards;
  }

  body.is-loaded .card-left-top {
    animation-delay: .45s;
  }

  body.is-loaded .card-right-top {
    animation-delay: .55s;
  }

  body.is-loaded .card-left-bottom {
    animation-delay: .65s;
  }

  body.is-loaded .card-right-bottom {
    animation-delay: .75s;
  }

  @keyframes mobileImageReveal {
    from {
      opacity: 0;
      transform: translateY(35px) scale(.94);
    }

    to {
      opacity: 1;
      transform: translateY(0) scale(1);
    }
  }

  body.is-loaded .info-pill {
    animation: mobileInfoReveal .75s ease .85s forwards;
  }

  @keyframes mobileInfoReveal {
    from {
      opacity: 0;
      transform: translateY(24px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}

@media (prefers-reduced-motion:reduce) {

  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }

  .brand,
  .nav-links,
  .nav-actions,
  .approval-badge,
  .hero-title,
  .hero-description,
  .primary-btn,
  .info-pill,
  .float-card {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}

/* ==================================================
   EL DERRA ABOUT / MISSION SECTION
================================================== */

.ec-about {
  position: relative;
  width: 100%;
  padding: 94px 20px 72px;
  overflow: hidden;
  background:
    radial-gradient(ellipse 58% 46% at 50% 24%, rgba(214, 242, 209, .96) 0%, rgba(232, 247, 229, .84) 42%, rgba(250, 252, 249, .72) 70%, rgb(255 255 255 / 6%) 100%) #ffffff00;
}

.ec-about__intro {
  width: min(900px, 100%);
  margin: 0 auto;
  text-align: center;
}

.ec-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 5px 13px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .92);
  color: #596c73;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
}

.ec-chip--soft {
  background: #f0f7f1;
}

.ec-about__title {
  max-width: 820px;
  margin: 31px auto 0;
  font-family: "DM Sans", sans-serif;
  font-size: 50px;
  font-weight: 400;
  line-height: 1.01;
  letter-spacing: -1.25px;
  color: #252525;
  text-wrap: balance;
}

.ec-about__text {
  max-width: 650px;
  margin: 25px auto 0;
  color: #586a71;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.55;
}

.ec-dark-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  margin-top: 40px;
  padding: 0 31px;
  border-radius: 999px;
  background: #242424;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  box-shadow: 0 14px 28px rgba(27, 27, 27, .15);
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.ec-dark-btn:hover {
  color: #fff;
  background: #111;
  transform: translateY(-3px);
  box-shadow: 0 18px 34px rgba(27, 27, 27, .20);
}

/* White rounded mission box */
.ec-mission {
  display: grid;
  grid-template-columns: minmax(0, 1.38fr) minmax(400px, .94fr);
      align-items: center !important;
  align-items: stretch;
  gap: 18px;
  width: min(1420px, 100%);
  margin: 126px auto 0;
  padding: 24px;
  border-radius: 25px;
  background: #ffffff8a;
  /* box-shadow:0 18px 55px rgba(44,79,49,.075); */
}

.ec-mission__content {
  min-width: 0;
  padding: 28px 22px 0;
}

.ec-mission__title {
  max-width: 720px;
  margin: 34px 0 0;
  font-family: "DM Sans", sans-serif;
  font-size: 50px;
  font-weight: 400;
  line-height: 1.04;
  letter-spacing: -1.25px;
  color: #252525;
}

.ec-mission__text {
  max-width: 690px;
  margin: 24px 0 0;
  color: #586a71;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.55;
}

/* Thumbnail and video use the same exact area */
.ec-video-card {
  position: relative;
  width: 100%;
  height: 370px;
  margin-top: 58px;
  overflow: hidden;
  border-radius: 10px;
  background: #111;
  cursor: pointer;
}

.ec-video-card__thumbnail,
.ec-video-card__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.ec-video-card__thumbnail {
  z-index: 2;
  opacity: 1;
  visibility: visible;
  transition: opacity .3s ease, visibility .3s ease, transform .6s ease;
}

.ec-video-card:hover .ec-video-card__thumbnail {
  transform: scale(1.035);
}

.ec-video-card__video {
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  background: #000;
  transition: opacity .3s ease, visibility .3s ease;
}

.ec-video-card__button {
  position: absolute;
  left: 80px;
  top: 50%;
  z-index: 3;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 52px;
  padding: 0 27px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, .96);
  color: #29363c;
  font: inherit;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .09);
  backdrop-filter: blur(8px);
  transition: opacity .25s ease, visibility .25s ease, transform .25s ease;
}

.ec-video-card__button:hover {
  transform: translateY(-50%) scale(1.035);
}

.ec-video-card__button svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: #1768c6;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Playing state */
.ec-video-card.is-playing {
  cursor: default;
}

.ec-video-card.is-playing .ec-video-card__thumbnail {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.ec-video-card.is-playing .ec-video-card__video {
  z-index: 2;
  opacity: 1;
  visibility: visible;
}

.ec-video-card.is-playing .ec-video-card__button {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

/* Right image remains in the right grid column */
.ec-mission__media {
  min-width: 0;
  min-height: 550px;
  margin: 0;
  overflow: hidden;
  border-radius: 10px;
  background: #eee;
}

.ec-mission__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transition: transform .7s ease;
}

.ec-mission__media:hover img {
  transform: scale(1.035);
}

/* Entrance animation */
.ec-about__intro>*,
.ec-mission {
  opacity: 0;
  transform: translateY(32px);
}

.ec-about.ec-about--visible .ec-chip {
  animation: ecAboutUp .65s ease .04s forwards;
}

.ec-about.ec-about--visible .ec-about__title {
  animation: ecAboutUp .75s ease .14s forwards;
}

.ec-about.ec-about--visible .ec-about__text {
  animation: ecAboutUp .75s ease .25s forwards;
}

.ec-about.ec-about--visible .ec-dark-btn {
  animation: ecAboutUp .75s ease .36s forwards;
}

.ec-about.ec-about--visible .ec-mission {
  animation: ecAboutUp .85s ease .48s forwards;
}

@keyframes ecAboutUp {
  from {
    opacity: 0;
    transform: translateY(32px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width:1100px) {
  .ec-about__title {
    font-size: 44px;
  }

  .ec-mission {
    grid-template-columns: minmax(0, 1fr) 390px;
    margin-top: 96px;
  }

  .ec-mission__title {
    font-size: 42px;
  }

  .ec-video-card {
    height: 325px;
  }

  .ec-mission__media {
    min-height: 620px;
  }
}

@media (max-width:860px) {
  .ec-about {
    padding: 68px 14px 46px;
  }

  .ec-about__title {
    font-size: 39px;
  }

  .ec-mission {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-top: 78px;
    padding: 16px;
  }

  .ec-mission__content {
    padding: 20px 10px 0;
  }

  .ec-mission__title {
    font-size: 40px;
  }

  .ec-video-card {
    height: 330px;
    margin-top: 44px;
  }

  .ec-mission__media {
    min-height: 0;
    height: 520px;
  }

  article#our-mission {
    display: flex;
    flex-direction: column-reverse;
  }
}

@media (max-width:560px) {
  .ec-about {
    padding: 55px 10px 32px;
  }

  .ec-about__title {
    margin-top: 24px;
    font-size: 34px;
    line-height: 1.04;
  }

  .ec-about__text {
    margin-top: 20px;
    font-size: 14px;
  }

  .ec-dark-btn {
    min-height: 48px;
    margin-top: 31px;
    padding: 0 26px;
  }

  .ec-mission {
    margin-top: 62px;
    padding: 10px;
    border-radius: 20px;
  }

  .ec-mission__content {
    padding: 20px 8px 0;
  }

  .ec-mission__title {
    margin-top: 27px;
    font-size: 34px;
  }

  .ec-mission__text {
    font-size: 14px;
  }

  .ec-video-card {
    height: 280px;
  }

  .ec-video-card__button {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    max-width: calc(100% - 28px);
    white-space: nowrap;
  }

  .ec-video-card__button:hover {
    transform: translate(-50%, -50%) scale(1.025);
  }

  .ec-mission__media {
    height: 420px;
  }
}

@media (prefers-reduced-motion:reduce) {

  .ec-about__intro>*,
  .ec-mission {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
}

/* =========================================
   VEROLIFE SERVICES SECTION ONLY
========================================= */

.vs-services {
  position: relative;
  width: 100%;
  padding: 84px 20px 54px;
  overflow: hidden;
  background:
    radial-gradient(80% 60% at 50% 50%, rgb(190 235 177 / 27%) 0%, rgba(158, 215, 197, 0) 100%);
}

.vs-services__inner {
  max-width: 1440px;
  margin: 0 auto;
}

.vs-services__top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 30px;
}

.vs-services__heading-wrap {
  max-width: 610px;
}

.vs-services__title {
  margin: 0;
  font-family: "DM Sans", sans-serif;
  font-size: 48px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -1px;
  color: #252525;
}

.vs-services__subtitle {
  margin: 20px 0 0;
  color: #586a71;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.55;
}

.vs-services__all-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 26px;
  border-radius: 999px;
  background: #242424;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 10px 22px rgba(0, 0, 0, .1);
  transition: transform .25s ease, background .25s ease, box-shadow .25s ease;
}

.vs-services__all-btn:hover {
  color: #fff;
  background: #111;
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, .14);
}

.vs-services__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.vs-service-card {
  display: flex;
  flex-direction: column;
  min-height: 240px;
  padding: 25px 23px 20px;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(53, 83, 58, .045);
  transition: transform .28s ease, box-shadow .28s ease;
}

.vs-service-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgb(53 83 58 / 34%) !important;
}

.vs-service-card__icon {
  width: 34px;
  height: 34px;
  margin-bottom: 12px;
  color: #56bfd1;
}

.vs-service-card__icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.vs-service-card__title {
  margin: 0;
  font-family: "DM Sans", sans-serif;
  font-size: 27px;
  font-weight: 400;
  line-height: 1.1;
  color: #292929;
}

.vs-service-card__text {
  margin: 13px 0 0;
  color: #586a71;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.45;
}

.vs-service-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-top: auto;
  padding-top: 20px;
  border-top: 1px solid rgba(105, 159, 180, .35);
}

.vs-service-card__footer>a:first-child {
  color: #2f2f2f;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
}

.vs-service-card__arrow {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 4px;
  background: #dbe8f1;
  color: #42606d;
  text-decoration: none;
  transition: transform .25s ease, background .25s ease;
}

.vs-service-card__arrow:hover {
  background: #cbdce8;
  transform: translateX(2px);
}

.vs-service-card__arrow svg {
  width: 14px;
  height: 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* entrance animation */
.vs-services__top,
.vs-service-card {
  opacity: 0;
  transform: translateY(28px);
}

.vs-services.vs-services--visible .vs-services__top {
  animation: vsFadeUp .7s ease .05s forwards;
}

.vs-services.vs-services--visible .vs-service-card:nth-child(1) {
  animation: vsFadeUp .7s ease .16s forwards;
}

.vs-services.vs-services--visible .vs-service-card:nth-child(2) {
  animation: vsFadeUp .7s ease .24s forwards;
}

.vs-services.vs-services--visible .vs-service-card:nth-child(3) {
  animation: vsFadeUp .7s ease .32s forwards;
}

.vs-services.vs-services--visible .vs-service-card:nth-child(4) {
  animation: vsFadeUp .7s ease .40s forwards;
}

.vs-services.vs-services--visible .vs-service-card:nth-child(5) {
  animation: vsFadeUp .7s ease .48s forwards;
}

.vs-services.vs-services--visible .vs-service-card:nth-child(6) {
  animation: vsFadeUp .7s ease .56s forwards;
}

@keyframes vsFadeUp {
  from {
    opacity: 0;
    transform: translateY(28px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width:980px) {
  .vs-services {
    padding: 72px 16px 46px;
  }

  .vs-services__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:680px) {
  .vs-services__top {
    align-items: flex-start;
    flex-direction: column;
  }

  .vs-services__title {
    font-size: 40px;
  }

  .vs-services__all-btn {
    min-height: 46px;
  }
}

@media (max-width:560px) {
  .vs-services {
    padding: 58px 10px 34px;
  }

  .vs-services__grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .vs-service-card {
    min-height: 225px;
  }

  .vs-services__title {
    font-size: 36px;
  }

  .vs-services__subtitle {
    font-size: 14px;
  }
}

@media (prefers-reduced-motion:reduce) {

  .vs-services__top,
  .vs-service-card {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
}

/* =========================================
   VEROLIFE VALUES TABS SECTION ONLY
========================================= */

.vv-values {
  position: relative;
  width: 100%;
  padding: 82px 20px 64px;
  overflow: hidden;
  background:
    radial-gradient(78% 46% at 50% 0%, rgb(199 238 189 / 0%) 0%, rgba(255, 255, 255, 0) 100%), #ffffff00
}

.vv-values__inner {
  max-width: 1440px;
  margin: 0 auto;
}

.vv-values__intro {
  max-width: 660px;
  margin: 0 auto 34px;
  text-align: center;
}

.vv-values__chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .92);
  color: #596c73;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
}

.vv-values__heading {
  margin: 24px 0 0;
  font-family: "DM Sans", sans-serif;
  font-size: 45px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -1px;
  color: #252525;
}

.vv-values__subheading {
  max-width: 590px;
  margin: 19px auto 0;
  color: #586a71;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.45;
}

.vv-values__layout {
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  gap: 44px;
  align-items: start;
}

.vv-values__progress-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  margin-bottom: 16px;
}

.vv-values__progress-track {
  position: relative;
  width: 100%;
  height: 1px;
  overflow: hidden;
  background: #dfe6e9;
}

.vv-values__progress-fill {
  position: absolute;
  inset: 0 auto 0 0;
  width: 20%;
  background: #71a5db;
  transition: width .38s cubic-bezier(.2, .75, .25, 1);
}

.vv-values__count {
  min-width: 48px;
  color: #5f7078;
  font-size: 13px;
  font-weight: 500;
  text-align: right;
}

.vv-values__tabs {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
}

.vv-values__tab {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: #65767d;
  font-family: "DM Sans", sans-serif;
  font-size: 39px;
  font-weight: 400;
  line-height: 1.12;
  text-align: left;
  cursor: pointer;
  transition: color .25s ease, transform .25s ease;
}

.vv-values__tab:hover {
  color: #2d2d2d;
  transform: translateX(3px);
}

.vv-values__tab.is-active {
  color: #252525;
}

.vv-values__content-wrap {
  min-width: 0;
}

.vv-values__content {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(280px, .92fr);
  gap: 12px;
  min-width: 0;
}

.vv-values__content[hidden] {
  display: none;
}

.vv-values__copy-card,
.vv-values__image-card {
  min-height: 294px;
  border-radius: 15px;
}

.vv-values__copy-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 24px 22px 18px;
  background: #f1f8f2;
}

.vv-values__copy-card h3 {
  margin: 0;
  font-family: "DM Sans", sans-serif;
  font-size: 27px;
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.35px;
  color: #2a2a2a;
}

.vv-values__copy-card p {
  margin: 0;
  color: #586a71;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
}

.vv-values__image-card {
  margin: 0;
  overflow: hidden;
  background: #e8ece9;
}

.vv-values__image-card img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transition: transform .6s ease;
}

.vv-values__image-card:hover img {
  transform: scale(1.035);
}

/* panel change animation */
.vv-values__content.is-entering .vv-values__copy-card,
.vv-values__content.is-entering .vv-values__image-card {
  animation: vvPanelIn .42s ease both;
}

.vv-values__content.is-entering .vv-values__image-card {
  animation-delay: .07s;
}

@keyframes vvPanelIn {
  from {
    opacity: 0;
    transform: translateY(16px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* section entrance animation */
.vv-values__intro,
.vv-values__tabs-panel,
.vv-values__content-wrap {
  opacity: 0;
  transform: translateY(26px);
}

.vv-values.vv-values--visible .vv-values__intro {
  animation: vvFadeUp .7s ease .04s forwards;
}

.vv-values.vv-values--visible .vv-values__tabs-panel {
  animation: vvFadeUp .7s ease .16s forwards;
}

.vv-values.vv-values--visible .vv-values__content-wrap {
  animation: vvFadeUp .7s ease .26s forwards;
}

@keyframes vvFadeUp {
  from {
    opacity: 0;
    transform: translateY(26px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width:920px) {
  .vv-values__layout {
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 28px;
  }

  .vv-values__tab {
    font-size: 34px;
  }

  .vv-values__content {
    grid-template-columns: 1fr;
  }

  .vv-values__copy-card,
  .vv-values__image-card {
    min-height: 250px;
  }
}

@media (max-width:700px) {
  .vv-values {
    padding: 66px 14px 44px;
  }

  .vv-values__layout {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .vv-values__tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 16px;
  }

  .vv-values__tab {
    font-size: 31px;
  }

  .vv-values__heading {
    font-size: 40px;
  }
}

@media (max-width:500px) {
  .vv-values {
    padding: 56px 10px 34px;
  }

  .vv-values__heading {
    font-size: 36px;
  }

  .vv-values__subheading {
    font-size: 13px;
  }

  .vv-values__tabs {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .vv-values__tab {
    font-size: 33px;
  }

  .vv-values__copy-card h3 {
    font-size: 33px;
  }

  .vv-values__copy-card,
  .vv-values__image-card {
    min-height: 235px;
  }
}

@media (prefers-reduced-motion:reduce) {

  .vv-values__intro,
  .vv-values__tabs-panel,
  .vv-values__content-wrap {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }

  .vv-values__content.is-entering .vv-values__copy-card,
  .vv-values__content.is-entering .vv-values__image-card {
    animation: none !important;
  }
}

@media (max-width:980px) {

  .vv-values__tabs {
    display: flex;
    gap: 10px 12px;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }

  .vv-values__progress-row {
    display: none;
  }

  .vv-values__tab {
    width: auto;
    padding: 11px 18px;
    border-radius: 999px;
    background: #f1f8f2;

    font-size: 25px;
    line-height: 1;
    text-align: center;

    color: #66777d;
    transform: none;
  }

  article#vv-panel-1,
  article#vv-panel-2,
  article#vv-panel-3,
  article#vv-panel-4,
  article#vv-panel-5 {
    display: flex;
    flex-direction: column-reverse;
    gap: 0;
  }

  .vv-values__tab:hover {
    transform: none;
    color: #252525;
  }

  .vv-values__tab.is-active {
    background: #e7f3e8;
    color: #252525;
  }

  .vv-values__progress-row {
    margin-bottom: 22px;
  }

}

/* =========================================
   VEROLIFE CTA SECTION
========================================= */

.vc-cta-section {
  width: 100%;
  padding: 24px 22px 30px;
}

.vc-cta-inner {
  position: relative;
  width: min(1420px, 100%);
  min-height: 650px;
  margin: 0 auto;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  padding: 75px 30px;

  overflow: hidden;
  border-radius: 28px;

  text-align: center;

  background:
    radial-gradient(78% 120% at 50% 50%,
      rgba(183, 235, 169, .52) 0%,
      rgba(216, 244, 209, .68) 42%,
      rgba(240, 250, 237, .82) 72%,
      rgba(255, 255, 255, .92) 100%),
    #edf8e9;
}


/* =========================================
   BACKGROUND GLOW
========================================= */

.vc-cta-inner::before,
.vc-cta-inner::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(100px);
}

.vc-cta-inner::before {
  width: 520px;
  height: 520px;
  left: -150px;
  top: 80px;
  background: rgba(156, 231, 133, .28);
}

.vc-cta-inner::after {
  width: 520px;
  height: 520px;
  right: -150px;
  bottom: 20px;
  background: rgba(145, 223, 122, .25);
}


/* =========================================
   CONTENT LAYER
========================================= */

.vc-cta-brand,
.vc-cta-title,
.vc-cta-description,
.vc-cta-actions {
  position: relative;
  z-index: 2;
}


/* =========================================
   BRAND
========================================= */

.vc-cta-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.vc-cta-logo-icon {
  width: 50px;
  height: 50px;
  display: block;
  flex: 0 0 auto;
}

.vc-cta-logo-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.vc-cta-brand-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.vc-cta-brand-name {
  font-family: "DM Sans", sans-serif;
  font-size: 38px;
  font-weight: 400;
  line-height: 1;
  color: #223138;
}

.vc-cta-brand-line {
  position: relative;
  width: 122px;
  height: 2px;
  margin-top: 8px;
  background: #5db9c5;
}

.vc-cta-brand-line::after {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 100%;
  height: 1px;
  background:
    repeating-linear-gradient(to right,
      rgba(92, 143, 148, .45) 0,
      rgba(92, 143, 148, .45) 3px,
      transparent 3px,
      transparent 7px);
}


/* =========================================
   TITLE
========================================= */

.vc-cta-title {
  max-width: 760px;
  margin: 52px auto 0;

  font-family: "DM Sans", sans-serif;
  font-size: 72px;
  font-weight: 400;
  line-height: .96;
  letter-spacing: -1.8px;

  color: #252525;
}


/* =========================================
   DESCRIPTION
========================================= */

.vc-cta-description {
  max-width: 760px;
  margin: 32px auto 0;

  color: #5b6a70;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.5;
}


/* =========================================
   BUTTONS
========================================= */

.vc-cta-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;

  margin-top: 38px;
}

.vc-cta-primary-btn,
.vc-cta-call-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 52px;

  border-radius: 999px;

  font-size: 16px;
  font-weight: 600;
  text-decoration: none;

  transition:
    transform .25s ease,
    box-shadow .25s ease,
    background .25s ease;
}

.vc-cta-primary-btn {
  min-width: 142px;
  padding: 0 28px;

  background: #242424;
  color: #fff;

  box-shadow: 0 11px 24px rgba(0, 0, 0, .12);
}

.vc-cta-primary-btn:hover {
  color: #fff;
  background: #111;
  transform: translateY(-3px);
  box-shadow: 0 16px 30px rgba(0, 0, 0, .17);
}

.vc-cta-call-btn {
  gap: 11px;

  padding: 5px 24px 5px 6px;

  background: #fff;
  color: #252525;

  box-shadow: 0 10px 24px rgba(0, 0, 0, .07);
}

.vc-cta-call-btn:hover {
  color: #252525;
  transform: translateY(-3px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, .11);
}

.vc-cta-call-icon {
  width: 42px;
  height: 42px;

  display: grid;
  place-items: center;

  border-radius: 50%;

  background: #125ca8;
  color: #fff;

  flex: 0 0 auto;
}

.vc-cta-call-icon svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}


/* =========================================
   ENTRANCE ANIMATION
========================================= */

.vc-cta-brand,
.vc-cta-title,
.vc-cta-description,
.vc-cta-actions {
  opacity: 0;
  transform: translateY(28px);
}

.vc-cta-section.vc-cta-visible .vc-cta-brand {
  animation: vcCtaFadeUp .7s ease .05s forwards;
}

.vc-cta-section.vc-cta-visible .vc-cta-title {
  animation: vcCtaFadeUp .8s ease .16s forwards;
}

.vc-cta-section.vc-cta-visible .vc-cta-description {
  animation: vcCtaFadeUp .8s ease .28s forwards;
}

.vc-cta-section.vc-cta-visible .vc-cta-actions {
  animation: vcCtaFadeUp .8s ease .4s forwards;
}

@keyframes vcCtaFadeUp {
  from {
    opacity: 0;
    transform: translateY(28px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* =========================================
   TABLET
========================================= */

@media (max-width:900px) {

  .vc-cta-inner {
    min-height: 590px;
    padding: 65px 24px;
  }

  .vc-cta-title {
    max-width: 680px;
    font-size: 60px;
  }

  .vc-cta-description {
    font-size: 16px;
  }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width:620px) {

  .vc-cta-section {
    padding: 12px 10px 20px;
  }

  .vc-cta-inner {
    min-height: 540px;
    padding: 55px 18px;

    border-radius: 22px;
  }

  .vc-cta-logo-icon {
    width: 42px;
    height: 42px;
  }

  .vc-cta-brand-name {
    font-size: 32px;
  }

  .vc-cta-brand-line {
    width: 105px;
  }

  .vc-cta-title {
    margin-top: 42px;

    font-size: 48px;
    line-height: .98;
    letter-spacing: -1px;
  }

  .vc-cta-description {
    margin-top: 25px;

    font-size: 14px;
    line-height: 1.55;
  }

  .vc-cta-description br {
    display: none;
  }

  .vc-cta-actions {
    flex-direction: column;
    width: 100%;
    margin-top: 32px;
  }

  .vc-cta-primary-btn,
  .vc-cta-call-btn {
    width: 100%;
    max-width: 280px;
  }

  .vc-cta-call-btn {
    justify-content: flex-start;
  }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width:420px) {

  .vc-cta-inner {
    min-height: 510px;
    padding: 48px 14px;
  }

  .vc-cta-title {
    font-size: 41px;
  }

  .vc-cta-description {
    font-size: 13px;
  }

  .vc-cta-primary-btn,
  .vc-cta-call-btn {
    min-height: 50px;
  }

}


/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion:reduce) {

  .vc-cta-brand,
  .vc-cta-title,
  .vc-cta-description,
  .vc-cta-actions {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }

}

/* =========================================
   VEROLIFE PHARMA FOOTER
   Matches current footer HTML
========================================= */

.vf-footer{
  position:relative;
  width:100%;
  padding:72px 22px 24px;
  overflow:hidden;
  background:#fff;
  border-top:1px solid rgba(20,78,58,.10);
}

.vf-footer::before{
  content:"";
  position:absolute;
  left:50%;
  top:-260px;
  width:min(1050px,90vw);
  height:480px;
  transform:translateX(-50%);
  border-radius:50%;
  background:rgba(192,237,181,.38);
  filter:blur(110px);
  pointer-events:none;
}

.vf-footer > *{
  position:relative;
  z-index:1;
}

/* TOP CONTACT CARDS */
.vf-footer__top{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  width:min(1420px,100%);
  margin:0 auto;
}

.vf-contact-card{
  position:relative;
  display:flex;
  align-items:center;
  gap:16px;
  min-height:108px;
  padding:22px 24px;
  overflow:hidden;
  border:1px solid rgba(14,92,168,.12);
  border-radius:18px;
  background:
    radial-gradient(circle at 100% 0%,rgba(83,181,202,.16),transparent 42%),
    linear-gradient(145deg,#f2f9ff 0%,#ffffff 72%);
  box-shadow:0 15px 38px rgba(31,70,54,.08);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}

.vf-contact-card:hover{
  transform:translateY(-4px);
  border-color:rgba(14,92,168,.25);
  box-shadow:0 20px 44px rgba(31,70,54,.12);
}

.vf-contact-icon{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:52px;
  height:52px;
  border-radius:15px;
  background:#0e5ca8;
  color:#fff;
  font-size:21px;
  box-shadow:0 12px 24px rgba(14,92,168,.22);
}

.vf-contact-card span{
  display:block;
  margin-bottom:6px;
  color:#4aa244;
  font-size:13px;
  font-weight:700;
  letter-spacing:.35px;
  text-transform:uppercase;
}

.vf-contact-card h4{
  margin:0;
  color:#263333;
  font-size:17px;
  font-weight:600;
  line-height:1.35;
  word-break:break-word;
}

/* MAIN FOOTER GRID */
.vf-footer__middle{
  display:grid;
  grid-template-columns:1.75fr .75fr .85fr 1.75fr;
  gap:50px;
  width:min(1420px,100%);
  margin:28px auto 0;
  padding:38px;
  border:1px solid rgba(32,91,71,.10);
  border-radius:24px;
  background:rgba(255,255,255,.92);
  box-shadow:0 22px 60px rgba(31,70,54,.07);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.vf-footer-col{
  min-width:0;
}

.vf-footer-col h3{
  position:relative;
  margin:0 0 24px;
  padding-left:14px;
  color:#273432;
  font-size:18px;
  font-weight:700;
}

.vf-footer-col h3::before{
  content:"";
  position:absolute;
  left:0;
  top:3px;
  bottom:3px;
  width:3px;
  border-radius:99px;
  background:linear-gradient(#4aa244,#0e5ca8);
}

.vf-office{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:18px;
  border-radius:16px;
  background:#f4f9f4;
}

.vf-office > i,
.vf-info > i{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:34px;
  height:34px;
  border-radius:10px;
  background:#eaf4ff;
  color:#0e5ca8;
  font-size:14px;
}

.vf-office h5{
  margin:0 0 7px;
  color:#4aa244;
  font-size:14px;
  font-weight:700;
}

.vf-office p{
  margin:0;
  color:#5b6b70;
  font-size:13px;
  line-height:1.65;
}

.vf-info{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:12px;
  color:#55676d;
  font-size:13px;
  font-weight:500;
}

.vf-footer-col ul{
  display:grid;
  grid-template-columns:1fr;
  gap:9px;
  margin:0;
  padding:0;
  list-style:none;
}

.vf-footer-col ul li{
  margin:0;
  padding:0;
}

.vf-footer-col ul a{
  position:relative;
  display:block;
  padding:7px 0 7px 17px;
  color:#586970;
  font-size:14px;
  font-weight:500;
  transition:color .22s ease,transform .22s ease;
}

.vf-footer-col ul a::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:6px;
  height:6px;
  transform:translateY(-50%);
  border-radius:50%;
  background:#4aa244;
}

.vf-footer-col ul a:hover{
  color:#0e5ca8;
  transform:translateX(4px);
}

.vf-certificates{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.vf-certificates img{
  width:100%;
  height:105px;
  display:block;
  padding:9px;
  object-fit:contain;
  border:1px solid rgba(38,86,70,.10);
  border-radius:12px;
  background:#fff;
  filter:grayscale(1);
  opacity:.82;
  box-shadow:0 10px 24px rgba(31,70,54,.055);
  transition:filter .25s ease,opacity .25s ease,transform .25s ease,box-shadow .25s ease;
}

.vf-certificates img:hover{
  filter:grayscale(0);
  opacity:1;
  transform:translateY(-3px);
  box-shadow:0 14px 30px rgba(31,70,54,.10);
}

/* COPYRIGHT */
.vf-footer__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  width:min(1420px,100%);
  margin:18px auto 0;
  padding:19px 6px 0;
  border-top:1px solid rgba(35,83,68,.11);
}

.vf-footer__bottom p{
  margin:0;
  color:#68777b;
  font-size:13px;
  font-weight:500;
}

.vf-social{
  display:flex;
  align-items:center;
  gap:9px;
}

.vf-social a{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid rgba(14,92,168,.14);
  border-radius:11px;
  background:#f2f8ff;
  color:#0e5ca8;
  transition:transform .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease;
}

.vf-social a:hover{
  color:#fff;
  background:#0e5ca8;
  transform:translateY(-3px);
  box-shadow:0 10px 22px rgba(14,92,168,.20);
}

/* RESPONSIVE */
@media(max-width:1100px){
  .vf-footer__middle{
    grid-template-columns:1fr 1fr;
    gap:34px;
  }

  .vf-footer-col:last-child{
    grid-column:1 / -1;
  }

  .vf-certificates{
    grid-template-columns:repeat(6,minmax(0,1fr));
  }

  .vf-certificates img{
    height:95px;
  }
}

@media(max-width:820px){
  .vf-footer{
    padding:56px 14px 22px;
  }

  .vf-footer__top{
    grid-template-columns:1fr;
  }

  .vf-contact-card{
    min-height:96px;
  }

  .vf-footer__middle{
    grid-template-columns:1fr;
    padding:28px;
  }

  .vf-footer-col:last-child{
    grid-column:auto;
  }

  .vf-certificates{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:560px){
  .vf-footer{
    padding:44px 8px 18px;
  }

  .vf-contact-card{
    padding:18px;
    border-radius:15px;
  }

  .vf-contact-icon{
    width:46px;
    height:46px;
  }

  .vf-contact-card h4{
    font-size:15px;
  }

  .vf-footer__middle{
    gap:30px;
    margin-top:18px;
    padding:20px 16px;
    border-radius:18px;
  }

  .vf-certificates{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .vf-certificates img{
    height:105px;
  }

  .vf-footer__bottom{
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
  }
}

@media(prefers-reduced-motion:reduce){
  .vf-contact-card,
  .vf-certificates img,
  .vf-social a{
    transition:none !important;
  }
}


/* ===== GLOBAL FLOATING HEADER OVERRIDE ===== */
.site-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  padding: 18px 22px 0;
  pointer-events: none;
}

.site-header .navbar {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: min(1420px, 100%);
  margin: 0 auto;
  padding: 14px 24px;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  pointer-events: auto;
  transition: .35s ease;
}
.mobile-open {
    background: #edf7ee !important;
}
.site-header.is-scrolled {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  padding: 14px 22px 0;
}

.site-header.is-scrolled .navbar {
  border-radius: 22px;
  background: rgba(239, 248, 239, .97);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 14px 38px rgba(31, 62, 35, .15), inset 0 1px 0 rgba(255, 255, 255, .9);
}

.hero {
  padding-top: 105px;
  overflow: hidden;
}

@media(max-width:980px) {
  .site-header {
    padding: 12px 12px 0;
  }

  .site-header.is-scrolled {
    padding: 9px 12px 0;
  }

  .hero {
    padding-top: 86px;
  }
}
/* =========================================
   BOOK A CALL MODAL
========================================= */

.call-btn{
  border:0;
  font-family: "DM Sans", sans-serif;
  cursor:pointer;
}

.bc-modal{
  position:fixed;
  inset:0;
  z-index:999999;

  display:grid;
  place-items:center;

  padding:24px;

  opacity:0;
  visibility:hidden;
  pointer-events:none;

  transition:
    opacity .28s ease,
    visibility .28s ease;
}

.bc-modal.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.bc-modal__overlay{
  position:absolute;
  inset:0;

  background:rgba(14,18,15,.82);

  -webkit-backdrop-filter:blur(2px);
  backdrop-filter:blur(2px);
}

.bc-modal__dialog{
  position:relative;
  z-index:2;

  width:min(855px,100%);
  max-height:calc(100vh - 48px);

  padding:30px 38px 38px;

  overflow-y:auto;

  border-radius:10px;

  background:#ffffff;

  box-shadow:0 25px 80px rgba(0,0,0,.28);

  opacity:0;
  transform:translateY(24px) scale(.975);

  transition:
    opacity .3s ease,
    transform .3s ease;
}

.bc-modal.is-open .bc-modal__dialog{
  opacity:1;
  transform:translateY(0) scale(1);
}

.bc-modal__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:25px;

  margin-bottom:34px;
}

.bc-modal__header h2{
  margin:0;

  font-family: "DM Sans", sans-serif;
  font-size:38px;
  font-weight:400;
  line-height:1;

  color:#272727;
}

.bc-modal__close{
  display:grid;
  place-items:center;

  width:40px;
  height:40px;

  padding:0;
  border:0;

  background:transparent;
  color:#222;

  cursor:pointer;
}

.bc-modal__close svg{
  width:27px;
  height:27px;

  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
}

.bc-form__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:20px 18px;
}

.bc-form__group{
  display:flex;
  flex-direction:column;
  gap:8px;

  min-width:0;
}

.bc-form__group--full{
  grid-column:1 / -1;
}

.bc-form__group label{
  color:#272727;
  font-size:15px;
  font-weight:500;
}

.bc-form__group input,
.bc-form__group textarea{
  width:100%;

  border:1px solid #c7d8cb;
  border-radius:9px;

  background:#ffffff;
  color:#273238;

  font:inherit;
  font-size:15px;

  outline:none;

  transition:
    border-color .25s ease,
    box-shadow .25s ease;
}

.bc-form__group input{
  height:49px;
  padding:0 14px;
}

.bc-form__group textarea{
  min-height:132px;
  padding:14px;

  resize:vertical;
}

.bc-form__group input::placeholder,
.bc-form__group textarea::placeholder{
  color:#6f7e84;
}

.bc-form__group input:focus,
.bc-form__group textarea:focus{
  border-color:#69aeb7;

  box-shadow:0 0 0 3px rgba(86,184,204,.12);
}

.bc-form__submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;

  min-width:130px;
  min-height:49px;

  margin-top:28px;
  padding:0 27px;

  border:0;
  border-radius:999px;

  background:#242424;
  color:#ffffff;

  font:inherit;
  font-size:15px;
  font-weight:600;

  cursor:pointer;

  transition:
    background .25s ease,
    transform .25s ease,
    opacity .25s ease;
}

.bc-form__submit:hover{
  background:#111111;
  transform:translateY(-2px);
}

.bc-form__submit:disabled{
  cursor:not-allowed;
  opacity:.65;
  transform:none;
}

.bc-form__loader{
  display:none;

  width:17px;
  height:17px;

  border:2px solid rgba(255,255,255,.35);
  border-top-color:#ffffff;
  border-radius:50%;

  animation:bcLoaderSpin .7s linear infinite;
}

.bc-form.is-loading .bc-form__loader{
  display:block;
}

.bc-form__status{
  min-height:22px;

  margin:14px 0 0;

  color:#53656c;
  font-size:14px;
  font-weight:500;
}

.bc-form__status.is-success{
  color:#21833b;
}

.bc-form__status.is-error{
  color:#c53737;
}

.bc-form__botcheck{
  display:none !important;
}

body.bc-modal-open{
  overflow:hidden;
}

@keyframes bcLoaderSpin{
  to{
    transform:rotate(360deg);
  }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width:680px){

  .bc-modal{
    padding:10px;
  }

  .bc-modal__dialog{
    width:100%;
    max-height:calc(100vh - 20px);

    padding:25px 20px 28px;

    border-radius:12px;
  }

  .bc-modal__header{
    margin-bottom:25px;
  }

  .bc-modal__header h2{
    font-size:34px;
  }

  .bc-form__grid{
    grid-template-columns:1fr;
    gap:16px;
  }

  .bc-form__group--full{
    grid-column:auto;
  }

  .bc-form__submit{
    width:100%;
  }

}
/* =========================================
   VEROLIFE STATS / COUNTER
========================================= */

.vf-stats-section{
  position:relative;
  width:100%;
  padding:100px 22px;
  overflow:hidden;

  background:
    radial-gradient(
      circle at 50% 45%,
      rgba(197,239,186,.42) 0%,
      rgba(235,248,230,.50) 38%,
      rgba(255,255,255,1) 76%
    );
}


/* CONTAINER */

.vf-stats-container{
  position:relative;
  z-index:2;
  width:min(1420px,100%);
  margin:0 auto;
}


/* =========================================
   TOP
========================================= */

.vf-stats-top{
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:100px;
  align-items:end;
  margin-bottom:48px;
}


.vf-stats-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:30px;
  padding:5px 14px;

  border-radius:999px;

  background:#edf7ee;

  color:#5b6c71;

  font-size:14px;
  font-weight:500;
}


.vf-stats-heading h2{
  max-width:650px;

  margin:20px 0 0;

  font-family: "DM Sans", sans-serif;

  font-size:62px;
  line-height:.98;
  font-weight:400;

  letter-spacing:-1.5px;

  color:#252525;
}


.vf-stats-description{
  padding-bottom:5px;
}


.vf-stats-description > p{
  max-width:600px;

  margin:0;

  color:#596b72;

  font-size:16px;
  line-height:1.65;
}


/* =========================================
   TURNAROUND
========================================= */

.vf-stats-turnaround{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;

  margin-top:25px;

  color:#596b72;

  font-size:14px;
}


.vf-stats-turnaround strong{
  color:#252525;
  font-weight:600;
}


.vf-stats-dot{
  width:9px;
  height:9px;

  flex:0 0 auto;

  border-radius:50%;

  background:#68bdca;

  box-shadow:
    0 0 0 5px rgba(104,189,202,.13);
}


/* =========================================
   WHY LIST
========================================= */

.vf-why-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;

  margin-bottom:24px;
}


.vf-why-list span{
  display:inline-flex;
  align-items:center;

  min-height:40px;

  padding:0 18px;

  border:1px solid rgba(64,94,76,.18);

  border-radius:999px;

  background:rgba(255,255,255,.68);

  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);

  color:#53666a;

  font-size:14px;

  transition:
    background .3s ease,
    transform .3s ease,
    border-color .3s ease;
}


.vf-why-list span:hover{
  transform:translateY(-2px);

  background:#fff;

  border-color:rgba(76,156,93,.32);
}


/* =========================================
   COUNTER GRID
========================================= */

.vf-stats-grid{
  display:grid;

  grid-template-columns:repeat(4,1fr);

  overflow:hidden;

  border:1px solid rgba(62,102,75,.10);

  border-radius:24px;

  background:rgba(255,255,255,.72);

  box-shadow:
    0 20px 60px rgba(59,91,65,.08);

  backdrop-filter:blur(15px);
  -webkit-backdrop-filter:blur(15px);
}


/* =========================================
   COUNTER CARD
========================================= */

.vf-stat-card{
  position:relative;

  min-height:220px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  padding:38px 35px;
}


.vf-stat-card:not(:last-child)::after{
  content:"";

  position:absolute;

  right:0;
  top:34px;
  bottom:34px;

  width:1px;

  background:#dfe8df;
}


/* NUMBER */

.vf-stat-number{
  display:flex;
  align-items:flex-start;

  font-family: "DM Sans", sans-serif;

  color:#252525;

  line-height:.9;
}


.vf-counter{
  font-size:76px;

  font-weight:400;

  letter-spacing:-3px;
}


.vf-stat-symbol{
  margin:5px 0 0 5px;

  color:#68bcca;

  font-family: "DM Sans", sans-serif;

  font-size:28px;
  font-weight:400;
}


/* TITLE */

.vf-stat-card > p{
  margin:20px 0 0;

  color:#252525;

  font-size:17px;
  font-weight:600;
}


/* SMALL */

.vf-stat-small{
  display:block;

  margin-top:7px;

  color:#78878b;

  font-size:13px;
}


/* =========================================
   HOVER
========================================= */

.vf-stat-card{
  transition:
    background .35s ease,
    transform .35s ease;
}


.vf-stat-card:hover{
  background:rgba(237,248,235,.78);
}


/* =========================================
   TABLET
========================================= */

@media(max-width:1000px){

  .vf-stats-section{
    padding:80px 18px;
  }


  .vf-stats-top{
    grid-template-columns:1fr;

    gap:30px;
  }


  .vf-stats-heading h2{
    font-size:52px;
  }


  .vf-stats-grid{
    grid-template-columns:repeat(2,1fr);
  }


  .vf-stat-card:nth-child(2)::after{
    display:none;
  }


  .vf-stat-card:nth-child(1),
  .vf-stat-card:nth-child(2){
    border-bottom:1px solid #dfe8df;
  }

}


/* =========================================
   MOBILE
========================================= */

@media(max-width:600px){

  .vf-stats-section{
    padding:65px 12px;
  }


  .vf-stats-heading h2{
    font-size:43px;

    letter-spacing:-1px;
  }


  .vf-stats-description > p{
    font-size:14px;
  }


  .vf-stats-turnaround{
    align-items:flex-start;

    font-size:13px;
  }


  .vf-why-list{
    gap:7px;
  }


  .vf-why-list span{
    min-height:34px;

    padding:0 13px;

    font-size:12px;
  }


  .vf-stats-grid{
    grid-template-columns:repeat(2,1fr);

    border-radius:18px;
  }


  .vf-stat-card{
    min-height:170px;

    padding:25px 18px;
  }


  .vf-counter{
    font-size:52px;

    letter-spacing:-2px;
  }


  .vf-stat-symbol{
    margin-top:2px;

    font-size:22px;
  }


  .vf-stat-card > p{
    margin-top:15px;

    font-size:14px;
  }


  .vf-stat-small{
    font-size:12px;
  }


  .vf-stat-card::after{
    top:22px !important;
    bottom:22px !important;
  }

}
/* =========================================
   VEROLIFE GLOBAL PRESENCE
========================================= */

.vglobal{
  position:relative;
  width:100%;
  padding:82px 22px 90px;
  overflow:hidden;

  background:
    radial-gradient(
      60% 65% at 19% 61%,
      rgba(210,239,202,.52) 0%,
      rgba(237,248,233,.45) 48%,
      rgba(255,255,255,0) 100%
    ),
    #fff;
}

.vglobal::before,
.vglobal::after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  border-radius:50%;
  background:#dcefd7;
  filter:blur(100px);
  opacity:.4;
  pointer-events:none;
}

.vglobal::before{
  left:-100px;
  bottom:60px;
}

.vglobal::after{
  right:-80px;
  top:130px;
}

.vglobal__container{
  position:relative;
  z-index:2;
  width:min(1420px,100%);
  margin:0 auto;
}


/* =========================================
   HEADER
========================================= */

.vglobal__header{
  text-align:center;
}

.vglobal__leaf{
  display:block;
  width:58px;
  height:42px;
  margin:0 auto;
}

.vglobal__leaf svg{
  width:100%;
  height:100%;
  fill:#46982c;
}

.vglobal__leaf svg path:last-child{
  fill:none;
  stroke:#397928;
  stroke-width:2;
}

.vglobal__header h2{
  margin:8px 0 0;

  font-family: "DM Sans", sans-serif;
  font-size:53px;
  font-weight:700;
  line-height:1;

  letter-spacing:-1.6px;

  color:#18232a;
}

.vglobal__header h2 span{
  color:#44962e;
}

.vglobal__heading-line{
  display:block;
  width:94px;
  height:3px;

  margin:20px auto 0;

  border-radius:99px;

  background:#48962d;
}


/* =========================================
   MAIN GRID
========================================= */

.vglobal__grid{
  display:grid;
  grid-template-columns:minmax(0,.96fr) minmax(560px,1.04fr);
  gap:72px;

  margin-top:58px;
}


/* =========================================
   LEFT CONTENT
========================================= */

.vglobal__intro{
  max-width:650px;
  margin:0;

  color:#405057;

  font-family: "DM Sans", sans-serif;
  font-size:15px;
  line-height:1.85;
}


/* =========================================
   GLOBE
========================================= */

.vglobal-globe{
  position:relative;

  width:100%;
  max-width:680px;
  height:500px;

  margin-top:28px;
}

.vglobal-globe::before{
  content:"";

  position:absolute;
  left:6%;
  top:8%;

  width:88%;
  height:88%;

  border-radius:50%;

  background:
    radial-gradient(
      circle,
      rgba(199,233,190,.46),
      rgba(232,246,227,.28) 55%,
      rgba(255,255,255,0) 76%
    );

  filter:blur(2px);
}

.vglobal-globe__svg{
  position:relative;
  z-index:2;

  width:100%;
  height:100%;

  overflow:visible;
}


/* Globe grid */

.vg-circle,
.vg-grid{
  fill:none;
  stroke:#a9d29e;
  stroke-width:1.4;
  opacity:.23;
}


/* LAND */

.vg-land{
  fill:#d8e8d5;

  stroke:#fff;
  stroke-width:2;

  filter:
    drop-shadow(0 8px 8px rgba(70,106,68,.16));
}


/* ROUTES */

.vg-route{
  fill:none;

  stroke:#72bb3d;
  stroke-width:2.1;

  stroke-linecap:round;

  opacity:.85;
}


/* Destination glowing point */

.vg-location__glow{
  fill:#9cdb4a;

  opacity:.22;
}

.vg-location__dot{
  fill:#9fd949;

  stroke:#fff;
  stroke-width:3;

  filter:
    drop-shadow(0 0 7px rgba(132,199,53,.8));
}


/* INDIA */

.vg-india__pulse{
  fill:#68ad40;
  transform-origin:center;
}

.pulse-one{
  opacity:.10;
  animation:vglobalPulse 2.8s ease-out infinite;
}

.pulse-two{
  opacity:.18;
  animation:vglobalPulse 2.8s ease-out .55s infinite;
}

.vg-india__pin{
  fill:#347c26;

  stroke:#fff;
  stroke-width:4;

  filter:
    drop-shadow(0 8px 8px rgba(43,99,35,.30));
}

.vg-india__center{
  fill:#fff;
}


/* Decorative halos */

.vglobal-globe__halo{
  position:absolute;
  z-index:1;

  left:50%;
  top:55%;

  border:1px solid rgba(85,155,64,.12);
  border-radius:50%;

  transform:translate(-50%,-50%);
}

.halo-1{
  width:240px;
  height:240px;
}

.halo-2{
  width:350px;
  height:350px;
}

.halo-3{
  width:470px;
  height:470px;
}


@keyframes vglobalPulse{

  0%{
    transform:scale(.65);
    opacity:.30;
  }

  100%{
    transform:scale(1.65);
    opacity:0;
  }

}


/* =========================================
   DEMAND TITLE
========================================= */

.vglobal__demand{
  display:flex;
  align-items:center;
  gap:20px;

  margin-bottom:24px;
}

.vglobal__globe-icon{
  display:grid;
  place-items:center;

  width:66px;
  height:66px;

  flex:0 0 auto;

  border:1px solid #c9e2c2;
  border-radius:50%;

  background:#f1f8ee;

  color:#418d2d;
}

.vglobal__globe-icon svg{
  width:33px;
  height:33px;

  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.vglobal__demand p{
  max-width:560px;

  margin:0;

  color:#263238;

  font-family: "DM Sans", sans-serif;
  font-size:17px;
  line-height:1.55;
}


/* =========================================
   ACCORDION
========================================= */

.vglobal-accordion{
  display:flex;
  flex-direction:column;
  gap:13px;
}

.vglobal-item{
  overflow:hidden;

  border:1px solid rgba(48,88,54,.11);
  border-radius:15px;

  background:#fff;

  box-shadow:
    0 11px 29px rgba(47,74,52,.075);

  transition:
    transform .28s ease,
    box-shadow .28s ease;
}

.vglobal-item:hover{
  transform:translateY(-2px);

  box-shadow:
    0 16px 35px rgba(47,74,52,.11);
}


/* BUTTON */

.vglobal-item__button{
  display:flex;
  align-items:center;
  justify-content:space-between;

  width:100%;
  min-height:78px;

  padding:10px 18px;

  border:0;

  background:#fff;

  color:#172329;

  font-family: "DM Sans", sans-serif;

  cursor:pointer;

  transition:
    background .3s ease,
    color .3s ease;
}

.vglobal-item__region{
  display:flex;
  align-items:center;

  gap:16px;

  font-size:17px;
  font-weight:600;
}


/* REGION ICON */

.vglobal-item__region-icon{
  display:grid;
  place-items:center;

  width:48px;
  height:48px;

  flex:0 0 auto;

  border-radius:50%;

  background:#edf6e9;

  color:#43892d;
}

.vglobal-item__region-icon svg{
  width:29px;
  height:29px;

  fill:rgba(68,142,45,.26);

  stroke:currentColor;
  stroke-width:2;
  stroke-linejoin:round;
}


/* ACTIVE HEADER */

.vglobal-item.is-open
.vglobal-item__button{
  background:
    linear-gradient(
      105deg,
      #1e7130 0%,
      #4b982f 100%
    );

  color:#fff;
}

.vglobal-item.is-open
.vglobal-item__region-icon{
  background:rgba(255,255,255,.14);

  color:#fff;
}

.vglobal-item.is-open
.vglobal-item__region-icon svg{
  fill:rgba(255,255,255,.10);
}


/* =========================================
   PLUS / MINUS
========================================= */

.vglobal-item__toggle{
  position:relative;

  width:29px;
  height:29px;

  flex:0 0 auto;

  border-radius:50%;

  background:#2e7626;
}

.vglobal-item__toggle i{
  position:absolute;

  left:50%;
  top:50%;

  width:12px;
  height:2px;

  border-radius:20px;

  background:#fff;

  transform:translate(-50%,-50%);

  transition:
    transform .3s ease,
    opacity .3s ease;
}

.vglobal-item__toggle i:last-child{
  transform:
    translate(-50%,-50%)
    rotate(90deg);
}

.vglobal-item.is-open
.vglobal-item__toggle{
  background:#fff;
}

.vglobal-item.is-open
.vglobal-item__toggle i{
  background:#39802a;
}

.vglobal-item.is-open
.vglobal-item__toggle i:last-child{
  opacity:0;
}


/* =========================================
   ACCORDION BODY
========================================= */

.vglobal-item__body{
  display:grid;

  grid-template-rows:0fr;

  transition:
    grid-template-rows .42s cubic-bezier(.25,.8,.25,1);
}

.vglobal-item.is-open
.vglobal-item__body{
  grid-template-rows:1fr;
}

.vglobal-item__content{
  min-height:0;
  overflow:hidden;

  padding:0 28px;

  color:#56666c;

  font-family: "DM Sans", sans-serif;
  font-size:14px;
  line-height:1.85;

  transition:
    padding .42s cubic-bezier(.25,.8,.25,1);
}

.vglobal-item.is-open
.vglobal-item__content{
  padding:
    25px 28px 29px;
}


/* =========================================
   TABLET
========================================= */

@media(max-width:1050px){

  .vglobal{
    padding:72px 18px;
  }

  .vglobal__grid{
    grid-template-columns:1fr;

    gap:50px;
  }

  .vglobal__left,
  .vglobal__right{
    width:min(780px,100%);
    margin:0 auto;
  }

  .vglobal__intro{
    max-width:none;
  }

  .vglobal-globe{
    margin-left:auto;
    margin-right:auto;
  }

}


/* =========================================
   MOBILE
========================================= */

@media(max-width:620px){

  .vglobal{
    padding:55px 10px 60px;
  }

  .vglobal__header h2{
    font-size:37px;
    letter-spacing:-1px;
  }

  .vglobal__leaf{
    width:50px;
    height:36px;
  }

  .vglobal__heading-line{
    width:72px;

    margin-top:15px;
  }

  .vglobal__grid{
    margin-top:38px;

    gap:38px;
  }

  .vglobal__intro{
    font-size:14px;
    line-height:1.7;
  }

  .vglobal-globe{
    height:320px;

    margin-top:18px;
  }

  .vglobal-globe__halo{
    display:none;
  }

  .vglobal__demand{
    align-items:flex-start;

    gap:13px;
  }

  .vglobal__globe-icon{
    width:48px;
    height:48px;
  }

  .vglobal__globe-icon svg{
    width:25px;
    height:25px;
  }

  .vglobal__demand p{
    font-size:14px;
  }

  .vglobal-accordion{
    gap:9px;
  }

  .vglobal-item__button{
    min-height:64px;

    padding:8px 13px;
  }

  .vglobal-item__region{
    gap:11px;

    font-size:14px;
  }

  .vglobal-item__region-icon{
    width:40px;
    height:40px;
  }

  .vglobal-item__region-icon svg{
    width:24px;
    height:24px;
  }

  .vglobal-item__toggle{
    width:25px;
    height:25px;
  }

  .vglobal-item__content{
    padding-left:17px;
    padding-right:17px;

    font-size:13px;
    line-height:1.7;
  }

  .vglobal-item.is-open
  .vglobal-item__content{
    padding:
      19px 17px 22px;
  }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media(max-width:390px){

  .vglobal__header h2{
    font-size:32px;
  }

  .vglobal-globe{
    height:280px;
  }

}
/* =========================================================
   FINAL MOBILE MENU FIX
   Mobile dropdowns open inline under their own menu item.
   Desktop floating dropdown styles are fully neutralized.
========================================================= */

@media (max-width: 1025px) {

  /* -----------------------------------------
     MOBILE PANEL
  ----------------------------------------- */
  .navbar.mobile-open{
    position: fixed !important;
    top: 8px !important;
    left: 8px !important;
    right: 8px !important;
    bottom: 8px !important;

    width: auto !important;
    height: auto !important;
    min-height: 0 !important;

    display: grid !important;
    grid-template-columns: 1fr auto !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;

    padding: 18px 22px 18px !important;

    overflow: hidden !important;

    border-radius: 20px !important;

    background: #edf7ee !important;

    box-shadow:
      0 18px 42px rgba(32, 61, 38, .14) !important;

    z-index: 99999 !important;
  }


  /* -----------------------------------------
     LOGO + CLOSE
  ----------------------------------------- */
  .navbar.mobile-open .brand{
    grid-column: 1 !important;
    grid-row: 1 !important;

    align-self: center !important;

    width: 200px !important;
    max-width: 200px !important;
  }

  .navbar.mobile-open .brand img{
    width: 100% !important;
    height: auto !important;
  }

  .navbar.mobile-open .menu-toggle{
    grid-column: 2 !important;
    grid-row: 1 !important;

    position: relative !important;
    top: auto !important;
    right: auto !important;

    width: 44px !important;
    height: 44px !important;

    margin: 0 !important;

    display: grid !important;
    place-items: center !important;

    background: transparent !important;

    z-index: 100 !important;
  }

  .navbar.mobile-open .menu-toggle span{
    background: transparent !important;
  }

  .navbar.mobile-open .menu-toggle span::before{
    top: 0 !important;
    transform: rotate(45deg) !important;
  }

  .navbar.mobile-open .menu-toggle span::after{
    top: 0 !important;
    transform: rotate(-45deg) !important;
  }


  /* -----------------------------------------
     MAIN MENU LIST
  ----------------------------------------- */
  .navbar.mobile-open .nav-links{
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;

    position: static !important;

    width: 100% !important;
    height: 100% !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;

    gap: 0 !important;

    margin: 20px 0 0 !important;
    padding: 0 0 16px !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    opacity: 1 !important;
    visibility: visible !important;

    animation: none !important;
  }

  .navbar.mobile-open .nav-links > li{
    position: relative !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    border-bottom: 1px solid rgba(62, 102, 70, .09) !important;

    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }

  .navbar.mobile-open .nav-links > li:last-child{
    border-bottom: 0 !important;
  }


  /* -----------------------------------------
     NORMAL LINK + DROPDOWN HEADING
  ----------------------------------------- */
  .navbar.mobile-open .nav-links > li > a,
  .navbar.mobile-open .nav-dropdown-toggle{
    position: relative !important;

    width: 100% !important;
    min-height: 50px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    gap: 10px !important;

    margin: 0 !important;
    padding: 11px 2px !important;

    border: 0 !important;
    outline: 0 !important;

    background: transparent !important;

    color: #586b72 !important;

    font-family: "DM Sans", sans-serif;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;

    text-align: left !important;
    text-decoration: none !important;
    white-space: normal !important;

    box-shadow: none !important;
    transform: none !important;

    cursor: pointer !important;
  }

  .navbar.mobile-open .nav-links > li > a::after{
    display: none !important;
  }


  /* -----------------------------------------
     DROPDOWN ARROW
  ----------------------------------------- */
  .navbar.mobile-open .dropdown-chevron{
    width: 14px !important;
    height: 14px !important;

    display: block !important;

    flex: 0 0 14px !important;

    margin-left: auto !important;

    transform: rotate(0deg) !important;

    transition: transform .25s ease !important;
  }

  .navbar.mobile-open
  .nav-dropdown.is-open
  > .nav-dropdown-toggle
  .dropdown-chevron{
    transform: rotate(180deg) !important;
  }


  /* -----------------------------------------
     KILL DESKTOP HOVER BRIDGE
  ----------------------------------------- */
  .navbar.mobile-open .nav-dropdown::after,
  .navbar.mobile-open .nav-dropdown-menu::before{
    content: none !important;
    display: none !important;
  }


  /* -----------------------------------------
     SUBMENU - CLOSED
     Extremely specific selectors intentionally
     override desktop :hover and :focus-within.
  ----------------------------------------- */
  .navbar.mobile-open
  .nav-links
  .nav-dropdown
  > .nav-dropdown-menu,

  .navbar.mobile-open
  .nav-links
  .nav-dropdown:hover
  > .nav-dropdown-menu,

  .navbar.mobile-open
  .nav-links
  .nav-dropdown:focus-within
  > .nav-dropdown-menu{

    position: static !important;

    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;

    z-index: auto !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;

    display: none !important;

    grid-template-columns: 1fr !important;

    column-gap: 0 !important;
    row-gap: 0 !important;

    margin: 0 !important;

    padding:
      0
      0
      10px
      16px !important;

    border: 0 !important;
    border-left:
      1px solid rgba(73, 135, 72, .22) !important;

    border-radius: 0 !important;

    background: transparent !important;

    box-shadow: none !important;

    opacity: 1 !important;
    visibility: visible !important;

    pointer-events: auto !important;

    transform: none !important;

    transition: none !important;
  }


  /* -----------------------------------------
     SUBMENU - OPEN
  ----------------------------------------- */
  .navbar.mobile-open
  .nav-links
  .nav-dropdown.is-open
  > .nav-dropdown-menu,

  .navbar.mobile-open
  .nav-links
  .nav-dropdown.is-open:hover
  > .nav-dropdown-menu,

  .navbar.mobile-open
  .nav-links
  .nav-dropdown.is-open:focus-within
  > .nav-dropdown-menu{

    display: grid !important;

    position: static !important;

    width: 100% !important;

    margin: 0 !important;

    padding:
      0
      0
      10px
      16px !important;

    border: 0 !important;
    border-left:
      1px solid rgba(73, 135, 72, .22) !important;

    border-radius: 0 !important;

    background: transparent !important;

    box-shadow: none !important;

    opacity: 1 !important;
    visibility: visible !important;

    transform: none !important;
  }


  /* -----------------------------------------
     SUBMENU LINKS
  ----------------------------------------- */
  .navbar.mobile-open
  .nav-dropdown-menu a{

    position: relative !important;

    width: 100% !important;
    min-height: 40px !important;

    display: flex !important;
    align-items: center !important;

    margin: 0 !important;

    padding:
      8px
      12px !important;

    border: 0 !important;
    border-radius: 8px !important;

    background: transparent !important;

    color: #65787d !important;

    font-family: "DM Sans", sans-serif;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;

    white-space: normal !important;

    box-shadow: none !important;

    transform: none !important;
  }

  .navbar.mobile-open
  .nav-dropdown-menu a:hover{

    background: rgba(255,255,255,.55) !important;

    color: #2f7d2c !important;

    transform: none !important;
  }


  /* -----------------------------------------
     CTA AT BOTTOM
  ----------------------------------------- */
  .navbar.mobile-open .nav-actions{
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;

    width: 100% !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    gap: 10px !important;

    margin: 0 !important;

    padding: 14px 0 0 !important;

    border-top:
      1px solid rgba(62, 102, 70, .10) !important;

    opacity: 1 !important;

    animation: none !important;
  }

  .navbar.mobile-open .contact-btn{
    width: auto !important;

    min-width: 145px !important;
    min-height: 50px !important;

    padding: 0 25px !important;

    white-space: nowrap !important;
  }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 620px){

  .navbar.mobile-open{
    top: 5px !important;
    right: 5px !important;
    bottom: 5px !important;
    left: 5px !important;

    padding:
      14px
      16px
      14px !important;

    border-radius: 18px !important;
  }

  .navbar.mobile-open .brand{
    width: 155px !important;
    max-width: 155px !important;
  }

  .navbar.mobile-open .nav-links{
    margin-top: 12px !important;
  }

  .navbar.mobile-open .nav-links > li > a,
  .navbar.mobile-open .nav-dropdown-toggle{
    min-height: 47px !important;

    padding:
      10px
      1px !important;

    font-size: 15px !important;
  }

  .navbar.mobile-open
  .nav-dropdown-menu a{

    min-height: 38px !important;

    padding:
      7px
      10px !important;

    font-size: 13px !important;
  }

}

/* =========================================================
   GLOBAL FONT CONSISTENCY - ICON SAFE
   Do not override ::before / ::after because icon libraries
   use their own font-family on pseudo-elements.
========================================================= */
html,
body,
button,
input,
select,
textarea {
  font-family: "DM Sans", sans-serif;
}



/* ===== GLOBAL TYPOGRAPHY READABILITY FIX ===== */
body { font-size: 16px; }
.site-header, .site-footer { font-size: 14px; }
@media (max-width: 767px) { body { font-size: 15px; } }
