/* Final lock layer: loaded after final-fixes.css so the latest polish always wins the cascade. */

html body .floating-rail,
html body:not(.is-near-footer) .floating-rail,
body .floating-rail,
body:not(.is-near-footer) .floating-rail {
  display: block !important;
  top: 78px !important;
  right: 24px !important;
  width: 108px !important;
  max-width: 108px !important;
  z-index: 60 !important;
  transform: none !important;
}

/* V162B true EOF mobile service dock alignment. */
@media (max-width: 760px) {
  html body .floating-rail.is-expanded,
  html body .floating-rail:hover,
  html body .floating-rail:focus-within,
  body .floating-rail.is-expanded,
  body .floating-rail:hover,
  body .floating-rail:focus-within {
    left: 16px !important;
    right: 16px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  html body .floating-rail.is-expanded .floating-rail__buttons,
  html body .floating-rail:hover .floating-rail__buttons,
  html body .floating-rail:focus-within .floating-rail__buttons,
  body .floating-rail.is-expanded .floating-rail__buttons,
  body .floating-rail:hover .floating-rail__buttons,
  body .floating-rail:focus-within .floating-rail__buttons {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 14px 72px 14px 14px !important;
  }
}

/* V160 final service dock: replace the vertical color strip with one clean entry and a tidy flyout. */
html body .floating-rail,
html body:not(.is-near-footer) .floating-rail,
body .floating-rail,
body:not(.is-near-footer) .floating-rail {
  position: fixed !important;
  display: block !important;
  top: 50% !important;
  right: clamp(18px, 2vw, 28px) !important;
  bottom: auto !important;
  left: auto !important;
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  height: 72px !important;
  min-height: 72px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: translateY(-50%) !important;
  overflow: visible !important;
  z-index: 120 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

html body .floating-rail::before,
html body .floating-rail::after,
html body .floating-rail__buttons::before,
html body .floating-rail__buttons::after {
  content: none !important;
  display: none !important;
}

html body .floating-rail__buttons,
body .floating-rail__buttons {
  position: relative !important;
  display: block !important;
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  min-height: 72px !important;
  height: 72px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

html body .floating-rail__title,
body .floating-rail__title {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  height: 72px !important;
  min-height: 72px !important;
  max-height: 72px !important;
  padding: 0 12px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 1px solid rgba(86, 183, 157, 0.45) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(238, 251, 247, 0.96)),
    linear-gradient(135deg, rgba(85, 196, 166, 0.2), rgba(67, 144, 206, 0.12)) !important;
  color: #07584b !important;
  -webkit-text-fill-color: #07584b !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-align: center !important;
  white-space: normal !important;
  cursor: pointer !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    0 16px 34px rgba(17, 91, 76, 0.18) !important;
  box-sizing: border-box !important;
  z-index: 3 !important;
}

html body .floating-rail:not(.is-expanded):not(:hover):not(:focus-within) .floating-rail__button,
body .floating-rail:not(.is-expanded):not(:hover):not(:focus-within) .floating-rail__button {
  display: none !important;
}

html body .floating-rail.is-expanded,
html body .floating-rail:hover,
html body .floating-rail:focus-within,
body .floating-rail.is-expanded,
body .floating-rail:hover,
body .floating-rail:focus-within {
  width: 324px !important;
  min-width: 324px !important;
  max-width: calc(100vw - 32px) !important;
  height: auto !important;
  min-height: 0 !important;
  border-radius: 26px !important;
}

html body .floating-rail.is-expanded .floating-rail__buttons,
html body .floating-rail:hover .floating-rail__buttons,
html body .floating-rail:focus-within .floating-rail__buttons,
body .floating-rail.is-expanded .floating-rail__buttons,
body .floating-rail:hover .floating-rail__buttons,
body .floating-rail:focus-within .floating-rail__buttons {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 324px !important;
  min-width: 324px !important;
  max-width: calc(100vw - 32px) !important;
  height: auto !important;
  min-height: 138px !important;
  padding: 18px 88px 18px 18px !important;
  border-radius: 26px !important;
  border: 1px solid rgba(151, 211, 193, 0.62) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 253, 250, 0.98)),
    linear-gradient(135deg, rgba(255, 232, 203, 0.22), rgba(100, 198, 173, 0.14)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    0 22px 52px rgba(17, 91, 76, 0.18) !important;
  box-sizing: border-box !important;
}

html body .floating-rail.is-expanded .floating-rail__title,
html body .floating-rail:hover .floating-rail__title,
html body .floating-rail:focus-within .floating-rail__title,
body .floating-rail.is-expanded .floating-rail__title,
body .floating-rail:hover .floating-rail__title,
body .floating-rail:focus-within .floating-rail__title {
  top: 18px !important;
  right: 18px !important;
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  height: 54px !important;
  min-height: 54px !important;
  max-height: 54px !important;
  padding: 0 8px !important;
  font-size: 12px !important;
}

html body .floating-rail.is-expanded .floating-rail__button,
html body .floating-rail:hover .floating-rail__button,
html body .floating-rail:focus-within .floating-rail__button,
body .floating-rail.is-expanded .floating-rail__button,
body .floating-rail:hover .floating-rail__button,
body .floating-rail:focus-within .floating-rail__button {
  position: relative !important;
  inset: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 13px !important;
  margin: 0 !important;
  border-radius: 14px !important;
  border: 1px solid rgba(142, 207, 188, 0.55) !important;
  background: linear-gradient(180deg, #ffffff, #f6fcfa) !important;
  color: #126458 !important;
  -webkit-text-fill-color: #126458 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95), 0 8px 18px rgba(22, 97, 80, 0.08) !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  box-sizing: border-box !important;
}

html body .floating-rail.is-expanded .floating-rail__button:hover,
html body .floating-rail:hover .floating-rail__button:hover,
html body .floating-rail:focus-within .floating-rail__button:focus-visible,
body .floating-rail.is-expanded .floating-rail__button:hover,
body .floating-rail:hover .floating-rail__button:hover,
body .floating-rail:focus-within .floating-rail__button:focus-visible {
  border-color: rgba(43, 166, 133, 0.72) !important;
  background: linear-gradient(135deg, #25aa8b, #207fb8) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 10px 22px rgba(32, 127, 99, 0.16) !important;
}

html body .floating-rail__button[data-service],
html body .floating-rail__button[data-service="phone"],
html body .floating-rail__button[data-service="wechat"],
html body .floating-rail__button[data-service="miniapp"],
html body .floating-rail__button[data-service="booking"],
html body .floating-rail__button[data-service="xiaohongshu"],
html body .floating-rail__button--top,
body .floating-rail__button[data-service],
body .floating-rail__button--top {
  background: linear-gradient(180deg, #ffffff, #f6fcfa) !important;
}

html body .floating-rail__icon,
body .floating-rail__icon {
  display: none !important;
}

html body .floating-rail__label,
html body .floating-rail__button--top .floating-rail__label,
body .floating-rail__label,
body .floating-rail__button--top .floating-rail__label {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: clip !important;
  text-shadow: none !important;
}

html body .floating-panel,
html body .floating-rail > .floating-panel,
body .floating-panel,
body .floating-rail > .floating-panel {
  right: 344px !important;
  max-width: min(320px, calc(100vw - 380px)) !important;
}

@media (max-width: 760px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail,
  body .floating-rail,
  body:not(.is-near-footer) .floating-rail {
    display: block !important;
    right: 12px !important;
    top: auto !important;
    bottom: 96px !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    transform: none !important;
  }

  html body .floating-rail__buttons,
  body .floating-rail__buttons {
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    min-height: 58px !important;
    height: 58px !important;
  }

  html body .floating-rail__title,
  body .floating-rail__title {
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
    padding: 0 9px !important;
    font-size: 12px !important;
  }

  html body .floating-rail.is-expanded,
  html body .floating-rail:hover,
  html body .floating-rail:focus-within,
  body .floating-rail.is-expanded,
  body .floating-rail:hover,
  body .floating-rail:focus-within {
    width: min(318px, calc(100vw - 24px)) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    height: auto !important;
  }

  html body .floating-rail.is-expanded .floating-rail__buttons,
  html body .floating-rail:hover .floating-rail__buttons,
  html body .floating-rail:focus-within .floating-rail__buttons,
  body .floating-rail.is-expanded .floating-rail__buttons,
  body .floating-rail:hover .floating-rail__buttons,
  body .floating-rail:focus-within .floating-rail__buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: min(318px, calc(100vw - 24px)) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    min-height: 136px !important;
    height: auto !important;
    padding: 14px 76px 14px 14px !important;
    border-radius: 22px !important;
  }

  html body .floating-rail.is-expanded .floating-rail__title,
  html body .floating-rail:hover .floating-rail__title,
  html body .floating-rail:focus-within .floating-rail__title,
  body .floating-rail.is-expanded .floating-rail__title,
  body .floating-rail:hover .floating-rail__title,
  body .floating-rail:focus-within .floating-rail__title {
    top: 14px !important;
    right: 14px !important;
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    font-size: 11px !important;
  }

  html body .floating-rail.is-expanded .floating-rail__button,
  html body .floating-rail:hover .floating-rail__button,
  html body .floating-rail:focus-within .floating-rail__button,
  body .floating-rail.is-expanded .floating-rail__button,
  body .floating-rail:hover .floating-rail__button,
  body .floating-rail:focus-within .floating-rail__button {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding: 0 8px !important;
    border-radius: 13px !important;
  }

  html body .floating-rail__label,
  body .floating-rail__label {
    font-size: 12px !important;
  }

  html body .floating-panel,
  html body .floating-rail > .floating-panel,
  body .floating-panel,
  body .floating-rail > .floating-panel {
    right: 0 !important;
    left: auto !important;
    bottom: calc(100% + 10px) !important;
    top: auto !important;
    width: min(300px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
  }
}

/* V157 tiny header button clearance: avoid 1-2px text clipping in audits. */
html body .header__actions .button,
html body .header__actions a.button {
  min-width: 132px !important;
  max-width: 168px !important;
  padding-left: 22px !important;
  padding-right: 22px !important;
  overflow: visible !important;
}

html body .header__actions .button.button--ghost,
html body .header__actions a.button.button--ghost {
  min-width: 124px !important;
}

@media (max-width: 760px) {
  html body .header__actions .button,
  html body .header__actions a.button {
    min-width: 118px !important;
    max-width: 150px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

/* V158 floating service rail redesign: clean, uniform and non-overlapping. */
html body .floating-rail,
html body:not(.is-near-footer) .floating-rail,
body .floating-rail,
body:not(.is-near-footer) .floating-rail {
  right: clamp(12px, 1.4vw, 24px) !important;
  top: 50% !important;
  bottom: auto !important;
  width: 104px !important;
  min-width: 104px !important;
  max-width: 104px !important;
  padding: 12px 10px !important;
  border-radius: 30px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid rgba(139, 205, 186, 0.58) !important;
  box-shadow: 0 18px 42px rgba(21, 94, 78, 0.18) !important;
  backdrop-filter: blur(14px) !important;
  transform: translateY(-50%) !important;
  overflow: visible !important;
}

html body .floating-rail::before,
html body .floating-rail::after,
html body .floating-rail__buttons::before,
html body .floating-rail__buttons::after {
  content: none !important;
  display: none !important;
}

html body .floating-rail__buttons,
body .floating-rail__buttons {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 9px !important;
  place-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body .floating-rail__title,
body .floating-rail__title {
  display: none !important;
}

html body .floating-rail__button,
html body .floating-rail .floating-rail__buttons .floating-rail__button,
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(1),
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(2),
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(3),
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(4),
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(5),
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(6),
html body .floating-rail .floating-rail__buttons .floating-rail__button--top,
body .floating-rail__button,
body .floating-rail .floating-rail__buttons .floating-rail__button {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 78px !important;
  min-width: 78px !important;
  max-width: 78px !important;
  height: 38px !important;
  min-height: 38px !important;
  max-height: 38px !important;
  padding: 0 10px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.42) !important;
  box-sizing: border-box !important;
  transform: none !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  box-shadow: 0 9px 18px rgba(23, 98, 82, 0.12) !important;
}

html body .floating-rail__button:first-child,
html body .floating-rail__button--top,
body .floating-rail__button:first-child,
body .floating-rail__button--top {
  background: linear-gradient(180deg, #ffffff, #eefaf5) !important;
  color: #07584b !important;
  -webkit-text-fill-color: #07584b !important;
  border-color: rgba(107, 194, 169, 0.55) !important;
}

html body .floating-rail__button[data-service="phone"],
body .floating-rail__button[data-service="phone"] {
  background: linear-gradient(135deg, #ffbd86, #f09a58) !important;
}

html body .floating-rail__button[data-service="wechat"],
body .floating-rail__button[data-service="wechat"] {
  background: linear-gradient(135deg, #35c29f, #1f9d82) !important;
}

html body .floating-rail__button[data-service="miniapp"],
body .floating-rail__button[data-service="miniapp"] {
  background: linear-gradient(135deg, #5ab0df, #368cc9) !important;
}

html body .floating-rail__button[data-service="booking"],
body .floating-rail__button[data-service="booking"] {
  background: linear-gradient(135deg, #8ca7ee, #6d86da) !important;
}

html body .floating-rail__button[data-service="xiaohongshu"],
body .floating-rail__button[data-service="xiaohongshu"] {
  background: linear-gradient(135deg, #f2a1a8, #ea828c) !important;
}

html body .floating-rail__icon,
body .floating-rail__icon {
  display: none !important;
}

html body .floating-rail__label,
html body .floating-rail__button--top .floating-rail__label,
body .floating-rail__label,
body .floating-rail__button--top .floating-rail__label {
  display: block !important;
  max-width: 100% !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}

html body .floating-rail__button:not(:first-child):not(.floating-rail__button--top),
body .floating-rail__button:not(:first-child):not(.floating-rail__button--top) {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

@media (max-width: 760px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail,
  body .floating-rail,
  body:not(.is-near-footer) .floating-rail {
    right: 8px !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    padding: 8px 6px !important;
    border-radius: 24px !important;
  }

  html body .floating-rail__buttons,
  body .floating-rail__buttons {
    gap: 7px !important;
  }

  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button--top,
  body .floating-rail__button,
  body .floating-rail .floating-rail__buttons .floating-rail__button {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding: 0 !important;
    font-size: 0 !important;
  }

  html body .floating-rail__label,
  body .floating-rail__label {
    font-size: 12px !important;
  }
}

/* V162 mobile service dock alignment: keep the expanded panel inside the viewport. */
@media (max-width: 760px) {
  html body .floating-rail.is-expanded,
  html body .floating-rail:hover,
  html body .floating-rail:focus-within,
  body .floating-rail.is-expanded,
  body .floating-rail:hover,
  body .floating-rail:focus-within {
    left: 16px !important;
    right: 16px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  html body .floating-rail.is-expanded .floating-rail__buttons,
  html body .floating-rail:hover .floating-rail__buttons,
  html body .floating-rail:focus-within .floating-rail__buttons,
  body .floating-rail.is-expanded .floating-rail__buttons,
  body .floating-rail:hover .floating-rail__buttons,
  body .floating-rail:focus-within .floating-rail__buttons {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 14px 72px 14px 14px !important;
  }
}

/* V161 service dock polish: equal action cells and a cleaner mobile flyout. */
html body .floating-rail.is-expanded .floating-rail__buttons,
html body .floating-rail:hover .floating-rail__buttons,
html body .floating-rail:focus-within .floating-rail__buttons,
body .floating-rail.is-expanded .floating-rail__buttons,
body .floating-rail:hover .floating-rail__buttons,
body .floating-rail:focus-within .floating-rail__buttons {
  grid-template-columns: repeat(2, minmax(92px, 1fr)) !important;
  align-items: stretch !important;
}

html body .floating-rail.is-expanded .floating-rail__buttons > .floating-rail__button,
html body .floating-rail:hover .floating-rail__buttons > .floating-rail__button,
html body .floating-rail:focus-within .floating-rail__buttons > .floating-rail__button,
html body .floating-rail.is-expanded .floating-rail__buttons > .floating-rail__button:nth-child(n),
html body .floating-rail:hover .floating-rail__buttons > .floating-rail__button:nth-child(n),
html body .floating-rail:focus-within .floating-rail__buttons > .floating-rail__button:nth-child(n),
html body .floating-rail.is-expanded .floating-rail__buttons > .floating-rail__button--top,
html body .floating-rail:hover .floating-rail__buttons > .floating-rail__button--top,
html body .floating-rail:focus-within .floating-rail__buttons > .floating-rail__button--top,
body .floating-rail.is-expanded .floating-rail__buttons > .floating-rail__button,
body .floating-rail:hover .floating-rail__buttons > .floating-rail__button,
body .floating-rail:focus-within .floating-rail__buttons > .floating-rail__button {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  justify-self: stretch !important;
}

@media (max-width: 760px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail,
  body .floating-rail,
  body:not(.is-near-footer) .floating-rail {
    right: 12px !important;
    left: auto !important;
  }

  html body .floating-rail.is-expanded,
  html body .floating-rail:hover,
  html body .floating-rail:focus-within,
  body .floating-rail.is-expanded,
  body .floating-rail:hover,
  body .floating-rail:focus-within {
    right: 12px !important;
    left: auto !important;
    width: min(300px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
  }

  html body .floating-rail.is-expanded .floating-rail__buttons,
  html body .floating-rail:hover .floating-rail__buttons,
  html body .floating-rail:focus-within .floating-rail__buttons,
  body .floating-rail.is-expanded .floating-rail__buttons,
  body .floating-rail:hover .floating-rail__buttons,
  body .floating-rail:focus-within .floating-rail__buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
    width: min(300px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    padding: 14px 72px 14px 14px !important;
  }

  html body .floating-rail.is-expanded .floating-rail__buttons > .floating-rail__button,
  html body .floating-rail:hover .floating-rail__buttons > .floating-rail__button,
  html body .floating-rail:focus-within .floating-rail__buttons > .floating-rail__button,
  html body .floating-rail.is-expanded .floating-rail__buttons > .floating-rail__button:nth-child(n),
  html body .floating-rail:hover .floating-rail__buttons > .floating-rail__button:nth-child(n),
  html body .floating-rail:focus-within .floating-rail__buttons > .floating-rail__button:nth-child(n),
  body .floating-rail.is-expanded .floating-rail__buttons > .floating-rail__button,
  body .floating-rail:hover .floating-rail__buttons > .floating-rail__button,
  body .floating-rail:focus-within .floating-rail__buttons > .floating-rail__button {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    justify-self: stretch !important;
  }
}

/* V159 floating rail final: collapsed service entry with clean expandable actions. */
html body .floating-rail,
html body:not(.is-near-footer) .floating-rail,
body .floating-rail,
body:not(.is-near-footer) .floating-rail {
  top: 50% !important;
  right: clamp(14px, 1.6vw, 24px) !important;
  bottom: auto !important;
  width: 78px !important;
  min-width: 78px !important;
  max-width: 78px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: translateY(-50%) !important;
  overflow: visible !important;
  z-index: 90 !important;
}

html body .floating-rail::before,
html body .floating-rail::after,
html body .floating-rail__buttons::before,
html body .floating-rail__buttons::after {
  content: none !important;
  display: none !important;
}

html body .floating-rail__buttons,
body .floating-rail__buttons {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 8px !important;
  place-items: center !important;
  width: 78px !important;
  min-width: 78px !important;
  max-width: 78px !important;
  padding: 8px !important;
  margin: 0 !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid rgba(123, 201, 179, 0.5) !important;
  box-shadow: 0 16px 34px rgba(20, 92, 78, 0.16) !important;
  box-sizing: border-box !important;
}

html body .floating-rail__title,
body .floating-rail__title {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 62px !important;
  min-width: 62px !important;
  max-width: 62px !important;
  height: 62px !important;
  min-height: 62px !important;
  padding: 0 8px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 1px solid rgba(94, 190, 164, 0.52) !important;
  background: linear-gradient(180deg, #ffffff, #eefbf7) !important;
  color: #07584b !important;
  -webkit-text-fill-color: #07584b !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-align: center !important;
  cursor: pointer !important;
  box-shadow: 0 12px 26px rgba(23, 98, 82, 0.16) !important;
  box-sizing: border-box !important;
}

html body .floating-rail:not(.is-expanded) .floating-rail__button,
body .floating-rail:not(.is-expanded) .floating-rail__button {
  display: none !important;
}

html body .floating-rail.is-expanded,
html body .floating-rail:hover,
html body .floating-rail:focus-within,
body .floating-rail.is-expanded,
body .floating-rail:hover,
body .floating-rail:focus-within {
  width: 92px !important;
  min-width: 92px !important;
  max-width: 92px !important;
}

html body .floating-rail.is-expanded .floating-rail__buttons,
html body .floating-rail:hover .floating-rail__buttons,
html body .floating-rail:focus-within .floating-rail__buttons,
body .floating-rail.is-expanded .floating-rail__buttons,
body .floating-rail:hover .floating-rail__buttons,
body .floating-rail:focus-within .floating-rail__buttons {
  width: 92px !important;
  min-width: 92px !important;
  max-width: 92px !important;
  padding: 10px 8px !important;
  border-radius: 28px !important;
}

html body .floating-rail.is-expanded .floating-rail__title,
html body .floating-rail:hover .floating-rail__title,
html body .floating-rail:focus-within .floating-rail__title,
body .floating-rail.is-expanded .floating-rail__title,
body .floating-rail:hover .floating-rail__title,
body .floating-rail:focus-within .floating-rail__title {
  width: 74px !important;
  min-width: 74px !important;
  max-width: 74px !important;
  height: 42px !important;
  min-height: 42px !important;
  font-size: 13px !important;
}

html body .floating-rail.is-expanded .floating-rail__button,
html body .floating-rail:hover .floating-rail__button,
html body .floating-rail:focus-within .floating-rail__button,
body .floating-rail.is-expanded .floating-rail__button,
body .floating-rail:hover .floating-rail__button,
body .floating-rail:focus-within .floating-rail__button {
  display: inline-flex !important;
}

html body .floating-rail__button,
html body .floating-rail .floating-rail__buttons .floating-rail__button,
html body .floating-rail .floating-rail__buttons .floating-rail__button--top,
body .floating-rail__button,
body .floating-rail .floating-rail__buttons .floating-rail__button {
  align-items: center !important;
  justify-content: center !important;
  width: 74px !important;
  min-width: 74px !important;
  max-width: 74px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  padding: 0 8px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  box-sizing: border-box !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  transform: none !important;
  box-shadow: none !important;
}

html body .floating-rail__icon,
body .floating-rail__icon {
  display: none !important;
}

html body .floating-rail__label,
html body .floating-rail__button--top .floating-rail__label,
body .floating-rail__label,
body .floating-rail__button--top .floating-rail__label {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-align: center !important;
  letter-spacing: 0 !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}

@media (max-width: 760px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail,
  body .floating-rail,
  body:not(.is-near-footer) .floating-rail {
    right: 8px !important;
    width: 54px !important;
    min-width: 54px !important;
    max-width: 54px !important;
  }

  html body .floating-rail__buttons,
  body .floating-rail__buttons {
    width: 54px !important;
    min-width: 54px !important;
    max-width: 54px !important;
    padding: 6px !important;
    border-radius: 22px !important;
  }

  html body .floating-rail__title,
  body .floating-rail__title {
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    font-size: 12px !important;
    padding: 0 5px !important;
  }

  html body .floating-rail.is-expanded,
  html body .floating-rail:hover,
  html body .floating-rail:focus-within,
  body .floating-rail.is-expanded,
  body .floating-rail:hover,
  body .floating-rail:focus-within {
    width: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
  }

  html body .floating-rail.is-expanded .floating-rail__buttons,
  html body .floating-rail:hover .floating-rail__buttons,
  html body .floating-rail:focus-within .floating-rail__buttons,
  body .floating-rail.is-expanded .floating-rail__buttons,
  body .floating-rail:hover .floating-rail__buttons,
  body .floating-rail:focus-within .floating-rail__buttons {
    width: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
  }

  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button--top,
  body .floating-rail__button,
  body .floating-rail .floating-rail__buttons .floating-rail__button {
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    padding: 0 4px !important;
  }

  html body .floating-rail__label,
  body .floating-rail__label {
    font-size: 12px !important;
  }
}

/* V156 final visual alignment: footer grid, floating rail, header actions and media overlays. */
html body .floating-rail,
html body:not(.is-near-footer) .floating-rail {
  width: 108px !important;
  padding: 12px 10px !important;
  border-radius: 34px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(230,249,243,0.92)),
    radial-gradient(circle at 50% 4%, rgba(111, 202, 180, 0.26), transparent 58%) !important;
  border: 1px solid rgba(133, 205, 184, 0.46) !important;
  box-shadow: 0 24px 58px rgba(15, 92, 75, 0.2) !important;
}

html body .floating-rail__buttons {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 12px !important;
  place-items: center !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body .floating-rail__buttons::before,
html body .floating-rail__buttons::after {
  content: none !important;
  display: none !important;
}

html body .floating-rail__button,
html body .floating-rail .floating-rail__buttons .floating-rail__button,
html body .floating-rail__button--top {
  width: 78px !important;
  min-width: 78px !important;
  max-width: 78px !important;
  min-height: 42px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  transform: none !important;
  white-space: nowrap !important;
  overflow: visible !important;
  box-shadow: 0 10px 22px rgba(19, 91, 74, 0.13) !important;
}

html body .floating-rail__button:first-child,
html body .floating-rail__button--top {
  min-height: 50px !important;
  background: linear-gradient(180deg, #ffffff, #edf9f5) !important;
}

html body .floating-rail__icon {
  display: none !important;
}

html body .floating-rail__label,
html body .floating-rail__button--top .floating-rail__label {
  display: inline !important;
  max-width: none !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

html body .header__actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 14px !important;
  flex-wrap: nowrap !important;
  min-width: 0 !important;
}

html body .header__actions .button,
html body .header__actions a.button {
  min-width: 112px !important;
  max-width: 142px !important;
  min-height: 44px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

html body .topbar__actions,
html body .topbar .container > div:last-child {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 14px !important;
  flex-wrap: nowrap !important;
}

html body .footer {
  padding-top: clamp(78px, 7vw, 112px) !important;
  padding-bottom: clamp(36px, 5vw, 72px) !important;
}

html body .footer__layout {
  display: grid !important;
  grid-template-columns: minmax(430px, 0.88fr) minmax(620px, 1.12fr) !important;
  gap: clamp(42px, 5vw, 70px) !important;
  align-items: stretch !important;
  max-width: 1280px !important;
}

html body .footer__brand {
  align-self: stretch !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 386px !important;
  margin: 0 !important;
  padding: 30px !important;
  border-radius: 28px !important;
  background:
    linear-gradient(145deg, rgba(255,255,255,0.18), rgba(255,255,255,0.08)),
    rgba(13, 102, 87, 0.52) !important;
  border: 1px solid rgba(211, 244, 235, 0.28) !important;
  box-shadow: 0 24px 58px rgba(0, 43, 37, 0.2) !important;
}

html body .footer__contacts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(280px, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
  margin: 0 !important;
}

html body .footer__contact-card,
html body .footer__contact-card.footer__qr {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  min-height: 174px !important;
  padding: 24px !important;
  border-radius: 22px !important;
  background:
    linear-gradient(145deg, rgba(255,255,255,0.16), rgba(255,255,255,0.07)),
    rgba(33, 112, 96, 0.52) !important;
  border: 1px solid rgba(211, 244, 235, 0.26) !important;
  box-shadow: 0 20px 44px rgba(0, 43, 37, 0.16) !important;
}

html body .footer__contact-card:nth-child(5) {
  grid-column: 1 / -1 !important;
  min-height: 150px !important;
}

html body .footer__contact-card:nth-child(5) ul {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-top: 18px !important;
}

html body .footer__contact-card:nth-child(5) li {
  min-height: 74px !important;
  display: flex !important;
  align-items: center !important;
  padding: 16px !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
}

html body .footer__qr {
  display: grid !important;
  grid-template-columns: 92px minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: center !important;
}

html body .footer__qr-box {
  width: 92px !important;
  height: 92px !important;
  min-width: 92px !important;
  border-radius: 20px !important;
}

html body .footer__note {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 28px !important;
  align-items: center !important;
  max-width: 1120px !important;
  margin-top: 28px !important;
  padding: 22px 28px !important;
  border-radius: 18px !important;
}

html body .footer__note p {
  margin: 0 !important;
  line-height: 1.8 !important;
}

html body .footer__note p:last-child {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  min-width: 360px !important;
}

html body .footer__note a {
  white-space: nowrap !important;
}

html body .section-visual__content,
html body:has(.page-hero__panel) .section-visual__content,
html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual__content {
  left: 24px !important;
  right: 24px !important;
  bottom: 24px !important;
  width: auto !important;
  max-height: none !important;
  padding: 22px 26px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, rgba(18, 82, 72, 0.88), rgba(54, 103, 92, 0.76)) !important;
  box-shadow: 0 18px 36px rgba(0, 45, 39, 0.2) !important;
  overflow: visible !important;
}

html body .section-visual__content h3,
html body:has(.page-hero__panel) .section-visual__content h3,
html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual__content h3 {
  max-width: 15em !important;
  margin: 0 !important;
  font-size: clamp(24px, 2vw, 30px) !important;
  line-height: 1.24 !important;
  letter-spacing: 0 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

html body .section-visual__content p,
html body:has(.page-hero__panel) .section-visual__content p,
html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual__content p {
  margin-top: 10px !important;
  font-size: 14px !important;
  line-height: 1.72 !important;
  color: rgba(255,255,255,0.9) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.9) !important;
}

@media (max-width: 1180px) {
  html body .footer__layout {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body .footer__brand {
    min-height: auto !important;
  }
}

@media (max-width: 760px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail {
    width: auto !important;
    padding: 8px !important;
  }

  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button,
  html body .floating-rail__button--top {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
  }

  html body .footer__contacts,
  html body .footer__contact-card:nth-child(5) ul,
  html body .footer__note {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body .footer__qr {
    grid-template-columns: 82px minmax(0, 1fr) !important;
  }

  html body .footer__note p:last-child {
    justify-content: flex-start !important;
    min-width: 0 !important;
  }

  html body .section-visual__content,
  html body:has(.page-hero__panel) .section-visual__content,
  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual__content {
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
    padding: 16px !important;
  }

  html body .section-visual__content h3,
  html body:has(.page-hero__panel) .section-visual__content h3,
  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual__content h3 {
    max-width: 100% !important;
    font-size: 22px !important;
  }
}

/* V150 mobile search absolute submit: avoid grid-era clipping on narrow screens. */
@media (max-width: 760px) {
  html body .section-body .site-search,
  html body main .site-search,
  html body:has(.page-hero__panel) main .site-search {
    position: relative !important;
    display: block !important;
    width: calc(100vw - 48px) !important;
    max-width: calc(100vw - 48px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 7px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .site-search input[type="search"] {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding-left: 12px !important;
    padding-right: 74px !important;
    box-sizing: border-box !important;
  }

  html body .site-search button,
  html body .site-search .button {
    position: absolute !important;
    top: 7px !important;
    right: 7px !important;
    bottom: 7px !important;
    left: auto !important;
    z-index: 5 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 64px !important;
    max-width: 64px !important;
    min-width: 64px !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-indent: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #28b38f, #2f8bd9) !important;
  }
}

/* V149 mobile search submit cleanup: use the real button label instead of layered pseudo content. */
@media (max-width: 760px) {
  html body .site-search button,
  html body .site-search .button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 64px !important;
    max-width: 64px !important;
    min-width: 64px !important;
    min-height: 42px !important;
    padding: 0 !important;
    border-radius: 13px !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-indent: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #28b38f, #2f8bd9) !important;
  }

  html body .site-search button::before,
  html body .site-search button::after,
  html body .site-search .button::before,
  html body .site-search .button::after {
    content: none !important;
    display: none !important;
  }
}

/* V160B service dock EOF lock: clean single entry with a compact flyout. */
html body .floating-rail,
html body:not(.is-near-footer) .floating-rail,
body .floating-rail,
body:not(.is-near-footer) .floating-rail {
  position: fixed !important;
  top: 50% !important;
  right: clamp(18px, 2vw, 28px) !important;
  bottom: auto !important;
  left: auto !important;
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  height: 72px !important;
  min-height: 72px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: translateY(-50%) !important;
  overflow: visible !important;
  z-index: 120 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

html body .floating-rail::before,
html body .floating-rail::after,
html body .floating-rail__buttons::before,
html body .floating-rail__buttons::after {
  content: none !important;
  display: none !important;
}

html body .floating-rail__buttons,
body .floating-rail__buttons {
  position: relative !important;
  display: block !important;
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  height: 72px !important;
  min-height: 72px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

html body .floating-rail__title,
body .floating-rail__title {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  height: 72px !important;
  min-height: 72px !important;
  max-height: 72px !important;
  padding: 0 12px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 1px solid rgba(86, 183, 157, 0.45) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(238, 251, 247, 0.96)) !important;
  color: #07584b !important;
  -webkit-text-fill-color: #07584b !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-align: center !important;
  white-space: normal !important;
  cursor: pointer !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95), 0 16px 34px rgba(17, 91, 76, 0.18) !important;
  box-sizing: border-box !important;
  z-index: 3 !important;
}

html body .floating-rail:not(.is-expanded):not(:hover):not(:focus-within) .floating-rail__button,
body .floating-rail:not(.is-expanded):not(:hover):not(:focus-within) .floating-rail__button {
  display: none !important;
}

html body .floating-rail.is-expanded,
html body .floating-rail:hover,
html body .floating-rail:focus-within,
body .floating-rail.is-expanded,
body .floating-rail:hover,
body .floating-rail:focus-within {
  width: 324px !important;
  min-width: 324px !important;
  max-width: calc(100vw - 32px) !important;
  height: auto !important;
  min-height: 0 !important;
  border-radius: 26px !important;
}

html body .floating-rail.is-expanded .floating-rail__buttons,
html body .floating-rail:hover .floating-rail__buttons,
html body .floating-rail:focus-within .floating-rail__buttons,
body .floating-rail.is-expanded .floating-rail__buttons,
body .floating-rail:hover .floating-rail__buttons,
body .floating-rail:focus-within .floating-rail__buttons {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 324px !important;
  min-width: 324px !important;
  max-width: calc(100vw - 32px) !important;
  height: auto !important;
  min-height: 138px !important;
  padding: 18px 88px 18px 18px !important;
  border-radius: 26px !important;
  border: 1px solid rgba(151, 211, 193, 0.62) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 253, 250, 0.98)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95), 0 22px 52px rgba(17, 91, 76, 0.18) !important;
  box-sizing: border-box !important;
}

html body .floating-rail.is-expanded .floating-rail__title,
html body .floating-rail:hover .floating-rail__title,
html body .floating-rail:focus-within .floating-rail__title,
body .floating-rail.is-expanded .floating-rail__title,
body .floating-rail:hover .floating-rail__title,
body .floating-rail:focus-within .floating-rail__title {
  top: 18px !important;
  right: 18px !important;
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  height: 54px !important;
  min-height: 54px !important;
  max-height: 54px !important;
  padding: 0 8px !important;
  font-size: 12px !important;
}

html body .floating-rail.is-expanded .floating-rail__button,
html body .floating-rail:hover .floating-rail__button,
html body .floating-rail:focus-within .floating-rail__button,
body .floating-rail.is-expanded .floating-rail__button,
body .floating-rail:hover .floating-rail__button,
body .floating-rail:focus-within .floating-rail__button {
  position: relative !important;
  inset: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 13px !important;
  margin: 0 !important;
  border-radius: 14px !important;
  border: 1px solid rgba(142, 207, 188, 0.55) !important;
  background: linear-gradient(180deg, #ffffff, #f6fcfa) !important;
  color: #126458 !important;
  -webkit-text-fill-color: #126458 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95), 0 8px 18px rgba(22, 97, 80, 0.08) !important;
  transform: none !important;
  box-sizing: border-box !important;
}

html body .floating-rail.is-expanded .floating-rail__button:hover,
html body .floating-rail:hover .floating-rail__button:hover,
html body .floating-rail:focus-within .floating-rail__button:focus-visible,
body .floating-rail.is-expanded .floating-rail__button:hover,
body .floating-rail:hover .floating-rail__button:hover,
body .floating-rail:focus-within .floating-rail__button:focus-visible {
  border-color: rgba(43, 166, 133, 0.72) !important;
  background: linear-gradient(135deg, #25aa8b, #207fb8) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 10px 22px rgba(32, 127, 99, 0.16) !important;
}

html body .floating-rail__button[data-service],
html body .floating-rail__button--top,
body .floating-rail__button[data-service],
body .floating-rail__button--top {
  background: linear-gradient(180deg, #ffffff, #f6fcfa) !important;
}

html body .floating-rail__icon,
body .floating-rail__icon {
  display: none !important;
}

html body .floating-rail__label,
html body .floating-rail__button--top .floating-rail__label,
body .floating-rail__label,
body .floating-rail__button--top .floating-rail__label {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-shadow: none !important;
}

@media (max-width: 760px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail,
  body .floating-rail,
  body:not(.is-near-footer) .floating-rail {
    right: 12px !important;
    top: auto !important;
    bottom: 96px !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    transform: none !important;
  }

  html body .floating-rail__buttons,
  body .floating-rail__buttons,
  html body .floating-rail__title,
  body .floating-rail__title {
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
  }

  html body .floating-rail__title,
  body .floating-rail__title {
    padding: 0 9px !important;
    font-size: 12px !important;
  }

  html body .floating-rail.is-expanded,
  html body .floating-rail:hover,
  html body .floating-rail:focus-within,
  body .floating-rail.is-expanded,
  body .floating-rail:hover,
  body .floating-rail:focus-within {
    width: min(318px, calc(100vw - 24px)) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    height: auto !important;
  }

  html body .floating-rail.is-expanded .floating-rail__buttons,
  html body .floating-rail:hover .floating-rail__buttons,
  html body .floating-rail:focus-within .floating-rail__buttons,
  body .floating-rail.is-expanded .floating-rail__buttons,
  body .floating-rail:hover .floating-rail__buttons,
  body .floating-rail:focus-within .floating-rail__buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: min(318px, calc(100vw - 24px)) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    min-height: 136px !important;
    height: auto !important;
    padding: 14px 76px 14px 14px !important;
    border-radius: 22px !important;
  }

  html body .floating-rail.is-expanded .floating-rail__title,
  html body .floating-rail:hover .floating-rail__title,
  html body .floating-rail:focus-within .floating-rail__title,
  body .floating-rail.is-expanded .floating-rail__title,
  body .floating-rail:hover .floating-rail__title,
  body .floating-rail:focus-within .floating-rail__title {
    top: 14px !important;
    right: 14px !important;
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    font-size: 11px !important;
  }

  html body .floating-rail.is-expanded .floating-rail__button,
  html body .floating-rail:hover .floating-rail__button,
  html body .floating-rail:focus-within .floating-rail__button,
  body .floating-rail.is-expanded .floating-rail__button,
  body .floating-rail:hover .floating-rail__button,
  body .floating-rail:focus-within .floating-rail__button {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding: 0 8px !important;
    border-radius: 13px !important;
  }

  html body .floating-rail__label,
  body .floating-rail__label {
    font-size: 12px !important;
  }
}

/* V152 focused visual repair: fix crowded rail, hero actions, footer glass cards and knowledge topic columns. */
html body .floating-rail {
  right: clamp(14px, 1.6vw, 28px) !important;
  width: 92px !important;
  padding: 10px !important;
  border-radius: 30px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.94), rgba(233,250,245,0.9)),
    radial-gradient(circle at 50% 0%, rgba(121,204,177,0.22), transparent 62%) !important;
  border: 1px solid rgba(126, 190, 173, 0.42) !important;
  box-shadow: 0 20px 54px rgba(22, 96, 81, 0.2) !important;
}

html body .floating-rail__buttons {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 10px !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

html body .floating-rail__button,
html body .floating-rail .floating-rail__buttons .floating-rail__button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  min-height: 42px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  overflow: visible !important;
  transform: none !important;
  box-shadow: 0 12px 24px rgba(36, 109, 92, 0.14) !important;
}

html body .floating-rail__button:nth-child(1),
html body .floating-rail__button--top {
  min-height: 48px !important;
  background: linear-gradient(180deg, #ffffff, #e9faf3) !important;
  color: #07584b !important;
  -webkit-text-fill-color: #07584b !important;
}

html body .floating-rail__icon {
  display: none !important;
}

html body .floating-rail__label {
  display: inline !important;
  max-width: none !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}

html body.home-polish .hero__actions {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(150px, 1fr)) !important;
  gap: 16px !important;
  max-width: 790px !important;
  margin-top: 30px !important;
}

html body.home-polish .hero__actions .button,
html body.home-polish .hero__actions a.button {
  min-height: 54px !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  box-shadow: 0 15px 32px rgba(26, 105, 89, 0.15) !important;
}

html body.home-polish .hero__actions .button:first-child {
  background: linear-gradient(135deg, #65d772, #25af8d) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

html body.home-polish .hero__actions .button:nth-child(2) {
  background: linear-gradient(135deg, #2f8bd9, #28b38f) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

html body.home-polish .hero__actions .button:nth-child(3) {
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,252,250,0.92)) !important;
  color: #07584b !important;
  -webkit-text-fill-color: #07584b !important;
  border: 1px solid rgba(35, 130, 112, 0.22) !important;
}

html body.home-polish .hero__actions .button:nth-child(4) {
  background: linear-gradient(135deg, #ffbd78, #f28b40) !important;
  color: #073d36 !important;
  -webkit-text-fill-color: #073d36 !important;
}

html body.home-polish .hero__actions .button::before,
html body.home-polish .hero__actions a.button::before {
  flex: 0 0 auto !important;
}

html body .footer {
  overflow: hidden !important;
}

html body .footer__layout {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.82fr) minmax(560px, 1.18fr) !important;
  gap: clamp(28px, 4vw, 58px) !important;
  align-items: start !important;
}

html body .footer__brand {
  align-self: start !important;
  margin: 0 !important;
  transform: none !important;
}

html body .footer__contacts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(230px, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
  margin: 0 !important;
}

html body .footer__contact-card,
html body .footer__contact-card.footer__qr {
  min-width: 0 !important;
  min-height: 168px !important;
  padding: 22px !important;
  border-radius: 24px !important;
  background:
    linear-gradient(145deg, rgba(255,255,255,0.18), rgba(255,255,255,0.08)),
    rgba(9, 91, 78, 0.42) !important;
  border: 1px solid rgba(208, 244, 233, 0.28) !important;
  box-shadow: 0 18px 46px rgba(3, 45, 39, 0.18) !important;
  overflow: hidden !important;
}

html body .footer__contact-card:nth-child(5) {
  grid-column: 1 / -1 !important;
  min-height: auto !important;
}

html body .footer__contact-card h3,
html body .footer__contact-card p,
html body .footer__contact-card li {
  color: rgba(255,255,255,0.94) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.94) !important;
  overflow-wrap: anywhere !important;
}

html body .section-visual {
  overflow: hidden !important;
}

html body .section-visual > img,
html body .section-visual img {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
}

html body #directory .section-visual {
  max-width: 520px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  border-radius: 24px !important;
  background: #edf8f3 !important;
  box-shadow: 0 26px 56px rgba(25, 98, 83, 0.14) !important;
}

html body #directory .section-visual img {
  height: 330px !important;
}

html body #directory .section-visual__content {
  left: 22px !important;
  right: 22px !important;
  bottom: 22px !important;
  width: auto !important;
  padding: 22px 24px !important;
  border-radius: 20px !important;
  background:
    linear-gradient(135deg, rgba(14, 91, 77, 0.92), rgba(31, 111, 95, 0.84)),
    rgba(13, 78, 69, 0.88) !important;
  box-shadow: 0 16px 32px rgba(3, 50, 43, 0.2) !important;
}

html body #directory .section-visual__content h3 {
  max-width: 13em !important;
  font-size: clamp(24px, 2.1vw, 31px) !important;
  line-height: 1.22 !important;
  letter-spacing: 0 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

html body #directory .section-visual__content p {
  margin-top: 10px !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  color: rgba(255,255,255,0.9) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.9) !important;
}

html body #topics .section-split {
  display: grid !important;
  grid-template-columns: minmax(520px, 0.98fr) minmax(420px, 1.02fr) !important;
  gap: clamp(38px, 5vw, 78px) !important;
  align-items: start !important;
}

html body #topics .section-body {
  width: 100% !important;
  max-width: none !important;
}

html body #topics .page-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(150px, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: none !important;
}

html body #topics .info-card {
  min-width: 0 !important;
  min-height: 224px !important;
  padding: 24px 20px !important;
  border-radius: 24px !important;
  background:
    linear-gradient(150deg, rgba(255,255,255,0.96), rgba(242,252,248,0.9)),
    radial-gradient(circle at 10% 0%, rgba(255, 190, 122, 0.22), transparent 54%) !important;
  border: 1px solid rgba(122, 190, 172, 0.32) !important;
  box-shadow: 0 20px 42px rgba(24, 96, 80, 0.12) !important;
}

html body #topics .info-card h3 {
  max-width: 5em !important;
  font-size: 21px !important;
  line-height: 1.28 !important;
  letter-spacing: 0 !important;
  color: #07584b !important;
  -webkit-text-fill-color: #07584b !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

html body #topics .info-card p {
  margin-top: 16px !important;
  font-size: 14px !important;
  line-height: 1.82 !important;
  color: #315e56 !important;
  -webkit-text-fill-color: #315e56 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

html body #topics .section-aside {
  min-width: 0 !important;
}

html body #topics .section-aside .section-visual {
  border-radius: 24px !important;
  box-shadow: 0 24px 56px rgba(28, 91, 78, 0.14) !important;
}

html body #topics .section-aside .section-visual img {
  height: 420px !important;
  object-position: center center !important;
}

html body #topics .section-panel {
  border-radius: 20px !important;
  box-shadow: 0 18px 38px rgba(28, 91, 78, 0.09) !important;
}

@media (max-width: 1180px) {
  html body.home-polish .hero__actions {
    grid-template-columns: repeat(2, minmax(170px, 1fr)) !important;
    max-width: 560px !important;
  }

  html body .footer__layout,
  html body #topics .section-split {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body #topics .page-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  html body .floating-rail {
    right: 10px !important;
    width: auto !important;
    padding: 8px !important;
    border-radius: 24px !important;
  }

  html body .floating-rail__buttons {
    gap: 8px !important;
  }

  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button {
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
    font-size: 0 !important;
  }

  html body .floating-rail__button:nth-child(1)::after { content: "服" !important; }
  html body .floating-rail__button:nth-child(2)::after { content: "热" !important; }
  html body .floating-rail__button:nth-child(3)::after { content: "微" !important; }
  html body .floating-rail__button:nth-child(4)::after { content: "程" !important; }
  html body .floating-rail__button:nth-child(5)::after { content: "订" !important; }
  html body .floating-rail__button:nth-child(6)::after { content: "红" !important; }
  html body .floating-rail__button--top::after { content: "顶" !important; }

  html body .floating-rail__button::after {
    display: inline !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
  }

  html body .floating-rail__label {
    display: none !important;
  }

  html body.home-polish .hero__actions {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    justify-content: start !important;
    justify-items: stretch !important;
  }

  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a.button {
    min-height: 48px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 0 14px !important;
    font-size: 14px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    justify-self: stretch !important;
  }

  html body.home-polish .hero__actions .button::before,
  html body.home-polish .hero__actions .button::after,
  html body.home-polish .hero__actions a.button::before,
  html body.home-polish .hero__actions a.button::after {
    content: none !important;
    display: none !important;
  }

  html body.home-polish .hero__content,
  html body.home-polish .hero__grid,
  html body.home-polish .hero .container {
    max-width: calc(100vw - 28px) !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .footer__contacts,
  html body #topics .page-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body .footer__contact-card:nth-child(5) {
    grid-column: auto !important;
  }

  html body #directory .section-visual {
    max-width: 100% !important;
  }

  html body #directory .section-visual img,
  html body #topics .section-aside .section-visual img {
    height: 280px !important;
  }

  html body #directory .section-visual__content {
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
    padding: 16px !important;
  }

  html body #directory .section-visual__content h3 {
    max-width: 100% !important;
    font-size: 22px !important;
  }

  html body #topics .info-card {
    min-height: auto !important;
  }

  html body #topics .info-card h3 {
    max-width: none !important;
  }
}

/* V148 mobile search button: compact label so the submit control reads clearly. */
@media (max-width: 760px) {
  html body .site-search button,
  html body .site-search .button {
    font-size: 0 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }

  html body .site-search button::before,
  html body .site-search .button::before {
    content: "搜" !important;
    display: inline-grid !important;
    place-items: center !important;
    width: 30px !important;
    height: 30px !important;
    margin: 0 auto !important;
    border-radius: 999px !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: rgba(255,255,255,0.14) !important;
  }
}

/* V147 mobile polish patch: keep search submit visible and service-entry labels readable. */
@media (max-width: 760px) {
  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a.button,
  html body.home-polish .hero__actions .button:link,
  html body.home-polish .hero__actions .button:visited {
    color: #074a40 !important;
    -webkit-text-fill-color: #074a40 !important;
    text-shadow: none !important;
  }

  html body.home-polish .hero__actions .button:first-child,
  html body.home-polish .hero__actions a.button:first-child {
    color: #075345 !important;
    -webkit-text-fill-color: #075345 !important;
  }

  html body .section-body .site-search,
  html body main .site-search,
  html body:has(.page-hero__panel) main .site-search {
    grid-template-columns: minmax(0, 1fr) 64px !important;
    width: calc(100vw - 48px) !important;
    max-width: calc(100vw - 48px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 7px !important;
    gap: 7px !important;
  }

  html body .site-search button,
  html body .site-search .button {
    width: 64px !important;
    max-width: 64px !important;
    min-width: 64px !important;
    font-size: 13px !important;
  }

  html body .search-result-card,
  html body .article-card {
    grid-template-columns: minmax(0, 1fr) 58px !important;
  }

  html body .search-result-card::after,
  html body .article-card::after {
    width: 56px !important;
    height: 56px !important;
    border-radius: 16px !important;
  }
}

/* V146 mobile polish corrections: prevent new app-style cards from clipping text or controls. */
@media (max-width: 760px) {
  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a.button {
    color: #073f37 !important;
    position: relative !important;
  }

  html body.home-polish .hero__actions .button::before,
  html body.home-polish .hero__actions a.button::before {
    opacity: 0.78 !important;
    z-index: 0 !important;
  }

  html body.home-polish .hero__actions .button {
    text-shadow: none !important;
  }

  html body.home-polish .hero__actions .button > *,
  html body.home-polish .hero__actions a.button > * {
    position: relative !important;
    z-index: 2 !important;
  }

  html body.home-polish .hero__actions .button:first-child {
    color: #075345 !important;
  }

  html body .page-hero__panel .subnav,
  html body:has(.page-hero__panel) .page-hero__panel .subnav,
  html body:has(.page-hero__panel[data-hero]) .page-hero__panel .subnav {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  html body .page-hero__panel .subnav a,
  html body:has(.page-hero__panel) .page-hero__panel .subnav a,
  html body:has(.page-hero__panel[data-hero]) .page-hero__panel .subnav a {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 8px 6px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  html body .section-body .site-search,
  html body main .site-search,
  html body:has(.page-hero__panel) main .site-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 76px !important;
    gap: 8px !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    min-width: 0 !important;
    padding: 8px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .site-search input[type="search"] {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  html body .site-search button,
  html body .site-search .button {
    width: 76px !important;
    max-width: 76px !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  html body .search-result-card,
  html body .article-card {
    grid-template-columns: minmax(0, 1fr) 76px !important;
    column-gap: 10px !important;
  }

  html body .search-result-card::after,
  html body .article-card::after {
    width: 72px !important;
    height: 66px !important;
    justify-self: end !important;
  }
}

/* V145 mobile service-app polish: compact medical-service entries and warmer list rhythm. */
@media (max-width: 760px) {
  html body {
    background:
      linear-gradient(180deg, #f7fbfa 0%, #eef8f5 44%, #f8fbf7 100%) !important;
  }

  html body.home-polish .hero__content {
    padding: 22px 18px !important;
  }

  html body.home-polish .hero__actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 22px !important;
  }

  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a.button {
    min-height: 88px !important;
    height: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 16px 10px 12px !important;
    display: grid !important;
    grid-template-rows: 34px auto !important;
    place-items: center !important;
    gap: 7px !important;
    border-radius: 18px !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    text-align: center !important;
    box-shadow: 0 14px 28px rgba(30, 102, 83, 0.1), inset 0 1px 0 rgba(255,255,255,0.8) !important;
    transform: none !important;
    overflow: hidden !important;
  }

  html body.home-polish .hero__actions .button::before,
  html body.home-polish .hero__actions a.button::before {
    content: "" !important;
    display: block !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 14px !important;
    margin: 0 !important;
    background:
      radial-gradient(circle at 35% 35%, rgba(255,255,255,0.95) 0 18%, transparent 19%),
      linear-gradient(135deg, rgba(67, 194, 166, 0.95), rgba(49, 141, 222, 0.9)) !important;
    box-shadow: 0 8px 18px rgba(42, 129, 128, 0.18) !important;
  }

  html body.home-polish .hero__actions .button:first-child {
    color: #063f37 !important;
    background: linear-gradient(145deg, #ecfff6, #ffffff) !important;
    border: 1px solid rgba(121, 214, 174, 0.76) !important;
  }

  html body.home-polish .hero__actions .button:nth-child(2) {
    color: #17386d !important;
    background: linear-gradient(145deg, #edf6ff, #ffffff) !important;
    border: 1px solid rgba(132, 184, 237, 0.68) !important;
  }

  html body.home-polish .hero__actions .button:nth-child(3) {
    color: #654012 !important;
    background: linear-gradient(145deg, #fff5df, #ffffff) !important;
    border: 1px solid rgba(244, 191, 111, 0.72) !important;
  }

  html body.home-polish .hero__actions .button:nth-child(4) {
    color: #17483e !important;
    background: linear-gradient(145deg, #f3fbef, #ffffff) !important;
    border: 1px solid rgba(166, 215, 130, 0.72) !important;
  }

  html body.home-polish .hero__stats {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 18px !important;
  }

  html body.home-polish .hero__stats article {
    min-height: 86px !important;
    padding: 14px 8px !important;
    border-radius: 16px !important;
    background: linear-gradient(145deg, rgba(255,255,255,0.96), rgba(236, 249, 243, 0.92)) !important;
    border: 1px solid rgba(184, 224, 196, 0.72) !important;
    box-shadow: 0 10px 24px rgba(45, 92, 78, 0.08) !important;
  }

  html body.home-polish .hero__stats strong {
    font-size: 28px !important;
    line-height: 1 !important;
  }

  html body.home-polish .hero__stats span {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  html body .site-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 86px !important;
    gap: 8px !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 8px !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,0.96) !important;
    border: 1px solid rgba(122, 206, 183, 0.72) !important;
    box-shadow: 0 12px 28px rgba(41, 110, 95, 0.09) !important;
    overflow: hidden !important;
  }

  html body .site-search input[type="search"] {
    min-height: 42px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-radius: 13px !important;
    background: #f6fbfa !important;
    font-size: 14px !important;
  }

  html body .site-search .button,
  html body .site-search button {
    min-height: 42px !important;
    width: 86px !important;
    max-width: 86px !important;
    padding: 0 !important;
    border-radius: 13px !important;
    font-size: 14px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #28b38f, #2f8bd9) !important;
    border: 0 !important;
    box-shadow: 0 10px 20px rgba(42, 139, 125, 0.18) !important;
  }

  html body .popular-searches {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: calc(100vw - 40px) !important;
    max-width: calc(100vw - 40px) !important;
    margin: 16px auto 0 !important;
    padding: 14px !important;
    border-radius: 20px !important;
    background: linear-gradient(145deg, rgba(255,252,245,0.96), rgba(239,250,245,0.9)) !important;
    border: 1px solid rgba(214, 231, 204, 0.78) !important;
    box-shadow: 0 12px 30px rgba(73, 111, 88, 0.07) !important;
  }

  html body .popular-searches button {
    width: 100% !important;
    min-height: 38px !important;
    padding: 7px 8px !important;
    border-radius: 999px !important;
    color: #07564b !important;
    background: rgba(255,255,255,0.9) !important;
    border: 1px solid rgba(134, 209, 188, 0.78) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 14px rgba(39, 115, 99, 0.06) !important;
  }

  html body .knowledge-filter,
  html body .page-hero__panel .subnav {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  html body .knowledge-filter a,
  html body .page-hero__panel .subnav a {
    min-height: 40px !important;
    padding: 8px 6px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    color: #07564b !important;
    background: rgba(255,255,255,0.88) !important;
    border: 1px solid rgba(161, 220, 203, 0.75) !important;
  }

  html body .article-list {
    gap: 12px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
  }

  html body .article-card,
  html body .search-result-card {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 86px !important;
    grid-template-areas:
      "type art"
      "title art"
      "desc art"
      "meta art" !important;
    column-gap: 12px !important;
    row-gap: 6px !important;
    min-height: 132px !important;
    padding: 16px !important;
    border-radius: 18px !important;
    background: linear-gradient(145deg, rgba(255,255,255,0.98), rgba(244, 251, 249, 0.94)) !important;
    border: 1px solid rgba(193, 225, 213, 0.78) !important;
    box-shadow: 0 12px 28px rgba(42, 87, 73, 0.08) !important;
    overflow: hidden !important;
  }

  html body .article-card > *,
  html body .search-result-card > * {
    position: relative !important;
    z-index: 2 !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html body .article-card::after,
  html body .search-result-card::after {
    content: "" !important;
    grid-area: art !important;
    align-self: center !important;
    justify-self: end !important;
    width: 82px !important;
    height: 74px !important;
    border-radius: 18px !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.68), rgba(255,255,255,0) 48%),
      radial-gradient(circle at 72% 28%, rgba(255, 190, 89, 0.95) 0 10%, transparent 11%),
      radial-gradient(circle at 34% 68%, rgba(94, 207, 172, 0.88) 0 14%, transparent 15%),
      linear-gradient(135deg, #e6f5ff, #d7f7ec 56%, #fff2d8) !important;
    border: 1px solid rgba(145, 207, 198, 0.54) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.76), 0 10px 20px rgba(54, 122, 111, 0.08) !important;
    opacity: 1 !important;
    transform: none !important;
    position: relative !important;
    inset: auto !important;
    pointer-events: none !important;
  }

  html body .article-card__type {
    grid-area: type !important;
    justify-self: start !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    color: #075b50 !important;
    background: #eefbf5 !important;
    border: 1px solid rgba(131, 210, 177, 0.72) !important;
    font-size: 12px !important;
    line-height: 1 !important;
  }

  html body .article-card h3,
  html body .search-result-card h3 {
    grid-area: title !important;
    margin: 0 !important;
    font-size: 18px !important;
    line-height: 1.36 !important;
    color: #152a54 !important;
  }

  html body .article-card p,
  html body .search-result-card p {
    grid-area: desc !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.62 !important;
    color: #43606c !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  html body .article-card__meta {
    grid-area: meta !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin-top: 2px !important;
    color: #6a7c83 !important;
    font-size: 12px !important;
  }

  html body .contact-highlight-list,
  html body .contact-channel-grid {
    gap: 12px !important;
  }

  html body .contact-channel {
    border-radius: 18px !important;
    background: linear-gradient(145deg, rgba(255,255,255,0.97), rgba(238, 249, 244, 0.92)) !important;
    border: 1px solid rgba(172, 218, 200, 0.78) !important;
    box-shadow: 0 12px 28px rgba(45, 92, 78, 0.08) !important;
  }
}

/* V140 nested mobile alignment: keep inner cards inside their parent shells. */
@media (max-width: 760px) {
  html body .contact-hero-card {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 12px !important;
    gap: 14px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .contact-hero-card .contact-hero-card__grid,
  html body .contact-hero-card .contact-hero-card__body,
  html body .contact-hero-card .contact-hero-card__side,
  html body .contact-hero-card .contact-highlight-list,
  html body .contact-hero-card .contact-channel-grid,
  html body .contact-hero-card .contact-channel-grid .cta-row {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .contact-hero-card .contact-hero-card__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    padding: 0 !important;
    gap: 14px !important;
  }

  html body .contact-hero-card :where(.contact-hero-card__body, .contact-hero-card__side) {
    padding: 20px !important;
  }

  html body .contact-hero-card :where(.contact-highlight-list, .contact-channel-grid) {
    padding: 12px !important;
  }

  html body .contact-hero-card :where(.contact-highlight-list > *, .contact-channel-grid > *, .contact-channel, .contact-channel-grid .button, .contact-channel-grid a.button) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body :where(.article-layout, .guide-layout) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 16px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  html body :where(.article-body, .article-sidebar, .guide-stack, .guide-sidebar) {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.article-body > *, .article-sidebar > *, .guide-stack > *, .guide-sidebar > *) {
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body .article-body :where(ul, ol),
  html body .article-sidebar :where(ul, ol),
  html body .guide-stack :where(ul, ol),
  html body .guide-sidebar :where(ul, ol) {
    display: grid !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 18px !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.article-body, .article-sidebar, .guide-stack, .guide-sidebar) :where(h1, h2, h3, h4, p, li, a, strong, span, table, img, video, iframe) {
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    box-sizing: border-box !important;
  }

  html body :where(.article-body, .article-sidebar, .guide-stack, .guide-sidebar) :where(table, img, video, iframe) {
    width: auto !important;
    height: auto !important;
  }
}

html body .floating-rail__buttons,
body .floating-rail__buttons {
  width: 108px !important;
  padding: 12px 10px 12px !important;
  gap: 9px !important;
  border-radius: 36px !important;
  border: 1px solid rgba(199, 228, 218, 0.86) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.94), rgba(244, 251, 248, 0.9)) !important;
  box-shadow:
    0 18px 34px rgba(22, 84, 69, 0.12),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
  backdrop-filter: blur(12px) !important;
}

html body .floating-rail__button,
html body .floating-rail .floating-rail__buttons .floating-rail__button,
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(1),
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(2),
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(3),
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(4),
html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(5),
html body .floating-rail .floating-rail__buttons .floating-rail__button--top,
body .floating-rail__button,
body .floating-rail .floating-rail__buttons .floating-rail__button,
body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(1),
body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(2),
body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(3),
body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(4),
body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(5),
body .floating-rail .floating-rail__buttons .floating-rail__button--top {
  width: 82px !important;
  min-width: 82px !important;
  max-width: 82px !important;
  height: 46px !important;
  min-height: 46px !important;
  max-height: 46px !important;
  padding: 6px 8px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,0.5) !important;
  box-shadow:
    0 14px 24px rgba(55, 105, 95, 0.14),
    inset 0 1px 0 rgba(255,255,255,0.5) !important;
}

html body .floating-rail__label,
html body .floating-rail__button--top .floating-rail__label,
body .floating-rail__label,
body .floating-rail__button--top .floating-rail__label {
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
  overflow-wrap: normal !important;
  white-space: nowrap !important;
  text-align: center !important;
  text-shadow: 0 1px 0 rgba(255,255,255,0.1) !important;
}

html body .floating-rail__title,
body .floating-rail__title {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 82px !important;
  min-height: 32px !important;
  margin: 0 auto 3px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(192, 226, 214, 0.9) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(237, 248, 243, 0.92)) !important;
  color: #2c7d69 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  box-shadow:
    0 10px 18px rgba(20, 89, 74, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

html body .floating-rail__icon,
body .floating-rail__icon {
  display: none !important;
}

html body .floating-rail__button[data-service="phone"],
body .floating-rail__button[data-service="phone"] {
  background: linear-gradient(180deg, #ffc490, #ffb36e) !important;
}

html body .floating-rail__button[data-service="wechat"],
body .floating-rail__button[data-service="wechat"] {
  background: linear-gradient(180deg, #58cfa8, #39b98f) !important;
}

html body .floating-rail__button[data-service="miniapp"],
body .floating-rail__button[data-service="miniapp"] {
  background: linear-gradient(180deg, #71c5f2, #54aee7) !important;
}

html body .floating-rail__button[data-service="booking"],
body .floating-rail__button[data-service="booking"] {
  background: linear-gradient(180deg, #8798f4, #7085eb) !important;
}

html body .floating-rail__button[data-service="xiaohongshu"],
body .floating-rail__button[data-service="xiaohongshu"] {
  background: linear-gradient(180deg, #ffb3b8, #f59099) !important;
}

html body .floating-rail__button[data-service="phone"] .floating-rail__label,
html body .floating-rail__button[data-service="wechat"] .floating-rail__label,
html body .floating-rail__button[data-service="miniapp"] .floating-rail__label,
html body .floating-rail__button[data-service="booking"] .floating-rail__label,
html body .floating-rail__button[data-service="xiaohongshu"] .floating-rail__label,
body .floating-rail__button[data-service="phone"] .floating-rail__label,
body .floating-rail__button[data-service="wechat"] .floating-rail__label,
body .floating-rail__button[data-service="miniapp"] .floating-rail__label,
body .floating-rail__button[data-service="booking"] .floating-rail__label,
body .floating-rail__button[data-service="xiaohongshu"] .floating-rail__label {
  color: #ffffff !important;
}

html body .floating-rail__button--top,
body .floating-rail__button--top {
  background: linear-gradient(180deg, rgba(255,255,255,0.97), rgba(236, 247, 242, 0.94)) !important;
}

html body .floating-rail__button--top .floating-rail__label,
body .floating-rail__button--top .floating-rail__label {
  color: #2e7f6c !important;
  text-shadow: none !important;
}

@media (min-width: 1500px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail,
  body .floating-rail,
  body:not(.is-near-footer) .floating-rail {
    display: block !important;
    position: fixed !important;
    top: 92px !important;
    right: 24px !important;
    bottom: auto !important;
    left: auto !important;
    width: 108px !important;
    max-width: 108px !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  html body .floating-rail__buttons,
  body .floating-rail__buttons {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  body .sticky-help {
    display: none !important;
  }
}

/* V139 final mobile containment: strongest pass after warm group backplates. */
@media (max-width: 760px) {
  html body :where(.contact-hero-card, .contact-hero-card__grid) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    gap: 14px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.contact-hero-card__body, .contact-hero-card__side) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.contact-highlight-list, .contact-channel-grid, .contact-channel-grid .cta-row) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.contact-highlight-list > *, .contact-channel-grid > *, .contact-channel, .contact-channel-grid .button, .contact-channel-grid a.button) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body :where(.section-body, .article-layout, .guide-layout) {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  html body :where(.article-body, .article-sidebar, .guide-stack, .guide-sidebar) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.article-body > *, .article-sidebar > *, .guide-stack > *, .guide-sidebar > *, .section-body > *) {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}

/* V149 final tail override: keep mobile app entries and search controls readable after all lock rules. */
@media (max-width: 760px) {
  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a.button,
  html body.home-polish .hero__actions .button:link,
  html body.home-polish .hero__actions .button:visited {
    color: #074a40 !important;
    -webkit-text-fill-color: #074a40 !important;
    text-shadow: none !important;
  }

  html body.home-polish .hero__actions .button:first-child,
  html body.home-polish .hero__actions a.button:first-child {
    color: #075345 !important;
    -webkit-text-fill-color: #075345 !important;
  }

  html body .page-hero__panel .subnav,
  html body:has(.page-hero__panel) .page-hero__panel .subnav,
  html body:has(.page-hero__panel[data-hero]) .page-hero__panel .subnav {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  html body .section-body .site-search,
  html body main .site-search,
  html body:has(.page-hero__panel) main .site-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 64px !important;
    width: calc(100vw - 48px) !important;
    max-width: calc(100vw - 48px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 7px !important;
    gap: 7px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .site-search input[type="search"] {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  html body .site-search button,
  html body .site-search .button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 64px !important;
    max-width: 64px !important;
    min-width: 64px !important;
    min-height: 42px !important;
    padding: 0 !important;
    border-radius: 13px !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-indent: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #28b38f, #2f8bd9) !important;
  }

  html body .site-search button::before,
  html body .site-search button::after,
  html body .site-search .button::before,
  html body .site-search .button::after {
    content: none !important;
    display: none !important;
  }

  html body .search-result-card,
  html body .article-card {
    grid-template-columns: minmax(0, 1fr) 58px !important;
  }

  html body .search-result-card::after,
  html body .article-card::after {
    width: 56px !important;
    height: 56px !important;
    border-radius: 16px !important;
  }
}

/* V145 mobile service-app polish: compact medical-service entries and warmer list rhythm. */
@media (max-width: 760px) {
  html body {
    background: linear-gradient(180deg, #f7fbfa 0%, #eef8f5 44%, #f8fbf7 100%) !important;
  }

  html body.home-polish .hero__content {
    padding: 22px 18px !important;
  }

  html body.home-polish .hero__actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 22px !important;
  }

  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a.button {
    min-height: 88px !important;
    height: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 16px 10px 12px !important;
    display: grid !important;
    grid-template-rows: 34px auto !important;
    place-items: center !important;
    gap: 7px !important;
    border-radius: 18px !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    text-align: center !important;
    box-shadow: 0 14px 28px rgba(30, 102, 83, 0.1), inset 0 1px 0 rgba(255,255,255,0.8) !important;
    transform: none !important;
    overflow: hidden !important;
  }

  html body.home-polish .hero__actions .button::before,
  html body.home-polish .hero__actions a.button::before {
    content: "" !important;
    display: block !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 14px !important;
    margin: 0 !important;
    background:
      radial-gradient(circle at 35% 35%, rgba(255,255,255,0.95) 0 18%, transparent 19%),
      linear-gradient(135deg, rgba(67, 194, 166, 0.95), rgba(49, 141, 222, 0.9)) !important;
    box-shadow: 0 8px 18px rgba(42, 129, 128, 0.18) !important;
  }

  html body.home-polish .hero__actions .button:first-child {
    color: #063f37 !important;
    background: linear-gradient(145deg, #ecfff6, #ffffff) !important;
    border: 1px solid rgba(121, 214, 174, 0.76) !important;
  }

  html body.home-polish .hero__actions .button:nth-child(2) {
    color: #17386d !important;
    background: linear-gradient(145deg, #edf6ff, #ffffff) !important;
    border: 1px solid rgba(132, 184, 237, 0.68) !important;
  }

  html body.home-polish .hero__actions .button:nth-child(3) {
    color: #654012 !important;
    background: linear-gradient(145deg, #fff5df, #ffffff) !important;
    border: 1px solid rgba(244, 191, 111, 0.72) !important;
  }

  html body.home-polish .hero__actions .button:nth-child(4) {
    color: #17483e !important;
    background: linear-gradient(145deg, #f3fbef, #ffffff) !important;
    border: 1px solid rgba(166, 215, 130, 0.72) !important;
  }

  html body.home-polish .hero__stats {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 18px !important;
  }

  html body.home-polish .hero__stats article {
    min-height: 86px !important;
    padding: 14px 8px !important;
    border-radius: 16px !important;
    background: linear-gradient(145deg, rgba(255,255,255,0.96), rgba(236, 249, 243, 0.92)) !important;
    border: 1px solid rgba(184, 224, 196, 0.72) !important;
    box-shadow: 0 10px 24px rgba(45, 92, 78, 0.08) !important;
  }

  html body.home-polish .hero__stats strong {
    font-size: 28px !important;
    line-height: 1 !important;
  }

  html body.home-polish .hero__stats span {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  html body .site-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 86px !important;
    gap: 8px !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 8px !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,0.96) !important;
    border: 1px solid rgba(122, 206, 183, 0.72) !important;
    box-shadow: 0 12px 28px rgba(41, 110, 95, 0.09) !important;
    overflow: hidden !important;
  }

  html body .site-search input[type="search"] {
    min-height: 42px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-radius: 13px !important;
    background: #f6fbfa !important;
    font-size: 14px !important;
  }

  html body .site-search .button,
  html body .site-search button {
    min-height: 42px !important;
    width: 86px !important;
    max-width: 86px !important;
    padding: 0 !important;
    border-radius: 13px !important;
    font-size: 14px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #28b38f, #2f8bd9) !important;
    border: 0 !important;
    box-shadow: 0 10px 20px rgba(42, 139, 125, 0.18) !important;
  }

  html body .popular-searches {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: calc(100vw - 40px) !important;
    max-width: calc(100vw - 40px) !important;
    margin: 16px auto 0 !important;
    padding: 14px !important;
    border-radius: 20px !important;
    background: linear-gradient(145deg, rgba(255,252,245,0.96), rgba(239,250,245,0.9)) !important;
    border: 1px solid rgba(214, 231, 204, 0.78) !important;
    box-shadow: 0 12px 30px rgba(73, 111, 88, 0.07) !important;
  }

  html body .popular-searches button {
    width: 100% !important;
    min-height: 38px !important;
    padding: 7px 8px !important;
    border-radius: 999px !important;
    color: #07564b !important;
    background: rgba(255,255,255,0.9) !important;
    border: 1px solid rgba(134, 209, 188, 0.78) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 14px rgba(39, 115, 99, 0.06) !important;
  }

  html body .knowledge-filter,
  html body .page-hero__panel .subnav {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  html body .knowledge-filter a,
  html body .page-hero__panel .subnav a {
    min-height: 40px !important;
    padding: 8px 6px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    color: #07564b !important;
    background: rgba(255,255,255,0.88) !important;
    border: 1px solid rgba(161, 220, 203, 0.75) !important;
  }

  html body .article-list {
    gap: 12px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
  }

  html body .article-card,
  html body .search-result-card {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 86px !important;
    grid-template-areas:
      "type art"
      "title art"
      "desc art"
      "meta art" !important;
    column-gap: 12px !important;
    row-gap: 6px !important;
    min-height: 132px !important;
    padding: 16px !important;
    border-radius: 18px !important;
    background: linear-gradient(145deg, rgba(255,255,255,0.98), rgba(244, 251, 249, 0.94)) !important;
    border: 1px solid rgba(193, 225, 213, 0.78) !important;
    box-shadow: 0 12px 28px rgba(42, 87, 73, 0.08) !important;
    overflow: hidden !important;
  }

  html body .article-card > *,
  html body .search-result-card > * {
    position: relative !important;
    z-index: 2 !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html body .article-card::after,
  html body .search-result-card::after {
    content: "" !important;
    grid-area: art !important;
    align-self: center !important;
    justify-self: end !important;
    width: 82px !important;
    height: 74px !important;
    border-radius: 18px !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.68), rgba(255,255,255,0) 48%),
      radial-gradient(circle at 72% 28%, rgba(255, 190, 89, 0.95) 0 10%, transparent 11%),
      radial-gradient(circle at 34% 68%, rgba(94, 207, 172, 0.88) 0 14%, transparent 15%),
      linear-gradient(135deg, #e6f5ff, #d7f7ec 56%, #fff2d8) !important;
    border: 1px solid rgba(145, 207, 198, 0.54) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.76), 0 10px 20px rgba(54, 122, 111, 0.08) !important;
    opacity: 1 !important;
    transform: none !important;
    position: relative !important;
    inset: auto !important;
    pointer-events: none !important;
  }

  html body .article-card__type {
    grid-area: type !important;
    justify-self: start !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    color: #075b50 !important;
    background: #eefbf5 !important;
    border: 1px solid rgba(131, 210, 177, 0.72) !important;
    font-size: 12px !important;
    line-height: 1 !important;
  }

  html body .article-card h3,
  html body .search-result-card h3 {
    grid-area: title !important;
    margin: 0 !important;
    font-size: 18px !important;
    line-height: 1.36 !important;
    color: #152a54 !important;
  }

  html body .article-card p,
  html body .search-result-card p {
    grid-area: desc !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.62 !important;
    color: #43606c !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  html body .article-card__meta {
    grid-area: meta !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin-top: 2px !important;
    color: #6a7c83 !important;
    font-size: 12px !important;
  }

  html body .contact-highlight-list,
  html body .contact-channel-grid {
    gap: 12px !important;
  }

  html body .contact-channel {
    border-radius: 18px !important;
    background: linear-gradient(145deg, rgba(255,255,255,0.97), rgba(238, 249, 244, 0.92)) !important;
    border: 1px solid rgba(172, 218, 200, 0.78) !important;
    box-shadow: 0 12px 28px rgba(45, 92, 78, 0.08) !important;
  }
}

/* V140-V144 final mobile alignment and text-fit guardrails. */
@media (max-width: 760px) {
  html body .contact-hero-card {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 12px !important;
    gap: 14px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .contact-hero-card .contact-hero-card__grid,
  html body .contact-hero-card .contact-hero-card__body,
  html body .contact-hero-card .contact-hero-card__side,
  html body .contact-hero-card .contact-highlight-list,
  html body .contact-hero-card .contact-channel-grid,
  html body .contact-hero-card .contact-channel-grid .cta-row {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .contact-hero-card .contact-hero-card__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    padding: 0 !important;
    gap: 14px !important;
  }

  html body .contact-hero-card :where(.contact-hero-card__body, .contact-hero-card__side) {
    padding: 20px !important;
  }

  html body .contact-hero-card :where(.contact-highlight-list, .contact-channel-grid) {
    padding: 12px !important;
  }

  html body :where(.article-layout, .guide-layout) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 16px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  html body :where(.article-body, .article-sidebar, .guide-stack, .guide-sidebar) {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body:has(.page-hero__panel) main .page-hero > .container > .page-hero__panel h1,
  html body:has(.page-hero__panel) .page-hero .container .page-hero__panel[data-hero] h1,
  html body .page-hero .container .page-hero__panel.page-hero__panel h1 {
    display: block !important;
    inline-size: 100% !important;
    width: 100% !important;
    max-inline-size: 100% !important;
    max-width: 100% !important;
    min-inline-size: 0 !important;
    min-width: 0 !important;
    font-size: 25px !important;
    line-height: 1.32 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    word-break: break-all !important;
    line-break: anywhere !important;
    overflow-wrap: anywhere !important;
    text-wrap: wrap !important;
    text-align: left !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  html body:has(.page-hero__panel) main :where(.article-body, .section-panel, .guide-stack, .guide-sidebar, .tool-sheet, .side-card, .page-card, .info-card, .resource-card, .news-item) :where(h2, h3, h4),
  html body main :where(.article-body, .section-panel, .guide-stack, .guide-sidebar, .tool-sheet, .side-card, .page-card, .info-card, .resource-card, .news-item) :where(h2, h3, h4) {
    display: block !important;
    inline-size: 100% !important;
    width: 100% !important;
    max-inline-size: 100% !important;
    max-width: 100% !important;
    min-inline-size: 0 !important;
    min-width: 0 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    word-break: break-all !important;
    line-break: anywhere !important;
    overflow-wrap: anywhere !important;
    text-wrap: wrap !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  html body:has(.page-hero__panel) main :where(.article-body, .section-panel) h2,
  html body main :where(.article-body, .section-panel) h2 {
    font-size: 25px !important;
    line-height: 1.34 !important;
  }

  html body :where(.article-body > *, .article-sidebar > *, .guide-stack > *, .guide-sidebar > *, .section-body > *) {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}

/* V140 nested mobile alignment: keep inner cards inside their parent shells. */
@media (max-width: 760px) {
  html body .contact-hero-card {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 12px !important;
    gap: 14px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .contact-hero-card .contact-hero-card__grid,
  html body .contact-hero-card .contact-hero-card__body,
  html body .contact-hero-card .contact-hero-card__side,
  html body .contact-hero-card .contact-highlight-list,
  html body .contact-hero-card .contact-channel-grid,
  html body .contact-hero-card .contact-channel-grid .cta-row {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .contact-hero-card .contact-hero-card__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    padding: 0 !important;
    gap: 14px !important;
  }

  html body .contact-hero-card :where(.contact-hero-card__body, .contact-hero-card__side) {
    padding: 20px !important;
  }

  html body .contact-hero-card :where(.contact-highlight-list, .contact-channel-grid) {
    padding: 12px !important;
  }

  html body .contact-hero-card :where(.contact-highlight-list > *, .contact-channel-grid > *, .contact-channel, .contact-channel-grid .button, .contact-channel-grid a.button) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body :where(.article-layout, .guide-layout) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 16px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  html body :where(.article-body, .article-sidebar, .guide-stack, .guide-sidebar) {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.article-body > *, .article-sidebar > *, .guide-stack > *, .guide-sidebar > *) {
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body .article-body :where(ul, ol),
  html body .article-sidebar :where(ul, ol),
  html body .guide-stack :where(ul, ol),
  html body .guide-sidebar :where(ul, ol) {
    display: grid !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 18px !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.article-body, .article-sidebar, .guide-stack, .guide-sidebar) :where(h1, h2, h3, h4, p, li, a, strong, span, table, img, video, iframe) {
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    box-sizing: border-box !important;
  }

  html body :where(.article-body, .article-sidebar, .guide-stack, .guide-sidebar) :where(table, img, video, iframe) {
    width: auto !important;
    height: auto !important;
  }
}

/* V138 mobile containment after group backplates: keep contact and article bodies inside frame. */
@media (max-width: 760px) {
  html body :where(.contact-hero-card, .contact-hero-card__grid, .contact-hero-card__body, .contact-hero-card__side) {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.contact-hero-card__body, .contact-hero-card__side) {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  html body :where(.contact-highlight-list, .contact-channel-grid) {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.contact-highlight-list > *, .contact-channel-grid > *, .contact-channel, .contact-channel-grid .cta-row, .contact-channel-grid .button) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body :where(.article-layout, .guide-layout) {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  html body :where(.article-body, .article-sidebar, .guide-stack, .guide-sidebar) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.article-body) {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  html body :where(.article-body > *, .guide-stack > *, .guide-sidebar > *) {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}

body .sticky-help {
  width: min(calc(100vw - 40px), 660px) !important;
  padding: 14px 18px !important;
  bottom: 16px !important;
  border-radius: 20px !important;
  box-shadow:
    0 16px 34px rgba(19, 70, 61, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.92) !important;
}

body .sticky-help span,
body .sticky-help a {
  font-size: 14px !important;
  line-height: 1.4 !important;
}

body .section {
  padding-top: 84px !important;
  padding-bottom: 84px !important;
}

body .section--soft {
  background:
    linear-gradient(180deg, rgba(246, 251, 249, 0.9), rgba(250, 247, 242, 0.72)) !important;
}

body .section-heading,
body .section-heading--left {
  max-width: 820px !important;
  margin-bottom: 28px !important;
}

body .section-heading h2,
body .section-heading--left h2 {
  font-size: clamp(34px, 2.7vw, 44px) !important;
  line-height: 1.18 !important;
}

body .section-heading p,
body .section-heading--left p {
  font-size: 17px !important;
  line-height: 1.9 !important;
  color: #4b635d !important;
}

/* V83 visible QA polish: keep card text contained and add warmer surface contrast. */
html body .page-card,
html body .article-card,
html body .contact-panel,
html body .contact-channel,
html body .store-contact-card,
html body .resource-card,
html body .photo-card {
  overflow: hidden !important;
  border-color: rgba(184, 224, 210, 0.72) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(249, 253, 250, 0.92)) !important;
  box-shadow:
    0 22px 52px rgba(35, 85, 72, 0.09),
    0 2px 0 rgba(255,255,255,0.95) inset !important;
}

html body .page-card:nth-child(3n + 2),
html body .article-card:nth-child(3n + 2),
html body .contact-channel:nth-child(3n + 2),
html body .resource-card:nth-child(3n + 2) {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(250, 247, 239, 0.94)) !important;
  border-color: rgba(232, 210, 168, 0.66) !important;
}

html body .page-card:nth-child(3n),
html body .article-card:nth-child(3n),
html body .contact-channel:nth-child(3n),
html body .resource-card:nth-child(3n) {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(245, 250, 255, 0.94)) !important;
  border-color: rgba(186, 214, 236, 0.68) !important;
}

html body .page-card h3,
html body .article-card h3,
html body .contact-panel h3,
html body .contact-channel strong,
html body .store-contact-card h3,
html body .resource-card h3,
html body .photo-card h3 {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  max-width: 100% !important;
  letter-spacing: 0 !important;
}

html body .page-card p,
html body .article-card p,
html body .contact-panel li,
html body .contact-panel p,
html body .contact-channel p,
html body .store-contact-card li,
html body .resource-card p,
html body .photo-card p {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  max-width: 100% !important;
}

html body .page-card__media,
html body .page-card.page-card--media img,
html body .section-visual img {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  display: block !important;
}

html body .knowledge-index__feature h3,
html body .contact-hero-card h2,
html body .section-panel h2 {
  text-wrap: balance;
}

body .subnav {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

body .subnav a {
  min-height: 42px !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
}

body .page-grid,
body .contact-grid,
body .section-split,
body .article-list,
body .knowledge-index,
body .store-locator,
body .detail-grid,
body .service-standard__grid,
body .related-links__grid {
  gap: 22px !important;
}

body .page-card,
body .page-card__body,
body .store-locator__card,
body .guide-card,
body .tool-sheet,
body .side-card,
body .contact-panel,
body .map-card {
  overflow: hidden !important;
}

body .page-card,
body .contact-panel,
body .map-card,
body .article-card,
body .section-panel,
body .knowledge-index__feature,
body .knowledge-index__list a,
body .section-visual,
body .info-card,
body .detail-card,
body .related-links__card,
body .service-standard__card,
body .footer__contact-card {
  border-radius: 26px !important;
  border: 1px solid rgba(205, 227, 218, 0.9) !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 210, 158, 0.14), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(150, 220, 196, 0.1), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.985), rgba(248,252,249,0.965)) !important;
  box-shadow:
    0 18px 36px rgba(22, 84, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body .page-card__media,
body .section-visual > img,
body .contact-panel img,
body .map-card img {
  display: block !important;
  width: 100% !important;
  object-fit: cover !important;
}

body .page-card.page-card--media .page-card__body,
body .contact-panel .page-card__body,
body .map-card .page-card__body {
  padding: 22px 22px 24px !important;
}

body .article-card,
body .store-locator__card,
body .tool-sheet,
body .side-card,
body .guide-card,
body .section-panel,
body .detail-card,
body .service-standard__card,
body .related-links__card {
  padding: 24px 24px 22px !important;
}

body .article-card h3,
body .store-locator__card h3,
body .guide-card h3,
body .tool-sheet h3,
body .side-card h3,
body .section-panel h2,
body .section-panel h3,
body .detail-card h3,
body .service-standard__card h3,
body .related-links__card h3 {
  font-size: clamp(24px, 1.9vw, 30px) !important;
  line-height: 1.28 !important;
}

body .article-card p,
body .store-locator__card p,
body .store-locator__card li,
body .guide-card p,
body .tool-sheet li,
body .side-card li,
body .section-panel p,
body .section-panel li,
body .detail-card p,
body .detail-card li,
body .service-standard__card p,
body .service-standard__card li,
body .related-links__card p,
body .related-links__card li {
  font-size: 16px !important;
  line-height: 1.84 !important;
  color: #49635d !important;
}

body .article-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 12px !important;
  align-items: center !important;
}

body .article-meta span,
body .article-meta a,
body .article-meta button {
  min-height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 8px 14px !important;
  border-radius: 999px !important;
}

body .cta-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

body .cta-row .button,
body .page-utility__actions .button,
body .hero__actions .button,
body .header__actions .button {
  min-height: 46px !important;
}

body .page-card h3,
body .page-card p,
body .store-locator__card h3,
body .store-locator__card p,
body .store-locator__card li,
body .guide-card h3,
body .guide-card p,
body .tool-sheet h3,
body .tool-sheet li,
body .side-card h3,
body .side-card li,
body .contact-panel h3,
body .contact-panel p,
body .contact-panel li,
body .map-card h3,
body .map-card p,
body .map-card li {
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

@media (max-width: 700px) {
  body .floating-rail,
  body:not(.is-near-footer) .floating-rail {
    display: none !important;
  }
}

body.home-polish .page-grid {
  gap: 18px !important;
}

body.home-polish .page-grid .page-card:not(.page-card--media) {
  min-height: 178px !important;
  padding: 24px 24px 22px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 207, 145, 0.16), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(136, 210, 188, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,252,249,0.97)) !important;
  box-shadow:
    0 18px 34px rgba(22, 84, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body.home-polish .page-grid .page-card:not(.page-card--media) h3 {
  font-size: 24px !important;
  line-height: 1.28 !important;
}

body.home-polish .page-grid .page-card:not(.page-card--media) p {
  font-size: 15px !important;
  line-height: 1.8 !important;
}

body.home-polish .help-banner {
  padding: 28px 30px !important;
  border-radius: 28px !important;
  border: 1px solid rgba(205, 228, 219, 0.92) !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 216, 173, 0.18), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(153, 220, 196, 0.14), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246,252,249,0.97)) !important;
  box-shadow:
    0 22px 40px rgba(22, 84, 69, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body.home-polish .help-banner h3 {
  font-size: 28px !important;
  line-height: 1.24 !important;
}

body.home-polish .help-banner p {
  max-width: 760px !important;
  font-size: 15px !important;
  line-height: 1.82 !important;
}

body.home-polish .results-stats {
  gap: 18px !important;
}

body.home-polish .results-stats article {
  min-height: 146px !important;
  padding: 24px 20px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 199, 146, 0.16), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,252,249,0.97)) !important;
  box-shadow:
    0 18px 32px rgba(22, 84, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body.home-polish .results-stats strong {
  font-size: clamp(32px, 2.6vw, 42px) !important;
}

body.home-polish .story-gallery {
  gap: 18px !important;
}

body.home-polish .story-gallery__card {
  padding-bottom: 22px !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(248,252,250,0.97)) !important;
  box-shadow:
    0 18px 34px rgba(22, 84, 69, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body.home-polish .story-gallery__card img {
  aspect-ratio: 4 / 3 !important;
  min-height: 206px !important;
}

body.home-polish .story-gallery__card span,
body.home-polish .story-gallery__card h3 {
  padding-left: 22px !important;
  padding-right: 22px !important;
}

body:has(.page-hero__english) .article-layout,
body:has(.page-hero__panel[data-hero="tool"]) .article-layout {
  grid-template-columns: minmax(0, 1.28fr) minmax(280px, 0.72fr) !important;
  gap: 24px !important;
  align-items: start !important;
}

body:has(.page-hero__english) .article-body,
body:has(.page-hero__panel[data-hero="tool"]) .article-body {
  display: grid !important;
  gap: 16px !important;
}

body:has(.page-hero__english) .article-body h2,
body:has(.page-hero__panel[data-hero="tool"]) .article-body h2 {
  margin: 6px 0 4px !important;
  font-size: clamp(28px, 2vw, 34px) !important;
  line-height: 1.24 !important;
}

body:has(.page-hero__english) .guide-grid,
body:has(.page-hero__panel[data-hero="tool"]) .guide-grid,
body:has(.page-hero__english) .tool-list,
body:has(.page-hero__panel[data-hero="tool"]) .tool-list {
  gap: 16px !important;
}

body:has(.page-hero__english) .guide-card,
body:has(.page-hero__english) .guide-tile,
body:has(.page-hero__english) .tool-sheet,
body:has(.page-hero__english) .side-card,
body:has(.page-hero__panel[data-hero="tool"]) .guide-card,
body:has(.page-hero__panel[data-hero="tool"]) .guide-tile,
body:has(.page-hero__panel[data-hero="tool"]) .tool-sheet,
body:has(.page-hero__panel[data-hero="tool"]) .side-card {
  min-height: 0 !important;
  padding: 22px 24px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255,214,164,0.18), transparent 28%),
    radial-gradient(circle at 0 100%, rgba(154,220,195,0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,252,249,0.97)) !important;
  box-shadow:
    0 16px 30px rgba(22, 84, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__english) .article-sidebar,
body:has(.page-hero__panel[data-hero="tool"]) .article-sidebar {
  position: sticky !important;
  top: 122px !important;
  align-self: start !important;
  display: grid !important;
  gap: 16px !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-directory {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 24px !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.28fr) minmax(320px, 0.72fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card {
  overflow: hidden !important;
  border-radius: 30px !important;
  border: 1px solid rgba(204, 229, 219, 0.92) !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 213, 160, 0.18), transparent 32%),
    radial-gradient(circle at 0 100%, rgba(151, 220, 196, 0.12), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,252,249,0.97)) !important;
  box-shadow:
    0 22px 42px rgba(22, 84, 69, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__body {
  padding: 32px 34px !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__side {
  display: grid !important;
  gap: 18px !important;
  padding: 30px 32px 32px !important;
  background:
    linear-gradient(180deg, rgba(241, 251, 246, 0.86), rgba(255, 250, 244, 0.7)) !important;
  border-left: 1px solid rgba(206, 231, 221, 0.82) !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-highlight-list,
body:has(.page-hero__panel[data-hero="contact"]) .contact-channel-grid {
  display: grid !important;
  gap: 16px !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-highlight-list {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  margin-top: 26px !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-highlight-list article,
body:has(.page-hero__panel[data-hero="contact"]) .contact-channel,
body:has(.page-hero__panel[data-hero="contact"]) .store-contact-card {
  border-radius: 24px !important;
  border: 1px solid rgba(204, 228, 220, 0.92) !important;
  box-shadow:
    0 18px 30px rgba(22, 84, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-highlight-list article {
  min-height: 0 !important;
  padding: 22px 22px 20px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 208, 153, 0.16), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(248, 252, 249, 0.97)) !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-highlight-list span,
body:has(.page-hero__panel[data-hero="contact"]) .contact-channel span,
body:has(.page-hero__panel[data-hero="contact"]) .store-contact-card__tag {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  min-height: 32px !important;
  padding: 6px 12px !important;
  border-radius: 999px !important;
  background: rgba(236, 248, 243, 0.96) !important;
  color: #2e7f6c !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-highlight-list strong,
body:has(.page-hero__panel[data-hero="contact"]) .contact-channel strong {
  display: block !important;
  margin-top: 12px !important;
  font-size: clamp(24px, 2vw, 30px) !important;
  line-height: 1.28 !important;
  color: #1f365c !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-channel {
  min-height: 0 !important;
  padding: 20px 20px 18px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 212, 158, 0.16), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(151, 220, 196, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246, 251, 248, 0.97)) !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-channel:nth-child(2) {
  background:
    radial-gradient(circle at 100% 0, rgba(168, 218, 248, 0.2), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(155, 220, 202, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(245, 251, 250, 0.97)) !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-channel:nth-child(3) {
  background:
    radial-gradient(circle at 100% 0, rgba(255, 192, 205, 0.2), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(255, 218, 175, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(252, 249, 247, 0.97)) !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .contact-grid--compact {
  align-items: stretch !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .store-contact-list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .store-contact-card {
  min-height: 0 !important;
  padding: 22px 22px 24px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 210, 158, 0.16), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(150, 220, 196, 0.1), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.985), rgba(248,252,249,0.965)) !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .store-contact-card:nth-child(3n + 2) {
  background:
    radial-gradient(circle at 100% 0, rgba(161, 217, 244, 0.18), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(171, 229, 207, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(245,251,249,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .store-contact-card:nth-child(3n) {
  background:
    radial-gradient(circle at 100% 0, rgba(255, 190, 200, 0.18), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(255, 220, 168, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(251,248,246,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .store-contact-card h3 {
  font-size: 25px !important;
  line-height: 1.28 !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .store-contact-card ul {
  margin: 14px 0 18px !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .store-contact-card li {
  line-height: 1.8 !important;
}

body:has(.page-hero__panel[data-hero="contact"]) .store-contact-card .cta-row {
  margin-top: auto !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-locator {
  gap: 18px !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-summary {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin-bottom: 22px !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-summary article,
body:has(.page-hero__panel[data-hero="stores"]) .store-overview-banner {
  border-radius: 24px !important;
  border: 1px solid rgba(204, 228, 220, 0.92) !important;
  box-shadow:
    0 18px 34px rgba(22, 84, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-summary article {
  min-height: 0 !important;
  padding: 20px 20px 18px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 209, 156, 0.16), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(152, 219, 197, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246,251,248,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-summary article:nth-child(2) {
  background:
    radial-gradient(circle at 100% 0, rgba(161, 217, 244, 0.18), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(171, 229, 207, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(245,251,249,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-summary article:nth-child(3) {
  background:
    radial-gradient(circle at 100% 0, rgba(255, 221, 176, 0.18), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(184, 232, 213, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(250,251,247,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-summary article:nth-child(4) {
  background:
    radial-gradient(circle at 100% 0, rgba(255, 190, 199, 0.18), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(155, 219, 201, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(250,248,247,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-summary span {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  min-height: 30px !important;
  padding: 6px 12px !important;
  border-radius: 999px !important;
  background: rgba(238, 248, 244, 0.96) !important;
  color: #2c7d69 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-summary strong {
  display: block !important;
  margin-top: 12px !important;
  font-size: clamp(28px, 2.2vw, 34px) !important;
  line-height: 1.18 !important;
  color: #1f365c !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-summary p {
  margin-top: 10px !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  color: #4b635d !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-banner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 24px 26px !important;
  margin-bottom: 20px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 213, 160, 0.18), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(152, 220, 198, 0.14), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246,252,249,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-banner h3 {
  margin: 0 0 10px !important;
  font-size: clamp(26px, 2.1vw, 32px) !important;
  line-height: 1.24 !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-overview-banner p {
  max-width: 760px !important;
  margin: 0 !important;
  font-size: 15px !important;
  line-height: 1.82 !important;
  color: #4b635d !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-locator__card {
  min-height: 0 !important;
  padding: 22px 22px 24px !important;
  border-radius: 24px !important;
  box-shadow:
    0 18px 34px rgba(22, 84, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-locator__card h3 {
  font-size: 24px !important;
  line-height: 1.3 !important;
}

body:has(.page-hero__panel[data-hero="stores"]) .store-locator__card p,
body:has(.page-hero__panel[data-hero="stores"]) .store-locator__card li {
  line-height: 1.8 !important;
}

body:has(.page-hero__panel[data-hero="tiantan"]),
body:has(.page-hero__panel[data-hero="cancer"]),
body:has(.page-hero__panel[data-hero="anzhen"]),
body:has(.page-hero__panel[data-hero="fuwai"]),
body:has(.page-hero__panel[data-hero="pku"]),
body:has(.page-hero__panel[data-hero="children"]) {
  background:
    linear-gradient(180deg, #f8fbfa 0%, #f4faf7 32%, #fbf8f4 100%) !important;
}

body:has(.page-hero__panel) .store-hero {
  align-items: stretch !important;
  gap: 20px !important;
}

body:has(.page-hero__panel) .info-card,
body:has(.page-hero__panel) .visual-card,
body:has(.page-hero__panel) .service-standard__card,
body:has(.page-hero__panel) .detail-card,
body:has(.page-hero__panel) .related-links__card {
  min-height: 0 !important;
  border-radius: 26px !important;
  box-shadow:
    0 18px 34px rgba(22, 84, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel) .info-card,
body:has(.page-hero__panel) .visual-card {
  padding: 26px 28px !important;
}

body:has(.page-hero__panel) .detail-grid,
body:has(.page-hero__panel) .service-standard__grid,
body:has(.page-hero__panel) .related-links__grid {
  gap: 18px !important;
}

body:has(.page-hero__panel) .detail-card,
body:has(.page-hero__panel) .service-standard__card,
body:has(.page-hero__panel) .related-links__card {
  padding: 24px 24px 22px !important;
}

body:has(.page-hero__panel) .related-links__card {
  min-height: 182px !important;
}

@media (max-width: 1180px) {
  body.home-polish .page-grid,
  body.home-polish .story-gallery,
  body:has(.page-hero__panel[data-hero="contact"]) .store-contact-list,
  body:has(.page-hero__panel[data-hero="contact"]) .contact-highlight-list,
  body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__grid,
  body:has(.page-hero__panel[data-hero="stores"]) .store-overview-summary,
  body:has(.page-hero__panel) .detail-grid,
  body:has(.page-hero__panel) .service-standard__grid,
  body:has(.page-hero__panel) .related-links__grid {
    grid-template-columns: 1fr !important;
  }

  body:has(.page-hero__english) .article-layout,
  body:has(.page-hero__panel[data-hero="tool"]) .article-layout {
    grid-template-columns: 1fr !important;
  }

  body:has(.page-hero__english) .article-sidebar,
  body:has(.page-hero__panel[data-hero="tool"]) .article-sidebar {
    position: static !important;
  }

  body:has(.page-hero__panel[data-hero="stores"]) .store-overview-banner {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__side {
    border-left: 0 !important;
    border-top: 1px solid rgba(206, 231, 221, 0.82) !important;
  }
}

/* Final refinement pass: home rhythm, knowledge/community hierarchy, and floating rail polish. */
@media (min-width: 961px) {
  body.home-polish .photo-marquee {
    overflow: visible !important;
  }

  body.home-polish .photo-marquee::before,
  body.home-polish .photo-marquee::after {
    display: none !important;
  }

  body.home-polish .photo-marquee__track {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    width: 100% !important;
    animation: none !important;
    transform: none !important;
  }

  body.home-polish .photo-marquee__track > [aria-hidden="true"] {
    display: none !important;
  }

  body.home-polish .photo-marquee .photo-card {
    position: relative !important;
    min-height: 292px !important;
    padding: 192px 22px 20px !important;
    border-radius: 26px !important;
    overflow: hidden !important;
    isolation: isolate !important;
    background-size: cover !important;
    background-position: center !important;
    box-shadow:
      0 22px 40px rgba(23, 83, 70, 0.08),
      inset 0 1px 0 rgba(255,255,255,0.28) !important;
  }

  body.home-polish .photo-marquee .photo-card::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background:
      linear-gradient(180deg, rgba(12, 39, 52, 0.06) 0%, rgba(12, 39, 52, 0.66) 76%, rgba(10, 31, 42, 0.82) 100%) !important;
    z-index: -1 !important;
  }

  body.home-polish .photo-card--warm {
    background-image:
      linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,0)),
      url("../images/gallery-room.jpg") !important;
  }

  body.home-polish .photo-card--calm {
    background-image:
      linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,0)),
      url("../images/gallery-family.jpg") !important;
  }

  body.home-polish .photo-card--hope {
    background-image:
      linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,0)),
      url("../images/story-support.jpg") !important;
  }

  body.home-polish .photo-card--trust {
    background-image:
      linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,0)),
      url("../images/gallery-activity.jpg") !important;
  }

  body.home-polish .photo-marquee .photo-card .photo-card__tag,
  body.home-polish .photo-marquee .photo-card span:first-child {
    display: inline-flex !important;
    align-items: center !important;
    width: fit-content !important;
    min-height: 28px !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,0.18) !important;
    border: 1px solid rgba(255,255,255,0.24) !important;
    color: rgba(255,255,255,0.96) !important;
    backdrop-filter: blur(10px) !important;
    margin-bottom: 12px !important;
  }

  body.home-polish .photo-marquee .photo-card h3,
  body.home-polish .photo-marquee .photo-card p {
    color: #ffffff !important;
  }

  body.home-polish .photo-marquee .photo-card h3 {
    margin: 0 0 10px !important;
    font-size: 24px !important;
    line-height: 1.3 !important;
  }

  body.home-polish .photo-marquee .photo-card p {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.72 !important;
    opacity: 0.94 !important;
  }

  body.home-polish .journey-stage {
    display: grid !important;
    grid-template-columns: minmax(0, 1.06fr) minmax(340px, 0.94fr) !important;
    gap: 26px 30px !important;
    padding: 38px 38px 36px !important;
    border-radius: 34px !important;
    background:
      radial-gradient(circle at 0 0, rgba(164, 223, 203, 0.15), transparent 34%),
      radial-gradient(circle at 100% 0, rgba(255, 214, 168, 0.16), transparent 30%),
      linear-gradient(180deg, rgba(255,255,255,0.99), rgba(250,247,244,0.97)) !important;
    box-shadow:
      0 24px 44px rgba(24, 82, 69, 0.08),
      inset 0 1px 0 rgba(255,255,255,0.98) !important;
  }

  body.home-polish .journey-stage__intro {
    max-width: none !important;
    align-self: center !important;
  }

  body.home-polish .journey-stage__actions {
    margin-top: 18px !important;
  }

  body.home-polish .journey-stage__visual {
    min-height: 206px !important;
    margin: 0 !important;
    border-radius: 28px !important;
    background:
      radial-gradient(circle at 10% 10%, rgba(159, 221, 201, 0.24), transparent 28%),
      radial-gradient(circle at 90% 18%, rgba(255, 213, 159, 0.28), transparent 30%),
      linear-gradient(180deg, rgba(240, 249, 245, 0.96), rgba(253, 247, 243, 0.95)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.98),
      0 18px 34px rgba(24, 82, 69, 0.08) !important;
  }

  body.home-polish .journey-steps {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 16px !important;
    margin-top: 0 !important;
  }

  body.home-polish .journey-steps article {
    min-height: 194px !important;
    margin: 0 !important;
    padding: 22px 20px 20px !important;
    border-radius: 24px !important;
    background:
      radial-gradient(circle at 100% 0, rgba(255, 216, 172, 0.14), transparent 30%),
      linear-gradient(180deg, rgba(255,255,255,0.99), rgba(248,252,249,0.97)) !important;
    box-shadow:
      0 16px 30px rgba(24, 82, 69, 0.07),
      inset 0 1px 0 rgba(255,255,255,0.98) !important;
    transform: none !important;
  }

  body.home-polish .journey-steps article:nth-child(2n) {
    background:
      radial-gradient(circle at 100% 0, rgba(184, 223, 158, 0.18), transparent 30%),
      linear-gradient(180deg, rgba(249,253,247,0.99), rgba(243,250,246,0.97)) !important;
  }

  body.home-polish .grid--4 {
    gap: 18px !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  body.home-polish .feature-card {
    min-height: 186px !important;
    padding: 22px 22px 20px !important;
    border-radius: 24px !important;
    background:
      radial-gradient(circle at 100% 0, rgba(255, 215, 171, 0.16), transparent 30%),
      radial-gradient(circle at 0 100%, rgba(157, 222, 201, 0.1), transparent 34%),
      linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,252,248,0.97)) !important;
    box-shadow:
      0 18px 32px rgba(24, 82, 69, 0.07),
      inset 0 1px 0 rgba(255,255,255,0.98) !important;
  }

  body.home-polish .feature-card:nth-child(2) {
    background:
      radial-gradient(circle at 100% 0, rgba(173, 218, 246, 0.18), transparent 30%),
      linear-gradient(180deg, rgba(255,255,255,0.99), rgba(245,250,251,0.97)) !important;
  }

  body.home-polish .feature-card:nth-child(3) {
    background:
      radial-gradient(circle at 100% 0, rgba(255, 198, 203, 0.16), transparent 30%),
      linear-gradient(180deg, rgba(255,255,255,0.99), rgba(251,247,248,0.97)) !important;
  }

  body.home-polish .feature-card:nth-child(4) {
    background:
      radial-gradient(circle at 100% 0, rgba(186, 225, 169, 0.18), transparent 30%),
      linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246,251,246,0.97)) !important;
  }
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-body {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr) !important;
  gap: 24px !important;
  align-items: start !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-heading,
body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-filter {
  grid-column: 1 / -1 !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-filter {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  padding: 12px !important;
  border-radius: 24px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,251,248,0.95)) !important;
  border: 1px solid rgba(208, 231, 223, 0.92) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.98),
    0 14px 28px rgba(23, 83, 70, 0.05) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-filter a {
  min-height: 40px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.96) !important;
  border: 1px solid rgba(211, 224, 244, 0.9) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.98),
    0 8px 18px rgba(98, 128, 182, 0.08) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-index {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  align-content: start !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-index__feature {
  min-height: 0 !important;
  padding: 28px 28px 26px !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 213, 164, 0.16), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(158, 224, 203, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246,252,249,0.97)) !important;
  box-shadow:
    0 20px 36px rgba(24, 82, 69, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-index__feature h3 {
  font-size: clamp(26px, 2.3vw, 36px) !important;
  line-height: 1.22 !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-index__feature p {
  font-size: 15px !important;
  line-height: 1.84 !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-index__list {
  display: grid !important;
  gap: 14px !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-index__list a {
  display: grid !important;
  gap: 6px !important;
  min-height: 98px !important;
  padding: 18px 20px !important;
  border-radius: 22px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,251,255,0.95)) !important;
  border: 1px solid rgba(213, 227, 244, 0.9) !important;
  box-shadow:
    0 14px 26px rgba(97, 126, 180, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-index__list strong {
  font-size: 18px !important;
  line-height: 1.3 !important;
  color: #2f426f !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-index__list span {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: #5f7288 !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246,251,249,0.97)) !important;
  box-shadow:
    0 20px 36px rgba(24, 82, 69, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual img {
  width: 100% !important;
  height: 420px !important;
  object-fit: cover !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual__content {
  position: relative !important;
  margin: -58px 20px 20px !important;
  padding: 20px 22px !important;
  border-radius: 22px !important;
  background:
    linear-gradient(180deg, rgba(63, 98, 92, 0.78), rgba(34, 71, 69, 0.88)) !important;
  color: #ffffff !important;
  backdrop-filter: blur(16px) !important;
  box-shadow:
    0 18px 28px rgba(23, 68, 65, 0.22),
    inset 0 1px 0 rgba(255,255,255,0.18) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual__content h3,
body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual__content p {
  color: #ffffff !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #articles .article-filters {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  padding: 18px !important;
  border-radius: 26px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 214, 168, 0.14), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246,251,248,0.97)) !important;
  border: 1px solid rgba(208, 231, 223, 0.9) !important;
  box-shadow:
    0 18px 34px rgba(24, 82, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #articles .article-filters label {
  display: grid !important;
  gap: 8px !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #articles .article-filters span {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #55706b !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #articles .article-filters select {
  min-height: 46px !important;
  padding: 0 14px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(205, 223, 234, 0.94) !important;
  background: rgba(255,255,255,0.97) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.96) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) .article-list__summary {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  min-height: 36px !important;
  margin: 18px 0 16px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  background: rgba(237, 247, 243, 0.96) !important;
  color: #2e7966 !important;
  font-weight: 700 !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) .article-list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) .article-card {
  display: flex !important;
  flex-direction: column !important;
  min-height: 234px !important;
  padding: 22px 22px 20px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 214, 170, 0.14), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246,251,248,0.97)) !important;
  border: 1px solid rgba(208, 228, 221, 0.92) !important;
  box-shadow:
    0 18px 32px rgba(24, 82, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) .article-card:nth-child(3n + 2) {
  background:
    radial-gradient(circle at 100% 0, rgba(171, 219, 246, 0.18), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(245,250,251,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) .article-card:nth-child(3n) {
  background:
    radial-gradient(circle at 100% 0, rgba(255, 196, 203, 0.16), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(251,247,248,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) .article-card__type {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  min-height: 30px !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  background: rgba(237, 247, 243, 0.95) !important;
  color: #2e7a66 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) .article-card h3 {
  margin: 14px 0 10px !important;
  font-size: 23px !important;
  line-height: 1.32 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) .article-card p {
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.82 !important;
  color: #58706a !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) .article-card__meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: auto !important;
  padding-top: 14px !important;
  color: #718588 !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #diseases .page-grid,
body:has(.page-hero__panel[data-hero="knowledge"]) #hospital .page-grid,
body:has(.page-hero__panel[data-hero="knowledge"]) #media .resource-columns {
  gap: 18px !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #diseases .page-card,
body:has(.page-hero__panel[data-hero="knowledge"]) #hospital .page-card {
  min-height: 100% !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,251,249,0.97)) !important;
  box-shadow:
    0 18px 32px rgba(24, 82, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #diseases .page-card__media,
body:has(.page-hero__panel[data-hero="knowledge"]) #hospital .page-card__media {
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #diseases .page-card__body,
body:has(.page-hero__panel[data-hero="knowledge"]) #hospital .page-card__body {
  display: grid !important;
  gap: 10px !important;
  padding: 20px 20px 22px !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #topics .section-split {
  grid-template-columns: minmax(0, 1.04fr) minmax(330px, 0.96fr) !important;
  gap: 24px !important;
  align-items: start !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #topics .page-grid {
  gap: 16px !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #topics .info-card,
body:has(.page-hero__panel[data-hero="knowledge"]) #media .resource-card {
  min-height: 0 !important;
  padding: 24px 24px 22px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 213, 165, 0.14), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(246,251,248,0.97)) !important;
  box-shadow:
    0 18px 32px rgba(24, 82, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #media .resource-card:nth-child(2) {
  background:
    radial-gradient(circle at 100% 0, rgba(171, 219, 246, 0.18), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(245,250,251,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #media .resource-card:nth-child(3) {
  background:
    radial-gradient(circle at 100% 0, rgba(255, 195, 201, 0.16), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(251,247,248,0.97)) !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #tools .tool-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

body:has(.page-hero__panel[data-hero="knowledge"]) #tools .tool-link {
  display: flex !important;
  align-items: center !important;
  min-height: 74px !important;
  padding: 0 20px !important;
  border-radius: 20px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,251,249,0.97)) !important;
  border: 1px solid rgba(208, 228, 221, 0.92) !important;
  box-shadow:
    0 14px 28px rgba(24, 82, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="community"]) #groups .page-grid {
  gap: 20px !important;
}

body:has(.page-hero__panel[data-hero="community"]) #groups .page-card.page-card--media {
  min-height: 100% !important;
  border-radius: 26px !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,251,249,0.97)) !important;
  box-shadow:
    0 20px 36px rgba(24, 82, 69, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="community"]) #groups .page-card__media {
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
}

body:has(.page-hero__panel[data-hero="community"]) #groups .page-card__body {
  display: grid !important;
  gap: 10px !important;
  min-height: 166px !important;
  padding: 22px 22px 24px !important;
}

body:has(.page-hero__panel[data-hero="community"]) #listener .section-split,
body:has(.page-hero__panel[data-hero="community"]) #children .section-split {
  gap: 24px !important;
  align-items: stretch !important;
}

body:has(.page-hero__panel[data-hero="community"]) #listener .section-body,
body:has(.page-hero__panel[data-hero="community"]) #listener .section-aside {
  display: grid !important;
  gap: 18px !important;
  align-content: start !important;
}

body:has(.page-hero__panel[data-hero="community"]) #listener .section-panel,
body:has(.page-hero__panel[data-hero="community"]) #children .section-panel {
  min-height: 0 !important;
  padding: 24px 24px 22px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 214, 170, 0.14), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(250,247,244,0.97)) !important;
  box-shadow:
    0 18px 34px rgba(24, 82, 69, 0.07),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="community"]) #listener .section-panel ul,
body:has(.page-hero__panel[data-hero="community"]) #children .section-panel ul {
  display: grid !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body:has(.page-hero__panel[data-hero="community"]) #listener .section-panel li,
body:has(.page-hero__panel[data-hero="community"]) #children .section-panel li {
  min-height: 52px !important;
  padding: 14px 18px !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,0.9) !important;
  border: 1px solid rgba(240, 216, 205, 0.92) !important;
}

body:has(.page-hero__panel[data-hero="community"]) #listener .section-visual,
body:has(.page-hero__panel[data-hero="community"]) #children .section-visual {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(248,251,249,0.97)) !important;
  box-shadow:
    0 20px 36px rgba(24, 82, 69, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.98) !important;
}

body:has(.page-hero__panel[data-hero="community"]) #listener .section-visual img,
body:has(.page-hero__panel[data-hero="community"]) #children .section-visual img {
  width: 100% !important;
  aspect-ratio: 5 / 4 !important;
  object-fit: cover !important;
}

body:has(.page-hero__panel[data-hero="community"]) #listener .section-visual__content,
body:has(.page-hero__panel[data-hero="community"]) #children .section-visual__content {
  position: relative !important;
  margin: -72px 20px 20px !important;
  padding: 20px 22px !important;
  border-radius: 22px !important;
  background:
    linear-gradient(180deg, rgba(66, 103, 98, 0.76), rgba(35, 70, 70, 0.88)) !important;
  color: #ffffff !important;
  backdrop-filter: blur(16px) !important;
  box-shadow:
    0 18px 28px rgba(23, 68, 65, 0.22),
    inset 0 1px 0 rgba(255,255,255,0.18) !important;
}

body:has(.page-hero__panel[data-hero="community"]) #listener .section-visual__content h3,
body:has(.page-hero__panel[data-hero="community"]) #listener .section-visual__content p,
body:has(.page-hero__panel[data-hero="community"]) #children .section-visual__content h3,
body:has(.page-hero__panel[data-hero="community"]) #children .section-visual__content p {
  color: #ffffff !important;
}

@media (min-width: 701px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail {
    top: 136px !important;
    right: 22px !important;
    width: 88px !important;
    padding: 12px 10px 14px !important;
    border-radius: 34px !important;
    background:
      radial-gradient(circle at 50% 0, rgba(255,255,255,0.72), transparent 36%),
      linear-gradient(180deg, rgba(245, 255, 252, 0.95), rgba(233, 248, 243, 0.92)) !important;
    border: 1px solid rgba(207, 234, 226, 0.96) !important;
    box-shadow:
      0 18px 36px rgba(30, 104, 90, 0.12),
      inset 0 1px 0 rgba(255,255,255,0.98) !important;
  }

  html body .floating-rail__buttons {
    gap: 10px !important;
  }

  html body .floating-rail__title {
    min-height: 44px !important;
    padding: 0 6px !important;
    border-radius: 18px !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.96), rgba(237,248,244,0.94)) !important;
    color: #3d7f74 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.98),
      0 8px 18px rgba(40, 112, 99, 0.1) !important;
  }

  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button {
    width: 62px !important;
    min-width: 62px !important;
    min-height: 56px !important;
    padding: 8px 4px !important;
    border-radius: 20px !important;
    border: 1px solid rgba(203, 229, 222, 0.94) !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.98), rgba(243,249,247,0.94)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.98),
      0 10px 22px rgba(35, 107, 95, 0.1) !important;
  }

  html body .floating-rail__button:hover,
  html body .floating-rail__button:focus-visible {
    transform: translateX(-4px) !important;
    border-color: rgba(104, 196, 167, 0.92) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.48),
      0 14px 28px rgba(35, 107, 95, 0.18) !important;
  }

  html body .floating-rail__icon,
  html body .floating-rail .floating-rail__buttons .floating-rail__button .floating-rail__icon {
    width: 26px !important;
    height: 26px !important;
    margin: 0 auto 4px !important;
    border-radius: 10px !important;
  }

  html body .floating-rail__label {
    font-size: 11.5px !important;
    line-height: 1.12 !important;
    color: #4b6e69 !important;
  }

  html body .floating-panel,
  html body .floating-rail > .floating-panel,
  html body .floating-rail.is-open .floating-panel {
    border-radius: 28px !important;
    border: 1px solid rgba(207, 232, 225, 0.94) !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.985), rgba(245,250,248,0.97)) !important;
    box-shadow:
      0 24px 44px rgba(30, 104, 90, 0.16),
      inset 0 1px 0 rgba(255,255,255,0.98) !important;
  }
}

@media (max-width: 1180px) {
  body.home-polish .photo-marquee__track,
  body.home-polish .journey-steps,
  body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-body,
  body:has(.page-hero__panel[data-hero="knowledge"]) .article-list,
  body:has(.page-hero__panel[data-hero="knowledge"]) #tools .tool-grid,
  body:has(.page-hero__panel[data-hero="community"]) #listener .section-split,
  body:has(.page-hero__panel[data-hero="community"]) #children .section-split {
    grid-template-columns: 1fr !important;
  }

  body.home-polish .photo-marquee__track > [aria-hidden="true"] {
    display: none !important;
  }

  body:has(.page-hero__panel[data-hero="knowledge"]) #articles .article-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body:has(.page-hero__panel[data-hero="knowledge"]) #topics .section-split {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  body.home-polish .photo-marquee__track,
  body:has(.page-hero__panel[data-hero="knowledge"]) #media .resource-columns,
  body:has(.page-hero__panel[data-hero="community"]) #groups .page-grid {
    grid-template-columns: 1fr !important;
  }

  body.home-polish .photo-marquee .photo-card {
    min-height: 248px !important;
    padding-top: 158px !important;
  }

  body.home-polish .journey-stage {
    padding: 28px 24px 26px !important;
  }

  body:has(.page-hero__panel[data-hero="knowledge"]) #articles .article-filters {
    grid-template-columns: 1fr !important;
    padding: 14px !important;
  }

  body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual img,
  body:has(.page-hero__panel[data-hero="community"]) #listener .section-visual img,
  body:has(.page-hero__panel[data-hero="community"]) #children .section-visual img {
    height: auto !important;
  }
}

/* V124 hard mobile safe measure: prevent legacy desktop grids from clipping text in screenshots. */
@media (max-width: 760px) {
  html body:has(.page-hero__panel) :where(.page-hero__panel) {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  html body:has(.page-hero__panel) :where(.page-hero__panel h1) {
    width: 292px !important;
    max-width: 292px !important;
    font-size: 28px !important;
    line-height: 1.3 !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body:has(.page-hero__panel) :where(.page-hero__panel .hero__summary, .page-hero__panel p:not(.page-hero__english)) {
    width: 292px !important;
    max-width: 292px !important;
    font-size: 15px !important;
    line-height: 1.85 !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body:has(.page-hero__panel) :where(.section-heading h2) {
    width: 300px !important;
    max-width: 300px !important;
    font-size: 24px !important;
    line-height: 1.34 !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body:has(.page-hero__panel) :where(.section-heading p) {
    width: 300px !important;
    max-width: 300px !important;
    font-size: 15px !important;
    line-height: 1.85 !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body:has(.page-hero__panel) :where(.knowledge-index__feature h3, .news-item h3, .article-card h3, .tool-sheet h3, .guide-tile h3, .side-card h3) {
    width: 286px !important;
    max-width: 286px !important;
    font-size: 24px !important;
    line-height: 1.34 !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body:has(.page-hero__panel) :where(.knowledge-index__feature p, .news-item p, .article-card p, .guide-tile p, .side-card p) {
    width: 286px !important;
    max-width: 286px !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body:has(.page-hero__panel) :where(.tool-sheet li, .article-body li, .guide-note li, .side-card li, .store-contact-card li) {
    width: 250px !important;
    max-width: 250px !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body main > .section > .container.tool-list > .tool-sheet,
  html body .section > .container.tool-list > .tool-sheet {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  html body .tool-sheet > * {
    max-width: 100% !important;
  }
}

/* V125 warm community card system: richer nonprofit palette and softer tactile depth. */
html body :where(
  .feature-card,
  .page-card:not(.page-card--media),
  .info-card,
  .detail-card,
  .service-standard__card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card,
  .story-gallery__card,
  .panel-card
) {
  --yl-warm-a: #fffaf1;
  --yl-warm-b: #eefaf5;
  --yl-warm-c: rgba(255, 218, 168, 0.18);
  --yl-warm-border: rgba(204, 229, 218, 0.92);
  --yl-warm-accent: #48aa8a;
  --yl-warm-shadow: rgba(55, 98, 83, 0.12);
  --yl-warm-ink: #173f39;
  position: relative !important;
  color: var(--yl-warm-ink) !important;
  background:
    radial-gradient(circle at 100% 0, var(--yl-warm-c), transparent 32%),
    linear-gradient(145deg, var(--yl-warm-a), var(--yl-warm-b)) !important;
  border: 1px solid var(--yl-warm-border) !important;
  border-top: 3px solid color-mix(in srgb, var(--yl-warm-accent) 78%, white) !important;
  box-shadow:
    0 18px 42px var(--yl-warm-shadow),
    0 3px 10px rgba(27, 72, 62, 0.04),
    inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
  isolation: isolate !important;
}

html body :where(
  .feature-card,
  .page-card:not(.page-card--media),
  .info-card,
  .detail-card,
  .service-standard__card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card,
  .story-gallery__card,
  .panel-card
)::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  border-radius: inherit !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.54), transparent 34%),
    linear-gradient(315deg, rgba(255,255,255,0.22), transparent 38%) !important;
  opacity: 0.72 !important;
  z-index: -1 !important;
}

html body :where(
  .feature-card,
  .page-card,
  .info-card,
  .detail-card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card
) :where(h2, h3, strong, summary) {
  color: color-mix(in srgb, var(--yl-warm-ink, #173f39) 86%, #21305f) !important;
}

html body :where(
  .feature-card,
  .page-card,
  .info-card,
  .detail-card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card
) :where(p, li, span) {
  color: #365f59 !important;
}

html body :where(
  .feature-card,
  .page-card:not(.page-card--media),
  .info-card,
  .detail-card,
  .service-standard__card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card,
  .story-gallery__card
):nth-child(6n + 2) {
  --yl-warm-a: #fff7ef;
  --yl-warm-b: #fff0e3;
  --yl-warm-c: rgba(243, 157, 98, 0.18);
  --yl-warm-border: rgba(239, 207, 178, 0.9);
  --yl-warm-accent: #ef9c62;
  --yl-warm-shadow: rgba(145, 95, 58, 0.12);
  --yl-warm-ink: #60412c;
}

html body :where(
  .feature-card,
  .page-card:not(.page-card--media),
  .info-card,
  .detail-card,
  .service-standard__card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card,
  .story-gallery__card
):nth-child(6n + 3) {
  --yl-warm-a: #f7fbff;
  --yl-warm-b: #edf7fb;
  --yl-warm-c: rgba(112, 178, 199, 0.18);
  --yl-warm-border: rgba(190, 222, 232, 0.9);
  --yl-warm-accent: #69abc1;
  --yl-warm-shadow: rgba(71, 116, 135, 0.12);
  --yl-warm-ink: #214e5d;
}

html body :where(
  .feature-card,
  .page-card:not(.page-card--media),
  .info-card,
  .detail-card,
  .service-standard__card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card,
  .story-gallery__card
):nth-child(6n + 4) {
  --yl-warm-a: #fbf8ff;
  --yl-warm-b: #f2effb;
  --yl-warm-c: rgba(154, 136, 200, 0.16);
  --yl-warm-border: rgba(215, 202, 236, 0.9);
  --yl-warm-accent: #9a88c8;
  --yl-warm-shadow: rgba(95, 78, 138, 0.11);
  --yl-warm-ink: #473d68;
}

html body :where(
  .feature-card,
  .page-card:not(.page-card--media),
  .info-card,
  .detail-card,
  .service-standard__card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card,
  .story-gallery__card
):nth-child(6n + 5) {
  --yl-warm-a: #fffaf4;
  --yl-warm-b: #fff5f6;
  --yl-warm-c: rgba(231, 142, 155, 0.14);
  --yl-warm-border: rgba(235, 205, 210, 0.9);
  --yl-warm-accent: #d98292;
  --yl-warm-shadow: rgba(138, 76, 86, 0.1);
  --yl-warm-ink: #66414a;
}

html body :where(
  .feature-card,
  .page-card:not(.page-card--media),
  .info-card,
  .detail-card,
  .service-standard__card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card,
  .story-gallery__card
):nth-child(6n) {
  --yl-warm-a: #fbfff6;
  --yl-warm-b: #f1faea;
  --yl-warm-c: rgba(157, 196, 116, 0.16);
  --yl-warm-border: rgba(211, 229, 190, 0.9);
  --yl-warm-accent: #90b96b;
  --yl-warm-shadow: rgba(82, 118, 60, 0.1);
  --yl-warm-ink: #425b32;
}

html body :where(.page-card--media, .visual-card, .section-visual, .story-visual, .photo-card) {
  border: 1px solid rgba(205, 229, 218, 0.9) !important;
  box-shadow:
    0 20px 48px rgba(42, 91, 77, 0.13),
    inset 0 1px 0 rgba(255, 255, 255, 0.72) !important;
}

html body :where(.page-card--media .page-card__body, .section-visual__content, .story-visual h3) {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(247, 252, 249, 0.93)) !important;
  border-top: 1px solid rgba(203, 228, 218, 0.86) !important;
}

html body :where(.eyebrow, .article-card__type, .store-contact-card__tag, .event-status, .photo-card__tag) {
  background:
    linear-gradient(135deg, rgba(236, 250, 244, 0.96), rgba(255, 248, 235, 0.96)) !important;
  border: 1px solid rgba(183, 224, 207, 0.92) !important;
  color: #1f7a67 !important;
  box-shadow: 0 8px 18px rgba(48, 111, 93, 0.08), inset 0 1px 0 rgba(255,255,255,0.9) !important;
}

html body :where(.button, button, .footer__button) {
  box-shadow:
    0 12px 24px rgba(58, 129, 100, 0.16),
    inset 0 1px 0 rgba(255,255,255,0.62) !important;
}

html body :where(.button--ghost, .button--secondary, .footer__button--secondary) {
  background:
    linear-gradient(145deg, rgba(255,255,255,0.96), rgba(239, 250, 245, 0.96)) !important;
  border-color: rgba(183, 224, 207, 0.9) !important;
  color: #1f6c5e !important;
}

@media (hover: hover) {
  html body :where(
    .feature-card,
    .page-card,
    .info-card,
    .detail-card,
    .guide-card,
    .guide-tile,
    .tool-sheet,
    .side-card,
    .resource-card,
    .article-card,
    .news-item,
    .event-card,
    .download-card,
    .contact-panel,
    .contact-channel,
    .store-contact-card,
    .store-locator__card,
    .related-links__card
  ):hover {
    transform: translateY(-2px) !important;
    box-shadow:
      0 24px 54px color-mix(in srgb, var(--yl-warm-shadow, rgba(55,98,83,0.12)) 78%, rgba(34,76,66,0.16)),
      inset 0 1px 0 rgba(255,255,255,0.94) !important;
  }
}

/* V126 close gaps: store/detail cards and visual-caption cards join the warm system. */
html body:has(.page-hero__panel) :where(.info-card, .detail-card, .detail-card--accent, .detail-card--soft, .related-links__card, .guide-sidebar__card, .side-card) {
  --yl-warm-a: #fffaf1;
  --yl-warm-b: #eefaf5;
  --yl-warm-c: rgba(255, 218, 168, 0.18);
  --yl-warm-border: rgba(204, 229, 218, 0.92);
  --yl-warm-accent: #48aa8a;
  --yl-warm-shadow: rgba(55, 98, 83, 0.12);
  --yl-warm-ink: #173f39;
  background:
    radial-gradient(circle at 100% 0, var(--yl-warm-c), transparent 32%),
    linear-gradient(145deg, var(--yl-warm-a), var(--yl-warm-b)) !important;
  border: 1px solid var(--yl-warm-border) !important;
  border-top: 3px solid color-mix(in srgb, var(--yl-warm-accent) 78%, white) !important;
  box-shadow:
    0 18px 42px var(--yl-warm-shadow),
    inset 0 1px 0 rgba(255,255,255,0.92) !important;
}

html body:has(.page-hero__panel) :where(.detail-card, .related-links__card, .guide-sidebar__card, .side-card):nth-child(3n + 2) {
  --yl-warm-a: #fff7ef;
  --yl-warm-b: #fff0e3;
  --yl-warm-c: rgba(243, 157, 98, 0.17);
  --yl-warm-border: rgba(239, 207, 178, 0.9);
  --yl-warm-accent: #ef9c62;
  --yl-warm-shadow: rgba(145, 95, 58, 0.12);
}

html body:has(.page-hero__panel) :where(.detail-card, .related-links__card, .guide-sidebar__card, .side-card):nth-child(3n) {
  --yl-warm-a: #f7fbff;
  --yl-warm-b: #edf7fb;
  --yl-warm-c: rgba(112, 178, 199, 0.17);
  --yl-warm-border: rgba(190, 222, 232, 0.9);
  --yl-warm-accent: #69abc1;
  --yl-warm-shadow: rgba(71, 116, 135, 0.12);
}

html body:has(.page-hero__panel) :where(.section-visual) {
  overflow: hidden !important;
}

html body:has(.page-hero__panel) :where(.section-visual__content) {
  max-width: calc(100% - 40px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

html body:has(.page-hero__panel) :where(.section-visual__content h3, .section-visual__content p) {
  max-width: 100% !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

/* V128 visual caption containment: remove tiny desktop scrollWidth drift. */
html body :where(.section-visual) {
  box-sizing: border-box !important;
  overflow: hidden !important;
  max-width: 100% !important;
  contain: paint !important;
}

html body :where(.section-visual__content) {
  width: calc(100% - 48px) !important;
  max-width: calc(100% - 48px) !important;
  padding-left: 22px !important;
  padding-right: 22px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

html body :where(.section-visual__content h2, .section-visual__content h3, .section-visual__content p, .section-visual__content li) {
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  box-sizing: border-box !important;
}

html body :where(.section-visual)::before,
html body :where(.section-visual)::after,
html body :where(.section-visual__content)::before,
html body :where(.section-visual__content)::after {
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* V127 force store detail cards out of flat transparent state. */
html body:has(.store-hero) .info-card,
html body:has(.store-hero) .detail-card,
html body:has(.store-hero) .related-links__card,
html body:has(.page-hero__panel[data-hero="tiantan"]) .info-card,
html body:has(.page-hero__panel[data-hero="tiantan"]) .detail-card,
html body:has(.page-hero__panel[data-hero="tiantan"]) .related-links__card,
html body:has(.page-hero__panel[data-hero="cancer"]) .info-card,
html body:has(.page-hero__panel[data-hero="cancer"]) .detail-card,
html body:has(.page-hero__panel[data-hero="cancer"]) .related-links__card,
html body:has(.page-hero__panel[data-hero="anzhen"]) .info-card,
html body:has(.page-hero__panel[data-hero="anzhen"]) .detail-card,
html body:has(.page-hero__panel[data-hero="anzhen"]) .related-links__card,
html body:has(.page-hero__panel[data-hero="fuwai"]) .info-card,
html body:has(.page-hero__panel[data-hero="fuwai"]) .detail-card,
html body:has(.page-hero__panel[data-hero="fuwai"]) .related-links__card,
html body:has(.page-hero__panel[data-hero="pku"]) .info-card,
html body:has(.page-hero__panel[data-hero="pku"]) .detail-card,
html body:has(.page-hero__panel[data-hero="pku"]) .related-links__card,
html body:has(.page-hero__panel[data-hero="children"]) .info-card,
html body:has(.page-hero__panel[data-hero="children"]) .detail-card,
html body:has(.page-hero__panel[data-hero="children"]) .related-links__card {
  background:
    radial-gradient(circle at 100% 0, rgba(255, 218, 168, 0.18), transparent 32%),
    radial-gradient(circle at 0 100%, rgba(144, 209, 189, 0.12), transparent 34%),
    linear-gradient(145deg, #fffaf1, #eefaf5) !important;
  border: 1px solid rgba(204, 229, 218, 0.92) !important;
  border-top: 3px solid rgba(72, 170, 138, 0.72) !important;
  box-shadow:
    0 18px 42px rgba(55, 98, 83, 0.12),
    inset 0 1px 0 rgba(255,255,255,0.92) !important;
}

html body:has(.store-hero) :where(.detail-card, .related-links__card):nth-child(3n + 2),
html body:has(.page-hero__panel) :where(.detail-card, .related-links__card):nth-child(3n + 2) {
  background:
    radial-gradient(circle at 100% 0, rgba(243, 157, 98, 0.17), transparent 32%),
    linear-gradient(145deg, #fff7ef, #fff0e3) !important;
  border-color: rgba(239, 207, 178, 0.9) !important;
  border-top-color: rgba(239, 156, 98, 0.74) !important;
}

html body:has(.store-hero) :where(.detail-card, .related-links__card):nth-child(3n),
html body:has(.page-hero__panel) :where(.detail-card, .related-links__card):nth-child(3n) {
  background:
    radial-gradient(circle at 100% 0, rgba(112, 178, 199, 0.17), transparent 32%),
    linear-gradient(145deg, #f7fbff, #edf7fb) !important;
  border-color: rgba(190, 222, 232, 0.9) !important;
  border-top-color: rgba(105, 171, 193, 0.74) !important;
}

/* V123 mobile readable measure: keep copy away from the clipped right edge. */
@media (max-width: 760px) {
  html body:has(.page-hero__panel) :where(.page-hero__panel, .section-heading, .section-panel, .article-body, .article-sidebar, .news-item, .knowledge-index__feature, .tool-sheet, .guide-tile, .guide-note, .side-card, .contact-channel, .store-contact-card) {
    overflow: hidden !important;
  }

  html body:has(.page-hero__panel) :where(.page-hero__panel h1, .page-hero__panel .hero__summary, .page-hero__panel .page-hero__english, .page-hero__panel p) {
    display: block !important;
    width: auto !important;
    max-width: calc(100vw - 78px) !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body:has(.page-hero__panel) :where(.section-heading h2, .section-heading p) {
    display: block !important;
    width: auto !important;
    max-width: calc(100vw - 48px) !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-right: 6px !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body:has(.page-hero__panel) :where(.knowledge-index__feature h3, .knowledge-index__feature p, .news-item h3, .news-item p, .article-card h3, .article-card p, .tool-sheet h3, .guide-tile h3, .guide-tile p, .side-card h3, .side-card p) {
    display: block !important;
    width: auto !important;
    max-width: calc(100vw - 76px) !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body:has(.page-hero__panel) :where(.tool-sheet li, .article-body li, .guide-note li, .side-card li, .store-contact-card li) {
    display: list-item !important;
    width: auto !important;
    max-width: calc(100vw - 96px) !important;
    min-width: 0 !important;
    padding-right: 0 !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-heading {
    padding-right: 12px !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-heading h2,
  html body:has(.page-hero__panel[data-hero="news"]) .section-heading h2 {
    max-width: calc(100vw - 52px) !important;
    font-size: 24px !important;
    line-height: 1.34 !important;
  }

  html body:has(.page-hero__panel[data-hero="news"]) .news-item h3 {
    max-width: calc(100vw - 88px) !important;
    font-size: 25px !important;
    line-height: 1.32 !important;
  }

  html body .tool-sheet h3 {
    max-width: calc(100vw - 86px) !important;
  }
}

/* Final visual pass: keep the home hero readable and make the service rail feel designed. */
html body.home-polish .hero.section {
  overflow: hidden !important;
}

html body.home-polish .hero__grid {
  width: min(100%, 1320px) !important;
  margin-inline: auto !important;
  padding-inline: clamp(42px, 5vw, 78px) !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

html body.home-polish .hero__content {
  overflow: visible !important;
  transform: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
  min-width: 0 !important;
}

html body.home-polish .hero__content > *,
html body.home-polish .hero__content h1,
html body.home-polish .hero h1,
html body.home-polish .hero__summary {
  transform: none !important;
  margin-left: 0 !important;
  text-indent: 0 !important;
  max-width: 100% !important;
  overflow: visible !important;
}

@media (min-width: 701px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail {
    top: 132px !important;
    right: 20px !important;
    width: 106px !important;
    max-width: 106px !important;
    padding: 0 !important;
    filter: drop-shadow(0 22px 34px rgba(25, 86, 76, 0.14)) !important;
  }

  html body .floating-rail__buttons {
    width: 106px !important;
    padding: 12px 10px !important;
    gap: 8px !important;
    border-radius: 30px !important;
    border: 1px solid rgba(189, 224, 214, 0.9) !important;
    background:
      radial-gradient(circle at 50% 0, rgba(255,255,255,0.98), rgba(255,255,255,0) 34%),
      linear-gradient(180deg, rgba(251,255,253,0.98), rgba(235,248,243,0.94)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.98),
      inset 0 -18px 38px rgba(160, 211, 196, 0.14),
      0 20px 38px rgba(25, 86, 76, 0.13) !important;
    backdrop-filter: blur(16px) !important;
  }

  html body .floating-rail__title {
    width: 78px !important;
    min-height: 38px !important;
    margin: 0 auto 4px !important;
    border-radius: 18px !important;
    color: #0f7d6d !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.98), rgba(239,249,246,0.94)) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    box-shadow:
      0 10px 20px rgba(38, 121, 103, 0.09),
      inset 0 1px 0 rgba(255,255,255,0.98) !important;
  }

  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(1),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(2),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(3),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(4),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(5),
  html body .floating-rail .floating-rail__buttons .floating-rail__button--top {
    width: 78px !important;
    min-width: 78px !important;
    max-width: 78px !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    padding: 0 8px !important;
    border-radius: 17px !important;
    border: 1px solid rgba(255,255,255,0.68) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.46),
      0 10px 18px rgba(28, 93, 82, 0.11) !important;
  }

  html body .floating-rail__button:hover,
  html body .floating-rail__button:focus-visible {
    transform: translateX(-5px) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.62),
      0 16px 26px rgba(26, 103, 88, 0.2) !important;
  }

  html body .floating-rail__label,
  html body .floating-rail__button--top .floating-rail__label {
    font-size: 13px !important;
    line-height: 1.1 !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }

  html body .floating-panel,
  html body .floating-rail > .floating-panel,
  html body .floating-rail.is-open .floating-panel {
    right: 124px !important;
    width: 292px !important;
    border-radius: 26px !important;
    border: 1px solid rgba(192, 225, 216, 0.96) !important;
    background:
      radial-gradient(circle at 0 0, rgba(255, 206, 150, 0.18), transparent 34%),
      linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,251,248,0.98)) !important;
    box-shadow:
      0 24px 48px rgba(22, 84, 69, 0.16),
      inset 0 1px 0 rgba(255,255,255,0.98) !important;
  }
}

@media (max-width: 1180px) and (min-width: 701px) {
  html body.home-polish .hero__grid {
    padding-inline: 34px !important;
  }

  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail {
    right: 12px !important;
    transform: scale(0.92) !important;
    transform-origin: top right !important;
  }
}

@media (max-width: 760px) {
  html body.home-polish .hero__grid {
    padding-inline: 22px !important;
  }
}

html body .nav {
  overflow: visible !important;
}

html body .nav a {
  width: auto !important;
  min-width: max-content !important;
  max-width: none !important;
  padding-left: 13px !important;
  padding-right: 13px !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  letter-spacing: 0 !important;
}

html body .nav a.active,
html body .nav a.is-active,
html body .nav a[aria-current="page"] {
  min-width: max-content !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: linear-gradient(180deg, #24a985, #0e8d72) !important;
  box-shadow: 0 10px 24px rgba(22, 137, 112, 0.22) !important;
}

html body main {
  background:
    linear-gradient(180deg, rgba(248, 252, 250, 0.98), rgba(238, 250, 244, 0.92)) !important;
}

html body main > .section,
html body .section,
html body .section--soft {
  background:
    linear-gradient(180deg, rgba(248, 252, 250, 0.98), rgba(238, 250, 244, 0.92)) !important;
}

html body .event-card h3,
html body .news-card h3,
html body .article-card h3,
html body .search-result-card h3 {
  font-size: clamp(20px, 1.65vw, 26px) !important;
  line-height: 1.32 !important;
  letter-spacing: 0 !important;
}

html body .event-card p,
html body .news-card p,
html body .article-card p,
html body .search-result-card p {
  font-size: 15px !important;
  line-height: 1.72 !important;
}

html body .search-result-card--summary {
  display: grid !important;
  align-content: center !important;
  min-height: 136px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 211, 148, 0.2), transparent 34%),
    linear-gradient(180deg, rgba(235, 249, 244, 0.98), rgba(224, 243, 239, 0.96)) !important;
  border-color: rgba(160, 216, 198, 0.92) !important;
}

html body .search-result-card--summary h3 {
  color: #0c745f !important;
  -webkit-text-fill-color: #0c745f !important;
}

html body .search-results[data-result-count]::before {
  content: none !important;
  display: none !important;
}

/* V83 mobile viewport lock: prevent hero cards, buttons, and text blocks from being cropped. */
@media (max-width: 700px) {
  html,
  body,
  html body {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  html body *,
  html body *::before,
  html body *::after {
    box-sizing: border-box !important;
  }

  html body main,
  html body section,
  html body .section,
  html body .hero.section,
  html body .page-hero {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  html body .container,
  html body .topbar__inner,
  html body .header__inner,
  html body .hero__grid,
  html body .section-body,
  html body .section-split,
  html body .page-shell,
  html body .page-grid,
  html body .booking-layout,
  html body .contact-grid,
  html body .impact-grid,
  html body .guide-layout,
  html body .article-layout,
  html body .store-hero {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body.home-polish .hero.section > .container.hero__grid,
  html body.home-polish .hero__grid,
  html body .hero__grid {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
  }

  html body.home-polish .hero__content,
  html body .hero__content,
  html body.home-polish .hero__panel,
  html body .hero__panel,
  html body.home-polish .hero__panel .panel-card,
  html body .hero__panel .panel-card,
  html body .page-hero__panel,
  html body .article-body,
  html body .article-sidebar,
  html body .guide-section,
  html body .guide-sidebar,
  html body .section-panel,
  html body .page-card,
  html body .feature-card,
  html body .tool-sheet,
  html body .guide-card,
  html body .guide-tile,
  html body .side-card,
  html body .contact-panel,
  html body .booking-form,
  html body .store-locator__card,
  html body .service-standard__card,
  html body .footer__brand,
  html body .footer__contact-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body.home-polish .hero__content {
    padding: 20px 14px 22px !important;
  }

  html body.home-polish .hero__content h1,
  html body.home-polish .hero h1,
  html body .page-hero__panel h1 {
    max-width: 100% !important;
    font-size: clamp(28px, 9vw, 34px) !important;
    line-height: 1.24 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  html body.home-polish .hero__summary,
  html body .page-hero__panel .hero__summary,
  html body p,
  html body li,
  html body h2,
  html body h3,
  html body span,
  html body a {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  html body.home-polish .hero__summary {
    font-size: 14px !important;
    line-height: 1.72 !important;
  }

  html body .hero__actions,
  html body .page-utility__actions,
  html body .cta-row {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body .button,
  html body a.button,
  html body button.button,
  html body .hero__actions .button,
  html body .hero__actions a.button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  html body .hero__stats,
  html body .results-stats {
    width: 100% !important;
    max-width: 100% !important;
    margin: 22px 0 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  html body .hero__stats article,
  html body .results-stats article {
    width: 100% !important;
    min-width: 0 !important;
  }

  html body .hero__stats article:nth-child(3),
  html body .results-stats article:nth-child(3) {
    grid-column: 1 / -1 !important;
  }

  html body .page-hero__panel {
    padding: 24px 18px !important;
  }

  html body .page-hero__panel::before {
    width: 100% !important;
    max-width: 100% !important;
  }

  html body img,
  html body svg,
  html body video,
  html body canvas,
  html body iframe,
  html body input,
  html body select,
  html body textarea {
    max-width: 100% !important;
  }

  html body input,
  html body select,
  html body textarea {
    width: 100% !important;
    min-width: 0 !important;
  }

  html body .nav,
  html body .nav.is-open {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  html body .nav a,
  html body .nav > a,
  html body .nav-dropdown,
  html body .nav-dropdown__trigger,
  html body .nav-dropdown__menu a {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    justify-content: flex-start !important;
    white-space: normal !important;
  }
}

/* V83 service rail refinement: make the very-wide desktop dock feel intentional. */
@media (min-width: 1600px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail {
    width: 118px !important;
    max-width: 118px !important;
    right: 26px !important;
  }

  html body .floating-rail__buttons {
    width: 118px !important;
    padding: 16px 14px !important;
    gap: 10px !important;
    border-radius: 36px !important;
    background:
      radial-gradient(circle at 50% 0, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0) 34%),
      linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(237, 250, 245, 0.94)) !important;
  }

  html body .floating-rail__title {
    width: 88px !important;
    min-height: 38px !important;
    font-size: 14px !important;
  }

  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(1),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(2),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(3),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(4),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(5),
  html body .floating-rail .floating-rail__buttons .floating-rail__button--top {
    width: 88px !important;
    min-width: 88px !important;
    max-width: 88px !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    border-radius: 20px !important;
  }

  html body .floating-rail__label,
  html body .floating-rail__button--top .floating-rail__label {
    font-size: 14px !important;
    line-height: 1.1 !important;
  }

  html body .floating-rail > .floating-panel,
  html body .floating-rail.is-open .floating-panel {
    right: 138px !important;
  }
}

/* V84 full-site polish: restore brand presence, keep hero form complete, and stop duplicated image rows. */
html body .header {
  z-index: 300 !important;
}

html body .brand {
  width: auto !important;
  min-width: 238px !important;
  max-width: 320px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  text-decoration: none !important;
}

html body .brand__mark {
  position: relative !important;
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  max-width: 48px !important;
  border-radius: 16px !important;
  background:
    radial-gradient(circle at 32% 26%, rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0) 31%),
    linear-gradient(135deg, #1fae91 0%, #42c1a6 46%, #3f7be5 100%) !important;
  box-shadow:
    0 16px 28px rgba(37, 126, 114, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.72) !important;
}

html body .brand__mark::before {
  content: "" !important;
  position: absolute !important;
  inset: 11px 20px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 0 0 999px rgba(255, 255, 255, 0) !important;
}

html body .brand__mark::after {
  content: "" !important;
  position: absolute !important;
  inset: 20px 11px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.92) !important;
}

html body .brand > span:last-child {
  display: grid !important;
  gap: 3px !important;
  min-width: 0 !important;
}

html body .brand strong {
  display: block !important;
  color: #0d5f54 !important;
  -webkit-text-fill-color: #0d5f54 !important;
  font-size: 20px !important;
  line-height: 1.16 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

html body .brand small {
  display: block !important;
  color: #65817b !important;
  -webkit-text-fill-color: #65817b !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

html body.home-polish .hero.section {
  min-height: 760px !important;
  padding-top: 82px !important;
  padding-bottom: 88px !important;
  overflow: visible !important;
}

html body.home-polish .hero__grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, 460px) !important;
  align-items: center !important;
  gap: clamp(44px, 5vw, 76px) !important;
}

html body.home-polish .hero__panel,
html body.home-polish .hero__panel .panel-card {
  width: 100% !important;
  max-width: 460px !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
}

html body.home-polish .hero__panel .panel-card {
  padding: 30px 30px 28px !important;
  border-radius: 30px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 220, 168, 0.2), transparent 32%),
    radial-gradient(circle at 0 100%, rgba(151, 219, 198, 0.16), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(251, 248, 240, 0.97)) !important;
  box-shadow:
    0 28px 62px rgba(29, 91, 76, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.98) !important;
}

html body.home-polish .quick-form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 13px !important;
  padding: 20px 18px 18px !important;
  overflow: visible !important;
}

html body.home-polish .quick-form label {
  gap: 7px !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

html body.home-polish .quick-form input,
html body.home-polish .quick-form select {
  min-height: 44px !important;
  border-radius: 15px !important;
}

html body.home-polish .quick-form .button,
html body.home-polish .quick-form button {
  min-height: 48px !important;
  border-radius: 999px !important;
}

html body.home-polish .quick-form__note {
  font-size: 12px !important;
  line-height: 1.58 !important;
}

html body.home-polish .section--soft:has(.photo-marquee) {
  padding-top: 78px !important;
  padding-bottom: 86px !important;
}

html body.home-polish .photo-marquee {
  overflow: visible !important;
}

html body.home-polish .photo-marquee__track {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
  transform: none !important;
  animation: none !important;
}

html body.home-polish .photo-marquee__track > [aria-hidden="true"] {
  display: none !important;
}

html body.home-polish .photo-marquee .photo-card {
  min-height: 330px !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  box-shadow:
    0 20px 40px rgba(28, 88, 75, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
}

html body.home-polish .photo-marquee .photo-card h3 {
  font-size: 21px !important;
  line-height: 1.32 !important;
}

html body.home-polish .photo-marquee .photo-card p {
  font-size: 14px !important;
  line-height: 1.74 !important;
}

@media (max-width: 1180px) {
  html body .brand {
    min-width: 190px !important;
  }

  html body .brand strong {
    font-size: 17px !important;
  }

  html body .brand small {
    font-size: 11px !important;
  }

  html body.home-polish .hero.section {
    min-height: 0 !important;
    overflow: hidden !important;
  }

  html body.home-polish .hero__grid {
    grid-template-columns: 1fr !important;
  }

  html body.home-polish .hero__panel,
  html body.home-polish .hero__panel .panel-card {
    max-width: 100% !important;
  }

  html body.home-polish .photo-marquee__track {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  html body .brand {
    min-width: 0 !important;
    max-width: calc(100vw - 82px) !important;
    gap: 9px !important;
  }

  html body .brand__mark {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    border-radius: 13px !important;
  }

  html body .brand__mark::before {
    inset: 9px 16px !important;
  }

  html body .brand__mark::after {
    inset: 16px 9px !important;
  }

  html body .brand strong {
    font-size: 15px !important;
  }

  html body .brand small {
    font-size: 10px !important;
    white-space: normal !important;
  }

  html body.home-polish .hero.section {
    padding-top: 34px !important;
    padding-bottom: 46px !important;
  }

  html body.home-polish .quick-form {
    padding: 18px 14px !important;
  }

  html body.home-polish .photo-marquee__track {
    grid-template-columns: 1fr !important;
  }

  html body.home-polish .photo-marquee .photo-card {
    min-height: 290px !important;
  }

  html body .section-visual,
  html body .section-visual__content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    overflow: hidden !important;
  }

  html body .section-visual__content {
    left: auto !important;
    right: auto !important;
    transform: none !important;
  }

  html body .section-visual__content h2,
  html body .section-visual__content h3,
  html body .section-visual__content p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) .section-visual,
  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual,
  html body:has(.page-hero__panel[data-hero="knowledge"]) #topics .section-visual {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) .section-visual {
    border-left-width: 0 !important;
    border-right-width: 0 !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) .section-visual img {
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10 !important;
    object-fit: cover !important;
    transform: none !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) .section-visual__content {
    position: static !important;
    width: calc(100% - 36px) !important;
    max-width: calc(100% - 36px) !important;
    min-width: 0 !important;
    margin-left: 18px !important;
    margin-right: 18px !important;
    padding: 18px 0 !important;
    transform: none !important;
  }

  html body:has(.page-hero__panel[data-hero="community"]) .section-visual,
  html body:has(.page-hero__panel[data-hero="community"]) #listener .section-visual,
  html body:has(.page-hero__panel[data-hero="community"]) #children .section-visual {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body:has(.page-hero__panel[data-hero="community"]) .section-visual img,
  html body:has(.page-hero__panel[data-hero="community"]) #listener .section-visual img,
  html body:has(.page-hero__panel[data-hero="community"]) #children .section-visual img {
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10 !important;
    object-fit: cover !important;
    transform: none !important;
  }

  html body:has(.page-hero__panel[data-hero="community"]) .section-visual__content,
  html body:has(.page-hero__panel[data-hero="community"]) #listener .section-visual__content,
  html body:has(.page-hero__panel[data-hero="community"]) #children .section-visual__content {
    position: static !important;
    width: calc(100% - 36px) !important;
    max-width: calc(100% - 36px) !important;
    min-width: 0 !important;
    margin: 18px !important;
    padding: 20px 18px !important;
    transform: none !important;
  }

  html body:has(.page-hero__panel[data-hero="community"]) .section-visual__content h2,
  html body:has(.page-hero__panel[data-hero="community"]) .section-visual__content h3,
  html body:has(.page-hero__panel[data-hero="community"]) .section-visual__content p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
}

/* V85 final visible fix: widen the desktop service dock so every label is readable. */
@media (min-width: 701px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail {
    top: 124px !important;
    right: 22px !important;
    width: 116px !important;
    max-width: 116px !important;
    padding: 0 !important;
    transform: none !important;
    filter: drop-shadow(0 24px 38px rgba(24, 88, 76, 0.15)) !important;
  }

  html body .floating-rail__buttons {
    width: 116px !important;
    padding: 13px 11px !important;
    gap: 9px !important;
    border-radius: 38px !important;
    border: 1px solid rgba(191, 226, 216, 0.92) !important;
    background:
      radial-gradient(circle at 50% 0, rgba(255, 255, 255, 0.98), transparent 34%),
      linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(239, 250, 246, 0.94)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.98),
      inset 0 -20px 42px rgba(151, 211, 195, 0.14),
      0 20px 38px rgba(25, 86, 76, 0.13) !important;
  }

  html body .floating-rail__title {
    width: 90px !important;
    min-height: 34px !important;
    margin: 0 auto 3px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    color: #187965 !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
  }

  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(1),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(2),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(3),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(4),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(5),
  html body .floating-rail .floating-rail__buttons .floating-rail__button--top {
    width: 90px !important;
    min-width: 90px !important;
    max-width: 90px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
  }

  html body .floating-rail__label,
  html body .floating-rail__button--top .floating-rail__label {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    font-size: 13px !important;
    line-height: 1.08 !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-align: center !important;
  }

  html body .floating-rail > .floating-panel,
  html body .floating-rail.is-open .floating-panel {
    right: 132px !important;
  }
}

@media (max-width: 1499px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail {
    display: none !important;
  }
}

/* V86 visual refinement: softer section transitions and cleaner card hierarchy. */
html body {
  background:
    linear-gradient(180deg, #fbfcf8 0, #f7fbf7 38%, #fff8f0 68%, #f6fbfa 100%) !important;
}

html body .section {
  position: relative !important;
  border-top: 1px solid rgba(198, 225, 216, 0.36) !important;
}

html body .section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 0 auto !important;
  height: 54px !important;
  pointer-events: none !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(255, 255, 255, 0)) !important;
}

html body .section--soft {
  background:
    radial-gradient(circle at 12% 0, rgba(255, 226, 190, 0.34), transparent 30%),
    radial-gradient(circle at 88% 10%, rgba(185, 226, 216, 0.38), transparent 34%),
    linear-gradient(180deg, rgba(248, 253, 250, 0.92), rgba(255, 247, 238, 0.84)) !important;
}

html body.home-polish .hero.section {
  min-height: 690px !important;
  padding-top: 58px !important;
  padding-bottom: 68px !important;
}

html body.home-polish .hero__grid {
  align-items: center !important;
}

html body.home-polish .section--soft:has(.photo-marquee) {
  padding-top: 66px !important;
}

html body.home-polish .photo-marquee .photo-card {
  border-radius: 22px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(251, 254, 252, 0.94)) !important;
  border: 1px solid rgba(185, 222, 211, 0.7) !important;
  box-shadow:
    0 24px 48px rgba(29, 92, 77, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
}

html body.home-polish .photo-marquee .photo-card::before {
  display: block !important;
  content: "" !important;
  position: relative !important;
  inset: auto !important;
  width: calc(100% - 36px) !important;
  height: 118px !important;
  margin: 18px 18px 22px !important;
  border-radius: 16px !important;
  background-image: var(--photo-image) !important;
  background-size: cover !important;
  background-position: center !important;
  opacity: 1 !important;
  filter: saturate(1.05) contrast(1.02) !important;
  box-shadow: 0 14px 24px rgba(39, 94, 78, 0.1) !important;
}

html body.home-polish .photo-marquee .photo-card img {
  height: 118px !important;
  object-fit: cover !important;
  filter: saturate(1.05) contrast(1.02) !important;
}

html body.home-polish .photo-marquee .photo-card > * {
  position: relative !important;
  z-index: 1 !important;
}

html body.home-polish .photo-marquee .photo-card:nth-child(2) img {
  object-position: 50% 42% !important;
  filter: saturate(0.96) sepia(0.08) contrast(1.02) !important;
}

html body.home-polish .photo-marquee .photo-card:nth-child(3) img {
  object-position: 45% 50% !important;
  filter: saturate(1.1) hue-rotate(-5deg) contrast(1.03) !important;
}

html body.home-polish .photo-marquee .photo-card:nth-child(4) img {
  object-position: 58% 44% !important;
  filter: saturate(0.98) sepia(0.12) contrast(1.04) !important;
}

html body:has(.page-hero__panel[data-hero="community"]) .page-card.page-card--media {
  border-radius: 24px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(252, 249, 243, 0.95)) !important;
  box-shadow:
    0 24px 48px rgba(43, 95, 78, 0.11),
    inset 0 1px 0 rgba(255, 255, 255, 0.98) !important;
}

html body:has(.page-hero__panel[data-hero="community"]) .page-card.page-card--media .page-card__media {
  height: 260px !important;
  object-fit: cover !important;
  filter: saturate(1.05) contrast(1.02) !important;
}

html body:has(.page-hero__panel[data-hero="community"]) .page-grid .page-card:nth-child(2) .page-card__media {
  object-position: 52% 43% !important;
  filter: saturate(0.95) sepia(0.1) contrast(1.02) !important;
}

html body:has(.page-hero__panel[data-hero="community"]) .page-grid .page-card:nth-child(3) .page-card__media {
  object-position: 58% 50% !important;
  filter: saturate(1.08) hue-rotate(-7deg) contrast(1.04) !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card {
  overflow: hidden !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 0 0, rgba(255, 224, 184, 0.32), transparent 28%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.99), rgba(241, 251, 247, 0.94)) !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr) !important;
  align-items: stretch !important;
  gap: 34px !important;
  padding: 34px !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__body {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  min-height: 430px !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__body h2 {
  max-width: 620px !important;
  font-size: clamp(30px, 2.2vw, 40px) !important;
  line-height: 1.22 !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__body p {
  max-width: 680px !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__side {
  display: grid !important;
  grid-template-rows: 1fr auto !important;
  gap: 22px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-channel-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 16px !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-channel {
  min-height: 116px !important;
  padding: 22px 24px !important;
  border-radius: 22px !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(248, 252, 250, 0.92)) !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-channel:nth-child(2) {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(241, 249, 255, 0.93)) !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-channel:nth-child(3) {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(255, 246, 246, 0.92)) !important;
}

html body:has(.page-hero__panel[data-hero="contact"]) .contact-grid--compact {
  margin-top: 28px !important;
}

@media (max-width: 1180px) {
  html body.home-polish .hero.section {
    min-height: 0 !important;
    padding-top: 46px !important;
  }

  html body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__grid {
    grid-template-columns: 1fr !important;
    padding: 26px !important;
  }

  html body:has(.page-hero__panel[data-hero="contact"]) .contact-hero-card__body {
    min-height: 0 !important;
  }
}

/* V87 desktop QA lock: prevent subtle internal clipping on visual panels and tiny knowledge cards. */
@media (min-width: 701px) {
  html body .section-visual,
  html body .section-visual *,
  html body .info-card,
  html body .info-card * {
    box-sizing: border-box !important;
  }

  html body .section-visual {
    overflow: visible !important;
    min-width: 0 !important;
  }

  html body .section-visual__content {
    max-width: calc(100% - 40px) !important;
    overflow: visible !important;
  }

  html body .section-visual__content h2,
  html body .section-visual__content h3,
  html body .section-visual__content p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) .info-grid,
  html body:has(.page-hero__panel[data-hero="knowledge"]) .support-grid,
  html body:has(.page-hero__panel[data-hero="knowledge"]) .guide-grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) .info-card {
    min-width: 0 !important;
    width: 100% !important;
    overflow: visible !important;
  }
}

/* V88 admin mobile table QA: hidden table heads should not create 1px overflow artifacts. */
@media (max-width: 700px) {
  html body .content-table thead,
  html body .content-table thead tr,
  html body .demand-table thead,
  html body .demand-table thead tr {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
  }
}

/* V89 floating service rail polish: soften the rail and give each quick entry a warmer, distinct tone. */
@media (min-width: 1500px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail {
    top: 118px !important;
    right: 24px !important;
    width: 120px !important;
    max-width: 120px !important;
    filter: drop-shadow(0 24px 42px rgba(24, 88, 76, 0.18)) !important;
  }

  html body .floating-rail__buttons {
    width: 120px !important;
    padding: 14px 12px !important;
    gap: 10px !important;
    border-radius: 42px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(238, 250, 245, 0.94)) !important;
    border: 1px solid rgba(184, 225, 211, 0.88) !important;
    box-shadow:
      0 18px 36px rgba(31, 104, 92, 0.14),
      inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
    backdrop-filter: blur(16px) saturate(1.1) !important;
  }

  html body .floating-rail__title {
    width: 92px !important;
    min-height: 36px !important;
    border-radius: 999px !important;
    color: #236b60 !important;
    background: linear-gradient(180deg, #ffffff, #f1faf6) !important;
    border: 1px solid rgba(174, 222, 206, 0.78) !important;
    box-shadow: 0 7px 18px rgba(39, 117, 101, 0.1) !important;
  }

  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(1),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(2),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(3),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(4),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(5),
  html body .floating-rail .floating-rail__buttons .floating-rail__button--top {
    width: 92px !important;
    min-width: 92px !important;
    max-width: 92px !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    border: 1px solid rgba(255, 255, 255, 0.52) !important;
    box-shadow:
      0 10px 18px rgba(31, 104, 92, 0.13),
      inset 0 1px 0 rgba(255, 255, 255, 0.42) !important;
  }

  html body .floating-rail__button[data-service="phone"] {
    background: linear-gradient(180deg, #f7b06f, #e9865f) !important;
  }

  html body .floating-rail__button[data-service="wechat"] {
    background: linear-gradient(180deg, #58c6af, #2fa28e) !important;
  }

  html body .floating-rail__button[data-service="miniapp"] {
    background: linear-gradient(180deg, #86cce4, #5aaccd) !important;
  }

  html body .floating-rail__button[data-service="booking"] {
    background: linear-gradient(180deg, #a8b5e6, #7d92d2) !important;
  }

  html body .floating-rail__button[data-service="xiaohongshu"] {
    background: linear-gradient(180deg, #f4aaa6, #df827d) !important;
  }

  html body .floating-rail__button--top,
  html body .floating-rail .floating-rail__buttons .floating-rail__button--top {
    background: linear-gradient(180deg, #ffffff, #f4faf7) !important;
    border-color: rgba(178, 222, 207, 0.84) !important;
    box-shadow: 0 8px 18px rgba(31, 104, 92, 0.1) !important;
  }

  html body .floating-rail__label {
    color: #ffffff !important;
    text-shadow: 0 1px 2px rgba(22, 69, 62, 0.18) !important;
  }

  html body .floating-rail__button--top .floating-rail__label {
    color: #286f63 !important;
    text-shadow: none !important;
  }
}

/* V90 mobile hero detail pass: calmer Chinese line breaks and more readable intro text. */
@media (max-width: 700px) {
  html body:has(.page-hero__panel) .page-shell,
  html body .page-hero .page-shell {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  html body .page-hero {
    padding-top: 36px !important;
  }

  html body .page-hero__panel {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 36px 24px 30px !important;
    border-radius: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body.home-polish .hero__content h1,
  html body.home-polish .hero h1,
  html body .page-hero__panel h1 {
    max-width: 100% !important;
    font-size: clamp(29px, 7.8vw, 34px) !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
    text-wrap: pretty !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body.home-polish .hero__summary,
  html body .page-hero__panel .hero__summary,
  html body .page-hero__panel > p:not(.page-hero__english) {
    max-width: 100% !important;
    margin-top: 24px !important;
    font-size: 15px !important;
    line-height: 1.82 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body .page-hero__english {
    margin-top: 32px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  html body .page-hero__panel .subnav {
    gap: 10px !important;
    margin-top: 22px !important;
  }

  html body .page-hero__panel .subnav a {
    min-height: 36px !important;
    padding: 8px 15px !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }

  html body.home-polish .hero__actions {
    gap: 10px !important;
    margin-top: 24px !important;
  }

  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a.button {
    min-height: 46px !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
  }
}

/* V93 visual repair pass: fix user-reported rail, hero, footer, and split-card layout issues. */
@media (min-width: 701px) {
  html body > .sticky-help,
  html body .sticky-help {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}

@media (min-width: 1001px) and (max-width: 1360px) {
  html body .header__inner {
    gap: 18px !important;
  }

  html body .nav {
    gap: 16px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    justify-content: center !important;
  }

  html body .nav a {
    font-size: 14px !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
    white-space: nowrap !important;
  }

  html body .nav > a:last-child {
    display: none !important;
  }

  html body .header__actions {
    flex: 0 0 auto !important;
    gap: 10px !important;
  }

  html body .header__actions .button,
  html body .header__actions a.button {
    min-width: 104px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    white-space: nowrap !important;
  }
}

@media (min-width: 1180px) {
  html body.home-polish .hero.section {
    padding: 64px 0 72px !important;
    min-height: auto !important;
  }

  html body.home-polish .hero.section > .container.hero__grid,
  html body.home-polish .hero__grid {
    width: min(1180px, calc(100% - 112px)) !important;
    max-width: 1180px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.78fr) !important;
    align-items: stretch !important;
    gap: 52px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.home-polish .hero__content {
    min-height: 430px !important;
    padding: 48px 40px 34px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    border-radius: 22px !important;
    box-shadow:
      0 26px 56px rgba(39, 78, 89, 0.08),
      inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
  }

  html body.home-polish .hero__content h1,
  html body.home-polish .hero h1 {
    max-width: 600px !important;
    font-size: clamp(38px, 3.05vw, 54px) !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
  }

  html body.home-polish .hero__summary {
    max-width: 650px !important;
    margin-top: 24px !important;
    font-size: 16px !important;
    line-height: 1.75 !important;
  }

  html body.home-polish .hero__actions {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin-top: 28px !important;
  }

  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a.button {
    min-width: 0 !important;
    min-height: 42px !important;
    padding: 0 12px !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }

  html body.home-polish .hero__stats {
    margin-top: 30px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  html body.home-polish .hero__stats article {
    min-height: 76px !important;
    padding: 16px 18px !important;
  }

  html body.home-polish .hero__panel,
  html body.home-polish .hero__panel .panel-card {
    width: 100% !important;
    max-width: 410px !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    align-self: stretch !important;
  }

  html body.home-polish .hero__panel .panel-card {
    min-height: 430px !important;
    padding: 26px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
  }
}

@media (min-width: 901px) {
  html body.home-polish #story .section-split,
  html body.home-polish #services .section-split,
  html body.home-polish #support .section-split,
  html body.home-polish section .container.section-split {
    align-items: center !important;
    gap: 46px !important;
  }

  html body.home-polish .section-panel h2,
  html body .section-panel h2 {
    max-width: 620px !important;
    font-size: clamp(30px, 2.55vw, 42px) !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  html body.home-polish .section-panel p,
  html body .section-panel p {
    max-width: 660px !important;
    font-size: 16px !important;
    line-height: 1.85 !important;
  }

  html body.home-polish .section-panel,
  html body .section-panel {
    overflow: hidden !important;
  }

  html body .section-visual {
    min-height: 320px !important;
    overflow: hidden !important;
    border-radius: 22px !important;
  }

  html body .section-visual img {
    height: 100% !important;
    min-height: 300px !important;
    object-fit: cover !important;
  }

  html body .section-visual__content {
    left: 28px !important;
    right: 28px !important;
    bottom: 24px !important;
    max-width: calc(100% - 56px) !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: center !important;
    column-gap: 14px !important;
    row-gap: 8px !important;
    overflow: visible !important;
  }

  html body .section-visual__content span,
  html body .section-visual__content .eyebrow {
    position: static !important;
    display: inline-flex !important;
    width: max-content !important;
    max-width: 118px !important;
    min-height: 30px !important;
    padding: 6px 14px !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #15a184, #317fc3) !important;
    box-shadow: 0 10px 22px rgba(18, 92, 91, 0.24) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  html body .section-visual__content h3 {
    grid-column: 2 !important;
    margin: 0 !important;
    max-width: 100% !important;
    color: #ffffff !important;
    font-size: clamp(20px, 1.8vw, 28px) !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
    text-shadow: 0 2px 10px rgba(5, 30, 33, 0.42) !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  html body .section-visual__content p {
    grid-column: 1 / -1 !important;
    max-width: 100% !important;
    margin: 0 !important;
    color: rgba(255, 255, 255, 0.88) !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
  }

  html body.home-polish .story-split,
  html body.home-polish .story-split--reverse {
    display: grid !important;
    grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.98fr) !important;
    align-items: center !important;
    gap: 38px !important;
    padding: 28px !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  html body.home-polish .story-split--reverse {
    grid-template-columns: minmax(420px, 0.98fr) minmax(0, 1.02fr) !important;
  }

  html body.home-polish .story-content {
    min-width: 0 !important;
    padding: 42px 34px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }

  html body.home-polish .story-content h2 {
    max-width: 560px !important;
    font-size: clamp(31px, 2.65vw, 42px) !important;
    line-height: 1.16 !important;
    letter-spacing: 0 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  html body.home-polish .story-content p {
    max-width: 620px !important;
    font-size: 16px !important;
    line-height: 1.86 !important;
  }

  html body.home-polish .story-visual {
    position: relative !important;
    min-width: 0 !important;
    min-height: 320px !important;
    height: 320px !important;
    padding: 0 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    box-shadow:
      0 22px 42px rgba(33, 74, 72, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.72) !important;
  }

  html body.home-polish .story-visual img {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 0 !important;
    transform: none !important;
  }

  html body.home-polish .story-visual::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 42% !important;
    background:
      linear-gradient(180deg, rgba(8, 30, 32, 0), rgba(8, 32, 34, 0.72) 42%, rgba(8, 32, 34, 0.86)) !important;
    pointer-events: none !important;
    z-index: 1 !important;
  }

  html body.home-polish .story-visual__badge {
    position: absolute !important;
    left: 28px !important;
    bottom: 32px !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: 112px !important;
    min-height: 32px !important;
    padding: 7px 15px !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #14a186, #2f86bc) !important;
    box-shadow: 0 10px 22px rgba(9, 60, 58, 0.26) !important;
    font-size: 14px !important;
    line-height: 1.1 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  html body.home-polish .story-visual h3 {
    position: absolute !important;
    left: 154px !important;
    right: 30px !important;
    bottom: 31px !important;
    z-index: 2 !important;
    max-width: calc(100% - 184px) !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    font-size: clamp(18px, 1.55vw, 24px) !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-shadow: 0 2px 12px rgba(0, 22, 26, 0.46) !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    transform: none !important;
  }
}

html body .footer {
  background:
    radial-gradient(circle at 12% 20%, rgba(84, 186, 159, 0.22), transparent 34%),
    linear-gradient(135deg, #0b5b50 0%, #0b4f4b 46%, #0a413f 100%) !important;
}

html body .footer__layout {
  align-items: stretch !important;
  gap: 18px !important;
}

html body .footer__brand,
html body .footer__contact-card,
html body .footer__note {
  color: #ffffff !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.07)) !important;
  border: 1px solid rgba(205, 238, 226, 0.28) !important;
  box-shadow:
    0 18px 42px rgba(0, 37, 34, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
}

html body .footer__contact-card h3,
html body .footer__brand h2,
html body .footer__brand strong,
html body .footer__logo h2 {
  color: #ffffff !important;
  text-shadow: 0 2px 10px rgba(0, 32, 32, 0.28) !important;
}

html body .footer p,
html body .footer li,
html body .footer span,
html body .footer small,
html body .footer__intro,
html body .footer__contact-card p,
html body .footer__contact-card li,
html body .footer__note {
  color: rgba(255, 255, 255, 0.86) !important;
}

html body .footer__contacts {
  gap: 16px !important;
}

html body .footer__contact-card {
  min-height: 166px !important;
  padding: 24px !important;
  border-radius: 20px !important;
}

html body .footer__qr-box {
  background: rgba(255, 255, 255, 0.98) !important;
  border: 1px solid rgba(255, 255, 255, 0.9) !important;
  box-shadow: 0 14px 28px rgba(2, 46, 43, 0.22) !important;
}

html body .footer__note {
  padding: 22px 24px !important;
  border-radius: 16px !important;
}

html body .footer__note a {
  color: #ffffff !important;
  font-weight: 800 !important;
}

@media (min-width: 1500px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail {
    top: 156px !important;
    right: 18px !important;
    width: 86px !important;
    max-width: 86px !important;
    filter: drop-shadow(0 18px 30px rgba(20, 89, 79, 0.14)) !important;
  }

  html body .floating-rail__buttons {
    width: 86px !important;
    padding: 10px 7px !important;
    gap: 8px !important;
    border-radius: 26px !important;
    background: rgba(255, 255, 255, 0.84) !important;
    border: 1px solid rgba(180, 225, 209, 0.72) !important;
    box-shadow:
      0 14px 30px rgba(31, 104, 92, 0.12),
      inset 0 1px 0 rgba(255, 255, 255, 0.86) !important;
    backdrop-filter: blur(12px) saturate(1.05) !important;
  }

  html body .floating-rail__buttons::before,
  html body .floating-rail__buttons::after {
    display: none !important;
    content: none !important;
  }

  html body .floating-rail__title,
  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(1),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(2),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(3),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(4),
  html body .floating-rail .floating-rail__buttons .floating-rail__button:nth-child(5),
  html body .floating-rail .floating-rail__buttons .floating-rail__button--top {
    width: 70px !important;
    min-width: 70px !important;
    max-width: 70px !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
  }

  html body .floating-rail__title {
    margin-bottom: 0 !important;
    color: #176a5f !important;
    background: rgba(255, 255, 255, 0.96) !important;
  }

  html body .floating-rail__label,
  html body .floating-rail__button--top .floating-rail__label {
    font-size: 12px !important;
    line-height: 1.08 !important;
    font-weight: 800 !important;
  }
}

/* V94 detail polish: keep contact-store CTAs horizontal and tighten the desktop hero composition. */
@media (min-width: 901px) {
  html body.home-polish .hero__content {
    min-height: 390px !important;
    padding-top: 40px !important;
    padding-bottom: 34px !important;
  }

  html body.home-polish .hero__panel .panel-card {
    min-height: 400px !important;
  }
}

html body .store-contact-card .cta-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: center !important;
}

html body .store-contact-card .cta-row .button,
html body .store-contact-card .cta-row a.button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 42px !important;
  padding: 10px 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: nowrap !important;
  writing-mode: horizontal-tb !important;
  word-break: keep-all !important;
}

@media (max-width: 520px) {
  html body .store-contact-card .cta-row {
    grid-template-columns: 1fr !important;
  }
}

/* V95 mobile homepage gallery: stop desktop marquee cropping and keep every card readable. */
@media (max-width: 700px) {
  html body.home-polish .section--soft:first-of-type .section-heading h2 {
    max-width: 100% !important;
    font-size: clamp(25px, 7vw, 30px) !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  html body.home-polish .section--soft:first-of-type .section-heading p {
    max-width: 100% !important;
    font-size: 14px !important;
    line-height: 1.72 !important;
  }

  html body.home-polish .photo-marquee {
    overflow: visible !important;
    padding: 0 !important;
  }

  html body.home-polish .photo-marquee__track {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 16px !important;
    animation: none !important;
    transform: none !important;
  }

  html body.home-polish .photo-marquee .photo-card[aria-hidden="true"] {
    display: none !important;
  }

  html body.home-polish .photo-marquee .photo-card,
  html body.home-polish .section--soft:first-of-type .photo-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 264px !important;
    padding: 144px 18px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    gap: 8px !important;
    border-radius: 16px !important;
    background-size: 100% 132px, 100% 132px, cover !important;
    background-position: top center, top center, center !important;
    background-repeat: no-repeat !important;
    overflow: hidden !important;
  }

  html body.home-polish .photo-marquee .photo-card__tag,
  html body.home-polish .section--soft:first-of-type .photo-card__tag {
    max-width: 100% !important;
    margin: 0 !important;
    white-space: nowrap !important;
  }

  html body.home-polish .photo-marquee .photo-card h3,
  html body.home-polish .section--soft:first-of-type .photo-card h3 {
    max-width: 100% !important;
    color: #174a43 !important;
    -webkit-text-fill-color: #174a43 !important;
    font-size: 19px !important;
    line-height: 1.28 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    text-shadow: none !important;
  }

  html body.home-polish .photo-marquee .photo-card p,
  html body.home-polish .section--soft:first-of-type .photo-card p {
    max-width: 100% !important;
    color: #536f67 !important;
    -webkit-text-fill-color: #536f67 !important;
    font-size: 14px !important;
    line-height: 1.66 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    text-shadow: none !important;
  }
}

/* V96 mobile gallery image layer: replace legacy thumbnail stripe with a real top image. */
@media (max-width: 700px) {
  html body.home-polish .photo-card--warm { --photo-image: url("/assets/images/gallery-room.jpg"); }
  html body.home-polish .photo-card--calm { --photo-image: url("/assets/images/gallery-family.jpg"); }
  html body.home-polish .photo-card--hope { --photo-image: url("/assets/images/gallery-activity.jpg"); }
  html body.home-polish .photo-card--trust { --photo-image: url("/assets/images/marquee-service.jpg"); }

  html body.home-polish .photo-marquee .photo-card,
  html body.home-polish .section--soft:first-of-type .photo-card {
    min-height: 284px !important;
    padding-top: 156px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0) 0 138px, rgba(255, 255, 255, 0.98) 139px, rgba(247, 252, 249, 0.98) 100%),
      var(--photo-image) center 14px / calc(100% - 36px) 126px no-repeat,
      linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(240, 250, 246, 0.94)) !important;
  }

  html body.home-polish .photo-marquee .photo-card::before,
  html body.home-polish .photo-marquee .photo-card::after,
  html body.home-polish .section--soft:first-of-type .photo-card::before,
  html body.home-polish .section--soft:first-of-type .photo-card::after,
  html body.home-polish .section--soft:first-of-type .photo-card h3::before,
  html body.home-polish .section--soft:first-of-type .photo-card p::before {
    content: none !important;
    display: none !important;
  }
}

/* V97 search results: allow result-card copy to expand instead of clipping. */
html body .search-results {
  align-items: stretch !important;
}

html body .search-result-card,
html body a.search-result-card {
  height: auto !important;
  min-height: 148px !important;
  padding: 28px 28px 26px 32px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 8px !important;
  overflow: visible !important;
}

html body .search-result-card h3,
html body .search-result-card p {
  max-width: 100% !important;
  margin: 0 !important;
  overflow: visible !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

html body .search-result-card h3 {
  line-height: 1.28 !important;
}

html body .search-result-card p {
  line-height: 1.76 !important;
}

@media (max-width: 900px) {
  html body .search-result-card,
  html body a.search-result-card {
    min-height: 0 !important;
    padding: 24px 20px 22px 24px !important;
  }
}

/* V98 logo mark containment: decorative shine must not enlarge layout boxes. */
html body .brand__mark,
html body .footer__logo-mark {
  box-sizing: border-box !important;
  overflow: hidden !important;
  flex: 0 0 auto !important;
  contain: paint !important;
}

html body .brand__mark::before,
html body .brand__mark::after,
html body .footer__logo-mark::before,
html body .footer__logo-mark::after {
  max-width: 100% !important;
  max-height: 100% !important;
  pointer-events: none !important;
}

html body .brand__mark::after,
html body .footer__logo-mark::after {
  inset: 0 !important;
}

/* V103 screenshot alignment repair: rebalance cramped cards, filters, footer note and floating rail. */
@media (min-width: 901px) {
  html body.home-polish .story-visual {
    height: 340px !important;
    min-height: 340px !important;
  }

  html body.home-polish .story-visual::after {
    height: 52% !important;
    background:
      linear-gradient(180deg, rgba(7, 28, 30, 0) 0%, rgba(7, 36, 37, 0.64) 38%, rgba(7, 38, 38, 0.9) 100%) !important;
  }

  html body.home-polish .story-visual__badge {
    left: 28px !important;
    right: auto !important;
    bottom: 92px !important;
    max-width: 140px !important;
    min-height: 34px !important;
    padding: 8px 16px !important;
  }

  html body.home-polish .story-visual h3 {
    left: 28px !important;
    right: 28px !important;
    bottom: 28px !important;
    max-width: calc(100% - 56px) !important;
    font-size: clamp(22px, 1.7vw, 28px) !important;
    line-height: 1.24 !important;
  }

  html body .section-visual {
    height: auto !important;
    min-height: 300px !important;
  }

  html body .section-visual img {
    min-height: 300px !important;
  }
}

html body .results-stats,
html body.home-polish .results-stats {
  width: min(1120px, 100%) !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 26px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(240, 250, 246, 0.92)) !important;
  border: 1px solid rgba(178, 222, 207, 0.72) !important;
  border-radius: 22px !important;
  box-shadow: 0 24px 54px rgba(42, 104, 91, 0.12) !important;
}

html body .results-stats article,
html body.home-polish .results-stats article,
html body .results-stats article:nth-child(3),
html body.home-polish .results-stats article:nth-child(3) {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 126px !important;
  margin: 0 !important;
  padding: 24px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  border-radius: 18px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 252, 249, 0.94)) !important;
  border: 1px solid rgba(191, 226, 214, 0.78) !important;
  box-shadow:
    0 16px 34px rgba(38, 103, 90, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
}

html body .results-stats strong {
  font-size: clamp(31px, 2.6vw, 42px) !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

html body .results-stats span {
  max-width: 100% !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  text-align: center !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

html body .article-filters,
html body [data-store-filters],
html body [data-knowledge-filters] {
  width: min(1120px, 100%) !important;
  margin: 0 auto 18px !important;
  padding: 22px !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important;
  gap: 16px !important;
  align-items: end !important;
  border-radius: 20px !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(242, 250, 246, 0.94)) !important;
  border: 1px solid rgba(180, 223, 208, 0.74) !important;
  box-shadow: 0 18px 44px rgba(38, 103, 90, 0.1) !important;
}

html body .article-filters label,
html body [data-store-filters] label,
html body [data-knowledge-filters] label {
  min-width: 0 !important;
  min-height: 82px !important;
  padding: 14px 16px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 8px !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.82) !important;
  border: 1px solid rgba(194, 226, 216, 0.78) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
}

html body .article-filters label span,
html body [data-store-filters] label span,
html body [data-knowledge-filters] label span {
  display: block !important;
  color: #28675d !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  white-space: nowrap !important;
}

html body .article-filters select,
html body [data-store-filters] select,
html body [data-knowledge-filters] select {
  width: 100% !important;
  min-height: 42px !important;
  padding: 0 34px 0 14px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  background-color: #ffffff !important;
  white-space: normal !important;
}

html body .article-list__summary {
  width: max-content !important;
  max-width: 100% !important;
  margin: 0 auto 26px !important;
  padding: 10px 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  border-radius: 999px !important;
  color: #276b60 !important;
  background: linear-gradient(180deg, #ffffff, #f2faf6) !important;
  border: 1px solid rgba(178, 222, 207, 0.8) !important;
  box-shadow: 0 10px 24px rgba(38, 103, 90, 0.1) !important;
  white-space: nowrap !important;
}

html body .knowledge-index {
  grid-template-columns: minmax(0, 0.94fr) minmax(320px, 1.06fr) !important;
  gap: 18px !important;
}

html body .knowledge-index__feature,
html body .knowledge-index__list a {
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: visible !important;
}

html body .knowledge-index__list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

html body .knowledge-index__list a {
  padding: 18px !important;
  min-height: 118px !important;
}

html body .knowledge-index__list strong,
html body .knowledge-index__list span,
html body .guide-tile h3,
html body .guide-tile p,
html body .news-item h3,
html body .news-item p {
  max-width: 100% !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  writing-mode: horizontal-tb !important;
}

html body .guide-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  gap: 18px !important;
}

html body .guide-tile {
  min-width: 0 !important;
  min-height: 156px !important;
  padding: 24px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: 10px !important;
}

html body .news-list {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}

html body .news-item {
  min-width: 0 !important;
  min-height: 260px !important;
  padding: 26px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
}

html body .news-item h3 {
  font-size: 20px !important;
  line-height: 1.34 !important;
}

html body .news-item p {
  line-height: 1.72 !important;
}

html body .news-item .button {
  margin-top: auto !important;
}

html body .popular-searches,
html body [data-popular-searches] {
  width: min(880px, 100%) !important;
  margin: 16px auto 0 !important;
  padding: 10px 12px !important;
  min-height: 60px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 12px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body .popular-searches button,
html body [data-popular-searches] button {
  width: auto !important;
  min-width: 92px !important;
  min-height: 40px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #ffffff, #f2faf6) !important;
  border: 1px solid rgba(178, 222, 207, 0.82) !important;
  box-shadow: 0 10px 22px rgba(38, 103, 90, 0.09) !important;
  white-space: nowrap !important;
}

html body.home-polish .hero__actions {
  min-height: 58px !important;
  padding: 8px 0 !important;
  align-items: center !important;
}

html body.home-polish .hero__actions .button,
html body.home-polish .hero__actions a.button {
  min-height: 46px !important;
}

html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual {
  align-self: start !important;
  min-height: 0 !important;
  height: auto !important;
}

html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual img {
  height: 360px !important;
  min-height: 360px !important;
}

html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual__content {
  margin: -70px 22px 22px !important;
  padding: 20px 22px !important;
}

html body .footer__layout {
  position: relative !important;
  z-index: 1 !important;
  align-items: stretch !important;
  margin-bottom: 20px !important;
}

html body .footer__note {
  position: relative !important;
  z-index: 0 !important;
  width: min(1120px, calc(100% - 40px)) !important;
  max-width: 1120px !important;
  margin: 20px auto 0 !important;
  padding: 18px 22px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: space-between !important;
  gap: 14px 24px !important;
  align-items: center !important;
  clear: both !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

html body .footer__note p {
  flex: 1 1 380px !important;
  min-width: min(100%, 260px) !important;
  margin: 0 !important;
  line-height: 1.7 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

html body .footer__note p:last-child {
  flex: 1 1 320px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px 10px !important;
  justify-content: flex-end !important;
  text-align: right !important;
}

html body .footer__note a {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 2px 4px !important;
  line-height: 1.45 !important;
  white-space: nowrap !important;
}

@media (min-width: 1500px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail {
    right: 22px !important;
    width: 112px !important;
    max-width: 112px !important;
  }

  html body .floating-rail__buttons {
    width: 112px !important;
    padding: 14px 10px !important;
    gap: 10px !important;
  }

  html body .floating-rail__title,
  html body .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button,
  html body .floating-rail .floating-rail__buttons .floating-rail__button--top {
    width: 90px !important;
    min-width: 90px !important;
    max-width: 90px !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
  }

  html body .floating-rail__label,
  html body .floating-rail__button--top .floating-rail__label {
    font-size: 13px !important;
    line-height: 1.1 !important;
  }
}

@media (max-width: 1100px) {
  html body .results-stats,
  html body.home-polish .results-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body .knowledge-index {
    grid-template-columns: 1fr !important;
  }

  html body .knowledge-index__list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body .footer__note {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  html body .footer__note p:last-child {
    justify-content: flex-start !important;
    text-align: left !important;
  }
}

@media (max-width: 700px) {
  html body.home-polish .story-visual {
    min-height: 300px !important;
    height: 300px !important;
  }

  html body.home-polish .story-visual__badge {
    left: 20px !important;
    bottom: 88px !important;
  }

  html body.home-polish .story-visual h3 {
    left: 20px !important;
    right: 20px !important;
    bottom: 24px !important;
    max-width: calc(100% - 40px) !important;
    font-size: 21px !important;
  }

  html body .results-stats,
  html body.home-polish .results-stats,
  html body .knowledge-index__list,
  html body .guide-grid,
  html body .news-list {
    grid-template-columns: 1fr !important;
  }

  html body .article-filters,
  html body [data-store-filters],
  html body [data-knowledge-filters] {
    grid-template-columns: 1fr !important;
    padding: 16px !important;
  }

  html body .footer__note {
    width: calc(100% - 28px) !important;
  }
}

/* V105 warm community palette: richer nonprofit card surfaces with gentle color variation. */
html body {
  --yl-card-ink: #173f3a;
  --yl-card-copy: #58706b;
  --yl-card-a: #fffaf1;
  --yl-card-b: #f0fbf4;
  --yl-card-border: rgba(211, 228, 205, 0.86);
  --yl-card-accent: #49b895;
  --yl-card-shadow: rgba(88, 119, 96, 0.14);
}

html body :where(
  .page-card:not(.page-card--media),
  .feature-card,
  .article-card,
  .news-item,
  .guide-tile,
  .guide-card,
  .tool-sheet,
  .download-card,
  .event-card,
  .resource-card,
  .support-card,
  .story-card,
  .store-locator__card,
  .store-card,
  .store-contact-card,
  .contact-panel,
  .contact-channel,
  .contact-highlight-list article,
  .info-card,
  .detail-card,
  .service-standard__card,
  .related-links__card,
  .side-card,
  .map-card,
  .knowledge-index__feature,
  .knowledge-index__list a,
  .results-stats article,
  .search-result-card,
  .footer__contact-card,
  .hero__panel .panel-card,
  .section-panel
) {
  color: var(--yl-card-ink) !important;
  background:
    linear-gradient(145deg, var(--yl-card-a), var(--yl-card-b)) !important;
  border: 1px solid var(--yl-card-border) !important;
  border-top: 3px solid var(--yl-card-accent) !important;
  box-shadow:
    0 20px 44px var(--yl-card-shadow),
    inset 0 1px 0 rgba(255, 255, 255, 0.88) !important;
}

html body :where(
  .page-card:not(.page-card--media),
  .feature-card,
  .article-card,
  .news-item,
  .guide-tile,
  .guide-card,
  .tool-sheet,
  .download-card,
  .event-card,
  .resource-card,
  .support-card,
  .story-card,
  .store-locator__card,
  .store-card,
  .store-contact-card,
  .contact-panel,
  .contact-channel,
  .contact-highlight-list article,
  .info-card,
  .detail-card,
  .service-standard__card,
  .related-links__card,
  .side-card,
  .map-card,
  .knowledge-index__feature,
  .knowledge-index__list a,
  .results-stats article,
  .search-result-card,
  .footer__contact-card,
  .hero__panel .panel-card,
  .section-panel
):hover {
  box-shadow:
    0 24px 54px color-mix(in srgb, var(--yl-card-shadow), rgba(36, 84, 72, 0.1) 35%),
    inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
}

html body :where(
  .page-grid,
  .news-list,
  .article-list,
  .guide-grid,
  .tool-list,
  .download-grid,
  .store-locator,
  .contact-channel-grid,
  .contact-highlight-list,
  .store-contact-list,
  .footer__contacts,
  .results-stats,
  .knowledge-index__list
) > :where(article, a, div):nth-child(6n + 1) {
  --yl-card-a: #fffaf1;
  --yl-card-b: #eefbf4;
  --yl-card-border: rgba(205, 229, 201, 0.9);
  --yl-card-accent: #48b98f;
  --yl-card-shadow: rgba(79, 125, 94, 0.14);
}

html body :where(
  .page-grid,
  .news-list,
  .article-list,
  .guide-grid,
  .tool-list,
  .download-grid,
  .store-locator,
  .contact-channel-grid,
  .contact-highlight-list,
  .store-contact-list,
  .footer__contacts,
  .results-stats,
  .knowledge-index__list
) > :where(article, a, div):nth-child(6n + 2) {
  --yl-card-a: #fff7ef;
  --yl-card-b: #fff1e5;
  --yl-card-border: rgba(239, 207, 178, 0.86);
  --yl-card-accent: #ef9c62;
  --yl-card-shadow: rgba(150, 102, 62, 0.13);
}

html body :where(
  .page-grid,
  .news-list,
  .article-list,
  .guide-grid,
  .tool-list,
  .download-grid,
  .store-locator,
  .contact-channel-grid,
  .contact-highlight-list,
  .store-contact-list,
  .footer__contacts,
  .results-stats,
  .knowledge-index__list
) > :where(article, a, div):nth-child(6n + 3) {
  --yl-card-a: #f7fbff;
  --yl-card-b: #edf7fb;
  --yl-card-border: rgba(190, 222, 232, 0.88);
  --yl-card-accent: #69abc1;
  --yl-card-shadow: rgba(73, 119, 138, 0.13);
}

html body :where(
  .page-grid,
  .news-list,
  .article-list,
  .guide-grid,
  .tool-list,
  .download-grid,
  .store-locator,
  .contact-channel-grid,
  .contact-highlight-list,
  .store-contact-list,
  .footer__contacts,
  .results-stats,
  .knowledge-index__list
) > :where(article, a, div):nth-child(6n + 4) {
  --yl-card-a: #fbf8ff;
  --yl-card-b: #f3effb;
  --yl-card-border: rgba(215, 202, 236, 0.86);
  --yl-card-accent: #9a88c8;
  --yl-card-shadow: rgba(100, 84, 143, 0.12);
}

html body :where(
  .page-grid,
  .news-list,
  .article-list,
  .guide-grid,
  .tool-list,
  .download-grid,
  .store-locator,
  .contact-channel-grid,
  .contact-highlight-list,
  .store-contact-list,
  .footer__contacts,
  .results-stats,
  .knowledge-index__list
) > :where(article, a, div):nth-child(6n + 5) {
  --yl-card-a: #fffdf0;
  --yl-card-b: #fff6d8;
  --yl-card-border: rgba(235, 216, 158, 0.82);
  --yl-card-accent: #d7b94c;
  --yl-card-shadow: rgba(138, 117, 48, 0.11);
}

html body :where(
  .page-grid,
  .news-list,
  .article-list,
  .guide-grid,
  .tool-list,
  .download-grid,
  .store-locator,
  .contact-channel-grid,
  .contact-highlight-list,
  .store-contact-list,
  .footer__contacts,
  .results-stats,
  .knowledge-index__list
) > :where(article, a, div):nth-child(6n) {
  --yl-card-a: #fff7f5;
  --yl-card-b: #fdf0ee;
  --yl-card-border: rgba(234, 199, 194, 0.84);
  --yl-card-accent: #df8b80;
  --yl-card-shadow: rgba(147, 79, 72, 0.12);
}

html body :where(.page-card--media, .photo-card, .story-gallery__card) {
  border-color: rgba(205, 228, 215, 0.82) !important;
  box-shadow:
    0 22px 48px rgba(58, 106, 91, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.82) !important;
}

html body :where(.page-card--media .page-card__body, .photo-card__body) {
  background:
    linear-gradient(180deg, rgba(255, 251, 242, 0.98), rgba(240, 250, 246, 0.96)) !important;
  border-top: 1px solid rgba(205, 228, 215, 0.72) !important;
}

html body :where(
  .page-card h3,
  .feature-card h3,
  .article-card h3,
  .news-item h3,
  .guide-tile h3,
  .guide-card h3,
  .tool-sheet h3,
  .download-card h3,
  .event-card h3,
  .resource-card h3,
  .store-locator__card h3,
  .store-contact-card h3,
  .contact-panel h3,
  .contact-channel strong,
  .info-card h3,
  .detail-card h3,
  .section-panel h2,
  .section-panel h3,
  .search-result-card h3,
  .footer__contact-card h3
) {
  color: var(--yl-card-ink) !important;
}

html body :where(
  .page-card p,
  .feature-card p,
  .article-card p,
  .news-item p,
  .guide-tile p,
  .guide-card p,
  .tool-sheet p,
  .tool-sheet li,
  .download-card p,
  .event-card p,
  .resource-card p,
  .store-locator__card p,
  .store-locator__card li,
  .store-contact-card p,
  .store-contact-card li,
  .contact-panel p,
  .contact-panel li,
  .contact-channel p,
  .info-card p,
  .detail-card p,
  .detail-card li,
  .section-panel p,
  .section-panel li,
  .search-result-card p,
  .footer__contact-card p,
  .footer__contact-card li
) {
  color: var(--yl-card-copy) !important;
}

html body :where(
  .article-card__type,
  .store-locator__card > span,
  .store-contact-card__tag,
  .page-card__meta span,
  .news-item > span,
  .event-card > span,
  .download-card > span,
  .resource-card > span
) {
  color: color-mix(in srgb, var(--yl-card-accent), #174b43 42%) !important;
  background: rgba(255, 255, 255, 0.62) !important;
  border: 1px solid color-mix(in srgb, var(--yl-card-accent), #ffffff 58%) !important;
}

html body .article-filters,
html body [data-store-filters],
html body [data-knowledge-filters],
html body .popular-searches {
  background:
    linear-gradient(135deg, rgba(255, 250, 241, 0.98), rgba(239, 250, 244, 0.94)) !important;
  border-color: rgba(207, 228, 204, 0.84) !important;
  box-shadow: 0 18px 42px rgba(78, 118, 91, 0.11) !important;
}

html body .brand__mark,
html body .footer__logo-mark {
  width: 48px !important;
  min-width: 48px !important;
  max-width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  padding: 0 !important;
  overflow: hidden !important;
  contain: strict !important;
  box-sizing: border-box !important;
}

html body .brand__mark::before,
html body .brand__mark::after,
html body .footer__logo-mark::before,
html body .footer__logo-mark::after {
  inset: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  overflow: hidden !important;
  contain: paint !important;
}

html body .store-locator > .store-locator__card:nth-child(6n + 1),
html body .store-contact-list > .store-contact-card:nth-child(6n + 1) {
  --yl-card-a: #fffaf0;
  --yl-card-b: #edf9f2;
  --yl-card-border: rgba(203, 228, 197, 0.9);
  --yl-card-accent: #4fb58f;
}

html body .store-locator > .store-locator__card:nth-child(6n + 2),
html body .store-contact-list > .store-contact-card:nth-child(6n + 2) {
  --yl-card-a: #fff5ed;
  --yl-card-b: #fff0e2;
  --yl-card-border: rgba(239, 204, 174, 0.88);
  --yl-card-accent: #ed9a61;
}

html body .store-locator > .store-locator__card:nth-child(6n + 3),
html body .store-contact-list > .store-contact-card:nth-child(6n + 3) {
  --yl-card-a: #f6fbff;
  --yl-card-b: #edf8fb;
  --yl-card-border: rgba(188, 222, 232, 0.88);
  --yl-card-accent: #68aeca;
}

html body .store-locator > .store-locator__card:nth-child(6n + 4),
html body .store-contact-list > .store-contact-card:nth-child(6n + 4) {
  --yl-card-a: #fbf7ff;
  --yl-card-b: #f4eefb;
  --yl-card-border: rgba(214, 200, 235, 0.86);
  --yl-card-accent: #9b87c9;
}

html body .store-locator > .store-locator__card:nth-child(6n + 5),
html body .store-contact-list > .store-contact-card:nth-child(6n + 5) {
  --yl-card-a: #fffdf0;
  --yl-card-b: #fff5d8;
  --yl-card-border: rgba(235, 216, 158, 0.82);
  --yl-card-accent: #d5b74b;
}

html body .store-locator > .store-locator__card:nth-child(6n),
html body .store-contact-list > .store-contact-card:nth-child(6n) {
  --yl-card-a: #fff7f5;
  --yl-card-b: #fdf0ee;
  --yl-card-border: rgba(234, 199, 194, 0.84);
  --yl-card-accent: #df8b80;
}

/* V106 alignment polish: remove stray decorative strokes and lock cards into tidy grids. */
html body :where(
  .page-card:not(.page-card--media),
  .page-card__body,
  .feature-card,
  .service-card,
  .support-card,
  .story-card,
  .article-card,
  .news-item,
  .download-card,
  .event-card,
  .store-locator__card,
  .store-card,
  .store-contact-card,
  .contact-panel,
  .contact-channel,
  .contact-highlight-list article,
  .guide-card,
  .guide-tile,
  .tool-sheet,
  .side-card,
  .guide-sidebar__card,
  .section-panel,
  .detail-card,
  .map-card,
  .knowledge-index__feature,
  .knowledge-index__list a,
  .results-stats article,
  .footer__contact-card
)::before,
html body :where(
  .page-card:not(.page-card--media),
  .feature-card,
  .service-card,
  .store-card,
  .article-card,
  .download-card,
  .event-card,
  .store-locator__card,
  .footer__contact-card
)::after {
  content: none !important;
  display: none !important;
}

html body :where(
  .page-card:not(.page-card--media),
  .feature-card,
  .article-card,
  .news-item,
  .download-card,
  .event-card,
  .store-locator__card,
  .store-contact-card,
  .guide-card,
  .guide-tile,
  .tool-sheet,
  .side-card,
  .contact-channel,
  .contact-highlight-list article,
  .footer__contact-card
) {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

html body :where(
  .page-card:not(.page-card--media),
  .feature-card,
  .article-card,
  .news-item,
  .download-card,
  .event-card,
  .store-locator__card,
  .store-contact-card,
  .guide-card,
  .guide-tile,
  .tool-sheet,
  .side-card,
  .contact-channel,
  .contact-highlight-list article,
  .footer__contact-card
) :where(h2, h3, strong, p, li, span, a) {
  max-width: 100% !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

html body :where(.page-grid, .guide-grid, .tool-list, .download-grid, .news-list, .article-list, .store-locator, .store-contact-list, .contact-channel-grid, .footer__contacts) {
  align-items: stretch !important;
}

html body :where(.store-locator__card, .store-contact-card, .event-card, .download-card) .cta-row,
html body :where(.store-locator__card, .store-contact-card, .event-card, .download-card) :where(.button, .button--small):last-child {
  margin-top: auto !important;
}

html body :where(.store-locator__card, .store-contact-card, .event-card, .download-card) .cta-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
}

html body :where(.store-locator__card, .store-contact-card, .event-card, .download-card) .cta-row .button,
html body :where(.store-locator__card, .store-contact-card, .event-card, .download-card) .button {
  width: 100% !important;
  min-width: 0 !important;
  justify-content: center !important;
}

html body :where(.section-visual, .visual-card, .contact-hero-card__grid, .story-content) {
  align-self: stretch !important;
}

html body :where(.section-visual, .visual-card) img {
  width: 100% !important;
  height: 100% !important;
  min-height: 260px !important;
  object-fit: cover !important;
}

html body :where(.story-content, .section-visual__content, .contact-hero-card, .page-utility) {
  min-width: 0 !important;
  overflow: hidden !important;
}

html body :where(.story-content, .section-visual__content, .contact-hero-card, .page-utility) :where(h2, h3, p, li) {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

html body .footer {
  padding-top: clamp(46px, 5vw, 68px) !important;
  padding-bottom: 30px !important;
}

html body .footer__layout {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.65fr) !important;
  align-items: start !important;
  gap: 22px !important;
}

html body .footer__brand {
  align-self: start !important;
  min-height: 0 !important;
  padding: 28px !important;
  transform: none !important;
}

html body .footer__contacts {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 16px !important;
}

html body .footer__contact-card {
  min-height: 156px !important;
  border-radius: 18px !important;
  padding: 20px !important;
}

@media (max-width: 980px) {
  html body .footer__layout,
  html body .footer__contacts {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  html body :where(.store-locator__card, .store-contact-card, .event-card, .download-card) .cta-row {
    grid-template-columns: 1fr !important;
  }

  html body .footer__brand,
  html body .footer__contact-card {
    padding: 18px !important;
  }
}

/* V107 whole-site card completion: bring secondary pages into the warm nonprofit system. */
html body :where(
  .timeline-grid article,
  .process-steps article,
  .impact-grid article,
  .metric-grid article,
  .faq-list details,
  .admin-card,
  .dashboard-card,
  .visual-card,
  .booking-form,
  .service-desk,
  .page-utility,
  .store-overview-summary article,
  .store-overview-banner,
  .publish-flow article,
  .store-heat-list article,
  .status-grid span,
  .review-list,
  .progress-list,
  .demand-table,
  .content-table,
  .admin-sidebar
) {
  --yl-card-a: #fffaf1;
  --yl-card-b: #effbf5;
  --yl-card-border: rgba(205, 228, 204, 0.88);
  --yl-card-accent: #4fb58f;
  --yl-card-shadow: rgba(75, 119, 91, 0.13);
  color: var(--yl-card-ink) !important;
  background: linear-gradient(145deg, var(--yl-card-a), var(--yl-card-b)) !important;
  border: 1px solid var(--yl-card-border) !important;
  border-top: 3px solid var(--yl-card-accent) !important;
  border-radius: 18px !important;
  box-shadow:
    0 18px 42px var(--yl-card-shadow),
    inset 0 1px 0 rgba(255, 255, 255, 0.88) !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

html body :where(
  .timeline-grid,
  .process-steps,
  .impact-grid,
  .metric-grid,
  .store-overview-summary,
  .publish-flow,
  .store-heat-list,
  .status-grid
) {
  align-items: stretch !important;
}

html body :where(
  .timeline-grid article,
  .process-steps article,
  .impact-grid article,
  .metric-grid article,
  .faq-list details,
  .admin-card,
  .dashboard-card,
  .visual-card,
  .booking-form,
  .service-desk,
  .page-utility,
  .store-overview-summary article,
  .store-overview-banner,
  .publish-flow article,
  .store-heat-list article
) :where(h2, h3, strong, summary, p, li, span, label, a, td, th) {
  max-width: 100% !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

html body :where(
  .timeline-grid article,
  .process-steps article,
  .impact-grid article,
  .metric-grid article,
  .faq-list details,
  .admin-card,
  .dashboard-card,
  .visual-card,
  .booking-form,
  .service-desk,
  .page-utility,
  .store-overview-summary article,
  .store-overview-banner,
  .publish-flow article,
  .store-heat-list article
)::before,
html body :where(
  .timeline-grid article,
  .process-steps article,
  .impact-grid article,
  .metric-grid article,
  .faq-list details,
  .admin-card,
  .dashboard-card,
  .visual-card,
  .booking-form,
  .store-overview-summary article,
  .store-overview-banner,
  .publish-flow article,
  .store-heat-list article
)::after {
  content: none !important;
  display: none !important;
}

html body :where(.timeline-grid, .process-steps, .impact-grid, .metric-grid, .store-overview-summary, .publish-flow, .store-heat-list) > :nth-child(6n + 2) {
  --yl-card-a: #fff7ef;
  --yl-card-b: #fff1e5;
  --yl-card-border: rgba(239, 207, 178, 0.86);
  --yl-card-accent: #ef9c62;
  --yl-card-shadow: rgba(150, 102, 62, 0.12);
}

html body :where(.timeline-grid, .process-steps, .impact-grid, .metric-grid, .store-overview-summary, .publish-flow, .store-heat-list) > :nth-child(6n + 3) {
  --yl-card-a: #f7fbff;
  --yl-card-b: #edf7fb;
  --yl-card-border: rgba(190, 222, 232, 0.88);
  --yl-card-accent: #69abc1;
  --yl-card-shadow: rgba(73, 119, 138, 0.12);
}

html body :where(.timeline-grid, .process-steps, .impact-grid, .metric-grid, .store-overview-summary, .publish-flow, .store-heat-list) > :nth-child(6n + 4) {
  --yl-card-a: #fbf8ff;
  --yl-card-b: #f3effb;
  --yl-card-border: rgba(215, 202, 236, 0.86);
  --yl-card-accent: #9a88c8;
  --yl-card-shadow: rgba(100, 84, 143, 0.11);
}

html body :where(.timeline-grid, .process-steps, .impact-grid, .metric-grid, .store-overview-summary, .publish-flow, .store-heat-list) > :nth-child(6n + 5) {
  --yl-card-a: #fffdf0;
  --yl-card-b: #fff6d8;
  --yl-card-border: rgba(235, 216, 158, 0.82);
  --yl-card-accent: #d7b94c;
  --yl-card-shadow: rgba(138, 117, 48, 0.1);
}

html body .faq-list details {
  padding: 0 !important;
}

html body .faq-list summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 22px 24px !important;
  color: var(--yl-card-ink) !important;
  font-weight: 800 !important;
}

html body .faq-list details p {
  padding: 0 24px 24px !important;
  color: var(--yl-card-copy) !important;
}

html body .process-steps article,
html body .timeline-grid article,
html body .impact-grid article,
html body .metric-grid article {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

html body .visual-card {
  min-height: 100% !important;
  padding: clamp(24px, 3vw, 34px) !important;
}

html body .visual-card :where(h3, li, p) {
  color: inherit !important;
}

html body :where(.admin-card, .dashboard-card) {
  padding: clamp(22px, 3vw, 30px) !important;
}

html body :where(.demand-table, .content-table) {
  overflow-x: auto !important;
  border-top-width: 1px !important;
}

html body :where(.demand-table table, .content-table table) {
  min-width: 640px !important;
  width: 100% !important;
}

@media (max-width: 760px) {
  html body :where(.faq-list summary, .admin-card, .dashboard-card, .booking-form, .page-utility) {
    padding: 18px !important;
  }

  html body :where(.demand-table table, .content-table table) {
    min-width: 560px !important;
  }
}

/* V108 layout refinement: fix remaining image-card, overlay and meta-row misalignment. */
html body :where(.page-grid, .card-grid, .store-locator, .article-list, .detail-grid, .service-standard__grid) {
  align-items: stretch !important;
}

html body .page-card.page-card--media {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

html body .page-card.page-card--media .page-card__media,
html body .page-card.page-card--media > img {
  flex: 0 0 auto !important;
  width: 100% !important;
  height: clamp(188px, 19vw, 252px) !important;
  object-fit: cover !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body .page-card.page-card--media .page-card__body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  min-height: 0 !important;
  padding: clamp(20px, 2.4vw, 28px) !important;
  background:
    linear-gradient(145deg, rgba(255, 252, 245, 0.98), rgba(242, 250, 246, 0.98)) !important;
  border-top: 1px solid rgba(214, 229, 211, 0.86) !important;
  border-radius: 0 0 18px 18px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
  overflow: visible !important;
}

html body .page-card.page-card--media .page-card__body :where(h2, h3, p, li, span) {
  display: block !important;
  max-width: 100% !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  overflow: visible !important;
  text-overflow: clip !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
}

html body .page-card.page-card--media .page-card__body p,
html body .page-card.page-card--media .page-card__body li {
  color: #4e655d !important;
  line-height: 1.78 !important;
}

html body :where(.article-meta, .article-card__meta) {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 10px !important;
  overflow: visible !important;
  background: rgba(255, 250, 241, 0.78) !important;
  border: 1px solid rgba(230, 214, 186, 0.76) !important;
  border-radius: 16px !important;
  box-shadow: 0 12px 28px rgba(103, 124, 96, 0.1) !important;
}

html body :where(.article-meta, .article-card__meta) > * {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  text-overflow: clip !important;
}

html body :where(.article-meta, .article-card__meta) :where(span, a, button, .button) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 32px !important;
  padding: 7px 11px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.76) !important;
  border: 1px solid rgba(223, 232, 217, 0.78) !important;
  color: #52665f !important;
  box-shadow: none !important;
}

html body .dashboard-card__head {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 10px 16px !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 14px 16px !important;
  margin-bottom: 18px !important;
  background: rgba(255, 251, 243, 0.8) !important;
  border: 1px solid rgba(225, 216, 196, 0.72) !important;
  border-radius: 16px !important;
  box-shadow: 0 12px 28px rgba(87, 117, 97, 0.09) !important;
}

html body .dashboard-card__head > * {
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
}

html body .section-visual {
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
}

html body .section-visual img {
  flex: 0 0 auto !important;
  width: 100% !important;
  object-fit: cover !important;
}

html body .section-visual__content {
  width: auto !important;
  min-width: 0 !important;
  max-width: calc(100% - 32px) !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

html body .section-visual__content :where(h2, h3, p, li, span) {
  display: block !important;
  max-width: 100% !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  overflow: visible !important;
  text-overflow: clip !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
}

html body .visual-card {
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  overflow: visible !important;
}

html body .visual-card :where(h3, p, li, span) {
  display: block !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  overflow: visible !important;
  text-overflow: clip !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
}

html body .visual-card ul {
  display: grid !important;
  gap: 10px !important;
  padding-left: 0 !important;
  list-style: none !important;
}

html body .visual-card li {
  padding: 10px 12px !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, 0.66) !important;
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
}

html body :where(.contact-hero-card__grid, .contact-hero-card__body, .contact-hero-card__side) {
  min-width: 0 !important;
  max-width: 100% !important;
}

html body :where(.journey-steps, .story-gallery, .process-steps, .store-overview-summary) {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: visible !important;
}

html body :where(.journey-steps, .story-gallery) > * {
  transform: none !important;
}

@media (max-width: 900px) {
  html body :where(.section-split, .store-hero, .detail-grid, .service-standard__grid, .contact-hero-card__grid) {
    grid-template-columns: 1fr !important;
  }

  html body .section-aside {
    align-self: stretch !important;
    width: 100% !important;
  }
}

@media (max-width: 760px) {
  html body .page-card.page-card--media .page-card__media,
  html body .page-card.page-card--media > img {
    height: clamp(168px, 48vw, 218px) !important;
  }

  html body .page-card.page-card--media .page-card__body {
    padding: 18px !important;
    border-radius: 0 0 18px 18px !important;
  }

  html body .section-visual {
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  html body .section-visual img {
    height: clamp(210px, 58vw, 270px) !important;
  }

  html body .section-visual__content {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    z-index: 2 !important;
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin: -44px 14px 16px !important;
    padding: 18px !important;
    border-radius: 18px !important;
    background: rgba(255, 253, 247, 0.94) !important;
    border: 1px solid rgba(255, 255, 255, 0.78) !important;
    box-shadow: 0 18px 34px rgba(48, 91, 79, 0.14) !important;
    color: #263a35 !important;
  }

  html body .section-visual__content :where(h2, h3) {
    color: #223a34 !important;
    line-height: 1.34 !important;
  }

  html body .section-visual__content p {
    color: #536a62 !important;
    line-height: 1.72 !important;
  }

  html body :where(.article-meta, .article-card__meta) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    padding: 10px !important;
  }

  html body :where(.article-meta, .article-card__meta) :where(span, a, button, .button) {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  html body .dashboard-card__head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    padding: 14px !important;
  }

  html body .visual-card {
    min-height: 0 !important;
    padding: 20px !important;
  }
}

/* V109 media-card image visibility: keep real images visible on mobile card stacks. */
html body .page-card.page-card--media,
html body:has(.page-hero__panel[data-hero="community"]) #groups .page-card.page-card--media {
  display: flex !important;
  flex-direction: column !important;
  background: linear-gradient(180deg, #ffffff 0%, #fffdf9 100%) !important;
}

html body .page-card.page-card--media .page-card__media,
html body .page-card.page-card--media > img,
html body:has(.page-hero__panel[data-hero="community"]) #groups .page-card.page-card--media .page-card__media {
  display: block !important;
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  min-width: 100% !important;
  height: clamp(190px, 22vw, 260px) !important;
  min-height: clamp(190px, 22vw, 260px) !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: saturate(1.04) contrast(1.02) !important;
  border-radius: 0 !important;
  margin: 0 !important;
  clip-path: none !important;
}

html body .page-card.page-card--media::before,
html body .page-card.page-card--media::after {
  pointer-events: none !important;
}

html body .page-card.page-card--media .page-card__body {
  position: relative !important;
  z-index: 3 !important;
}

@media (max-width: 760px) {
  html body .page-card.page-card--media .page-card__media,
  html body .page-card.page-card--media > img,
  html body:has(.page-hero__panel[data-hero="community"]) #groups .page-card.page-card--media .page-card__media {
    height: 206px !important;
    min-height: 206px !important;
    object-fit: cover !important;
  }
}

/* V110 mobile gutters: prevent card groups from visually sticking to viewport edges. */
@media (max-width: 760px) {
  html body :where(
    .container.page-grid,
    .container.store-hero,
    .container.detail-grid,
    .container.service-standard,
    .container.article-layout,
    .container.guide-layout,
    .container.related-links,
    .container.contact-directory
  ) {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  html body :where(
    .page-card,
    .info-card,
    .visual-card,
    .detail-card,
    .service-standard__card,
    .article-body,
    .article-sidebar,
    .guide-section,
    .guide-sidebar,
    .side-card
  ) {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }
}

/* V111 mobile media card inset: keep image cards inside the page rhythm. */
@media (max-width: 760px) {
  html body .container.page-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    overflow: visible !important;
  }

  html body .container.page-grid > .page-card.page-card--media,
  html body:has(.page-hero__panel[data-hero="community"]) #groups .container.page-grid > .page-card.page-card--media {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  html body .container.page-grid > .page-card.page-card--media .page-card__media,
  html body .container.page-grid > .page-card.page-card--media > img,
  html body:has(.page-hero__panel[data-hero="community"]) #groups .container.page-grid > .page-card.page-card--media .page-card__media {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    border-radius: 0 !important;
  }
}

/* V112 community mobile inset: override earlier full-bleed group card rules. */
@media (max-width: 760px) {
  html body:has(.page-hero__panel[data-hero="community"]) #groups .container.page-grid,
  html body #groups .container.page-grid {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body:has(.page-hero__panel[data-hero="community"]) #groups .container.page-grid > .page-card.page-card--media,
  html body #groups .container.page-grid > .page-card.page-card--media {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }
}

/* V113 home mobile hero containment: keep the first screen inside the same page grid. */
@media (max-width: 760px) {
  html body.home-polish .hero.section {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body.home-polish .hero.section > .container.hero__grid,
  html body.home-polish .hero__grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 22px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  html body.home-polish .hero__content,
  html body.home-polish .hero__panel,
  html body.home-polish .hero__panel .panel-card,
  html body.home-polish .quick-form {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body.home-polish .hero__content {
    padding: 28px 18px 22px !important;
    border-radius: 22px !important;
  }

  html body.home-polish .hero__content h1,
  html body.home-polish .hero h1 {
    max-width: 100% !important;
    font-size: clamp(30px, 8vw, 36px) !important;
    line-height: 1.16 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    text-wrap: pretty !important;
  }

  html body.home-polish .hero__summary {
    max-width: 100% !important;
    font-size: 15px !important;
    line-height: 1.78 !important;
    overflow-wrap: break-word !important;
  }

  html body.home-polish .hero__actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a.button {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  html body.home-polish .hero__stats {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  html body.home-polish .hero__stats article {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 14px !important;
    box-sizing: border-box !important;
  }

  html body.home-polish .hero__stats article:nth-child(3) {
    grid-column: 1 / -1 !important;
  }

  html body.home-polish .hero__panel .panel-card {
    padding: 18px !important;
    border-radius: 22px !important;
  }

  html body.home-polish .quick-form label,
  html body.home-polish .quick-form input,
  html body.home-polish .quick-form select,
  html body.home-polish .quick-form button,
  html body.home-polish .quick-form .button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}

/* V114 home mobile text fit: stop hero copy from clipping inside the first card. */
@media (max-width: 760px) {
  html body.home-polish .hero__content :where(.eyebrow, h1, p, span, strong, a) {
    max-width: 100% !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
    text-overflow: clip !important;
    overflow: visible !important;
  }

  html body.home-polish .hero__content .eyebrow {
    display: inline-flex !important;
    width: auto !important;
    max-width: 100% !important;
    padding: 9px 14px !important;
    line-height: 1.28 !important;
    text-align: center !important;
    justify-content: center !important;
  }

  html body.home-polish .hero__content h1,
  html body.home-polish .hero h1 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 26px !important;
    font-size: clamp(28px, 7.2vw, 32px) !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body.home-polish .hero__summary {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }
}

/* V115 home mobile hard containment: override legacy 100vw/min-width rules in the hero. */
@media (max-width: 760px) {
  html body.home-polish,
  html body.home-polish main,
  html body.home-polish .hero.section,
  html body.home-polish .hero.section > .container.hero__grid,
  html body.home-polish .hero__grid,
  html body.home-polish .hero__content,
  html body.home-polish .hero__panel,
  html body.home-polish .hero__panel .panel-card,
  html body.home-polish .quick-form {
    max-width: 100vw !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  html body.home-polish .hero.section {
    padding: 38px 14px 24px !important;
  }

  html body.home-polish .hero.section > .container.hero__grid,
  html body.home-polish .hero__grid {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  html body.home-polish .hero__content,
  html body.home-polish .hero__panel,
  html body.home-polish .hero__panel .panel-card {
    width: 100% !important;
    max-width: 100% !important;
    transform: none !important;
  }

  html body.home-polish .hero__content {
    padding: 28px 18px 22px !important;
    overflow: hidden !important;
  }

  html body.home-polish .hero__content h1,
  html body.home-polish .hero h1 {
    width: auto !important;
    max-width: calc(100vw - 64px) !important;
    min-width: 0 !important;
    font-size: 28px !important;
    line-height: 1.22 !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  html body.home-polish .hero__content .eyebrow,
  html body.home-polish .hero__summary,
  html body.home-polish .page-hero__english,
  html body.home-polish .hero__actions,
  html body.home-polish .hero__stats {
    width: auto !important;
    max-width: calc(100vw - 64px) !important;
    min-width: 0 !important;
  }
}

/* V116 home mobile headline polish: prefer readable wrapped lines over oversized display type. */
@media (max-width: 760px) {
  html body.home-polish .hero__content h1,
  html body.home-polish .hero h1 {
    max-width: 296px !important;
    font-size: 25px !important;
    line-height: 1.28 !important;
    font-weight: 900 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    text-align: left !important;
  }

  html body.home-polish .hero__content {
    row-gap: 20px !important;
  }

  html body.home-polish .hero__summary {
    max-width: 296px !important;
    font-size: 14.5px !important;
    line-height: 1.8 !important;
  }
}

/* V117 mobile form and event card polish: align large utility surfaces with the page grid. */
@media (max-width: 760px) {
  html body :where(.container.booking-layout, .container:has(> .event-list), .event-list) {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body .event-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  html body :where(.booking-form, .quick-form, .event-card, .download-card, .faq-list details) {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  html body .booking-form {
    padding: 20px !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  html body .booking-form :where(label, input, select, textarea, button, .button) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  html body .event-card {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    padding: 22px !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  html body .event-card .button,
  html body .event-card a.button {
    width: 100% !important;
    margin-top: 4px !important;
    justify-content: center !important;
  }

  html body .faq-list {
    display: grid !important;
    gap: 14px !important;
  }
}

/* V118 mobile utility card finish: make booking and events read as polished cards. */
@media (max-width: 760px) {
  html body .container.booking-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  html body .container.booking-layout > .booking-form {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 22px 20px !important;
    border-radius: 22px !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(255, 236, 199, 0.38), transparent 34%),
      linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(248, 253, 250, 0.98)) !important;
    border: 1px solid rgba(198, 229, 218, 0.9) !important;
    box-shadow: 0 18px 38px rgba(57, 110, 94, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
    overflow: hidden !important;
  }

  html body .container.booking-layout > .triage-output {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  html body .event-list {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
  }

  html body .event-list > .event-card {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 24px 22px !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  html body .event-list > .event-card > div:first-child {
    position: static !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    transform: none !important;
  }

  html body .event-list > .event-card > div:first-child > span,
  html body .event-list > .event-card .event-status {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    align-self: flex-start !important;
    max-width: 100% !important;
    margin: 0 !important;
    white-space: nowrap !important;
  }

  html body .event-list > .event-card h3,
  html body .event-list > .event-card p {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
  }
}

/* V119 booking mobile inset: page-specific override for the request form layout. */
@media (max-width: 760px) {
  html body:has(.page-hero__panel[data-hero="tool"]) .section > .container.booking-layout,
  html body .section > .container.booking-layout.container {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body:has(.page-hero__panel[data-hero="tool"]) .section > .container.booking-layout > .booking-form,
  html body .section > .container.booking-layout.container > .booking-form {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* V120 layout refinement: stop secondary-page cards and filters from drifting out of frame. */
html body :where(
  .knowledge-filter,
  .subnav,
  .article-meta,
  .page-hero__meta,
  .article-card__meta,
  .cta-row,
  .tool-grid,
  .resource-columns,
  .news-list,
  .store-contact-list,
  .contact-highlight-list,
  .contact-channel-grid,
  .related-links__grid,
  .article-layout,
  .section-split
) {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

html body :where(
  .page-hero__panel,
  .section-panel,
  .article-body,
  .article-sidebar,
  .guide-card,
  .guide-tile,
  .guide-note,
  .tool-sheet,
  .side-card,
  .news-item,
  .article-card,
  .resource-card,
  .page-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .related-links__card
) {
  min-width: 0 !important;
  box-sizing: border-box !important;
}

html body :where(
  .page-hero__panel,
  .section-panel,
  .article-body,
  .article-sidebar,
  .guide-card,
  .guide-tile,
  .guide-note,
  .tool-sheet,
  .side-card,
  .news-item,
  .article-card,
  .resource-card,
  .page-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .related-links__card
) :where(h1, h2, h3, h4, p, li, span, strong, a, label, button) {
  max-width: 100% !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  box-sizing: border-box !important;
}

html body :where(.article-meta, .page-hero__meta, .article-card__meta, .subnav, .knowledge-filter) {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px !important;
  overflow: visible !important;
}

html body :where(.article-meta, .page-hero__meta, .article-card__meta, .subnav, .knowledge-filter) > * {
  min-width: 0 !important;
  flex-shrink: 1 !important;
}

html body :where(.cta-row) {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 12px !important;
}

html body :where(.cta-row) :where(.button, button, a) {
  min-width: 0 !important;
  max-width: 100% !important;
  text-align: center !important;
  justify-content: center !important;
}

html body :where(.tool-sheet, .guide-card, .guide-tile, .side-card, .news-item, .resource-card) {
  border-radius: 22px !important;
  overflow: hidden !important;
}

html body :where(.tool-sheet, .guide-card, .guide-tile, .side-card, .news-item, .resource-card):nth-child(4n + 1) {
  background:
    radial-gradient(circle at 100% 0, rgba(255, 220, 168, 0.16), transparent 32%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.99), rgba(246, 252, 249, 0.97)) !important;
  border-color: rgba(205, 231, 221, 0.92) !important;
}

html body :where(.tool-sheet, .guide-card, .guide-tile, .side-card, .news-item, .resource-card):nth-child(4n + 2) {
  background:
    radial-gradient(circle at 100% 0, rgba(184, 220, 246, 0.18), transparent 32%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.99), rgba(246, 251, 253, 0.97)) !important;
  border-color: rgba(202, 224, 237, 0.9) !important;
}

html body :where(.tool-sheet, .guide-card, .guide-tile, .side-card, .news-item, .resource-card):nth-child(4n + 3) {
  background:
    radial-gradient(circle at 100% 0, rgba(255, 202, 196, 0.16), transparent 32%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.99), rgba(253, 248, 246, 0.97)) !important;
  border-color: rgba(235, 212, 202, 0.88) !important;
}

html body :where(.tool-sheet, .guide-card, .guide-tile, .side-card, .news-item, .resource-card):nth-child(4n) {
  background:
    radial-gradient(circle at 100% 0, rgba(201, 220, 176, 0.18), transparent 32%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.99), rgba(249, 252, 246, 0.97)) !important;
  border-color: rgba(213, 229, 196, 0.9) !important;
}

@media (max-width: 980px) {
  html body:has(.page-hero__panel) :where(.article-layout, .section-split, .contact-hero-card__grid) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  html body:has(.page-hero__panel) :where(.article-sidebar, .section-aside) {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 760px) {
  html body:has(.page-hero__panel) main :where(.section > .container, .page-hero > .container, .container.section-body) {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body:has(.page-hero__panel) :where(.page-hero__panel, .section-panel, .article-body, .article-sidebar) {
    width: 100% !important;
    max-width: 100% !important;
    padding: 24px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: hidden !important;
  }

  html body:has(.page-hero__panel) :where(.page-hero__panel h1, .section-heading h2, .section-panel h2, .article-body h2) {
    font-size: 30px !important;
    line-height: 1.24 !important;
  }

  html body:has(.page-hero__panel) :where(.page-hero__panel .hero__summary, .section-heading p, .section-panel p, .article-body p) {
    font-size: 15px !important;
    line-height: 1.86 !important;
  }

  html body :where(.knowledge-filter, .subnav) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 12px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
  }

  html body :where(.knowledge-filter, .subnav) > a {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    padding: 8px 10px !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.25 !important;
  }

  html body :where(.article-meta, .page-hero__meta, .article-card__meta) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    gap: 10px !important;
  }

  html body :where(.article-meta, .page-hero__meta, .article-card__meta) > * {
    width: 100% !important;
    min-height: 40px !important;
    justify-content: center !important;
    text-align: center !important;
  }

  html body :where(.knowledge-index, .page-grid, .guide-grid, .tool-list, .resource-columns, .news-list, .store-contact-list, .contact-highlight-list, .contact-channel-grid, .related-links__grid) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 16px !important;
  }

  html body :where(.knowledge-index__feature, .knowledge-index__list, .page-card, .guide-card, .guide-tile, .guide-note, .tool-sheet, .side-card, .news-item, .article-card, .resource-card, .contact-panel, .contact-channel, .store-contact-card, .related-links__card) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 22px !important;
  }

  html body :where(.page-card--media) {
    padding: 0 !important;
  }

  html body :where(.page-card--media .page-card__body) {
    padding: 20px !important;
  }

  html body :where(.tool-list li, .article-body li, .guide-note li, .side-card li, .news-item p, .store-contact-card li) {
    line-height: 1.8 !important;
  }

  html body :where(.cta-row) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
  }

  html body :where(.cta-row) :where(.button, button, a) {
    width: 100% !important;
    min-height: 44px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  html body :where(.section-visual, .visual-card) {
    min-height: 0 !important;
  }

  html body :where(.section-visual img, .visual-card img, .page-card__media) {
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10 !important;
    object-fit: cover !important;
  }
}

@media (max-width: 430px) {
  html body:has(.page-hero__panel) :where(.page-hero__panel, .section-panel, .article-body, .article-sidebar) {
    padding: 22px 20px !important;
  }

  html body:has(.page-hero__panel) :where(.page-hero__panel h1, .section-heading h2, .section-panel h2, .article-body h2) {
    font-size: 28px !important;
  }

  html body :where(.knowledge-filter, .subnav) {
    grid-template-columns: 1fr 1fr !important;
    padding: 10px !important;
  }

  html body :where(.knowledge-filter, .subnav) > a {
    font-size: 13px !important;
  }
}

/* V121 page-specific mobile fixes for remaining clipped index and tool-list layouts. */
@media (max-width: 760px) {
  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .container.section-body,
  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-body {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    gap: 18px !important;
    overflow: visible !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-heading,
  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-filter,
  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-index,
  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-visual {
    grid-column: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-heading {
    text-align: left !important;
    overflow: visible !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-heading h2 {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 28px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    text-align: left !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-heading p {
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-filter {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    padding: 12px !important;
    overflow: hidden !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-filter a {
    display: inline-flex !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 42px !important;
    padding: 8px 10px !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.25 !important;
    box-sizing: border-box !important;
  }

  html body .section > .container.tool-list,
  html body main > .section > .container.tool-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    gap: 16px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  html body .section > .container.tool-list > .tool-sheet,
  html body main > .section > .container.tool-list > .tool-sheet {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 24px 22px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  html body .tool-sheet ul {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 18px !important;
    margin-left: 0 !important;
    box-sizing: border-box !important;
  }

  html body .tool-sheet li {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 2px !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    box-sizing: border-box !important;
  }
}

/* V122 mobile text containment: Chinese long lines must wrap inside the visible card. */
@media (max-width: 760px) {
  html body {
    width: 100% !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  html body :where(main, .section, .page-hero, .container) {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  html body:has(.page-hero__panel) :where(
    .page-hero__panel h1,
    .page-hero__panel .hero__summary,
    .page-hero__panel p,
    .section-heading h2,
    .section-heading p,
    .knowledge-index__feature h3,
    .knowledge-index__feature p,
    .news-item h3,
    .news-item p,
    .article-card h3,
    .article-card p,
    .tool-sheet h3,
    .tool-sheet li,
    .guide-tile p,
    .guide-note,
    .side-card li,
    .store-contact-card li,
    .related-links__card p
  ) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
    text-overflow: clip !important;
    box-sizing: border-box !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-heading h2,
  html body:has(.page-hero__panel[data-hero="news"]) .section-heading h2,
  html body:has(.page-hero__panel[data-hero="news"]) .news-item h3 {
    font-size: 26px !important;
    line-height: 1.28 !important;
    letter-spacing: 0 !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .section-heading,
  html body:has(.page-hero__panel[data-hero="news"]) .section-heading,
  html body:has(.page-hero__panel[data-hero="news"]) .news-item,
  html body .tool-sheet {
    overflow: hidden !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-filter {
    grid-template-columns: 1fr !important;
  }

  html body:has(.page-hero__panel[data-hero="knowledge"]) #directory .knowledge-filter a {
    min-height: 40px !important;
  }

  html body .tool-sheet ul,
  html body .article-body ul,
  html body .guide-note ul,
  html body .side-card ul {
    display: grid !important;
    gap: 10px !important;
    padding-left: 18px !important;
    padding-right: 0 !important;
    overflow: hidden !important;
  }

  html body .tool-sheet li::marker,
  html body .article-body li::marker,
  html body .guide-note li::marker,
  html body .side-card li::marker {
    font-size: 0.8em !important;
  }
}

/* V129 precision layout pass: remove residual card drift and mobile tool-sheet overflow. */
html body :where(
  .feature-card,
  .page-card,
  .info-card,
  .detail-card,
  .service-standard__card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card,
  .story-gallery__card
) {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

html body :where(
  .feature-card,
  .page-card,
  .info-card,
  .detail-card,
  .service-standard__card,
  .guide-card,
  .guide-tile,
  .guide-note,
  .guide-sidebar__card,
  .tool-sheet,
  .side-card,
  .resource-card,
  .article-card,
  .news-item,
  .event-card,
  .download-card,
  .contact-panel,
  .contact-channel,
  .store-contact-card,
  .store-locator__card,
  .related-links__card,
  .footer__contact-card,
  .story-gallery__card
) > * {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

html body :where(.page-grid, .card-grid, .guide-grid, .tool-list, .news-list, .article-list, .store-locator, .store-contact-list, .contact-channel-grid, .related-links__grid, .footer__contacts) {
  align-items: stretch !important;
}

html body :where(.tool-sheet, .guide-tile, .news-item, .article-card, .store-contact-card, .store-locator__card, .contact-channel, .related-links__card) {
  display: flex !important;
  flex-direction: column !important;
}

html body :where(.tool-sheet h2, .tool-sheet h3, .tool-sheet p, .tool-sheet li, .tool-sheet span, .tool-sheet strong) {
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
}

html body :where(.tool-sheet ul, .guide-note ul, .side-card ul, .article-body ul, .store-contact-card ul) {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 760px) {
  html body :where(.tool-sheet, .guide-tile, .news-item, .article-card, .store-contact-card, .store-locator__card, .contact-channel, .related-links__card) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-content: start !important;
    gap: 12px !important;
  }

  html body:has(.page-hero__panel) :where(.tool-sheet h2, .tool-sheet h3, .tool-sheet p, .tool-sheet li, .tool-sheet span, .tool-sheet strong) {
    width: auto !important;
    max-width: 100% !important;
  }

  html body :where(.tool-sheet ul) {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    overflow: visible !important;
  }

  html body :where(.tool-sheet li) {
    width: auto !important;
    max-width: 100% !important;
    padding-right: 0 !important;
  }
}

/* V130 warmth completion: give utility, search, FAQ and impact surfaces a richer community palette. */
html body :where(
  .results-stats article,
  .journey-steps article,
  .timeline-grid article,
  .process-steps article,
  .impact-grid article,
  .metric-grid article,
  .faq-list details,
  .search-result-card,
  .site-search,
  .booking-form,
  .service-desk,
  .quick-form,
  .panel-card,
  .store-overview-summary article,
  .store-overview-banner,
  .publish-flow article,
  .status-grid article,
  .status-grid span,
  .store-heat-list li,
  .store-heat-list article
) {
  --yl-community-a: #fffaf1;
  --yl-community-b: #eefaf5;
  --yl-community-c: rgba(255, 214, 159, 0.18);
  --yl-community-border: rgba(200, 228, 216, 0.9);
  --yl-community-accent: #45a982;
  --yl-community-ink: #153f39;
  --yl-community-copy: #315f58;
  --yl-community-shadow: rgba(48, 96, 80, 0.12);
  position: relative !important;
  min-width: 0 !important;
  color: var(--yl-community-ink) !important;
  background:
    radial-gradient(circle at 100% 0, var(--yl-community-c), transparent 34%),
    radial-gradient(circle at 0 100%, rgba(116, 199, 178, 0.12), transparent 36%),
    linear-gradient(145deg, var(--yl-community-a), var(--yl-community-b)) !important;
  border: 1px solid var(--yl-community-border) !important;
  border-top: 3px solid color-mix(in srgb, var(--yl-community-accent) 76%, white) !important;
  box-shadow:
    0 20px 48px var(--yl-community-shadow),
    0 4px 12px rgba(33, 81, 68, 0.04),
    inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
  box-sizing: border-box !important;
  isolation: isolate !important;
  overflow: hidden !important;
}

html body :where(
  .results-stats article,
  .journey-steps article,
  .timeline-grid article,
  .process-steps article,
  .impact-grid article,
  .metric-grid article,
  .faq-list details,
  .search-result-card,
  .site-search,
  .booking-form,
  .service-desk,
  .quick-form,
  .panel-card,
  .store-overview-summary article,
  .store-overview-banner,
  .publish-flow article,
  .status-grid article,
  .status-grid span,
  .store-heat-list li,
  .store-heat-list article
)::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  border-radius: inherit !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.58), transparent 32%),
    linear-gradient(315deg, rgba(255, 255, 255, 0.24), transparent 38%) !important;
}

html body :where(.results-stats, .journey-steps, .timeline-grid, .process-steps, .impact-grid, .metric-grid, .store-overview-summary, .publish-flow, .status-grid) > :nth-child(6n + 2),
html body :where(.store-heat-list) > :nth-child(6n + 2),
html body :where(.search-results) > :nth-child(6n + 2),
html body :where(.faq-list) > :nth-child(6n + 2) {
  --yl-community-a: #fff7ef;
  --yl-community-b: #fff0e4;
  --yl-community-c: rgba(239, 156, 98, 0.18);
  --yl-community-border: rgba(239, 207, 178, 0.9);
  --yl-community-accent: #ef9c62;
  --yl-community-ink: #60412c;
  --yl-community-copy: #684f3c;
  --yl-community-shadow: rgba(145, 95, 58, 0.12);
}

html body :where(.results-stats, .journey-steps, .timeline-grid, .process-steps, .impact-grid, .metric-grid, .store-overview-summary, .publish-flow, .status-grid) > :nth-child(6n + 3),
html body :where(.store-heat-list) > :nth-child(6n + 3),
html body :where(.search-results) > :nth-child(6n + 3),
html body :where(.faq-list) > :nth-child(6n + 3) {
  --yl-community-a: #f7fbff;
  --yl-community-b: #edf7fb;
  --yl-community-c: rgba(105, 171, 193, 0.18);
  --yl-community-border: rgba(190, 222, 232, 0.9);
  --yl-community-accent: #69abc1;
  --yl-community-ink: #214e5d;
  --yl-community-copy: #315c69;
  --yl-community-shadow: rgba(71, 116, 135, 0.12);
}

html body :where(.results-stats, .journey-steps, .timeline-grid, .process-steps, .impact-grid, .metric-grid, .store-overview-summary, .publish-flow, .status-grid) > :nth-child(6n + 4),
html body :where(.store-heat-list) > :nth-child(6n + 4),
html body :where(.search-results) > :nth-child(6n + 4),
html body :where(.faq-list) > :nth-child(6n + 4) {
  --yl-community-a: #fbf8ff;
  --yl-community-b: #f3effb;
  --yl-community-c: rgba(154, 136, 200, 0.16);
  --yl-community-border: rgba(215, 202, 236, 0.9);
  --yl-community-accent: #9a88c8;
  --yl-community-ink: #473d68;
  --yl-community-copy: #594e77;
  --yl-community-shadow: rgba(95, 78, 138, 0.11);
}

html body :where(.results-stats, .journey-steps, .timeline-grid, .process-steps, .impact-grid, .metric-grid, .store-overview-summary, .publish-flow, .status-grid) > :nth-child(6n + 5),
html body :where(.store-heat-list) > :nth-child(6n + 5),
html body :where(.search-results) > :nth-child(6n + 5),
html body :where(.faq-list) > :nth-child(6n + 5) {
  --yl-community-a: #fffdf0;
  --yl-community-b: #fff6d8;
  --yl-community-c: rgba(215, 185, 76, 0.16);
  --yl-community-border: rgba(235, 216, 158, 0.86);
  --yl-community-accent: #d7b94c;
  --yl-community-ink: #5f5127;
  --yl-community-copy: #655b3a;
  --yl-community-shadow: rgba(138, 117, 48, 0.1);
}

html body :where(.results-stats, .journey-steps, .timeline-grid, .process-steps, .impact-grid, .metric-grid, .store-overview-summary, .publish-flow, .status-grid) > :nth-child(6n),
html body :where(.store-heat-list) > :nth-child(6n),
html body :where(.search-results) > :nth-child(6n),
html body :where(.faq-list) > :nth-child(6n) {
  --yl-community-a: #fff7f6;
  --yl-community-b: #fff0f2;
  --yl-community-c: rgba(217, 130, 146, 0.15);
  --yl-community-border: rgba(235, 205, 210, 0.9);
  --yl-community-accent: #d98292;
  --yl-community-ink: #66414a;
  --yl-community-copy: #6b5056;
  --yl-community-shadow: rgba(138, 76, 86, 0.1);
}

html body :where(
  .results-stats article,
  .journey-steps article,
  .timeline-grid article,
  .process-steps article,
  .impact-grid article,
  .metric-grid article,
  .faq-list details,
  .search-result-card,
  .site-search,
  .booking-form,
  .service-desk,
  .quick-form,
  .panel-card,
  .store-overview-summary article,
  .store-overview-banner,
  .publish-flow article,
  .status-grid article,
  .status-grid span,
  .store-heat-list li,
  .store-heat-list article
) > * {
  position: relative !important;
  z-index: 1 !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

html body :where(
  .results-stats article,
  .journey-steps article,
  .timeline-grid article,
  .process-steps article,
  .impact-grid article,
  .metric-grid article,
  .faq-list details,
  .search-result-card,
  .site-search,
  .booking-form,
  .service-desk,
  .quick-form,
  .panel-card,
  .store-overview-summary article,
  .store-overview-banner,
  .publish-flow article,
  .status-grid article,
  .status-grid span,
  .store-heat-list li,
  .store-heat-list article
) :where(h2, h3, h4, strong, summary) {
  color: color-mix(in srgb, var(--yl-community-ink) 88%, #1f2d5c) !important;
}

html body :where(
  .results-stats article,
  .journey-steps article,
  .timeline-grid article,
  .process-steps article,
  .impact-grid article,
  .metric-grid article,
  .faq-list details,
  .search-result-card,
  .site-search,
  .booking-form,
  .service-desk,
  .quick-form,
  .panel-card,
  .store-overview-summary article,
  .store-overview-banner,
  .publish-flow article,
  .status-grid article,
  .status-grid span,
  .store-heat-list li,
  .store-heat-list article
) :where(p, li, span, label) {
  color: var(--yl-community-copy) !important;
}

html body :where(.journey-steps article span:first-child, .process-steps article span:first-child, .timeline-grid article span:first-child, .status-grid span, .popular-searches button, [data-search-term]) {
  background: linear-gradient(135deg, rgba(255,255,255,0.94), rgba(238, 250, 245, 0.9)) !important;
  border: 1px solid rgba(188, 226, 211, 0.9) !important;
  color: #176b5c !important;
  box-shadow: 0 8px 18px rgba(45, 103, 87, 0.08), inset 0 1px 0 rgba(255,255,255,0.9) !important;
}

@media (hover: hover) {
  html body :where(.search-result-card, .faq-list details, .journey-steps article, .process-steps article, .timeline-grid article, .impact-grid article, .metric-grid article, .store-overview-summary article):hover {
    transform: translateY(-2px) !important;
    box-shadow:
      0 24px 56px color-mix(in srgb, var(--yl-community-shadow) 78%, rgba(31, 80, 66, 0.14)),
      inset 0 1px 0 rgba(255, 255, 255, 0.94) !important;
  }
}

/* V131 mobile visual breathing room: keep warm cards away from viewport edges. */
@media (max-width: 760px) {
  html body.home-polish :where(.hero__grid, .hero__content, .hero__panel, .panel-card, .quick-form),
  html body :where(.site-search, .search-results, .faq-list, .process-steps, .timeline-grid, .impact-grid, .metric-grid, .store-overview-summary, .journey-steps) {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  html body.home-polish :where(.hero__content, .hero__panel .panel-card),
  html body :where(.site-search, .booking-form, .service-desk) {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  html body.home-polish .hero__actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    white-space: normal !important;
    line-height: 1.28 !important;
  }

  html body.home-polish .hero__stats,
  html body .results-stats {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  html body.home-polish .hero__stats article,
  html body .results-stats article {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html body :where(.search-result-card, .faq-list details, .process-steps article, .timeline-grid article, .impact-grid article, .metric-grid article, .store-overview-summary article, .journey-steps article) {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  html body :where(.search-result-card h3, .search-result-card p, .faq-list summary, .faq-list p, .process-steps article h3, .process-steps article p, .timeline-grid article h3, .timeline-grid article p, .journey-steps article h3, .journey-steps article p) {
    width: auto !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  html body .popular-searches,
  html body [data-popular-searches] {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

/* V132 journey-stage containment: avoid double viewport-width math inside the homepage story block. */
@media (max-width: 760px) {
  html body.home-polish .journey-stage {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body.home-polish .journey-stage .journey-steps,
  html body.home-polish .journey-stage .journey-steps article {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body.home-polish .journey-stage .journey-steps {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
  }
}

/* V133 mobile readable inset: give search and FAQ text a clearer right-side margin. */
@media (max-width: 760px) {
  html body :where(.site-search, .search-results, .faq-list, .process-steps, .timeline-grid, .impact-grid, .metric-grid) {
    width: calc(100vw - 48px) !important;
    max-width: calc(100vw - 48px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
  }

  html body :where(.search-result-card, .faq-list details, .process-steps article, .timeline-grid article, .impact-grid article, .metric-grid article) {
    padding-left: 20px !important;
    padding-right: 20px !important;
    overflow: hidden !important;
  }

  html body :where(.search-result-card h3, .search-result-card p, .faq-list summary, .faq-list p, .process-steps article h3, .process-steps article p, .timeline-grid article h3, .timeline-grid article p, .impact-grid article h3, .impact-grid article p, .metric-grid article h3, .metric-grid article p) {
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
  }

  html body .popular-searches,
  html body [data-popular-searches] {
    width: calc(100vw - 48px) !important;
    max-width: calc(100vw - 48px) !important;
  }
}

/* V134 edge-surface polish: bring admin, filters, utility strips and floating panels into the warm system. */
html body :where(
  .admin-card,
  .dashboard-card,
  .article-filters,
  .tool-link,
  .page-utility,
  .guide-section,
  .triage-output,
  .check-grid,
  .floating-panel,
  .floating-rail__panel,
  .map-card,
  .contact-hero-card,
  .contact-hero-card__body,
  .contact-hero-card__side,
  .story-content,
  .page-utility__actions
) {
  --yl-edge-a: #fffaf1;
  --yl-edge-b: #eefaf5;
  --yl-edge-c: rgba(255, 214, 159, 0.16);
  --yl-edge-border: rgba(202, 229, 218, 0.9);
  --yl-edge-accent: #48aa8a;
  --yl-edge-ink: #153f39;
  --yl-edge-copy: #335f58;
  --yl-edge-shadow: rgba(47, 91, 77, 0.11);
  position: relative !important;
  min-width: 0 !important;
  color: var(--yl-edge-ink) !important;
  background:
    radial-gradient(circle at 100% 0, var(--yl-edge-c), transparent 34%),
    linear-gradient(145deg, var(--yl-edge-a), var(--yl-edge-b)) !important;
  border: 1px solid var(--yl-edge-border) !important;
  border-top: 3px solid color-mix(in srgb, var(--yl-edge-accent) 76%, white) !important;
  box-shadow:
    0 18px 44px var(--yl-edge-shadow),
    inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
  box-sizing: border-box !important;
  isolation: isolate !important;
  overflow: hidden !important;
}

html body :where(
  .admin-card,
  .dashboard-card,
  .article-filters,
  .tool-link,
  .page-utility,
  .guide-section,
  .triage-output,
  .check-grid,
  .floating-panel,
  .floating-rail__panel,
  .map-card,
  .contact-hero-card,
  .contact-hero-card__body,
  .contact-hero-card__side,
  .story-content,
  .page-utility__actions
)::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  border-radius: inherit !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.56), transparent 34%),
    linear-gradient(315deg, rgba(255, 255, 255, 0.22), transparent 40%) !important;
}

html body :where(.admin-grid, .dashboard-grid, .resource-columns, .guide-stack, .guide-layout, .article-layout) > :nth-child(6n + 2),
html body :where(.article-filters, .tool-grid, .page-utility__actions) > :nth-child(6n + 2) {
  --yl-edge-a: #fff7ef;
  --yl-edge-b: #fff0e4;
  --yl-edge-c: rgba(239, 156, 98, 0.17);
  --yl-edge-border: rgba(239, 207, 178, 0.9);
  --yl-edge-accent: #ef9c62;
  --yl-edge-ink: #60412c;
  --yl-edge-copy: #684f3c;
  --yl-edge-shadow: rgba(145, 95, 58, 0.11);
}

html body :where(.admin-grid, .dashboard-grid, .resource-columns, .guide-stack, .guide-layout, .article-layout) > :nth-child(6n + 3),
html body :where(.article-filters, .tool-grid, .page-utility__actions) > :nth-child(6n + 3) {
  --yl-edge-a: #f7fbff;
  --yl-edge-b: #edf7fb;
  --yl-edge-c: rgba(105, 171, 193, 0.17);
  --yl-edge-border: rgba(190, 222, 232, 0.9);
  --yl-edge-accent: #69abc1;
  --yl-edge-ink: #214e5d;
  --yl-edge-copy: #315c69;
  --yl-edge-shadow: rgba(71, 116, 135, 0.11);
}

html body :where(.admin-grid, .dashboard-grid, .resource-columns, .guide-stack, .guide-layout, .article-layout) > :nth-child(6n + 4),
html body :where(.article-filters, .tool-grid, .page-utility__actions) > :nth-child(6n + 4) {
  --yl-edge-a: #fbf8ff;
  --yl-edge-b: #f3effb;
  --yl-edge-c: rgba(154, 136, 200, 0.15);
  --yl-edge-border: rgba(215, 202, 236, 0.9);
  --yl-edge-accent: #9a88c8;
  --yl-edge-ink: #473d68;
  --yl-edge-copy: #594e77;
  --yl-edge-shadow: rgba(95, 78, 138, 0.1);
}

html body :where(
  .admin-card,
  .dashboard-card,
  .article-filters,
  .tool-link,
  .page-utility,
  .guide-section,
  .triage-output,
  .check-grid,
  .floating-panel,
  .floating-rail__panel,
  .map-card,
  .contact-hero-card,
  .contact-hero-card__body,
  .contact-hero-card__side,
  .story-content,
  .page-utility__actions
) :where(h2, h3, h4, legend, strong, summary) {
  color: color-mix(in srgb, var(--yl-edge-ink) 88%, #1f2d5c) !important;
}

html body :where(
  .admin-card,
  .dashboard-card,
  .article-filters,
  .tool-link,
  .page-utility,
  .guide-section,
  .triage-output,
  .check-grid,
  .floating-panel,
  .floating-rail__panel,
  .map-card,
  .contact-hero-card,
  .contact-hero-card__body,
  .contact-hero-card__side,
  .story-content,
  .page-utility__actions
) :where(p, li, span, label) {
  color: var(--yl-edge-copy) !important;
}

html body :where(.article-filters select, .article-filters input, .booking-form input, .booking-form select, .booking-form textarea, .quick-form input, .quick-form select, .quick-form textarea, .admin-card input, .admin-card select, .admin-card textarea) {
  background: rgba(255, 255, 255, 0.86) !important;
  border: 1px solid rgba(175, 222, 207, 0.9) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.9), 0 8px 20px rgba(37, 92, 76, 0.05) !important;
}

html body :where(.tool-link, .page-utility__actions .button, .article-filters button, .floating-panel a, .floating-panel button) {
  text-decoration: none !important;
  border-radius: 999px !important;
}

@media (max-width: 760px) {
  html body :where(.admin-card, .dashboard-card, .article-filters, .page-utility, .guide-section, .triage-output, .check-grid, .map-card, .contact-hero-card, .story-content) {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  html body :where(.article-filters, .page-utility__actions, .check-grid) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  html body :where(.tool-link, .page-utility__actions .button, .article-filters label, .article-filters select, .check-grid label) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

/* V135 booking form containment: keep every field inside the warm form shell. */
@media (max-width: 760px) {
  html body .booking-layout {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body .booking-layout .booking-form {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .booking-layout .booking-form :where(label, fieldset, legend, input, select, textarea, button, .button, .form-feedback) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body .booking-layout .booking-form .check-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* V136 homepage story split containment: remove the last mobile internal scrollWidth drift. */
@media (max-width: 760px) {
  html body.home-polish .story-split,
  html body.home-polish .story-split.story-split--reverse {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 16px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body.home-polish .story-split > *,
  html body.home-polish .story-content,
  html body.home-polish .story-visual {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body.home-polish .story-content {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }
}

/* V137 warm group backplates: soften transparent card groups without creating heavy nested cards. */
html body :where(
  .store-overview-summary,
  .store-locator,
  .contact-highlight-list,
  .contact-channel-grid,
  .store-contact-list,
  .faq-list,
  .search-results,
  .guide-stack,
  .guide-sidebar,
  .tool-list,
  .article-list,
  .news-list,
  .download-grid,
  .event-list,
  .resource-columns,
  .related-links__grid
) {
  position: relative !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  border-radius: 24px !important;
  padding: 16px !important;
  background:
    radial-gradient(circle at 100% 0, rgba(255, 218, 168, 0.1), transparent 30%),
    radial-gradient(circle at 0 100%, rgba(112, 196, 173, 0.08), transparent 34%),
    linear-gradient(145deg, rgba(255, 252, 246, 0.72), rgba(239, 250, 245, 0.58)) !important;
  border: 1px solid rgba(205, 229, 218, 0.62) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.78), 0 14px 36px rgba(45, 92, 78, 0.06) !important;
}

html body :where(.guide-stack, .guide-sidebar) {
  align-content: start !important;
}

html body :where(
  .store-overview-summary,
  .store-locator,
  .contact-highlight-list,
  .contact-channel-grid,
  .store-contact-list,
  .faq-list,
  .search-results,
  .guide-stack,
  .guide-sidebar,
  .tool-list,
  .article-list,
  .news-list,
  .download-grid,
  .event-list,
  .resource-columns,
  .related-links__grid
) > * {
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

@media (max-width: 760px) {
  html body :where(
    .store-overview-summary,
    .store-locator,
    .contact-highlight-list,
    .contact-channel-grid,
    .store-contact-list,
    .faq-list,
    .search-results,
    .guide-stack,
    .guide-sidebar,
    .tool-list,
    .article-list,
    .news-list,
    .download-grid,
    .event-list,
    .resource-columns,
    .related-links__grid
  ) {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 12px !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }
}

/* V139 final mobile containment: strongest pass after warm group backplates. */
@media (max-width: 760px) {
  html body :where(.contact-hero-card, .contact-hero-card__grid) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    gap: 14px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.contact-hero-card__body, .contact-hero-card__side) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.contact-highlight-list, .contact-channel-grid, .contact-channel-grid .cta-row) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.contact-highlight-list > *, .contact-channel-grid > *, .contact-channel, .contact-channel-grid .button, .contact-channel-grid a.button) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body :where(.section-body, .article-layout, .guide-layout) {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  html body :where(.article-body, .article-sidebar, .guide-stack, .guide-sidebar) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body :where(.article-body > *, .article-sidebar > *, .guide-stack > *, .guide-sidebar > *, .section-body > *) {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}

/* V150 final EOF override: search form and service entries after all duplicated lock blocks. */
@media (max-width: 760px) {
  html body.home-polish .hero__actions .button,
  html body.home-polish .hero__actions a.button,
  html body.home-polish .hero__actions .button:link,
  html body.home-polish .hero__actions .button:visited {
    color: #074a40 !important;
    -webkit-text-fill-color: #074a40 !important;
    text-shadow: none !important;
  }

  html body .section-body .site-search,
  html body main .site-search,
  html body:has(.page-hero__panel) main .site-search {
    position: relative !important;
    display: block !important;
    width: calc(100vw - 48px) !important;
    max-width: calc(100vw - 48px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 7px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .site-search input[type="search"] {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding-left: 12px !important;
    padding-right: 74px !important;
    box-sizing: border-box !important;
  }

  html body .site-search button,
  html body .site-search .button {
    position: absolute !important;
    top: 7px !important;
    right: 7px !important;
    bottom: 7px !important;
    left: auto !important;
    z-index: 5 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 64px !important;
    max-width: 64px !important;
    min-width: 64px !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-indent: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #28b38f, #2f8bd9) !important;
  }

  html body .site-search button::before,
  html body .site-search button::after,
  html body .site-search .button::before,
  html body .site-search .button::after {
    content: none !important;
    display: none !important;
  }
}

/* V151 final mobile search stable stack: full visible submit button. */
@media (max-width: 760px) {
  html body .section-body .site-search,
  html body main .site-search,
  html body:has(.page-hero__panel) main .site-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 9px !important;
    width: calc(100vw - 48px) !important;
    max-width: calc(100vw - 48px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 8px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html body .site-search input[type="search"] {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
  }

  html body .site-search button,
  html body .site-search .button {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 0 12px !important;
    border-radius: 12px !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #28b38f, #2f8bd9) !important;
  }

  html body .site-search button::before,
  html body .site-search button::after,
  html body .site-search .button::before,
  html body .site-search .button::after {
    content: none !important;
    display: none !important;
  }
}

/* V160C true EOF service dock lock: single visible entry, tidy 2-column flyout. */
html body .floating-rail,
html body:not(.is-near-footer) .floating-rail,
body .floating-rail,
body:not(.is-near-footer) .floating-rail {
  position: fixed !important;
  top: 50% !important;
  right: clamp(18px, 2vw, 28px) !important;
  bottom: auto !important;
  left: auto !important;
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  height: 72px !important;
  min-height: 72px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: translateY(-50%) !important;
  overflow: visible !important;
  z-index: 120 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

html body .floating-rail::before,
html body .floating-rail::after,
html body .floating-rail__buttons::before,
html body .floating-rail__buttons::after {
  content: none !important;
  display: none !important;
}

html body .floating-rail__buttons,
body .floating-rail__buttons {
  position: relative !important;
  display: block !important;
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  height: 72px !important;
  min-height: 72px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

html body .floating-rail__title,
body .floating-rail__title {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  height: 72px !important;
  min-height: 72px !important;
  max-height: 72px !important;
  padding: 0 12px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 1px solid rgba(86, 183, 157, 0.45) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(238, 251, 247, 0.96)) !important;
  color: #07584b !important;
  -webkit-text-fill-color: #07584b !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-align: center !important;
  white-space: normal !important;
  cursor: pointer !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95), 0 16px 34px rgba(17, 91, 76, 0.18) !important;
  box-sizing: border-box !important;
  z-index: 3 !important;
}

html body .floating-rail:not(.is-expanded):not(:hover):not(:focus-within) .floating-rail__button,
body .floating-rail:not(.is-expanded):not(:hover):not(:focus-within) .floating-rail__button {
  display: none !important;
}

html body .floating-rail.is-expanded,
html body .floating-rail:hover,
html body .floating-rail:focus-within,
body .floating-rail.is-expanded,
body .floating-rail:hover,
body .floating-rail:focus-within {
  width: 324px !important;
  min-width: 324px !important;
  max-width: calc(100vw - 32px) !important;
  height: auto !important;
  min-height: 0 !important;
  border-radius: 26px !important;
}

html body .floating-rail.is-expanded .floating-rail__buttons,
html body .floating-rail:hover .floating-rail__buttons,
html body .floating-rail:focus-within .floating-rail__buttons,
body .floating-rail.is-expanded .floating-rail__buttons,
body .floating-rail:hover .floating-rail__buttons,
body .floating-rail:focus-within .floating-rail__buttons {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 324px !important;
  min-width: 324px !important;
  max-width: calc(100vw - 32px) !important;
  height: auto !important;
  min-height: 138px !important;
  padding: 18px 88px 18px 18px !important;
  border-radius: 26px !important;
  border: 1px solid rgba(151, 211, 193, 0.62) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 253, 250, 0.98)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95), 0 22px 52px rgba(17, 91, 76, 0.18) !important;
  box-sizing: border-box !important;
}

html body .floating-rail.is-expanded .floating-rail__title,
html body .floating-rail:hover .floating-rail__title,
html body .floating-rail:focus-within .floating-rail__title,
body .floating-rail.is-expanded .floating-rail__title,
body .floating-rail:hover .floating-rail__title,
body .floating-rail:focus-within .floating-rail__title {
  top: 18px !important;
  right: 18px !important;
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  height: 54px !important;
  min-height: 54px !important;
  max-height: 54px !important;
  padding: 0 8px !important;
  font-size: 12px !important;
}

html body .floating-rail.is-expanded .floating-rail__button,
html body .floating-rail:hover .floating-rail__button,
html body .floating-rail:focus-within .floating-rail__button,
body .floating-rail.is-expanded .floating-rail__button,
body .floating-rail:hover .floating-rail__button,
body .floating-rail:focus-within .floating-rail__button {
  position: relative !important;
  inset: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 13px !important;
  margin: 0 !important;
  border-radius: 14px !important;
  border: 1px solid rgba(142, 207, 188, 0.55) !important;
  background: linear-gradient(180deg, #ffffff, #f6fcfa) !important;
  color: #126458 !important;
  -webkit-text-fill-color: #126458 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95), 0 8px 18px rgba(22, 97, 80, 0.08) !important;
  transform: none !important;
  box-sizing: border-box !important;
}

html body .floating-rail__button[data-service],
html body .floating-rail__button--top,
body .floating-rail__button[data-service],
body .floating-rail__button--top {
  background: linear-gradient(180deg, #ffffff, #f6fcfa) !important;
}

html body .floating-rail.is-expanded .floating-rail__button:hover,
html body .floating-rail:hover .floating-rail__button:hover,
html body .floating-rail:focus-within .floating-rail__button:focus-visible,
body .floating-rail.is-expanded .floating-rail__button:hover,
body .floating-rail:hover .floating-rail__button:hover,
body .floating-rail:focus-within .floating-rail__button:focus-visible {
  border-color: rgba(43, 166, 133, 0.72) !important;
  background: linear-gradient(135deg, #25aa8b, #207fb8) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 10px 22px rgba(32, 127, 99, 0.16) !important;
}

html body .floating-rail__icon,
body .floating-rail__icon {
  display: none !important;
}

html body .floating-rail__label,
html body .floating-rail__button--top .floating-rail__label,
body .floating-rail__label,
body .floating-rail__button--top .floating-rail__label {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-shadow: none !important;
}

@media (max-width: 760px) {
  html body .floating-rail,
  html body:not(.is-near-footer) .floating-rail,
  body .floating-rail,
  body:not(.is-near-footer) .floating-rail {
    right: 12px !important;
    top: auto !important;
    bottom: 96px !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    transform: none !important;
  }

  html body .floating-rail__buttons,
  body .floating-rail__buttons,
  html body .floating-rail__title,
  body .floating-rail__title {
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
  }

  html body .floating-rail__title,
  body .floating-rail__title {
    padding: 0 9px !important;
    font-size: 12px !important;
  }

  html body .floating-rail.is-expanded,
  html body .floating-rail:hover,
  html body .floating-rail:focus-within,
  body .floating-rail.is-expanded,
  body .floating-rail:hover,
  body .floating-rail:focus-within {
    width: min(318px, calc(100vw - 24px)) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    height: auto !important;
  }

  html body .floating-rail.is-expanded .floating-rail__buttons,
  html body .floating-rail:hover .floating-rail__buttons,
  html body .floating-rail:focus-within .floating-rail__buttons,
  body .floating-rail.is-expanded .floating-rail__buttons,
  body .floating-rail:hover .floating-rail__buttons,
  body .floating-rail:focus-within .floating-rail__buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: min(318px, calc(100vw - 24px)) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    min-height: 136px !important;
    height: auto !important;
    padding: 14px 76px 14px 14px !important;
    border-radius: 22px !important;
  }

  html body .floating-rail.is-expanded .floating-rail__title,
  html body .floating-rail:hover .floating-rail__title,
  html body .floating-rail:focus-within .floating-rail__title,
  body .floating-rail.is-expanded .floating-rail__title,
  body .floating-rail:hover .floating-rail__title,
  body .floating-rail:focus-within .floating-rail__title {
    top: 14px !important;
    right: 14px !important;
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    font-size: 11px !important;
  }

  html body .floating-rail.is-expanded .floating-rail__button,
  html body .floating-rail:hover .floating-rail__button,
  html body .floating-rail:focus-within .floating-rail__button,
  body .floating-rail.is-expanded .floating-rail__button,
  body .floating-rail:hover .floating-rail__button,
  body .floating-rail:focus-within .floating-rail__button {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding: 0 8px !important;
    border-radius: 13px !important;
  }

  html body .floating-rail__label,
  body .floating-rail__label {
    font-size: 12px !important;
  }
}
