@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700&family=DM+Serif+Display&family=Exo:wght@100;200;300;400;500;600;700;800;900&family=Gelasio:wght@400;500;600;700&family=Inter:wght@300;400;500;600;700&family=Lora:wght@400;500;600;700&family=Montserrat:wght@100;200;300;400;500;600;700;800;900&family=Mulish:wght@300;400;500;600;700;800&family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300;1,400&family=Source+Sans+3:wght@300;400;500;600;700&family=Vollkorn:ital,wght@0,400;0,700;1,400&display=swap");
@import url("./source.css");

:root {
  --color-primary: #667452;
  --color-primary-dark: #4d7b6b;
  --color-accent-sex: #ff7350;
  --color-text: #1b1b1b;
  --color-text-strong: #141414;
  --color-text-nav: #1a1b1f;
  --color-background: #ffffff;
  --color-background-soft: rgba(255, 255, 255, 0.8);
  --color-mint: #f2f4e9;
  --color-card: #f2f9f4;
  --color-footer: #f5f7fa;
  --color-teal: #215a5a;
  --color-sage-start: #738162;
  --color-sage-end: #464e3d;
  --color-weight-span: #78968c;
  --container-width: 1260px;
  --container-nav: 1260px;
  --container-footer: 940px;
  --radius-card: 20px;
  --radius-pill: 200px;
  --radius-button: 20px;
  --font-body: Inter, sans-serif;
  --font-heading: Mulish, sans-serif;
  --font-promo: "Source Sans 3", sans-serif;
  --header-offset: 54px;
}

html {
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
}

/* Vanilla replacements for Webflow open states */
.w-dropdown-list.w--open {
  display: block;
}

.w-nav-button {
  z-index: 10011;
}

.w-nav.w--open,
.w-nav:has(.w-nav-menu.w--open),
.zealthy-menu:has(.w-nav-menu.w--open) {
  z-index: 10010;
  position: relative;
}

.w-nav-button.w--open .w-icon-nav-menu {
  position: relative;
}

.w-nav-button.w--open .w-icon-nav-menu::before {
  content: "×";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  line-height: 1;
  color: #1b1b1b;
}

.w-dropdown.w--open .w-dropdown-toggle {
  outline: none;
}

.nav-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  z-index: 9000;
}

.nav-overlay.is-open {
  display: block;
}

/* Homepage rotating headline */
.home-hero .wrapper,
.home-hero .ticker-mob {
  overflow: hidden;
}

.ticker2,
.ticker-mob {
  will-change: transform;
  transition: transform 0.55s ease;
}

/* Hero card hover (matches live IX2 + page CSS) */
.div-block-210 {
  transition: background-color 0.25s ease, color 0.25s ease;
  cursor: pointer;
}

.div-block-210:hover {
  background-color: #215a5a;
}

.div-block-210.hair-hover:hover {
  background-color: #4d7b6b;
}

.div-block-210.meno-hover:hover {
  background-color: #ff7350;
}

.div-block-210:hover * {
  color: #fff !important;
}

.div-block-210:hover svg path {
  stroke: #fff;
}

/* Accordion / FAQ: expand in document flow without covering siblings */
.w-dropdown-toggle {
  cursor: pointer;
}

.faq.w-dropdown,
.dropdown-2.w-dropdown {
  position: relative;
  z-index: 1;
  overflow: visible;
}

.faq > .w-dropdown-list,
.faq-dropdown,
.faq-dropdown-2,
.dropdown-2 > .w-dropdown-list,
.dropdown-2 > .dropdown-list {
  position: static !important;
}

.faq.w--open,
.dropdown-2.w--open,
.menu-mobile-dropdown.w--open,
.menu-mobile-dropdown-2.w--open {
  height: auto !important;
  overflow: visible !important;
}

.faq.w--open > .w-dropdown-list,
.faq-dropdown.w--open,
.faq-dropdown-2.w--open,
.dropdown-2.w--open > .w-dropdown-list,
.dropdown-2.w--open > .dropdown-list,
.menu-mobile-dropdown.w--open > .w-dropdown-list,
.menu-mobile-dropdown-2.w--open > .w-dropdown-list {
  display: block !important;
  position: static !important;
  height: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: visible !important;
}

.faq-item .w-dropdown-list,
.accordion-item .w-dropdown-list {
  overflow: hidden;
}

/* Drawer */
.drawer-wrapper.is-open {
  display: flex;
}

.close-popup,
.wrapper-close,
.close-icon-wrapper {
  cursor: pointer;
}

#popup-information,
.popup-information {
  display: none;
}

#popup-information.is-open,
.popup-information.is-open {
  display: block;
}

.drawer-wrapper {
  display: none;
}

.drawer-wrapper.is-open {
  display: block;
}

/* Internal service-page mega menus: show panel on desktop hover */
@media (min-width: 992px) {
  .menu-nav-services:hover [class*="menu-services-content-wrapper"],
  .menu-nav-services.is-open [class*="menu-services-content-wrapper"],
  .menu-nav-services-2:hover [class*="menu-services-content-wrapper"],
  .menu-nav-services-2.is-open [class*="menu-services-content-wrapper"],
  .menu-nav-services-3:hover [class*="menu-services-content-wrapper"],
  .menu-nav-services-3.is-open [class*="menu-services-content-wrapper"],
  .menu-nav-services-men:hover [class*="menu-services-content-wrapper"],
  .menu-nav-services-men.is-open [class*="menu-services-content-wrapper"],
  .menu-nav-weightloss-2:hover [class*="menu-weightloss-content-wrapper"],
  .menu-nav-weightloss-2.is-open [class*="menu-weightloss-content-wrapper"],
  .menu-nav-about:hover [class*="menu-about-content-wrapper"],
  .menu-nav-about.is-open [class*="menu-about-content-wrapper"],
  .menu-nav-careers:hover [class*="menu-careers-content-wrapper"],
  .menu-nav-careers.is-open [class*="menu-careers-content-wrapper"] {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: auto !important;
    overflow: visible;
    z-index: 11000;
  }
}

@media (max-width: 991px) {
  .w-nav[data-collapse="medium"] .w-nav-menu.w--open,
  .w-nav[data-collapse="medium"] .w-nav-menu[data-nav-menu-open] {
    display: block !important;
  }

  .menu-navbar .w-nav-menu.w--open,
  .menu-navbar .w-nav-menu[data-nav-menu-open] {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    float: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    width: 100%;
    max-height: calc(100vh - 120px);
    overflow-x: hidden;
    overflow-y: auto;
    background: #f2f4e9;
    padding: 8px 16px 24px;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
    z-index: 10001;
  }

  .menu-navbar .w-nav-menu.w--open .menu-mobile-men,
  .menu-navbar .w-nav-menu.w--open .menu-mobile-men-2,
  .menu-navbar .w-nav-menu.w--open .menu-mobile-men-3 {
    display: flex;
  }

  /* Original markup includes two hamburger buttons; keep the one after the menu */
  .menu-navbar .zealthy-menu-container > .w-nav-button:first-child {
    display: none !important;
  }

  .menu-navbar .w-nav-menu ~ .w-nav-button {
    display: block !important;
  }
}

/* Reveal Webflow IX initial-hidden content without the runtime.
   Skip nav/FAQ panels that are meant to stay collapsed until hover/click. */
[data-w-id][style*="opacity:0"]:not(.w-dropdown-list):not(.faq-dropdown):not(.faq-dropdown-2):not(.dropdown-list),
[data-w-id][style*="opacity: 0"]:not(.w-dropdown-list):not(.faq-dropdown):not(.faq-dropdown-2):not(.dropdown-list) {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

@media all and (max-width: 991px) {
  .ticker2 {
    display: none;
  }
}

@media all and (min-width: 992px) {
  .ticker-mob {
    display: none;
  }
}
