/*
  Hormone optimization — DS2 shell (renewal-ds2-about-contact).
  Hero: mesmo stack que For Patients/women.html (for-providers-ds2 + ds2-hero-photo).
*/

@import url("for-providers-ds2.css");
@import url("../assets/css/sections/ds2-hero-photo.css");
@import url("../assets/css/tokens/ho-providers-type-scale.css");

/* Conteúdo das secções: rail 1300px; fundos full-bleed. Desktop: sem gutter (só safe-area). */
.ds2-page .ho-wrap {
  max-width: var(--layout-max);
  width: min(100%, var(--layout-max));
  margin-left: auto;
  margin-right: auto;
  padding-left: max(env(safe-area-inset-left, 0px), clamp(14px, 4vw, 20px));
  padding-right: max(env(safe-area-inset-right, 0px), clamp(14px, 4vw, 20px));
  box-sizing: border-box;
}

@media (min-width: 1024px) {
  .ds2-page .ho-wrap {
    padding-left: env(safe-area-inset-left, 0px);
    padding-right: env(safe-area-inset-right, 0px);
  }
}

.ds2-page .ho-section {
  padding-left: 0;
  padding-right: 0;
}

.ds2-page .ho-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.ds2-page .ho-section__head h2 {
  font-family: var(--font-heading);
  font-weight: 300;
  line-height: var(--ho-type-leading-section);
  color: var(--renewal-text);
}

.ds2-page .ho-section__head > p {
  line-height: var(--ho-type-leading-deck);
  color: var(--renewal-text-muted);
}

/* h3 nos cards: Area 500 (página; renewal-sitemap base 600) */
.ds2-page .ho-card__body h3 {
  font-size: var(--ho-type-card-h3);
  line-height: var(--ho-type-leading-section);
  color: var(--renewal-text);
  font-weight: 500 !important;
}

.ds2-page .ho-method h4 {
  font-size: var(--ho-type-body);
  line-height: var(--ho-type-leading-body);
  font-weight: 400 !important;
}

.ds2-page .ho-dosage-label,
.ds2-page .ho-pellet-benefits h4 {
  font-size: var(--ho-type-h4-label);
  line-height: var(--ho-type-leading-body);
  font-weight: 400 !important;
}

.ds2-page .ho-card__body p {
  line-height: var(--ho-type-leading-prose);
}

.ds2-page .ho-list li {
  line-height: var(--ho-type-leading-prose);
}

@media (max-width: 767px) {
  .ds2-page .ho-card__body h3 {
    font-size: var(--ho-type-card-h3-sm);
  }
}

.ds2-page .ho-card {
  transition: box-shadow 0.35s var(--ds2-ease), transform 0.35s var(--ds2-ease), border-color 0.3s var(--ds2-ease);
}

.ds2-page .ho-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 40px -12px rgb(0 115 255 / 0.1);
}

@media (prefers-reduced-motion: reduce) {
  .ds2-page .ho-card:hover,
  .ds2-page .ho-section--premium-benefits .ho-card--benefit:hover {
    transform: none;
  }

  .ds2-page .ho-card {
    transition: none !important;
  }
}

/*
 * Cantos arredondados: removemos antes overrides a 0 — hero, botões, mega-menu e skip-link
 * voltam aos defaults (for-providers-ds2 / renewal-sitemap). Aqui só o que o sitemap .ho-* não define.
 */
.ds2-page .ho-card,
.ds2-page .ho-card--plain,
.ds2-page .ho-card--surface-white {
  border-radius: 0.75rem;
}

.ds2-page .ho-card::before {
  border-radius: 0.75rem 0 0 0.75rem;
}

.ds2-page .ho-dosage {
  border-radius: 50px;
  color: var(--renewal-green);
  border-color: var(--renewal-green);
}

/* Premium section treatments (Conditions + Pellets) */
.ds2-page #conditions.ho-section--gradient {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(ellipse 74% 56% at 9% 10%, rgb(0 115 255 / 0.14), transparent 60%),
    radial-gradient(ellipse 62% 48% at 96% 90%, rgb(80 160 255 / 0.12), transparent 58%),
    linear-gradient(162deg, #f8fbff 0%, #f3f8ff 46%, #edf5ff 100%);
}

.ds2-page #conditions.ho-section--gradient::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(
    124deg,
    rgb(255 255 255 / 0) 0%,
    rgb(255 255 255 / 0.5) 44%,
    rgb(255 255 255 / 0) 78%
  );
}

.ds2-page .ho-section--muted[aria-labelledby="ho-pellets-title"] {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(ellipse 70% 52% at 8% 12%, rgb(0 115 255 / 0.12), transparent 58%),
    radial-gradient(ellipse 58% 44% at 92% 88%, rgb(80 160 255 / 0.1), transparent 56%),
    linear-gradient(165deg, #f9fcff 0%, #f3f9ff 44%, #edf6ff 100%);
}

.ds2-page .ho-section--muted[aria-labelledby="ho-pellets-title"]::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(
    118deg,
    rgb(255 255 255 / 0) 0%,
    rgb(255 255 255 / 0.46) 46%,
    rgb(255 255 255 / 0) 78%
  );
}

.ds2-page #conditions .ho-wrap,
.ds2-page .ho-section--muted[aria-labelledby="ho-pellets-title"] .ho-wrap {
  position: relative;
  z-index: 1;
}

.ds2-page #conditions .ho-card--surface-white,
.ds2-page .ho-section--muted[aria-labelledby="ho-pellets-title"] .ho-card--surface-white {
  border: 1px solid color-mix(in srgb, var(--renewal-blue-soft) 26%, #dbe5f2);
  background: linear-gradient(155deg, rgb(255 255 255 / 0.96) 0%, rgb(248 251 255 / 0.92) 100%);
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.92),
    0 14px 30px -20px rgb(15 23 42 / 0.2),
    0 10px 24px -20px rgb(0 115 255 / 0.18);
}

/* Benefits grid — premium (fundo em camadas + cartões glass) */
.ds2-page .ho-section--premium-benefits {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(ellipse 78% 52% at 12% 6%, rgb(0 115 255 / 0.11), transparent 58%),
    radial-gradient(ellipse 64% 46% at 88% 94%, rgb(80 160 255 / 0.09), transparent 56%),
    linear-gradient(168deg, #fbfdff 0%, #f2f7fc 48%, #eaf0f8 100%);
}

.ds2-page .ho-section--premium-benefits::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(
    122deg,
    rgb(255 255 255 / 0) 0%,
    rgb(255 255 255 / 0.48) 48%,
    rgb(255 255 255 / 0) 76%
  );
}

.ds2-page .ho-section--premium-benefits .ho-wrap {
  position: relative;
  z-index: 1;
}

.ds2-page .ho-section--premium-benefits .ho-benefits-grid {
  gap: clamp(1.125rem, 2.4vw, 1.75rem);
}

.ds2-page .ho-section--premium-benefits .ho-card--benefit {
  border-radius: 1rem;
  border: 1px solid color-mix(in srgb, var(--renewal-blue-soft) 24%, #dbe5f2);
  background: linear-gradient(
    158deg,
    rgb(255 255 255 / 0.99) 0%,
    rgb(248 251 255 / 0.93) 52%,
    rgb(255 255 255 / 0.98) 100%
  );
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.96),
    0 14px 32px -22px rgb(15 23 42 / 0.16),
    0 8px 22px -18px rgb(0 115 255 / 0.14);
  backdrop-filter: blur(10px) saturate(1.1);
  -webkit-backdrop-filter: blur(10px) saturate(1.1);
}

.ds2-page .ho-section--premium-benefits .ho-card--benefit::before {
  border-radius: 1rem 0 0 1rem;
}

.ds2-page .ho-section--premium-benefits .ho-card--benefit .ho-card__body h3 {
  color: var(--renewal-blue-mid);
  letter-spacing: -0.02em;
}

.ds2-page .ho-section--premium-benefits .ho-card--benefit:hover {
  transform: translateY(-5px);
  border-color: rgb(0 115 255 / 0.2);
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 1),
    0 22px 48px -20px rgb(15 23 42 / 0.18),
    0 14px 32px -16px rgb(0 115 255 / 0.2);
}
