:root {
  --skyskin-tratamientos-v591-rose-dark: #8F3652;
  --skyskin-tratamientos-v591-rose: #A14E70;
  --skyskin-tratamientos-v591-gold: #D8B36C;
  --skyskin-tratamientos-v591-gold-light: #E5C98D;
  --skyskin-tratamientos-v591-copy: #4B3E42;
  --skyskin-tratamientos-v591-glass: rgba(255, 248, 245, .46);
  --skyskin-tratamientos-v591-border: rgba(143, 54, 82, .12);
  --skyskin-tratamientos-v591-shadow: 0 16px 40px rgba(70, 37, 48, .09);
}

body.skyskin-tratamientos-recreada-v591-active {
  overflow-x: hidden;
}

.skyskin-tratamientos-recreada-v591,
.skyskin-tratamientos-recreada-v591 * {
  box-sizing: border-box;
}

.skyskin-tratamientos-v591-hero {
  position: relative;
  width: 100%;
  min-height: clamp(580px, 78svh, 840px);
  overflow: hidden;
  isolation: isolate;
  background: #e9dfd9;
}

.skyskin-tratamientos-v591-video {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center center;
}

.skyskin-tratamientos-v591-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(
      90deg,
      rgba(255,248,245,.96) 0%,
      rgba(255,248,245,.88) 28%,
      rgba(255,248,245,.60) 48%,
      rgba(255,248,245,.14) 72%,
      rgba(255,248,245,.03) 100%
    ),
    linear-gradient(
      180deg,
      rgba(143,54,82,.03),
      rgba(143,54,82,.10)
    );
}

.skyskin-tratamientos-v591-hero-copy {
  position: relative;
  z-index: 2;
  width: min(1180px, calc(100% - 72px));
  min-height: clamp(580px, 78svh, 840px);
  margin: 0 auto;
  padding: 64px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.skyskin-tratamientos-v591-kicker,
.skyskin-tratamientos-v591-eyebrow {
  margin: 0 0 14px;
  color: var(--skyskin-tratamientos-v591-rose-dark);
  font-size: .79rem;
  line-height: 1.2;
  letter-spacing: .17em;
  text-transform: uppercase;
  font-weight: 700;
}

.skyskin-tratamientos-v591-kicker {
  margin-bottom: 18px;
  font-size: .9rem;
  letter-spacing: .18em;
  text-shadow: 0 1px 8px rgba(255,255,255,.64);
}

.skyskin-tratamientos-v591-hero h1 {
  max-width: 800px;
  margin: 0 0 24px;
  color: var(--skyskin-tratamientos-v591-rose);
  font-size: clamp(3rem, 5.45vw, 6rem);
  line-height: .98;
  letter-spacing: -.035em;
  font-weight: 700;
  text-wrap: balance;
  text-shadow: 0 2px 14px rgba(255,255,255,.48);
}

.skyskin-tratamientos-v591-intro {
  max-width: 700px;
  margin: 0 0 30px;
  color: var(--skyskin-tratamientos-v591-rose-dark);
  font-size: clamp(1.1rem, 1.65vw, 1.46rem);
  line-height: 1.55;
  font-weight: 500;
  text-shadow: 0 1px 8px rgba(255,255,255,.62);
}

.skyskin-tratamientos-v591-panel,
.skyskin-tratamientos-v591-cta {
  position: relative;
  width: min(calc(100% - 56px), 1180px);
  margin: 34px auto;
  padding: 32px;
  border-radius: 28px;
  background: var(--skyskin-tratamientos-v591-glass);
  border: 1px solid var(--skyskin-tratamientos-v591-border);
  box-shadow: var(--skyskin-tratamientos-v591-shadow);
  backdrop-filter: blur(8px) saturate(106%);
  -webkit-backdrop-filter: blur(8px) saturate(106%);
  overflow: hidden;
}

.skyskin-tratamientos-v591-panel::after,
.skyskin-tratamientos-v591-cta::after {
  content: '';
  position: absolute;
  right: -74px;
  top: -74px;
  width: 190px;
  height: 190px;
  border: 1px solid rgba(216, 179, 108, .16);
  border-radius: 50%;
  box-shadow:
    0 0 0 22px rgba(216, 179, 108, .035),
    0 0 0 44px rgba(216, 179, 108, .018);
  pointer-events: none;
}

.skyskin-tratamientos-v591-section-head,
.skyskin-tratamientos-v591-dynamic,
.skyskin-tratamientos-v591-cta > * {
  position: relative;
  z-index: 1;
}

.skyskin-tratamientos-v591-section-head {
  max-width: 930px;
  margin: 0 0 26px;
}

.skyskin-tratamientos-v591-section-head h2,
.skyskin-tratamientos-v591-cta h2 {
  margin: 0 0 14px;
  color: var(--skyskin-tratamientos-v591-rose-dark);
  font-size: clamp(2rem, 3.2vw, 3.35rem);
  line-height: 1.04;
  letter-spacing: -.025em;
}

.skyskin-tratamientos-v591-section-head p,
.skyskin-tratamientos-v591-cta p {
  margin: 0;
  color: var(--skyskin-tratamientos-v591-copy);
  line-height: 1.62;
}

.skyskin-tratamientos-v591-dynamic {
  width: 100%;
}

/*
 * No se rediseñan las fichas dinámicas: conservan exactamente sus clases,
 * enlaces, imágenes, taxonomías y comportamiento del Site Installer.
 */
.skyskin-tratamientos-v591-dynamic .skyskin-treatment-grid,
.skyskin-tratamientos-v591-dynamic .skyskin-concern-grid {
  margin: 0 !important;
}

.skyskin-tratamientos-v591-text-link {
  position: relative;
  z-index: 1;
  display: inline-block;
  margin-top: 22px;
  color: var(--skyskin-tratamientos-v591-rose-dark);
  font-size: .9rem;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 1px solid rgba(216,179,108,.70);
}

.skyskin-tratamientos-v591-cta {
  margin-bottom: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}

.skyskin-tratamientos-v591-cta h2 {
  margin-bottom: 8px;
}

.skyskin-tratamientos-recreada-v591 .skyskin-native-button {
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 28px;
  border: 1px solid var(--skyskin-tratamientos-v591-rose-dark);
  border-radius: 8px;
  background: var(--skyskin-tratamientos-v591-rose-dark);
  color: var(--skyskin-tratamientos-v591-gold);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(143,54,82,.20);
  transition:
    transform .2s ease,
    background-color .2s ease,
    box-shadow .2s ease;
}

.skyskin-tratamientos-recreada-v591 .skyskin-native-button:hover,
.skyskin-tratamientos-recreada-v591 .skyskin-native-button:focus-visible {
  background: var(--skyskin-tratamientos-v591-rose);
  border-color: var(--skyskin-tratamientos-v591-rose);
  color: var(--skyskin-tratamientos-v591-gold-light);
  transform: translateY(-2px);
  box-shadow: 0 16px 34px rgba(143,54,82,.26);
}

@media (max-width: 767px) {
  .skyskin-tratamientos-v591-hero,
  .skyskin-tratamientos-v591-hero-copy {
    min-height: 690px;
  }

  .skyskin-tratamientos-v591-video {
    object-position: 62% center;
  }

  .skyskin-tratamientos-v591-overlay {
    background:
      linear-gradient(
        180deg,
        rgba(255,248,245,.96) 0%,
        rgba(255,248,245,.84) 48%,
        rgba(255,248,245,.62) 74%,
        rgba(255,248,245,.40) 100%
      ),
      linear-gradient(
        180deg,
        rgba(143,54,82,.02),
        rgba(143,54,82,.11)
      );
  }

  .skyskin-tratamientos-v591-hero-copy {
    width: calc(100% - 32px);
    padding: 64px 0;
    justify-content: flex-end;
  }

  .skyskin-tratamientos-v591-hero h1 {
    font-size: clamp(2.55rem, 11.5vw, 4.15rem);
  }

  .skyskin-tratamientos-v591-panel,
  .skyskin-tratamientos-v591-cta {
    width: calc(100% - 22px);
    margin: 24px auto;
    padding: 22px;
    border-radius: 22px;
  }

  .skyskin-tratamientos-v591-cta {
    margin-bottom: 52px;
    flex-direction: column;
    align-items: flex-start;
  }
}
