/* Ajustes exclusivos de la subpágina de Medicina Regenerativa.
   El sistema visual base vive en rostro.css para mantener ambas páginas unificadas. */

.regenerative-page {
  --reg-sand-soft: #f3ede5;
}

.regenerative-page .harm-hero {
  grid-template-columns: minmax(0, 1.14fr) minmax(400px, .86fr);
}

.regenerative-page .harm-hero h1 {
  max-width: 15ch;
  font-size: clamp(3rem, 4.2vw, 4.7rem);
  line-height: .98;
  text-wrap: balance;
}

.regenerative-page .harm-hero-subtitle {
  max-width: 690px;
  text-wrap: pretty;
}

.reg-hero-visual { min-height: 650px; }

.reg-hero-visual img {
  object-position: 53% center;
}

.reg-section-index {
  margin: 0 0 18px;
  color: var(--harm-gold-deep);
  font-size: .68rem;
  font-weight: 600;
  letter-spacing: .14em;
  line-height: 1.5;
  text-transform: uppercase;
}

.reg-section-heading { max-width: 820px; }

.reg-catalog-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
}

.reg-procedure-card {
  min-height: 430px;
  grid-template-columns: minmax(190px, .92fr) minmax(0, 1.08fr);
}

.reg-procedure-card .harm-procedure-image { min-height: 430px; }

.reg-procedure-card .harm-procedure-copy {
  padding: clamp(28px, 3vw, 40px);
}

.reg-procedure-card .harm-procedure-copy h3 {
  font-size: clamp(2rem, 2.65vw, 2.7rem);
  text-wrap: balance;
}

.reg-procedure-card .harm-procedure-copy > p:not(.harm-card-index):not(.reg-product-line) {
  text-wrap: pretty;
}

.reg-product-line {
  margin: 10px 0 0;
  color: var(--harm-gold-deep);
  font-size: .69rem;
  font-weight: 600;
  letter-spacing: .055em;
  line-height: 1.5;
  text-transform: uppercase;
}

.reg-procedure-sand { background: var(--reg-sand-soft); }

.reg-image-collagen img {
  object-position: 47% center;
  filter: saturate(.72) sepia(.06) contrast(.95);
}

.reg-image-microneedling img {
  object-position: 56% center;
  filter: saturate(.58) sepia(.12) contrast(.93);
}

.reg-image-skinbooster img {
  object-position: 56% center !important;
  filter: saturate(.82) sepia(.04);
}

.reg-image-peel img {
  object-position: 5% center;
  transform: scale(1.18);
}

.reg-image-peel::after,
.reg-image-microneedling::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(197, 168, 128, .04), rgba(61, 43, 32, .1));
}

.reg-philosophy {
  background:
    radial-gradient(circle at 12% 15%, rgba(255, 255, 255, .7), transparent 33%),
    var(--reg-sand-soft);
}

.reg-philosophy .harm-safety-intro > p:last-child {
  max-width: 600px;
  text-wrap: pretty;
}

.reg-philosophy .harm-safety-list p { max-width: 560px; }

.reg-conversion-card {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 15%, rgba(255, 255, 255, .64), transparent 44%),
    var(--harm-sand);
}

.reg-conversion-card::before,
.reg-conversion-card::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(197, 168, 128, .17);
  border-radius: 50%;
  pointer-events: none;
}

.reg-conversion-card::before {
  width: 340px;
  height: 340px;
  left: -170px;
  top: -190px;
}

.reg-conversion-card::after {
  width: 260px;
  height: 260px;
  right: -120px;
  bottom: -160px;
}

.reg-conversion-card > * {
  position: relative;
  z-index: 1;
}

.reg-conversion-card h2 { max-width: 19ch; }

@media (max-width: 1180px) {
  .regenerative-page .harm-hero {
    grid-template-columns: minmax(0, 1fr) minmax(340px, .72fr);
  }

  .regenerative-page .harm-hero h1 {
    font-size: clamp(2.75rem, 4.2vw, 3.65rem);
  }

  .reg-catalog-grid { grid-template-columns: 1fr; }

  .reg-procedure-card {
    min-height: 350px;
    grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
  }

  .reg-procedure-card .harm-procedure-image { min-height: 350px; }
}

@media (max-width: 820px) {
  .regenerative-page .harm-hero { grid-template-columns: 1fr; }

  .regenerative-page .harm-hero h1 {
    max-width: 13ch;
    font-size: clamp(3rem, 11vw, 4.7rem);
  }

  .reg-hero-visual { min-height: auto; }

  .reg-procedure-card {
    min-height: 0;
    grid-template-columns: 1fr;
  }

  .reg-procedure-card .harm-procedure-image {
    min-height: 0;
    aspect-ratio: 16 / 10;
  }

  .reg-image-microneedling img { object-position: center 48%; }
}

@media (max-width: 560px) {
  .regenerative-page .harm-hero h1 {
    max-width: 100%;
    font-size: clamp(2.75rem, 12.4vw, 3.8rem);
  }

  .regenerative-page .harm-eyebrow { max-width: 34ch; }

  .reg-procedure-card .harm-procedure-copy h3 { font-size: 2.05rem; }

  .reg-conversion-card .harm-button { width: min(100%, 360px); }
}

@media (prefers-reduced-motion: reduce) {
  .reg-image-peel img { transform: none; }
}
