/* Hide top GLP-1 promo bar (FDA-approved GLP-1s at their lowest prices…) */
#TopPromoBar {
  display: none !important;
}

/* Footer: dark background on all pages (fallback when --color-surface-dark unset) */
#page-structure-footer,
#page-structure-footer > .surface-dark,
#page-structure-footer .surface-dark,
#page-structure-footer [class*="Container_c13vc5uw"] {
  background: #1a1a1a !important;
  color: rgba(255, 255, 255, 0.88) !important;
}

nav[aria-labelledby="footer-nav-label"].ro-footer-links-only .ro-footer-links-list a {
  color: rgba(255, 255, 255, 0.88) !important;
}

/* Footer: hide Popular + About Ro columns (desktop grid + mobile accordion) */
nav[aria-labelledby="footer-nav-label"] .ro-trim-footer-section,
nav[aria-labelledby="footer-nav-label"] [class*="DesktopGridColumn-sc-"].ro-trim-footer-section,
nav[aria-labelledby="footer-nav-label"] [class*="Item-sc-69070ccd"].ro-trim-footer-section,
nav[aria-labelledby="footer-nav-label"] [class*="ItemWrapper-sc-69070ccd"].ro-trim-footer-section {
  display: none !important;
}

nav[aria-labelledby="footer-nav-label"] [class*="DesktopGridColumn-sc-"].ro-footer-slot-hidden {
  display: none !important;
}

/* Video popup modal (must stay early — later CSS has selectors that truncate parsing in some engines) */
#ro-video-fallback-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 10050 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(0, 0, 0, 0.35) !important;
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  padding: 1rem !important;
  pointer-events: auto !important;
}

#ro-video-fallback-modal video {
  width: min(94vw, 28rem) !important;
  height: auto !important;
  max-height: min(84vh, 44rem) !important;
  aspect-ratio: 9 / 16;
  background: #000 !important;
  border-radius: 1rem !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.28) !important;
  pointer-events: auto !important;
}

#ro-video-fallback-modal .ro-video-fallback-title {
  color: #fff !important;
  font-size: 1.125rem !important;
  line-height: 1.4 !important;
  text-align: center !important;
  max-width: 40rem !important;
  margin: 0 0 1rem !important;
}

#ro-video-fallback-modal .ro-video-fallback-close {
  position: fixed !important;
  top: 0.75rem !important;
  right: 0.75rem !important;
  width: 2.5rem !important;
  height: 2.5rem !important;
  border: none !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.15) !important;
  color: #fff !important;
  font-size: 1.5rem !important;
  line-height: 1 !important;
  cursor: pointer !important;
  z-index: 10051 !important;
}

html.ro-video-modal-open {
  overflow: hidden !important;
}

html.ro-video-modal-open body {
  overflow: hidden !important;
}

/* Hide broken inline React full-video nodes appended outside the overlay */
body > div:has(> [class*="FullVideo-sc-"]:not(#ro-video-fallback-modal *)),
#main [class*="FullVideo-sc-"]:not(#ro-video-fallback-modal *) {
  display: none !important;
}

@media (min-width: 960px) {
  nav[aria-labelledby="footer-nav-label"] [class*="Grid-sc-"]:has([class*="DesktopGridColumn-sc-"].ro-footer-support-col) {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 2.5rem 3rem !important;
    width: 100% !important;
  }

  nav[aria-labelledby="footer-nav-label"] [class*="DesktopGridColumn-sc-"].ro-footer-support-col,
  nav[aria-labelledby="footer-nav-label"] [class*="DesktopGridColumn-sc-"].ro-footer-tools-col,
  nav[aria-labelledby="footer-nav-label"] [class*="DesktopGridColumn-sc-"].ro-footer-legal-col {
    min-width: 0 !important;
    flex: 0 0 auto !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-tools-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 1.25rem !important;
    row-gap: 0.35rem !important;
    margin-top: 0.75rem !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-tools-list > [class*="NavItem-sc-"] {
    padding-bottom: 0.35rem !important;
  }
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-support-col {
  flex: 0 1 12rem !important;
  min-width: 10rem !important;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-tools-col {
  flex: 1 1 18rem !important;
  min-width: 16rem !important;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-legal-col {
  flex: 1 1 18rem !important;
  min-width: 16rem !important;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-tools-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 0.75rem !important;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-legal-bar {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.75rem 1.5rem !important;
  width: 100% !important;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-legal-inline {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 1rem 2rem !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-privacy-choices {
  margin-left: auto !important;
  flex: 0 0 auto !important;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-legal-bottom {
  width: 100% !important;
  margin-bottom: 1.25rem !important;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-legal-bottom .ro-footer-legal-bar {
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0.5rem !important;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-legal-bottom .ro-footer-privacy-choices {
  margin-left: 0 !important;
  margin-top: 0.25rem !important;
}

/* Footer: single row of 7 support/legal links only */
nav[aria-labelledby="footer-nav-label"].ro-footer-links-only [class*="DesktopGridColumn-sc-"],
nav[aria-labelledby="footer-nav-label"].ro-footer-links-only [class*="MobileGridColumn-sc-"],
nav[aria-labelledby="footer-nav-label"].ro-footer-links-only .ro-footer-legal-bottom,
nav[aria-labelledby="footer-nav-label"].ro-footer-links-only [class*="LogosWrapper-sc-"],
nav[aria-labelledby="footer-nav-label"].ro-footer-links-only [class*="Copyright-sc-"],
nav[aria-labelledby="footer-nav-label"].ro-footer-links-only [class*="LegitScript"],
nav[aria-labelledby="footer-nav-label"].ro-footer-links-only img[alt*="LegitScript"] {
  display: none !important;
}

/* Links-only footer: drop empty legacy columns (mirror pages e.g. /weight-loss/serena/) */
nav[aria-labelledby="footer-nav-label"].ro-footer-links-only [class*="Grid-sc-"] > [class*="Column-sc-"]:not(:has(.ro-footer-links-row)) {
  display: none !important;
}

nav[aria-labelledby="footer-nav-label"].ro-footer-links-only [class*="Grid-sc-"] {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
}

nav[aria-labelledby="footer-nav-label"].ro-footer-links-only [class*="Grid-sc-"] > [class*="Column-sc-"]:has(.ro-footer-links-row) {
  flex: 1 1 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  grid-column: 1 / -1 !important;
}

/* Compact footer — mirror pages ship 8rem vertical padding inline */
#page-structure-footer:has(.ro-footer-links-only) [class*="Container_c13vc5uw"] {
  --spacing-mobile-top: 2rem !important;
  --spacing-mobile-bottom: 2rem !important;
  --spacing-desktop-top: 2.5rem !important;
  --spacing-desktop-bottom: 2.5rem !important;
  min-height: 0 !important;
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}

@media (min-width: 960px) {
  #page-structure-footer:has(.ro-footer-links-only) [class*="Container_c13vc5uw"] {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-links-row {
  width: 100%;
  padding: 1.25rem 0 0.5rem;
  box-sizing: border-box;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.35rem 1.75rem !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
  width: max-content;
  max-width: 100%;
}

@media (min-width: 960px) {
  nav[aria-labelledby="footer-nav-label"] .ro-footer-links-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0.35rem 1.75rem !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list-top,
  nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list-bottom {
    display: contents !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list-top > [class*="NavItem-sc-"],
  nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list-bottom > [class*="NavItem-sc-"] {
    display: list-item !important;
  }
}

@media (max-width: 959px) {
  nav[aria-labelledby="footer-nav-label"] .ro-footer-links-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.5rem !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list {
    justify-content: center !important;
    gap: 0.5rem 1rem !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list-top,
  nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list-bottom {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    width: max-content !important;
    max-width: 100% !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list a {
    font-size: 0.8125rem !important;
  }
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list > [class*="NavItem-sc-"] {
  padding: 0 !important;
  margin: 0 !important;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list a {
  color: inherit !important;
  text-decoration: none !important;
  font-size: 0.875rem !important;
  line-height: 1.4 !important;
  opacity: 0.88;
  white-space: nowrap;
}

nav[aria-labelledby="footer-nav-label"] .ro-footer-links-list a:hover {
  opacity: 1;
  text-decoration: underline !important;
}

@media (max-width: 959px) {
  nav[aria-labelledby="footer-nav-label"] .ro-footer-legal-bar {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.75rem !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-legal-inline {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.5rem !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-privacy-choices {
    margin-left: 0 !important;
    margin-top: 0.25rem !important;
  }
}

#main .ro-trim-home-disclaimer {
  display: none !important;
}

/* Product carousels: hide "Important safety information" / 重要安全信息 links */
#main a.ro-trim-isi-link,
#main a[class*="IsiLink-sc-"] {
  display: none !important;
}

/* Homepage: hide Lose weight / Unlock better sex category shortcut row */
#main [class*="Wrapper-sc-6cb0247e"].ro-trim-category-tiles {
  display: none !important;
}

/* Homepage: hide category link list above footer (Weight loss / Sexual health / …) */
#main [class*="SectionWrapper-sc-"]:has([id^="categoryNav-"]) {
  display: none !important;
}

/* Homepage: hide "100% online, 100% convenient" promo carousel section */
#main [class*="SectionWrapper-sc-"]:has(header[class*="Header-sc-8e39e1bf"] h2 br),
#main [class*="SectionWrapper-sc-"].ro-trim-online-convenient {
  display: none !important;
}

/* Remix error boundary — hidden immediately; recovery shim reloads or router navigates */
html.ro-error-boundary #main {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  max-height: 0 !important;
  overflow: hidden !important;
}
html.ro-error-boundary #main h1 {
  display: none !important;
}

/**
 * Critical layout CSS for offline mirror.
 * Styled-components grid column spans load via JS modules; until then columns
 * default to grid-column:auto (= one ~17px track). These rules apply immediately.
 */
:root {
  --scrollbar-width: 0px;
  --container-width: calc(100vw - var(--scrollbar-width, 0px));
  --page-container-max-width: 80rem;
  --page-container-padding: var(--grid-padding-mobile, 1.5rem);
  --color-text-on-light-primary: #1a1a1a;
  --color-surface-light: #ffffff;
  --top-navigation-desktop-height: 4rem;
}

/*
 * FOUC skeleton (CSS-only, no body visibility gate).
 * Covers base page chrome + desktop nav until styled-components wins.
 */
html {
  background: #f5f5f5;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  background: var(--color-surface-light, #ffffff);
  color: var(--color-text-on-light-primary, #1a1a1a);
  font-family: "Ro Sans", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  line-height: 1.5;
}

#main[class*="MainContainer-sc-"],
#main > [class*="Content-sc-e8821721"] {
  background: var(--color-surface-light, #ffffff);
}

@media (min-width: 960px) {
  [class*="MainNav-sc-"] [class*="TopBar-sc-"] {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    min-height: var(--top-navigation-desktop-height, 4rem);
    padding: 0.75rem var(--page-container-padding, 1.5rem);
    background: var(--color-surface-light, #ffffff);
  }

  [class*="MainNav-sc-"] [class*="TopMenuList-sc-"] {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 2.5rem !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    visibility: visible !important;
    height: auto !important;
    overflow: visible !important;
  }

  [class*="TopMenuList-sc-"] > button {
    appearance: none;
    background: transparent;
    border: none;
    margin: 0;
    padding: 0.125rem 0.375rem;
    font: inherit;
    font-size: 1rem;
    line-height: 1.25;
    color: var(--color-text-on-light-primary, #1a1a1a);
    cursor: pointer;
    white-space: nowrap;
  }

  [class*="MobileTopMenuHeader-sc-"],
  [class*="MobileOnlyChevron-sc-"],
  [class*="MobileOnlyButtonContainer-sc-"] {
    display: none !important;
  }

  [class*="TopMenu-sc-"] {
    display: block !important;
    position: static !important;
    background: transparent !important;
  }
}

/* Hide SSR mega-menu until styled-components injects display:none on SubmenuContainer */
html:not(.ro-nav-ready):not([data-ro-home="1"]) [class*="SubmenuContainer-sc-"],
html:not(.ro-nav-ready):not([data-ro-home="1"]) [class*="SubmenuNav-sc-"],
html:not(.ro-nav-ready):not([data-ro-home="1"]) [class*="SubmenuHeading-sc-"],
html:not(.ro-nav-ready):not([data-ro-home="1"]) [class*="SubmenuLink-sc-"],
html:not(.ro-nav-ready):not([data-ro-home="1"]) [class*="SubmenuColumn-sc-"] {
  display: none !important;
}

html:not(.ro-nav-ready) [class*="MainNav-sc-"] [class*="SubmenuContainer-sc-"] ~ *,
html:not(.ro-nav-ready) [class*="MainNav-sc-"] ul[class*="Column-sc-"] {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Homepage pure clone: show mega-menu column headings (Weight Loss / Sexual Health groups) */
html.ro-co-nav-trim [class*="SubmenuHeading-sc-"] {
  display: block !important;
}

  html.ro-co-nav-trim [class*="SubmenuLink-sc-"],
  html.ro-co-nav-trim .ro-submenu-fallback-link {
    display: block !important;
    color: inherit !important;
    text-decoration: none !important;
    cursor: pointer !important;
    pointer-events: auto !important;
  }

  html.ro-co-nav-trim [class*="SubmenuItem-sc-"] {
    pointer-events: auto !important;
  }

@media (min-width: 960px) {
  html.ro-co-nav-trim [class*="MainNav-sc-"] {
    position: relative !important;
  }

  /*
   * React toggles MainNav sticky↔fixed and SpaceHolder display when $hasSubmenu
   * changes — causes the up/down nav flicker on tab hover. Pin stable desktop layout.
   */
  html.ro-co-nav-trim #TopNavigation[class*="MainNav-sc-"],
  html.ro-co-nav-trim nav#TopNavigation {
    position: sticky !important;
    top: var(--main-nav-top-offset, 0rem) !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
    will-change: auto !important;
  }

  html.ro-co-nav-trim [class*="SpaceHolder-sc-4441b3bd-0"] {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  html.ro-co-nav-trim [class*="SubmenuContainer-sc-"] {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    height: 0 !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html.ro-co-nav-trim [class*="SubmenuContainer-sc-"] {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    height: 0 !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* CSS :has() hover — no JS display toggling (avoids React fight / flicker) */
  html.ro-co-nav-trim [class*="SubmenuContainer-sc-"] {
    display: block !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    z-index: 40 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html.ro-co-nav-trim [class*="SubmenuContainer-sc-"]::before {
    content: "" !important;
    position: absolute !important;
    top: -16px !important;
    left: 0 !important;
    right: 0 !important;
    height: 16px !important;
    pointer-events: none !important;
  }

  html.ro-co-nav-trim [class*="SubmenuContainer-sc-"] > .ro-submenu-panel {
    display: none !important;
    pointer-events: auto !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:hover) [class*="SubmenuContainer-sc-"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:hover) [class*="SubmenuContainer-sc-"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:focus-within) [class*="SubmenuContainer-sc-"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:focus-within) [class*="SubmenuContainer-sc-"] {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: none !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index="0"]:hover) [class*="SubmenuContainer-sc-"] > [data-ro-panel-index="0"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index="0"]:hover) [class*="SubmenuContainer-sc-"] > [data-ro-panel-index="0"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index="1"]:hover) [class*="SubmenuContainer-sc-"] > [data-ro-panel-index="1"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index="1"]:hover) [class*="SubmenuContainer-sc-"] > [data-ro-panel-index="1"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index="0"]:focus-within) [class*="SubmenuContainer-sc-"] > [data-ro-panel-index="0"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index="0"]:focus-within) [class*="SubmenuContainer-sc-"] > [data-ro-panel-index="0"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index="1"]:focus-within) [class*="SubmenuContainer-sc-"] > [data-ro-panel-index="1"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index="1"]:focus-within) [class*="SubmenuContainer-sc-"] > [data-ro-panel-index="1"] {
    display: block !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:hover) [class*="SubmenuContainer-sc-"] > .ro-submenu-tab-aligned,
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:hover) [class*="SubmenuContainer-sc-"] > .ro-submenu-tab-aligned {
    width: max-content !important;
    max-width: min(42rem, calc(100vw - 2rem)) !important;
    margin-left: var(--ro-submenu-tab-left, 0) !important;
    background: var(--color-surface-light, #fff) !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
    border-radius: 0 0 0.75rem 0.75rem !important;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.1) !important;
    padding-bottom: 0.25rem !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:hover) [class*="SubmenuContainer-sc-"] [class*="SubmenuNav-sc-"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:hover) [class*="SubmenuContainer-sc-"] [class*="SubmenuNav-sc-"] {
    display: none !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:hover) [class*="SubmenuContainer-sc-"] > .ro-submenu-tab-aligned [class*="SubmenuNav-sc-"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:hover) [class*="SubmenuContainer-sc-"] > .ro-submenu-tab-aligned [class*="SubmenuNav-sc-"] {
    display: none !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:hover) [class*="SubmenuContainer-sc-"] [class*="SubmenuColumns-sc-"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:hover) [class*="SubmenuContainer-sc-"] [class*="SubmenuColumns-sc-"] {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 2.5rem !important;
    width: 100% !important;
    padding: 0.75rem var(--page-container-padding, 4rem) 1.25rem !important;
    box-sizing: border-box !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:hover) [class*="SubmenuContainer-sc-"] > .ro-submenu-tab-aligned [class*="SubmenuColumns-sc-"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:hover) [class*="SubmenuContainer-sc-"] > .ro-submenu-tab-aligned [class*="SubmenuColumns-sc-"] {
    padding: 0.85rem 1.25rem 1rem !important;
    margin-left: 0 !important;
    width: max-content !important;
    max-width: min(40rem, calc(100vw - var(--ro-submenu-tab-left, 0px) - 1rem)) !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:hover) [class*="SubmenuContainer-sc-"] ul[class*="Column-sc-c7b1e2c4"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:hover) [class*="SubmenuContainer-sc-"] ul[class*="Column-sc-c7b1e2c4"] {
    display: block !important;
    flex: 0 1 auto !important;
    min-width: 11rem !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:hover) [class*="SubmenuContainer-sc-"] ul[class*="Column-sc-c7b1e2c4"].ro-submenu-products-col,
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:hover) [class*="SubmenuContainer-sc-"] ul[class*="Column-sc-c7b1e2c4"].ro-submenu-products-col {
    display: grid !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:hover) [class*="SubmenuContainer-sc-"] [class*="SubmenuHeading-sc-"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:hover) [class*="SubmenuContainer-sc-"] [class*="SubmenuHeading-sc-"] {
    display: block !important;
    visibility: visible !important;
    font-weight: 600 !important;
    margin-bottom: 0.5rem !important;
  }

  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-tab-index]:hover) [class*="SubmenuContainer-sc-"] [class*="SubmenuLink-sc-"],
  html.ro-co-nav-trim [class*="MainNav-sc-"]:has([data-ro-panel-index]:hover) [class*="SubmenuContainer-sc-"] [class*="SubmenuLink-sc-"] {
    display: block !important;
  }

  html.ro-co-nav-trim [class*="SubmenuColumns-sc-"].ro-submenu-optimized {
    align-items: flex-start !important;
    gap: 2.5rem 3.5rem !important;
  }

  html.ro-co-nav-trim [class*="SubmenuColumns-sc-"].ro-submenu-wl .ro-submenu-see-all-col {
    display: none !important;
  }

  html.ro-co-nav-trim [class*="SubmenuColumns-sc-"].ro-submenu-wl .ro-submenu-products-col {
    flex: 1 1 28rem !important;
    min-width: 24rem !important;
    max-width: 38rem !important;
  }

  html.ro-co-nav-trim [class*="SubmenuColumns-sc-"].ro-submenu-sh .ro-submenu-products-col {
    flex: 0 1 34rem !important;
    min-width: 26rem !important;
    max-width: 40rem !important;
  }

  html.ro-co-nav-trim ul[class*="Column-sc-c7b1e2c4"].ro-submenu-products-col {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 2.5rem !important;
    row-gap: 0.35rem !important;
    align-content: start !important;
  }

  html.ro-co-nav-trim ul[class*="Column-sc-c7b1e2c4"].ro-submenu-products-col > [class*="SubmenuItem-sc-"]:first-child {
    grid-column: 1 / -1 !important;
    margin-bottom: 0.35rem !important;
  }

  html.ro-co-nav-trim ul[class*="Column-sc-c7b1e2c4"].ro-submenu-products-col [class*="SubmenuLink-sc-"] {
    padding-top: 0.2rem !important;
    padding-bottom: 0.2rem !important;
  }
}

/*
 * Hero "Healthier on Ro" value props (sc-d9e72464 only — not advisor carousel sc-5d6472c7).
 * SSR renders marquee clone + static copy; FOUC skeleton hides the wrong variant per breakpoint
 * using direct-child selectors (no :has(); universal browser support).
 */
html:not(.ro-ready) [class*="Wrapper-sc-d9e72464-0"] [class*="StyledValueProps-sc-d9e72464-2"] {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 1rem 2rem !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html:not(.ro-ready) [class*="Wrapper-sc-d9e72464-0"] [class*="ListItem-sc-a9b00ddd-4"] {
  display: flex !important;
  list-style: none !important;
  margin: 0 !important;
}

html:not(.ro-ready) [class*="Wrapper-sc-d9e72464-0"] [class*="DesktopContainer-sc-a9b00ddd-2"] {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 0.5rem !important;
}

@media (min-width: 960px) {
  html:not(.ro-ready) [class*="Wrapper-sc-d9e72464-0"] .rfm-marquee-container {
    display: none !important;
  }
}

@media (max-width: 959px) {
  html:not(.ro-ready) [class*="Wrapper-sc-d9e72464-0"] [class*="ValuePropsWrapper-sc-d9e72464-1"] > [class*="StyledValueProps-sc-d9e72464-2"] {
    display: none !important;
  }

  html:not(.ro-ready) [class*="Wrapper-sc-d9e72464-0"] .rfm-marquee-container > .rfm-marquee:nth-child(2) {
    display: none !important;
  }
}

@media (min-width: 1280px) {
  :root {
    --page-container-padding: var(--grid-padding-desktop, 4rem);
  }
}

/*
 * Homepage product carousels (GLP-1, ED meds): ro.co card size + centered row.
 * Keep native --page-content-margin bleed; hide broken native scrollbar (custom nav only).
 */
@media (min-width: 960px) {
  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) {
    --ro-product-visible: 5;
    --ro-product-card-gap: var(--grid-gutter-desktop, 2rem);
    --ro-product-viewport-w: min(100vw, var(--page-container-max-width, 80rem));
    --ro-product-content-w: calc(var(--ro-product-viewport-w) - var(--page-container-padding, 4rem));
    --ro-product-card-w: calc(
      (var(--ro-product-content-w) - (var(--ro-product-visible) - 1) * var(--ro-product-card-gap)) /
        var(--ro-product-visible)
    );
    --ro-product-row-w: calc(
      var(--ro-product-visible) * var(--ro-product-card-w) +
        (var(--ro-product-visible) - 1) * var(--ro-product-card-gap)
    );
    --ro-product-row-pad: max(1rem, calc((100vw - var(--ro-product-row-w)) / 2));
  }

  html[data-ro-home="1"] [class*="CarouselWrapper-sc-8e39e1bf-6"] {
    overflow: visible !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Container-sc-b3780d6b-0"]:has([class*="CarouselWrapper-sc-8e39e1bf-6"]) {
    overflow: visible !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Wrapper-sc-8e39e1bf-0"] {
    max-width: var(--page-container-max-width, 80rem);
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: clip !important;
    overflow-y: visible !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="StyledCarousel-sc-8e39e1bf-7"] {
    overflow: visible !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Wrapper-sc-8e39e1bf-0"] > div:first-child [class*="Grid-sc-5c7aef7b-1"] {
    justify-items: center !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Wrapper-sc-8e39e1bf-0"] > div:first-child [class*="Column-sc-5c7aef7b-0"]:has([class*="Header-sc-8e39e1bf"]) {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Grid-sc-5c7aef7b-1"]:has([class*="Header-sc-8e39e1bf"]),
  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Header-sc-8e39e1bf-1"] {
    text-align: center !important;
    align-items: center !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Wrapper-sc-8e39e1bf-0"] > div:last-child > [class*="Container-sc-b3780d6b-0"]:not(:has([class*="CarouselWrapper-sc-8e39e1bf-6"])),
  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Wrapper-sc-8e39e1bf-0"] > div:first-child > [class*="Container-sc-b3780d6b-0"]:not(:has([class*="CarouselWrapper-sc-8e39e1bf-6"])) {
    max-width: 42rem;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }

  /* Health guide: carousel lives in last-child container — keep full page width */
  html[data-ro-home="1"] #main [data-ro-section="health-guide"] [class*="Wrapper-sc-8e39e1bf-0"] > div:last-child > [class*="Container-sc-b3780d6b-0"]:has([class*="CarouselWrapper-sc-8e39e1bf-6"]) {
    max-width: none !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] .carousel-slider,
  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Slider-sc-c23519fd-1"],
  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-c23519fd-0"] .carousel-slider,
  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-c23519fd-0"] [class*="Slider-sc-c23519fd-1"] {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: var(--ro-product-row-pad) !important;
    padding-right: var(--ro-product-row-pad) !important;
    scroll-padding-left: var(--ro-product-row-pad) !important;
    scroll-padding-right: var(--ro-product-row-pad) !important;
    justify-content: flex-start !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    box-sizing: border-box !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] .carousel-slider::-webkit-scrollbar,
  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Slider-sc-c23519fd-1"]::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }

  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="SlideWrapper-sc-c23519fd-2"]:not(:has([class*="Wrapper-sc-21d59c1f"])) {
    flex: 0 0 var(--ro-product-card-w, 17.625rem) !important;
    width: var(--ro-product-card-w, 17.625rem) !important;
    min-width: var(--ro-product-card-w, 17.625rem) !important;
    max-width: var(--ro-product-card-w, 17.625rem) !important;
    height: auto !important;
    align-self: flex-start !important;
  }

  /* Legacy rule kept for non-product slides that lack section vars */
  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="SlideWrapper-sc-c23519fd-2"] {
    height: auto !important;
    align-self: flex-start !important;
  }

  /* Health guide article cards (21d59c1f) — native width 13.93rem */
  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="SlideWrapper-sc-c23519fd-2"]:has([class*="Wrapper-sc-21d59c1f"]) {
    flex: 0 0 13.93rem !important;
    width: 13.93rem !important;
    min-width: 13.93rem !important;
    max-width: 13.93rem !important;
  }

  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-21d59c1f"] {
    --card-width: 13.93rem !important;
    --card-min-width: 13.93rem !important;
    width: 13.93rem !important;
    min-width: 13.93rem !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-fc753720"],
  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-7bf2598"],
  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-fc753720"],
  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-7bf2598"] {
    --card-width: var(--ro-product-card-w, 17.625rem) !important;
    --card-min-width: var(--ro-product-card-w, 17.625rem) !important;
    --columns-size: 5 !important;
    width: var(--ro-product-card-w, 17.625rem) !important;
    min-width: var(--ro-product-card-w, 17.625rem) !important;
    height: auto !important;
    min-height: 0 !important;
  }

  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="MainContent-sc-fc753720"],
  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-fc753720-1"] {
    height: auto !important;
    min-height: 0 !important;
  }

  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-221e323a-0"] {
    position: relative !important;
    aspect-ratio: 1 / 1 !important;
    width: 100% !important;
    overflow: hidden !important;
    height: auto !important;
  }

  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="BackgroundMedia-sc-3ae32793-0"] {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
  }

  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="BackgroundMedia-sc-3ae32793-0"] picture,
  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="BackgroundMedia-sc-3ae32793-0"] img,
  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-221e323a-0"] picture,
  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Wrapper-sc-221e323a-0"] img,
  [class*="CarouselWrapper-sc-8e39e1bf-6"] img[class*="ImageElement"] {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    background: #f3f0ec !important;
  }
}

/*
 * Homepage video testimonial mosaic (sc-1cc0c768 / sc-e8d9187d): poster frames must fill tiles.
 */
[class*="VideoTestimonialsWrapper-sc-"] button[class*="Wrapper-sc-e8d9187d"] {
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
  min-height: 16rem !important;
}

[class*="VideoTestimonialsWrapper-sc-"] [class*="Preview-sc-e8d9187d"],
[class*="VideoTestimonialsWrapper-sc-"] [class*="Preview-sc-e8d9187d"] picture,
[class*="VideoTestimonialsWrapper-sc-"] [class*="Preview-sc-e8d9187d"] img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

@media (min-width: 960px) {
  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="ControlsWrapper-sc-c23519fd"],
  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Nav-sc-c23519fd"],
  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="ProgressBarContainer-sc-c23519fd"] {
    display: flex !important;
  }

  /* Baked disabled wrapper (.mGxpZ) keeps pointer-events:none even after disabled=false */
  [class*="Nav-sc-c23519fd"] [aria-label="Previous slide"]:not(:disabled),
  [class*="Nav-sc-c23519fd"] [aria-label="Next slide"]:not(:disabled) {
    pointer-events: auto !important;
    cursor: pointer !important;
  }

  [class*="Nav-sc-c23519fd"] [aria-label="Previous slide"]:disabled,
  [class*="Nav-sc-c23519fd"] [aria-label="Next slide"]:disabled {
    pointer-events: none !important;
    cursor: default !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="ControlsWrapper-sc-c23519fd"] {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: var(--ro-product-row-pad) !important;
    padding-right: var(--ro-product-row-pad) !important;
    box-sizing: border-box !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Controls-sc-c23519fd-4"] {
    justify-content: center !important;
    width: 100% !important;
  }

  html[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="ProgressBarContainer-sc-c23519fd"] {
    flex: 0 1 12rem !important;
    max-width: 12rem !important;
  }

  /* Post-hydration: centered product row inside page container */
  html.ro-ready[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] {
    width: 100% !important;
    max-width: var(--page-container-max-width, 80rem) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html.ro-ready[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] .carousel-slider,
  html.ro-ready[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Slider-sc-c23519fd-1"] {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: var(--ro-product-row-pad) !important;
    padding-right: var(--ro-product-row-pad) !important;
    scroll-padding-left: var(--ro-product-row-pad) !important;
    scroll-padding-right: var(--ro-product-row-pad) !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
  }

  html.ro-ready[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Header-sc-8e39e1bf-1"] {
    align-items: center !important;
    text-align: center !important;
  }

  html.ro-ready[data-ro-home="1"] #main [class*="SectionWrapper-sc-"]:has([id^="rdsCardsSlider-"]) [class*="Wrapper-sc-8e39e1bf-0"] > div:first-child [class*="Column-sc-5c7aef7b-0"]:has([class*="Header-sc-8e39e1bf"]) {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 959px) {
  /*
   * Subpages: clip page-level horizontal bleed from full-bleed images/carousels.
   * (Homepage uses data-ro-home="1" and manages its own carousel margins.)
   */
  html:not([data-ro-home="1"]),
  html:not([data-ro-home="1"]) body {
    overflow-x: clip;
  }

  html:not([data-ro-home="1"]) #main img[class*="ImageElement-sc-"]:not([class*="CarouselWrapper-sc-"] *) {
    max-width: 100% !important;
    height: auto !important;
  }

  /*
   * Before styled-components hydrate, 12-col grids collapse to ~17px tracks.
   * Apply to all Grid/Column hashes, not only the nav container grid.
   * Exclude Radix video modals (fixed overlay) from these collapse rules.
   */
  [class*="Grid-sc-"]:not([class*="Overlay-sc-d8d6ad4a-0"] *, [class*="Content-sc-d8d6ad4a-2"] *) {
    grid-template-columns: minmax(0, 1fr) !important;
    column-gap: 0 !important;
    row-gap: 0;
  }

  [class*="Column-sc-"]:not([class*="Overlay-sc-d8d6ad4a-0"] *, [class*="Content-sc-d8d6ad4a-2"] *) {
    grid-column: 1 / -1 !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Homepage/article carousels: one full-width slide before JS layout runs. */
  [class*="CarouselWrapper-sc-"] [class*="Slider-sc-"],
  [class*="CarouselWrapper-sc-"] .carousel-slider {
    width: 100% !important;
    max-width: 100% !important;
  }

  [class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="SlideWrapper-sc-c23519fd-2"] {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Mobile member video mosaic: quote carousel must not block tile taps */
  [class*="MobileTestimonialWrapper-sc-"]:not(:empty) {
    min-height: 36rem !important;
    position: relative !important;
    z-index: 3 !important;
    overflow: visible !important;
  }

  [class*="MobileTestimonialWrapper-sc-"] [class*="VideoTestimonialsWrapper-sc-"] {
    min-height: 36rem !important;
    overflow: visible !important;
  }

  [class*="MobileTestimonialWrapper-sc-"] button[class*="Wrapper-sc-e8d9187d"] {
    position: relative !important;
    z-index: 4 !important;
    pointer-events: auto !important;
    touch-action: manipulation !important;
  }

  [class*="MainContent-sc-1cc0c768"] {
    display: flex !important;
    flex-direction: column !important;
  }

  [class*="BlockquotesWrapper-sc-1cc0c768"] {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    margin-top: 1.25rem !important;
    z-index: 1 !important;
    pointer-events: none !important;
  }

  [class*="BlockquotesWrapper-sc-1cc0c768"] a,
  [class*="BlockquotesWrapper-sc-1cc0c768"] button {
    pointer-events: auto !important;
  }

  [class*="MobileTestimonialWrapper-sc-"] [class*="Preview-sc-e8d9187d"] img {
    width: 100% !important;
    height: auto !important;
    min-height: 12rem !important;
    object-fit: cover !important;
  }
}

@media (min-width: 960px) {
  [class*="Grid-sc-5c7aef7b-1"] {
    grid-template-columns: repeat(var(--grid-columns, 12), minmax(0, 1fr));
  }
}

/*
 * SOCO text logo (replaces Ro SVG in header + footer).
 * Hide legacy Ro wordmark paths immediately — SVG <title> may say SOCO but paths still draw "ro".
 */
[class*="RoLogoContainer-sc-"] a > svg,
[class*="RoLogoContainer-sc-"] svg,
nav[aria-labelledby="footer-nav-label"] [class*="RoSymbol-sc-"],
nav[aria-labelledby="footer-nav-label"] [class*="LogosWrapper-sc-"] svg {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  visibility: hidden !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

[class*="RoLogoContainer-sc-"] a:not(:has(.soco-text-logo))::before {
  content: "SOCO";
  display: inline-block;
  font-family: "Ro Sans", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 17px;
  line-height: 17px;
  color: var(--color-text-on-light-primary, #1a1a1a);
  letter-spacing: 0.01em;
}

nav[aria-labelledby="footer-nav-label"] [class*="LogosWrapper-sc-"] a:not(:has(.soco-text-logo))::before {
  content: "SOCO";
  display: inline-block;
  font-family: "Ro Sans", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.2;
  color: var(--color-text-on-light-primary, #1a1a1a);
}

[class*="RoLogoContainer-sc-"] a {
  display: inline-flex !important;
  align-items: center !important;
  text-decoration: none !important;
}

.soco-text-logo {
  display: inline-block;
  font-family: "Ro Sans", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-style: normal;
  color: var(--color-text-on-light-primary, #1a1a1a);
  letter-spacing: 0.01em;
  line-height: 1;
  white-space: nowrap;
  user-select: none;
}

.soco-text-logo--nav {
  font-size: 17px;
  height: 17px;
  line-height: 17px;
}

nav[aria-labelledby="footer-nav-label"] .soco-text-logo--footer {
  font-size: 1.125rem;
  line-height: 1.2;
}

/*
 * Critical desktop nav CSS for subpages: homepage SSR embeds ~180 styled rules;
 * category/article pages only get nav styles after JS hydrates. Without these
 * rules, ro-ready reveals a stacked mobile nav (Discover + hamburger) on desktop.
 */
@media (min-width: 960px) {
  [class*="TopBar-sc-4441b3bd-4"] {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    height: var(--top-navigation-desktop-height, 4rem);
    padding: var(--paddings-padding-150, 0.75rem) 0;
  }

  [class*="RoLogoContainer-sc-4441b3bd-5"] {
    order: 0;
  }

  [class*="TopMenuContainer-sc-4441b3bd-6"] {
    order: 1;
    margin: 0;
  }

  [class*="MobileOnlyButtonContainer-sc-44630b1a-0"],
  [class*="MobileTopMenuHeader-sc-4441b3bd-8"],
  [class*="MobileOnlyChevron-sc-455b00e7-0"] {
    display: none !important;
  }

  [class*="TopMenu-sc-4441b3bd-9"] {
    display: block !important;
    position: static !important;
    inset: auto !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  [class*="RightIconContainer-sc-4441b3bd-7"] {
    display: flex !important;
    align-items: center;
    gap: 1.5rem;
    order: 2;
  }
}

/* Nav trim: keep Home + Weight Loss / Sexual Health only. */
[class*="TopMenuList-sc-"]:has(.ro-nav-home) > button:nth-child(n + 4),
[class*="TopMenuList-sc-"]:not(:has(.ro-nav-home)) > button:nth-child(n + 3),
[class*="SubmenuContainer-sc-"] > div:nth-child(n + 3) {
  display: none !important;
}

.ro-nav-home {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  color: var(--color-text-on-light-primary, #1a1a1a);
  font: inherit;
  font-size: 1rem;
  line-height: 1.25;
  text-decoration: none;
  white-space: nowrap;
  padding: 0.125rem 0.375rem;
  border-radius: 0.375rem;
}

.ro-nav-home:hover {
  opacity: 0.72;
}

.ro-nav-home[aria-current="page"] {
  font-weight: 600;
}

.ro-nav-cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--color-text-on-light-primary, #1a1a1a);
  text-decoration: none;
  line-height: 0;
}

.ro-nav-cart:hover {
  opacity: 0.72;
}

.ro-nav-cart svg {
  display: block;
  width: 24px;
  height: 24px;
}

@media (min-width: 960px) {
  html.ro-ready #topmenu,
  html.ro-ready [class*="TopMenu-sc-4441b3bd-9"],
  html.ro-ready [class*="TopMenuContainer-sc-"] {
    display: block !important;
    visibility: visible !important;
  }

  .ro-mobile-drawer-close {
    display: none !important;
  }

  html.ro-ready [class*="TopMenuList-sc-4441b3bd-11"] {
    display: flex !important;
    flex-direction: row !important;
    flex-flow: row nowrap !important;
    flex-wrap: nowrap !important;
    gap: 2.5rem !important;
    justify-content: center !important;
    align-items: center !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
    padding: 0 0.5rem !important;
    margin: 0 !important;
  }

  html.ro-ready [class*="TopMenuList-sc-4441b3bd-11"]:has(.ro-nav-home) > button:nth-child(-n + 3),
  html.ro-ready [class*="TopMenuList-sc-4441b3bd-11"]:not(:has(.ro-nav-home)) > button:nth-child(-n + 2) {
    display: block !important;
    visibility: visible !important;
  }

  html.ro-ready [class*="TopMenuList-sc-"] > .ro-nav-home {
    display: inline-flex !important;
    visibility: visible !important;
  }

  html.ro-ready [class*="TopMenuList-sc-"] > .ro-lang-switcher {
    display: flex !important;
    align-items: center !important;
    align-self: center !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    width: auto !important;
  }

  html.ro-ready [class*="TopMenu-sc-4441b3bd-9"] {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2.5rem !important;
    overflow: visible !important;
  }
}

/* Language switcher (placeholder: 中文简体 / English) */
.ro-lang-switcher {
  position: relative;
  flex-shrink: 0;
}

.ro-lang-trigger {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
  padding: 0.125rem 0.375rem;
  border: none;
  background: transparent;
  color: var(--color-text-on-light-primary, #1a1a1a);
  font: inherit;
  font-size: 1rem;
  line-height: 1.25;
  cursor: pointer;
  border-radius: 0.375rem;
  white-space: nowrap;
}

.ro-lang-trigger:hover,
.ro-lang-switcher.ro-lang-open .ro-lang-trigger {
  background: var(--color-surface-light-secondary, rgba(0, 0, 0, 0.04));
}

.ro-lang-flag {
  font-size: 1.125rem;
  line-height: 1;
}

.ro-lang-label {
  font-size: 1rem;
}

.ro-lang-chevron {
  width: 0.45rem;
  height: 0.45rem;
  margin-left: 0.125rem;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  opacity: 0.65;
}

  .ro-lang-menu {
    position: absolute;
    top: calc(100% + 0.5rem);
    right: 0;
    z-index: calc(var(--zIndex-mainMenu, 1000) + 5);
    min-width: 11rem;
    margin: 0;
    padding: 0.375rem;
    list-style: none;
    background: var(--color-surface-light, #fff);
    border: 1px solid var(--color-border-subtle-1, rgba(0, 0, 0, 0.08));
    border-radius: 0.75rem;
    box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.12);
  }

  a[href*="spermkit"],
  li:has(a[href*="spermkit"]) {
    display: none !important;
  }

.ro-lang-option {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem 0.75rem;
  border-radius: 0.5rem;
  cursor: pointer;
  color: var(--color-text-on-light-primary, #1a1a1a);
}

.ro-lang-option:hover,
.ro-lang-option.ro-lang-option--active {
  background: var(--color-surface-light-secondary, rgba(0, 0, 0, 0.04));
}

.ro-lang-switcher {
  visibility: visible;
  height: auto;
  overflow: visible;
}

@media (max-width: 959px) {
  nav[aria-labelledby="footer-nav-label"] [class*="DesktopGridColumn-sc-"] {
    display: none !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-tools-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 1rem !important;
    row-gap: 0.25rem !important;
    margin-bottom: 0.5rem !important;
  }

  nav[aria-labelledby="footer-nav-label"] .Collapsible__trigger {
    cursor: pointer !important;
    -webkit-tap-highlight-color: transparent;
  }

  nav[aria-labelledby="footer-nav-label"] [class*="Trigger-sc-efb06d4c"] {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 0.85rem 0 !important;
  }

  nav[aria-labelledby="footer-nav-label"] [class*="Item-sc-69070ccd"].ro-footer-open .Collapsible__contentOuter,
  nav[aria-labelledby="footer-nav-label"] .Collapsible__trigger.is-open + .Collapsible__contentOuter {
    height: auto !important;
    overflow: visible !important;
  }

  nav[aria-labelledby="footer-nav-label"] [class*="Item-sc-69070ccd"].ro-footer-open .Collapsible__contentOuter[hidden] {
    display: block !important;
  }

  nav[aria-labelledby="footer-nav-label"] [class*="Content-sc-69070ccd"] [class*="NavItem-sc-"] {
    display: list-item !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-legal-bar {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-legal-inline {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.35rem !important;
  }

  nav[aria-labelledby="footer-nav-label"] .ro-footer-privacy-choices {
    margin-left: 0 !important;
    margin-top: 0.5rem !important;
  }

  /*
   * Mobile drawer must stay closed until the hamburger opens it.
   * React sets display:none when $isMobileOpen is false; do not override with display:block.
   */
  html.ro-ready #topmenu[aria-expanded="false"] {
    display: none !important;
  }

  html.ro-mobile-drawer-open #topmenu[aria-expanded="true"] {
    display: flex !important;
    flex-direction: column !important;
    position: fixed !important;
    top: calc(var(--main-nav-top-offset, 0px) + 3.5rem) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 1002 !important;
    background: var(--color-surface-light, #fff) !important;
    padding: 0.75rem 2rem 1.25rem !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
  }

  html.ro-mobile-drawer-open {
    overflow: hidden !important;
  }

  html.ro-mobile-drawer-open body {
    overflow: hidden !important;
  }

  html.ro-mobile-submenu-view #topmenu[aria-expanded="true"] {
    visibility: hidden !important;
    pointer-events: none !important;
  }

  html.ro-mobile-submenu-view [class*="SubmenuContainer-sc-"].ro-mobile-panel-open {
    display: flex !important;
    flex-direction: column !important;
    position: fixed !important;
    top: calc(var(--main-nav-top-offset, 0px) + 3.5rem) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 1003 !important;
    background: var(--color-surface-light, #fff) !important;
    padding: 0.75rem 2rem 1.25rem !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
  }

  html.ro-mobile-submenu-view [class*="SubmenuContainer-sc-"].ro-mobile-panel-open > div {
    display: none !important;
  }

  html.ro-mobile-submenu-view [class*="SubmenuContainer-sc-"].ro-mobile-panel-open > div.ro-mobile-panel-active {
    display: block !important;
  }

  html.ro-mobile-submenu-view [class*="SubmenuNav-sc-"] {
    display: block !important;
    margin-bottom: 0.75rem !important;
  }

  html.ro-mobile-submenu-view [class*="SubmenuNav-sc-"] [class*="MobileOnlyButtonContainer-sc-"] {
    display: block !important;
  }

  html.ro-mobile-submenu-view [class*="SubmenuNav-sc-"] [class*="SubmenuHeading-sc-"] {
    display: block !important;
    text-align: center !important;
    font-weight: 600 !important;
    margin: 0 !important;
  }

  html.ro-mobile-submenu-view [id^="menu-"][id$="-tab"] {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
  }

  html.ro-mobile-submenu-view ul[class*="Column-sc-c7b1e2c4"].ro-submenu-products-col {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  html.ro-mobile-submenu-view [class*="SubmenuLink-sc-"] {
    display: block !important;
    padding: 0.45rem 0 !important;
  }

  html.ro-mobile-drawer-open [class*="TopMenuList-sc-"] > button {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 0.65rem 0 !important;
    border: 0 !important;
    background: transparent !important;
    text-align: left !important;
    font: inherit !important;
    font-size: 1rem !important;
    color: var(--color-text-on-light-primary, #1a1a1a) !important;
    cursor: pointer !important;
  }

  html.ro-mobile-drawer-open [class*="MobileTopMenuHeader-sc-"] {
    display: block !important;
    margin-bottom: 0.75rem !important;
  }

  html.ro-ready #topmenu[aria-expanded="true"] [class*="TopMenuList-sc-"] > .ro-nav-home,
  html.ro-ready #topmenu[aria-expanded="true"] [class*="TopMenuList-sc-"] > .ro-nav-home-mobile {
    display: flex !important;
    visibility: visible !important;
    width: 100% !important;
    max-width: 100% !important;
    align-items: center !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0.5rem 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--color-text-on-light-primary, #1a1a1a) !important;
    font: inherit !important;
    font-size: 1rem !important;
    line-height: 1.4 !important;
    text-align: left !important;
    cursor: pointer !important;
  }

  .ro-lang-switcher {
    width: 100%;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--color-border-subtle-1, rgba(0, 0, 0, 0.08));
  }

  .ro-lang-trigger {
    width: 100%;
    justify-content: flex-start;
    padding: 0.5rem 0;
  }

  .ro-lang-menu {
    position: static;
    width: 100%;
    margin-top: 0.5rem;
    box-shadow: none;
  }

  .ro-mobile-drawer-close {
    display: none;
    width: 100%;
    margin-top: 1.5rem;
    margin-bottom: 0.25rem;
    padding: 0.875rem 1rem;
    border: 1px solid var(--color-border-subtle-1, rgba(0, 0, 0, 0.14));
    border-radius: 999px;
    background: var(--color-surface-light, #fff);
    font: inherit;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.25;
    color: var(--color-text-on-light-primary, #1a1a1a);
    text-align: center;
    cursor: pointer;
    flex-shrink: 0;
    -webkit-tap-highlight-color: transparent;
  }

  .ro-mobile-drawer-close:active {
    background: var(--color-surface-light-secondary, rgba(0, 0, 0, 0.04));
  }

  html.ro-mobile-drawer-open #topmenu[aria-expanded="true"] > .ro-mobile-drawer-close {
    display: block !important;
    margin-top: 1.5rem;
  }

  html.ro-mobile-submenu-view #topmenu[aria-expanded="true"] > .ro-mobile-drawer-close {
    display: none !important;
  }

  html.ro-mobile-submenu-view
    [class*="SubmenuContainer-sc-"].ro-mobile-panel-open
    > .ro-mobile-drawer-close {
    display: block !important;
    margin-top: 1.5rem;
  }
}

/*
 * Page-level anchor nav (Meds / How it works / Pricing / Safety): subpages lack SSR styles.
 */
[class*="LinksList-sc-cb5ae65b"] {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.75rem 2rem !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0.25rem 0 !important;
}

[class*="LinksList-sc-cb5ae65b"] > [class*="LinkLi-sc-cb5ae65b"] {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

[class*="LinksList-sc-cb5ae65b"] a {
  text-decoration: none;
  color: inherit;
}

[class*="StickyContainer-sc-cb5ae65b"] {
  position: sticky;
  top: var(--top-navigation-desktop-height, 4rem);
  z-index: calc(var(--zIndex-mainMenu, 1000) - 1);
  background: var(--color-surface-light, #fff);
}

@media (max-width: 959px) {
  [class*="LinksList-sc-cb5ae65b"] {
    gap: 0.5rem 1.25rem !important;
  }

  [class*="StickyContainer-sc-cb5ae65b"] {
    top: 0;
  }
}

/*
 * Video testimonial carousel cards (42351d62): subpages lack homepage SSR styles,
 * so grid/carousel collapse to ~116px strips before JS hydrates.
 */
[class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"]) {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 9 / 16 !important;
  min-height: 18rem !important;
  overflow: hidden !important;
}

/* Text-only narrative slides in video testimonial carousels only — drop empty placeholders. */
[class*="CarouselWrapper-sc-"]:has([class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"])) [class*="SlideWrapper-sc-c23519fd-2"]:not(:has(video[class*="BackgroundMediaContainer-sc-42351d62"])) {
  display: none !important;
}

[class*="CarouselWrapper-sc-"].ro-single-video-carousel [class*="ControlsWrapper-sc-c23519fd"],
[class*="CarouselWrapper-sc-"].ro-single-video-carousel [class*="Controls-sc-c23519fd-4"],
[class*="CarouselWrapper-sc-"].ro-single-video-carousel [class*="Nav-sc-c23519fd"],
[class*="CarouselWrapper-sc-"].ro-single-video-carousel [class*="ProgressBarContainer-sc-c23519fd"] {
  display: none !important;
}

[class*="CarouselWrapper-sc-"].ro-single-video-carousel [class*="Slider-sc-c23519fd-1"],
[class*="CarouselWrapper-sc-"].ro-single-video-carousel .carousel-slider {
  justify-content: center !important;
}

[class*="CarouselWrapper-sc-"].ro-single-video-carousel [class*="SlideWrapper-sc-c23519fd-2"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"]) {
  margin: 0 auto !important;
}

video[class*="BackgroundMediaContainer-sc-42351d62"] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  background: #e8e4df !important;
}

video[class*="BackgroundMediaContainer-sc-42351d62"][data-ro-video-deferred="1"] {
  background: linear-gradient(145deg, #ece8e3 0%, #d8d2cb 100%) !important;
}

[class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"]) {
  cursor: pointer !important;
}

[class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"]) [class*="InnerContainer-sc-42351d62"] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  pointer-events: auto;
}

[class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"]) [class*="InnerContainer-sc-42351d62"] button,
[class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"]) [class*="InnerContainer-sc-42351d62"] [role="button"] {
  pointer-events: auto;
}

[class*="CarouselWrapper-sc-"]:has([class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"])) {
  min-height: 24rem !important;
}

[class*="CarouselWrapper-sc-"]:has([class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"])) [class*="StyledCarousel-sc-"],
[class*="CarouselWrapper-sc-"]:has([class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"])) [class*="Wrapper-sc-c23519fd-0"] {
  min-height: 22rem !important;
}

[class*="CarouselWrapper-sc-"]:has([class*="Container-sc-42351d62"]) [class*="SlideWrapper-sc-c23519fd-2"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"]) {
  flex: 0 0 17.625rem !important;
  width: 17.625rem !important;
  max-width: 17.625rem !important;
  height: auto !important;
  align-self: stretch !important;
}

@media (max-width: 959px) {
  [class*="CarouselWrapper-sc-"]:has([class*="Container-sc-42351d62"]) [class*="SlideWrapper-sc-c23519fd-2"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"]) {
    flex: 0 0 72vw !important;
    width: 72vw !important;
    max-width: 72vw !important;
  }

  [class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"]) {
    min-height: 16rem !important;
  }
}

/*
 * Video testimonial modal: centered card on semi-transparent backdrop (not fullscreen).
 */
[class*="Overlay-sc-d8d6ad4a-0"] {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9998 !important;
  background-color: rgba(0, 0, 0, 0.35) !important;
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}

html.ro-video-modal-open {
  overflow: hidden !important;
}

html.ro-video-modal-open body {
  overflow: hidden !important;
}

[class*="Content-sc-d8d6ad4a-2"]:has([class*="FullVideo-sc-"]) {
  position: fixed !important;
  inset: auto !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  width: min(94vw, 28rem) !important;
  max-width: min(94vw, 28rem) !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: min(88vh, 44rem) !important;
  margin: 0 !important;
  border-radius: 1rem !important;
  overflow: hidden !important;
  z-index: 9999 !important;
  display: flex !important;
  flex-direction: column !important;
  background: rgba(18, 18, 18, 0.9) !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.28) !important;
  color: #fff !important;
}

[class*="Content-sc-d8d6ad4a-2"]:has([class*="FullVideo-sc-"]) [class*="Scroll-sc-d8d6ad4a-1"] {
  flex: 0 1 auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

[class*="Content-sc-d8d6ad4a-2"]:has([class*="FullVideo-sc-"]) [class*="ContentSpacingContainer-sc-d8d6ad4a-3"] {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

[class*="Content-sc-d8d6ad4a-2"]:has([class*="FullVideo-sc-"]) [class*="TopIcons-sc-d8d6ad4a-9"] {
  position: fixed !important;
  top: calc(50% - min(42vh, 22rem) - 2.75rem) !important;
  right: calc(50% - min(47vw, 14rem) - 0.25rem) !important;
  left: auto !important;
  padding: 0 !important;
  justify-content: flex-end !important;
  z-index: 10001 !important;
}

[class*="FullVideo-sc-"],
[class*="Content-sc-d8d6ad4a-2"]:has([class*="FullVideo-sc-"]) video {
  width: 100% !important;
  height: auto !important;
  min-height: 16rem !important;
  max-width: 100% !important;
  max-height: min(84vh, 44rem) !important;
  aspect-ratio: 9 / 16 !important;
  margin: 0 auto !important;
  display: block !important;
  object-fit: contain !important;
  vertical-align: top;
  background: #000 !important;
  border-radius: 1rem 1rem 0 0 !important;
}

/* Fallback modal injected by video-shim.js */
#ro-video-fallback-modal {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  padding: 1rem;
  pointer-events: auto;
}

#ro-video-fallback-modal video {
  width: min(94vw, 28rem);
  height: auto;
  max-height: min(84vh, 44rem);
  aspect-ratio: 9 / 16;
  background: #000;
  border-radius: 1rem;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.28);
  pointer-events: auto;
}

#ro-video-fallback-modal .ro-video-fallback-title {
  color: #fff;
  font-size: 1.125rem;
  line-height: 1.4;
  text-align: center;
  max-width: 40rem;
  margin: 0 0 1rem;
}

#ro-video-fallback-modal .ro-video-fallback-close {
  position: fixed;
  top: 0.75rem;
  right: 0.75rem;
  width: 2.5rem;
  height: 2.5rem;
  border: none;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}

/*
 * Experts/advisors carousel: force identical 17.625rem × 4:5 photo boxes on every slide.
 * html.ro-ready #main beats styled-components hydration overrides.
 */
@media (min-width: 960px) {
  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] {
    overflow: hidden;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] section > [id^="carousel-"],
  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="Slider-sc-c23519fd-1"],
  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] .carousel-slider {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    scroll-padding-right: 0 !important;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="MainContent-sc-5d6472c7-1"] {
    display: flex;
    flex-direction: column;
    width: 17.625rem !important;
    max-width: 17.625rem !important;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="TopWrapper-sc-5d6472c7-4"] {
    flex: 1 1 auto;
    min-height: 7.375rem;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="TopWrapper-sc-5d6472c7-4"] > :first-child {
    min-height: 2.625rem;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="TopWrapper-sc-5d6472c7-4"] > [class*="StyledParagraph-sc-"] {
    min-height: 3.75rem;
    margin: 0;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="ValuePropsWrapper-sc-5d6472c7-6"] {
    flex-shrink: 0;
    min-height: 4.5rem;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="ValuePropsWrapper-sc-5d6472c7-6"] [class*="ListItem-sc-"]:first-child {
    min-height: 1.25rem;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="ValuePropsWrapper-sc-5d6472c7-6"] [class*="ListItem-sc-"]:nth-child(2) {
    min-height: 2.5rem;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="SlideWrapper-sc-c23519fd-2"] {
    flex: 0 0 17.625rem !important;
    width: 17.625rem !important;
    min-width: 17.625rem !important;
    max-width: 17.625rem !important;
    box-sizing: border-box !important;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="Wrapper-sc-5d6472c7-0"] {
    width: 17.625rem !important;
    min-width: 17.625rem !important;
    max-width: 17.625rem !important;
    box-sizing: border-box !important;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="Wrapper-sc-221e323a-0"] {
    position: relative !important;
    width: 100% !important;
    max-width: 17.625rem !important;
    aspect-ratio: 4 / 5 !important;
    overflow: hidden !important;
    height: auto !important;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="BackgroundMedia-sc-3ae32793-0"] {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
  }

  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="BackgroundMedia-sc-3ae32793-0"] img,
  html.ro-ready #main [class*="CarouselWrapper-sc-e29166df-4"] [class*="Wrapper-sc-221e323a-0"] img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: top center !important;
  }
}

/*
 * Deferred video placeholders keep IO targets measurable after src strip.
 */
video[data-ro-video-deferred="1"] {
  aspect-ratio: 4 / 5 !important;
  width: 100% !important;
  min-height: 120px !important;
  background: #000 !important;
}

/* Category hero SSR poster → mp4 swap (Drop 20% / Sparks animated backgrounds) */
picture.ro-category-hero-poster {
  display: none !important;
}

[class*="Wrapper-sc-83c2118f"]:has(video[class*="StyledMedia-sc-83c2118f"]) picture[class*="StyledMedia-sc-83c2118f"] {
  display: none !important;
}

[class*="Wrapper-sc-83c2118f"] video[class*="StyledMedia-sc-83c2118f"] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom;
  z-index: 0;
}

[class*="Wrapper-sc-9ec9a206"] {
  position: relative;
  overflow: hidden;
}

[class*="Wrapper-sc-9ec9a206"] video[class*="StyledMedia-sc-9ec9a206"] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
}

[class*="Container-sc-42351d62-0"] {
  cursor: pointer;
}

/* GLP-1 product med cards reuse Container-sc-42351d62 but are not video / quote tiles */
[class*="CarouselWrapper-sc-8e39e1bf-6"] [class*="Container-sc-42351d62-0"]:not(:has(video[class*="BackgroundMediaContainer-sc-42351d62"])):not(:has([class*="ContentMediaContainer-sc-42351d62"])) {
  display: flex !important;
  flex-direction: column !important;
  width: 17.625rem !important;
  min-width: 17.625rem !important;
  min-height: 22rem !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

[class*="Container-sc-42351d62-0"]:not(:has(video[class*="BackgroundMediaContainer-sc-42351d62"])):not(:has([class*="ContentMediaContainer-sc-42351d62"])) [class*="InnerContainer-sc-42351d62"] {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 20rem !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  pointer-events: auto !important;
  padding: 1rem !important;
  box-sizing: border-box !important;
}

/*
 * Member before/after quote cards (ContentMediaContainer-sc-42351d62, no video).
 * Product-card min-height rules were inflating picture wrappers → beige dead space + clipped quotes.
 */
[class*="CarouselWrapper-sc-8e39e1bf-6"]:has([class*="ContentMediaContainer-sc-42351d62"]) [class*="SlideWrapper-sc-c23519fd-2"] {
  flex: 0 0 17.625rem !important;
  width: 17.625rem !important;
  max-width: 17.625rem !important;
  height: auto !important;
  align-self: stretch !important;
}

[class*="Container-sc-42351d62-0"]:has([class*="ContentMediaContainer-sc-42351d62"]) {
  display: block !important;
  width: 17.625rem !important;
  min-width: 17.625rem !important;
  min-height: auto !important;
  height: auto !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  cursor: default !important;
}

[class*="Container-sc-42351d62-0"]:has([class*="ContentMediaContainer-sc-42351d62"]) [class*="InnerContainer-sc-42351d62"] {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: auto !important;
  display: block !important;
  padding: 0 !important;
  pointer-events: auto !important;
  box-sizing: border-box !important;
}

[class*="ContentMediaContainer-sc-42351d62"] {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  line-height: 0 !important;
  margin: 0 !important;
}

[class*="ContentMediaContainer-sc-42351d62"] img[class*="ImageElement-sc-"] {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  display: block !important;
  object-fit: cover !important;
}

[class*="ContentTop-sc-42351d62"] {
  padding: 1rem !important;
  background: var(--color-surface-light, #fff) !important;
  box-sizing: border-box !important;
}

[class*="ContentTop-sc-42351d62"] p[class*="StyledParagraph-sc-"] {
  overflow: visible !important;
  display: block !important;
  white-space: normal !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
  max-height: none !important;
}

/*
 * Homepage below-fold deferral — DISABLED (content-visibility caused blank sections).
 */
#main .ro-defer-section {
  content-visibility: visible !important;
  contain: none !important;
}

/*
 * Subpage grid layout (componentId-stable).
 * Shared baked-styles.css class hashes (e.g. kcuzUD) drift from SSR body (e.g. bBKVkb).
 * Until per-page styles are rebaked, pin layout via sc-* componentIds.
 */
@media (min-width: 960px) {
  html:not([data-ro-home="1"]) [class*="Grid-sc-5c7aef7b-1"] {
    grid-template-columns: repeat(var(--grid-columns, 12), minmax(0, 1fr)) !important;
  }

  /* Category / CDP hero (ContentGrid sc-e6b451b4-5) */
  [class*="ContentGrid-sc-e6b451b4-5"] {
    display: grid !important;
    grid-template-columns: repeat(var(--grid-columns, 12), minmax(0, 1fr)) !important;
    grid-template-rows: auto auto !important;
    column-gap: var(--grid-gap, 1.5rem) !important;
    row-gap: var(--spacing-spacing-200, 1rem) !important;
    align-items: start !important;
  }

  [class*="ContentGrid-sc-e6b451b4-5"] > [class*="Column-sc-"]:first-child:not([class*="ButtonsWrapper-sc-"]):not([class*="RightColumn-sc-"]) {
    grid-column: span 7 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
  }

  [class*="ContentGrid-sc-e6b451b4-5"] > [class*="RightColumn-sc-e6b451b4-6"]:empty {
    display: none !important;
  }

  [class*="ContentGrid-sc-e6b451b4-5"] > [class*="RightColumn-sc-e6b451b4-6"]:not(:empty) {
    grid-column: 8 / -1 !important;
    grid-row: 1 / span 2 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: var(--spacing-spacing-200, 1rem) !important;
    min-width: 0 !important;
  }

  [class*="HeadingWrapper-sc-e6b451b4-1"] h1 {
    font-synthesis: none !important;
    line-height: 1.12 !important;
    text-rendering: geometricPrecision !important;
  }

  /*
   * CDP hero value props (sc-a9b00ddd). Baked-styles hash for Content (e.g. ljAJbu)
   * drifts from SSR; DesktopContainer block display stacks icon above text.
   */
  [class*="RightColumn-sc-e6b451b4-6"] [class*="List-sc-a9b00ddd-0"] {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--spacing-spacing-200, 1rem) !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  [class*="RightColumn-sc-e6b451b4-6"] [class*="ListItem-sc-a9b00ddd-4"] {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: var(--spacing-spacing-100, 0.75rem) !important;
    list-style: none !important;
    margin: 0 !important;
  }

  [class*="RightColumn-sc-e6b451b4-6"] [class*="DesktopContainer-sc-a9b00ddd-2"] {
    display: block !important;
    flex: 0 0 auto !important;
  }

  [class*="RightColumn-sc-e6b451b4-6"] [class*="MobileContainer-sc-a9b00ddd-1"] {
    display: none !important;
  }

  [class*="RightColumn-sc-e6b451b4-6"] [class*="Content-sc-a9b00ddd-5"] {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  [class*="RightColumn-sc-e6b451b4-6"] [class*="Content-sc-a9b00ddd-5"] p {
    margin: 0 !important;
  }

  [class*="RightColumn-sc-e6b451b4-6"] [class*="Content-sc-a9b00ddd-5"] em {
    color: var(--color-text-accent-small, #c41e3a);
    font-style: normal;
    font-weight: var(--font-weight-semibold, 600);
  }

  /* Hero image row: three value props below lifestyle photos */
  [class*="BottomWrapper-sc-e6b451b4-9"] [class*="List-sc-a9b00ddd-0"] {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: var(--spacing-spacing-300, 2rem) !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }

  [class*="BottomWrapper-sc-e6b451b4-9"] [class*="ListItem-sc-a9b00ddd-4"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: var(--spacing-spacing-100, 0.75rem) !important;
    list-style: none !important;
    margin: 0 !important;
  }

  [class*="BottomWrapper-sc-e6b451b4-9"] [class*="DesktopContainer-sc-a9b00ddd-2"] {
    display: block !important;
    flex: 0 0 auto !important;
  }

  [class*="BottomWrapper-sc-e6b451b4-9"] [class*="MobileContainer-sc-a9b00ddd-1"] {
    display: none !important;
  }

  [class*="BottomWrapper-sc-e6b451b4-9"] [class*="Content-sc-a9b00ddd-5"] p {
    margin: 0 !important;
  }

  [class*="ButtonsWrapper-sc-e6b451b4-2"] {
    grid-column: span 7 !important;
    grid-row: 2 !important;
    min-width: 0 !important;
  }

  [class*="MediaWrapper-sc-e6b451b4-8"] {
    display: flex !important;
    flex-direction: row !important;
    width: 100% !important;
    max-width: min(89.625rem, 100vw) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  [class*="MediaWrapper-sc-e6b451b4-8"] > picture,
  [class*="MediaWrapper-sc-e6b451b4-8"] > * {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  [class*="MediaWrapper-sc-e6b451b4-8"] picture,
  [class*="MediaWrapper-sc-e6b451b4-8"] img,
  [class*="MediaWrapper-sc-e6b451b4-8"] video {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
  }

  /* Weight-loss calculator / 50-50 module rows (sc-8ac48a84) */
  [class*="GridWithVerticalGap-sc-8ac48a84-1"] {
    display: grid !important;
    grid-template-columns: repeat(var(--grid-columns, 12), minmax(0, 1fr)) !important;
    row-gap: var(--rowGap, 2rem) !important;
  }

  [class*="GridWithVerticalGap-sc-8ac48a84-1"] > [class*="StyledGridColumn-sc-8ac48a84-2"]:first-child {
    grid-column: span 6 !important;
    min-width: 0 !important;
  }

  [class*="GridWithVerticalGap-sc-8ac48a84-1"] > [class*="StyledGridColumn-sc-8ac48a84-2"]:last-child {
    grid-column: span 6 !important;
    min-width: 0 !important;
  }

  /* Weight-loss calculator decorative stat image (20% graphic) */
  [class*="GridWithVerticalGap-sc-8ac48a84-1"] [class*="BackgroundWrapper-sc-d84e1f50"],
  [class*="GridWithVerticalGap-sc-8ac48a84-1"] [class*="Centered-sc-492652f9"] {
    overflow: hidden !important;
    max-width: 100% !important;
  }

  [class*="GridWithVerticalGap-sc-8ac48a84-1"] picture,
  [class*="GridWithVerticalGap-sc-8ac48a84-1"] img[class*="ImageElement-sc-"] {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

  /*
   * How-it-works timeline (sc-cf926a80): gLcVRp column spans missing from baked-styles.
   * Without spans each Column occupies a single ~90px track → vertical letter-stacked headlines.
   */
  [class*="Wrapper-sc-cf926a80-18"] [class*="Grid-sc-5c7aef7b-1"] > [class*="Column-sc-5c7aef7b-0"]:nth-child(1) {
    grid-column: span 1 !important;
    min-width: 0 !important;
  }

  [class*="Wrapper-sc-cf926a80-18"] [class*="Grid-sc-5c7aef7b-1"] > [class*="Column-sc-5c7aef7b-0"]:nth-child(2) {
    grid-column: span 3 !important;
    min-width: 0 !important;
  }

  [class*="Wrapper-sc-cf926a80-18"] [class*="Grid-sc-5c7aef7b-1"] > [class*="Column-sc-5c7aef7b-0"]:nth-child(3) {
    grid-column: span 8 !important;
    min-width: 0 !important;
  }

  [class*="HeadlinesWrapper-sc-cf926a80-19"] [class*="Headline-sc-cf926a80-20"] {
    white-space: normal !important;
    max-width: 100% !important;
  }

  /* Section headers with prefix spacer + content (common on category pages) */
  [class*="Grid-sc-5c7aef7b-1"] > [class*="Column-sc-5c7aef7b-0"]:only-child {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 959px) {
  [class*="RightColumn-sc-e6b451b4-6"] [class*="ListItem-sc-a9b00ddd-4"],
  [class*="BottomWrapper-sc-e6b451b4-9"] [class*="ListItem-sc-a9b00ddd-4"] {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: var(--spacing-spacing-100, 0.75rem) !important;
    list-style: none !important;
  }

  [class*="RightColumn-sc-e6b451b4-6"] [class*="DesktopContainer-sc-a9b00ddd-2"],
  [class*="BottomWrapper-sc-e6b451b4-9"] [class*="DesktopContainer-sc-a9b00ddd-2"] {
    display: none !important;
  }

  [class*="RightColumn-sc-e6b451b4-6"] [class*="MobileContainer-sc-a9b00ddd-1"],
  [class*="BottomWrapper-sc-e6b451b4-9"] [class*="MobileContainer-sc-a9b00ddd-1"] {
    display: block !important;
    flex: 0 0 auto !important;
  }

  [class*="BottomWrapper-sc-e6b451b4-9"] [class*="List-sc-a9b00ddd-0"] {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--spacing-spacing-200, 1rem) !important;
  }
}

/* Product / quote carousels on category pages — never collapse all slides (all viewports) */
html:not([data-ro-home="1"]) [class*="CarouselWrapper-sc-8e39e1bf-6"]:not(:has(video[class*="BackgroundMediaContainer-sc-42351d62"])) [class*="SlideWrapper-sc-c23519fd-2"] {
  display: flex !important;
}

/* Subpage horizontal overflow: carousel / hero images */
html:not([data-ro-home="1"]) #main {
  overflow-x: clip;
}

html:not([data-ro-home="1"]) #main [class*="CarouselWrapper-sc-"] [class*="SlideWrapper-sc-"],
html:not([data-ro-home="1"]) #main [class*="CarouselWrapper-sc-"] .carousel-slider {
  max-width: 100% !important;
}

html:not([data-ro-home="1"]) #main [class*="CarouselWrapper-sc-"] img[class*="ImageElement-sc-"] {
  max-width: 100% !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}

html:not([data-ro-home="1"]) #main [class*="Avatar-sc-42351d62"],
html:not([data-ro-home="1"]) #main [class*="Avatar-sc-42351d62"] picture {
  width: 5rem !important;
  height: 5rem !important;
  min-width: 5rem !important;
  min-height: 5rem !important;
  max-width: 5rem !important;
  max-height: 5rem !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 50% !important;
  overflow: hidden !important;
}

html:not([data-ro-home="1"]) #main [class*="Avatar-sc-42351d62"] img[class*="ImageElement-sc-"] {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  border-radius: 50% !important;
}

/* Category hero full-bleed media row */
html:not([data-ro-home="1"]) #main [class*="MediaBackground-sc-e6b451b4-7"] img[class*="ImageElement-sc-"],
html:not([data-ro-home="1"]) #main [class*="MediaWrapper-sc-e6b451b4-8"] img[class*="ImageElement-sc-"] {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}

/*
 * Weight-loss / category subpages — additional grid + section fixes (componentId-stable).
 */

/* Sticky in-page nav: keep jump targets visible below header + subnav */
html:not([data-ro-home="1"]) [class*="JumpPoint-sc-ffa56ecc-1"],
html:not([data-ro-home="1"]) [id="meds"],
html:not([data-ro-home="1"]) [id="how-it-works"],
html:not([data-ro-home="1"]) [id="pricing"],
html:not([data-ro-home="1"]) [id="safety"] {
  scroll-margin-top: calc(var(--top-navigation-desktop-height, 4rem) + 3.5rem) !important;
}

@media (min-width: 960px) {
  /* Hero dual CTA — undo sticky placeholder that hides "Start your journey" off-screen */
  [class*="ButtonsInnerWrapper-sc-e6b451b4-3"] {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
    align-items: center !important;
  }

  [class*="ButtonsInnerWrapper-sc-e6b451b4-3"] [class*="SpaceHolder-sc-12505fb6"] {
    display: none !important;
    height: 0 !important;
  }

  [class*="ButtonsInnerWrapper-sc-e6b451b4-3"] [class*="Container-sc-12505fb6-0"] {
    transform: none !important;
    position: static !important;
    height: auto !important;
  }

  /* Pricing highlight (Hannah) — AssetsColumn lg span 6 missing from baked-styles */
  [class*="Wrapper-sc-1f219d21-1"] [class*="Grid-sc-5c7aef7b-1"] > [class*="AssetsColumn-sc-1f219d21-2"] {
    display: block !important;
    grid-column: span 6 !important;
    min-width: 0 !important;
  }

  [class*="Wrapper-sc-1f219d21-1"] [class*="Grid-sc-5c7aef7b-1"] > [class*="ContentColumn-sc-1f219d21-3"] {
    grid-column: span 6 !important;
    min-width: 0 !important;
  }

  [class*="AssetsColumn-sc-1f219d21-2"] picture,
  [class*="AssetsColumn-sc-1f219d21-2"] img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }

  /* Meet our expert (sc-f95e50f) — ContentColumn span 6 + ExpertMedia span 5 */
  [class*="Grid-sc-5c7aef7b-1"]:has([class*="ContentColumn-sc-f95e50f-0"]) > [class*="ExpertMediaColumn-sc-f95e50f-1"]:empty {
    display: none !important;
  }

  [class*="Grid-sc-5c7aef7b-1"]:has([class*="ContentColumn-sc-f95e50f-0"]) > [class*="ExpertMediaColumn-sc-f95e50f-1"]:not(:empty) {
    grid-column: 2 / span 5 !important;
    order: 1 !important;
    min-width: 0 !important;
    display: flex !important;
    justify-content: center !important;
  }

  [class*="Grid-sc-5c7aef7b-1"]:has([class*="ContentColumn-sc-f95e50f-0"]) > [class*="ContentColumn-sc-f95e50f-0"] {
    grid-column: 7 / span 6 !important;
    order: 2 !important;
    min-width: 0 !important;
  }

  [class*="ExpertMediaColumn-sc-f95e50f-1"] video,
  [class*="ExpertMedia-sc-f95e50f-2"] {
    width: 100% !important;
    max-width: 17.625rem !important;
    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
    border-radius: 0.25rem !important;
  }

  [class*="Text-sc-f95e50f-4"] {
    max-width: 100% !important;
  }

  /* Real members quote carousel — auto height slides */
  html:not([data-ro-home="1"]) [class*="CarouselWrapper-sc-8e39e1bf-6"]:has([class*="ContentMediaContainer-sc-42351d62"]) {
    min-height: auto !important;
  }

  html:not([data-ro-home="1"]) [class*="CarouselWrapper-sc-8e39e1bf-6"]:has([class*="ContentMediaContainer-sc-42351d62"]) [class*="StyledCarousel-sc-"],
  html:not([data-ro-home="1"]) [class*="CarouselWrapper-sc-8e39e1bf-6"]:has([class*="ContentMediaContainer-sc-42351d62"]) [class*="Wrapper-sc-c23519fd-0"] {
    min-height: auto !important;
    align-items: stretch !important;
  }

  /*
   * Cards-slider section headers (sc-8e39e1bf / sc-952e6fd8): h2 col span 7 + intro span 4.
   * bBKVkb hash missing from baked-styles → 67px vertical title stack.
   */
  [class*="Grid-sc-5c7aef7b-1"]:has(> [class*="Column-sc-"][class*="gUDIiA"]) > [class*="Column-sc-5c7aef7b-0"]:not([class*="fcKTNa"]):not([class*="gUDIiA"]) {
    grid-column: span 7 !important;
    min-width: 0 !important;
  }

  [class*="Grid-sc-5c7aef7b-1"]:has(> [class*="Column-sc-"][class*="gUDIiA"]) > [class*="fcKTNa"] {
    grid-column: span 1 !important;
  }

  [class*="Grid-sc-5c7aef7b-1"]:has(> [class*="Column-sc-"][class*="gUDIiA"]) > [class*="gUDIiA"] {
    grid-column: span 4 !important;
    min-width: 0 !important;
  }

  /* Video member cards (Hear from SOCO) — circular avatar, not full-width square */
  [class*="Container-sc-42351d62-0"]:has(video[class*="BackgroundMediaContainer-sc-42351d62"]) [class*="Person-sc-42351d62"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: 100% !important;
    padding: 1rem !important;
    box-sizing: border-box !important;
    pointer-events: none !important;
  }

  [class*="Avatar-sc-42351d62"],
  [class*="Avatar-sc-42351d62"] picture {
    width: 5rem !important;
    height: 5rem !important;
    min-width: 5rem !important;
    min-height: 5rem !important;
    max-width: 5rem !important;
    max-height: 5rem !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    display: block !important;
    line-height: 0 !important;
    flex-shrink: 0 !important;
    margin: 0 auto 0.75rem !important;
  }

  [class*="Avatar-sc-42351d62"] img[class*="ImageElement-sc-"] {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    display: block !important;
  }
}

@media (max-width: 959px) {
  [class*="Grid-sc-5c7aef7b-1"]:has([class*="ContentColumn-sc-f95e50f-0"]) > [class*="ExpertMediaColumn-sc-f95e50f-1"]:not(:empty),
  [class*="Grid-sc-5c7aef7b-1"]:has([class*="ContentColumn-sc-f95e50f-0"]) > [class*="ContentColumn-sc-f95e50f-0"] {
    grid-column: 1 / -1 !important;
    order: unset !important;
  }

  [class*="Wrapper-sc-1f219d21-1"] [class*="AssetsColumn-sc-1f219d21-2"] {
    display: block !important;
    grid-column: 1 / -1 !important;
  }
}

/* Homepage promo tiles — Serena-style blue CTAs (no black pills) */
html[data-ro-home="1"] [class*="Wrapper-sc-9ec9a206"] [class*="ButtonWrapper-sc-9ec9a206"] [class*="Inner-sc-b655ccb2"] {
  background: #4f7992 !important;
}

html[data-ro-home="1"] [class*="Wrapper-sc-9ec9a206"] [class*="ButtonWrapper-sc-9ec9a206"]:hover [class*="Inner-sc-b655ccb2"] {
  background: #3d6178 !important;
}

html[data-ro-home="1"] [class*="Wrapper-sc-9ec9a206"] [class*="ButtonWrapper-sc-9ec9a206"] .arrow-right-rest,
html[data-ro-home="1"] [class*="Wrapper-sc-9ec9a206"] [class*="ButtonWrapper-sc-9ec9a206"] .arrow-right-long-line {
  fill: #fff !important;
}
