:root {
  --bg: #f7f3eb;
  --bg-soft: #fbf8f1;
  --panel: rgba(255, 255, 255, 0.72);
  --panel-strong: rgba(255, 255, 255, 0.9);
  --surface: #ffffff;
  --surface-strong: #ffffff;
  --surface-muted: #f2ece0;
  --text: #141414;
  --text-muted: #6d665c;
  --text-dark: #111315;
  --text-soft-dark: #5f5a50;
  --accent: #c8a15a;
  --accent-soft: #e6d1a2;
  --accent-strong: #9f7d3f;
  --teal: #27353d;
  --line: rgba(20, 20, 20, 0.1);
  --line-dark: rgba(255, 255, 255, 0.12);
  --shadow: 0 18px 60px rgba(20, 20, 20, 0.1);
  --shadow-strong: 0 24px 80px rgba(0, 0, 0, 0.35);
  --shadow-soft: 0 12px 36px rgba(20, 20, 20, 0.12);
  --radius-xl: 42px;
  --radius-lg: 28px;
  --radius-md: 20px;
  --radius-sm: 14px;
  --container: min(1240px, calc(100vw - 2rem));
}

/* V7.01 /promotoras editorial body upgrade. Header and footer remain outside this scope. */
body[data-page="/promotoras/"] .promotoras-editorial-page {
  --promotoras-gold: #d6a85a;
  --promotoras-gold-soft: rgba(214, 168, 90, 0.18);
  --promotoras-ink: #f6efe5;
  --promotoras-muted: rgba(246, 239, 229, 0.72);
  --promotoras-soft: rgba(246, 239, 229, 0.52);
  --promotoras-panel: rgba(255, 255, 255, 0.025);
  --promotoras-panel-strong: rgba(8, 13, 11, 0.72);
  --promotoras-shell: min(100% - 64px, 1240px);
  color: var(--promotoras-ink);
  background:
    radial-gradient(circle at 8% 18%, rgba(214, 168, 90, 0.1), transparent 28rem),
    radial-gradient(circle at 88% 46%, rgba(42, 80, 62, 0.18), transparent 34rem),
    linear-gradient(180deg, #050807 0%, #07110d 42%, #050807 100%);
  overflow: hidden;
}

body[data-page="/promotoras/"] .promotoras-editorial-page p,
body[data-page="/promotoras/"] .promotoras-editorial-page li,
body[data-page="/promotoras/"] .promotoras-editorial-page summary {
  letter-spacing: 0;
}

body[data-page="/promotoras/"] .promotoras-editorial-page .vertical-hero-copy > p:not(.v4-eyebrow),
body[data-page="/promotoras/"] .promotoras-readable,
body[data-page="/promotoras/"] .promotoras-related-card p {
  max-width: 520px;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero {
  border-bottom: 1px solid var(--promotoras-gold-soft);
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-panel {
  border: 1px solid var(--promotoras-gold-soft);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.012)),
    rgba(3, 8, 7, 0.66);
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.38);
  backdrop-filter: blur(18px);
}

body[data-page="/promotoras/"] .promotoras-hero-panel ul {
  display: grid;
  gap: 0.85rem;
  margin: 1.4rem 0 0;
  padding: 0;
  list-style: none;
}

body[data-page="/promotoras/"] .promotoras-hero-panel li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 0.7rem;
  align-items: center;
  color: var(--promotoras-muted);
  font-size: 0.88rem;
}

body[data-page="/promotoras/"] .promotoras-hero-panel li svg,
body[data-page="/promotoras/"] .promotoras-inline-icon svg,
body[data-page="/promotoras/"] .promotoras-card-arrow svg,
body[data-page="/promotoras/"] .promotoras-soft-cta svg,
body[data-page="/promotoras/"] .promotoras-related-card a svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body[data-page="/promotoras/"] .promotoras-hero-panel li svg {
  color: var(--promotoras-gold);
}

body[data-page="/promotoras/"] .promotoras-editorial-section {
  position: relative;
  padding: 96px 0;
  border-bottom: 1px solid rgba(214, 168, 90, 0.14);
}

body[data-page="/promotoras/"] .promotoras-editorial-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(214, 168, 90, 0.045), transparent 28%, transparent 72%, rgba(214, 168, 90, 0.035)),
    radial-gradient(circle at 20% 0, rgba(214, 168, 90, 0.07), transparent 20rem);
  opacity: 0.9;
}

body[data-page="/promotoras/"] .promotoras-section-shell {
  position: relative;
  z-index: 1;
  width: var(--promotoras-shell);
  margin-inline: auto;
}

body[data-page="/promotoras/"] .promotoras-focus-grid {
  display: grid;
  grid-template-columns: minmax(260px, 0.32fr) minmax(0, 1fr);
  gap: 2rem;
  align-items: start;
}

body[data-page="/promotoras/"] .promotoras-focus-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.15rem;
}

body[data-page="/promotoras/"] .promotoras-editorial-copy {
  min-width: 0;
}

body[data-page="/promotoras/"] .promotoras-part {
  margin: 0 0 0.75rem !important;
  color: var(--promotoras-gold) !important;
  font-family: Inter, system-ui, sans-serif;
  font-size: 0.72rem !important;
  font-weight: 850;
  line-height: 1.2;
  text-transform: uppercase;
}

body[data-page="/promotoras/"] .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-focus-section h2,
body[data-page="/promotoras/"] .promotoras-related-section h2,
body[data-page="/promotoras/"] .promotoras-faq-section h2 {
  max-width: 560px;
  margin: 0;
  color: var(--promotoras-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 3.2rem;
  line-height: 0.96;
  letter-spacing: 0;
}

body[data-page="/promotoras/"] .promotoras-gold-rule {
  display: block;
  width: 54px;
  height: 1px;
  margin: 1rem 0 1.25rem;
  background: var(--promotoras-gold);
}

body[data-page="/promotoras/"] .promotoras-readable {
  display: grid;
  gap: 0.85rem;
}

body[data-page="/promotoras/"] .promotoras-readable p {
  margin: 0;
  color: var(--promotoras-muted);
  font-size: 0.98rem;
  line-height: 1.68;
}

body[data-page="/promotoras/"] .promotoras-editorial-copy blockquote {
  max-width: 500px;
  margin: 0 0 1.35rem;
  padding: 0.95rem 0 0.95rem 1rem;
  border-left: 1px solid var(--promotoras-gold);
  color: #e8c273;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.24rem;
  font-style: italic;
  line-height: 1.36;
}

body[data-page="/promotoras/"] .promotoras-focus-card,
body[data-page="/promotoras/"] .promotoras-mini-metric,
body[data-page="/promotoras/"] .promotoras-related-card,
body[data-page="/promotoras/"] .promotoras-results-card,
body[data-page="/promotoras/"] .promotoras-accordion details {
  border: 1px solid var(--promotoras-gold-soft);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    var(--promotoras-panel);
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.24);
  backdrop-filter: blur(16px);
}

body[data-page="/promotoras/"] .promotoras-focus-card,
body[data-page="/promotoras/"] .promotoras-related-card {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  transition: transform 250ms ease, border-color 250ms ease, box-shadow 250ms ease;
}

body[data-page="/promotoras/"] .promotoras-focus-card:hover,
body[data-page="/promotoras/"] .promotoras-related-card:hover {
  transform: translateY(-5px);
  border-color: rgba(214, 168, 90, 0.42);
  box-shadow: 0 26px 70px rgba(0, 0, 0, 0.34), 0 0 34px rgba(214, 168, 90, 0.08);
}

body[data-page="/promotoras/"] .promotoras-focus-card figure,
body[data-page="/promotoras/"] .promotoras-related-card figure {
  position: relative;
  height: 220px;
  margin: 0;
  overflow: hidden;
}

body[data-page="/promotoras/"] .promotoras-focus-card figure::after,
body[data-page="/promotoras/"] .promotoras-related-card figure::after,
body[data-page="/promotoras/"] .promotoras-large-media::after,
body[data-page="/promotoras/"] .promotoras-dossier-media::after,
body[data-page="/promotoras/"] .promotoras-device-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(0, 0, 0, 0.58));
  pointer-events: none;
}

body[data-page="/promotoras/"] .promotoras-focus-card img,
body[data-page="/promotoras/"] .promotoras-related-card img,
body[data-page="/promotoras/"] .promotoras-large-media img,
body[data-page="/promotoras/"] .promotoras-dossier-media img,
body[data-page="/promotoras/"] .promotoras-device-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 250ms ease;
}

body[data-page="/promotoras/"] .promotoras-focus-card:hover img,
body[data-page="/promotoras/"] .promotoras-related-card:hover img {
  transform: scale(1.035);
}

body[data-page="/promotoras/"] .promotoras-focus-card > div,
body[data-page="/promotoras/"] .promotoras-related-card > div {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 230px;
  padding: 1.25rem;
}

body[data-page="/promotoras/"] .promotoras-focus-card h3,
body[data-page="/promotoras/"] .promotoras-related-card h3 {
  margin: 0;
  color: var(--promotoras-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.65rem;
  line-height: 1.04;
  letter-spacing: 0;
}

body[data-page="/promotoras/"] .promotoras-focus-card p:not(.promotoras-part),
body[data-page="/promotoras/"] .promotoras-related-card p:not(.promotoras-part) {
  margin-top: 0.75rem;
  color: var(--promotoras-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}

body[data-page="/promotoras/"] .promotoras-card-arrow,
body[data-page="/promotoras/"] .promotoras-related-card a {
  margin-top: auto;
  color: var(--promotoras-gold);
}

body[data-page="/promotoras/"] .promotoras-split-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.42fr) minmax(0, 0.78fr);
  gap: 2.5rem;
  align-items: center;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-reversed {
  grid-template-columns: minmax(0, 0.76fr) minmax(300px, 0.48fr);
}

body[data-page="/promotoras/"] .promotoras-large-media,
body[data-page="/promotoras/"] .promotoras-dossier-media,
body[data-page="/promotoras/"] .promotoras-device-media {
  position: relative;
  min-height: 470px;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--promotoras-gold-soft);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.025);
  box-shadow: 0 28px 86px rgba(0, 0, 0, 0.34);
}

body[data-page="/promotoras/"] .promotoras-media-stack {
  display: grid;
  gap: 1rem;
}

body[data-page="/promotoras/"] .promotoras-mini-row,
body[data-page="/promotoras/"] .promotoras-icon-points,
body[data-page="/promotoras/"] .promotoras-timeline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
}

body[data-page="/promotoras/"] .promotoras-icon-points,
body[data-page="/promotoras/"] .promotoras-timeline {
  margin-top: 1.4rem;
}

body[data-page="/promotoras/"] .promotoras-icon-points {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body[data-page="/promotoras/"] .promotoras-timeline {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body[data-page="/promotoras/"] .promotoras-mini-metric {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 0.75rem;
  align-items: center;
  min-height: 76px;
  padding: 0.85rem;
  border-radius: 18px;
}

body[data-page="/promotoras/"] .promotoras-inline-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(214, 168, 90, 0.26);
  border-radius: 50%;
  color: var(--promotoras-gold);
}

body[data-page="/promotoras/"] .promotoras-mini-metric strong {
  color: var(--promotoras-ink);
  font-size: 0.86rem;
  line-height: 1.25;
}

body[data-page="/promotoras/"] .promotoras-solutions-section {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.02), transparent),
    rgba(255, 255, 255, 0.012);
}

body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-dossier-media {
  min-height: 430px;
  transform: rotate(0.4deg);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.38), 0 0 42px rgba(214, 168, 90, 0.1);
}

body[data-page="/promotoras/"] .promotoras-soft-cta,
body[data-page="/promotoras/"] .promotoras-related-card a {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-top: 1.3rem;
  padding: 0.75rem 1rem;
  border: 1px solid var(--promotoras-gold-soft);
  border-radius: 999px;
  color: var(--promotoras-gold);
  background: rgba(255, 255, 255, 0.02);
  font-size: 0.86rem;
  font-weight: 850;
  text-decoration: none;
  transition: transform 250ms ease, border-color 250ms ease, box-shadow 250ms ease;
}

body[data-page="/promotoras/"] .promotoras-soft-cta:hover,
body[data-page="/promotoras/"] .promotoras-related-card a:hover {
  transform: translateY(-2px);
  border-color: rgba(214, 168, 90, 0.42);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.24);
}

body[data-page="/promotoras/"] .promotoras-process-section {
  background:
    linear-gradient(90deg, rgba(4, 8, 7, 0.95), rgba(4, 8, 7, 0.78)),
    var(--promotoras-process-bg);
  background-position: center;
  background-size: cover;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-editorial-copy {
  max-width: 760px;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-readable,
body[data-page="/promotoras/"] .promotoras-process-section .promotoras-editorial-copy h2 {
  max-width: 620px;
}

body[data-page="/promotoras/"] .promotoras-timeline {
  position: relative;
  margin-top: 2rem;
}

body[data-page="/promotoras/"] .promotoras-timeline::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 8%;
  right: 8%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(214, 168, 90, 0.28), transparent);
  transform: translateY(-50%);
}

body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric {
  position: relative;
}

body[data-page="/promotoras/"] .promotoras-calculator-section {
  background:
    radial-gradient(circle at 14% 50%, rgba(214, 168, 90, 0.11), transparent 24rem),
    rgba(255, 255, 255, 0.018);
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-calculator {
  grid-template-columns: minmax(0, 0.58fr) minmax(300px, 0.42fr) minmax(260px, 0.34fr);
}

body[data-page="/promotoras/"] .promotoras-device-media {
  min-height: 390px;
  transform: perspective(900px) rotateY(-5deg) rotateX(2deg);
}

body[data-page="/promotoras/"] .promotoras-glow-button {
  box-shadow: 0 20px 48px rgba(214, 168, 90, 0.22), 0 0 28px rgba(214, 168, 90, 0.14) !important;
}

body[data-page="/promotoras/"] .promotoras-results-card {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 260px;
  padding: 1.4rem;
  border-radius: 22px;
}

body[data-page="/promotoras/"] .promotoras-results-card > div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
  margin-top: 1.2rem;
}

body[data-page="/promotoras/"] .promotoras-results-card strong {
  display: block;
  color: var(--promotoras-gold);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 2rem;
  line-height: 1;
}

body[data-page="/promotoras/"] .promotoras-results-card span {
  display: block;
  margin-top: 0.35rem;
  color: var(--promotoras-soft);
  font-size: 0.72rem;
  line-height: 1.3;
}

body[data-page="/promotoras/"] .promotoras-related-grid,
body[data-page="/promotoras/"] .promotoras-faq-grid {
  display: grid;
  grid-template-columns: minmax(240px, 0.32fr) minmax(0, 1fr);
  gap: 2rem;
  align-items: start;
}

body[data-page="/promotoras/"] .promotoras-related-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

body[data-page="/promotoras/"] .promotoras-related-card figure {
  height: 250px;
}

body[data-page="/promotoras/"] .promotoras-related-card a {
  justify-content: flex-start;
  width: fit-content;
}

body[data-page="/promotoras/"] .promotoras-faq-section {
  padding-top: 104px;
  padding-bottom: 104px;
}

body[data-page="/promotoras/"] .promotoras-accordion {
  display: grid;
  gap: 0.7rem;
  max-width: 820px;
}

body[data-page="/promotoras/"] .promotoras-accordion details {
  border-radius: 16px;
  overflow: hidden;
  transition: border-color 250ms ease, background 250ms ease, transform 250ms ease;
}

body[data-page="/promotoras/"] .promotoras-accordion details:hover {
  transform: translateY(-2px);
  border-color: rgba(214, 168, 90, 0.36);
  background: rgba(255, 255, 255, 0.035);
}

body[data-page="/promotoras/"] .promotoras-accordion summary {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 28px;
  gap: 0.9rem;
  align-items: center;
  min-height: 62px;
  padding: 0.9rem 1rem;
  color: var(--promotoras-ink);
  cursor: pointer;
  font-size: 0.96rem;
  font-weight: 760;
  list-style: none;
}

body[data-page="/promotoras/"] .promotoras-accordion summary::-webkit-details-marker {
  display: none;
}

body[data-page="/promotoras/"] .promotoras-accordion summary span {
  color: var(--promotoras-gold);
  font-size: 0.76rem;
  font-weight: 900;
}

body[data-page="/promotoras/"] .promotoras-accordion summary em {
  color: var(--promotoras-gold);
  font-size: 1.25rem;
  font-style: normal;
  text-align: right;
}

body[data-page="/promotoras/"] .promotoras-accordion details[open] summary em {
  transform: rotate(45deg);
}

body[data-page="/promotoras/"] .promotoras-accordion details p {
  max-width: 680px;
  margin: 0 1rem 1rem 4.25rem;
  padding-top: 0.9rem;
  border-top: 1px solid rgba(214, 168, 90, 0.12);
  color: var(--promotoras-muted);
  font-size: 0.93rem;
  line-height: 1.65;
}

body[data-page="/promotoras/"] .promotoras-final-section {
  border-top: 1px solid rgba(214, 168, 90, 0.18);
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .promotoras-editorial-page {
    --promotoras-shell: min(100% - 44px, 900px);
  }

  body[data-page="/promotoras/"] .promotoras-editorial-section {
    padding: 64px 0;
  }

  body[data-page="/promotoras/"] .promotoras-focus-grid,
  body[data-page="/promotoras/"] .promotoras-split-grid,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-reversed,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-calculator,
  body[data-page="/promotoras/"] .promotoras-related-grid,
  body[data-page="/promotoras/"] .promotoras-faq-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/promotoras/"] .promotoras-focus-cards,
  body[data-page="/promotoras/"] .promotoras-related-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-page="/promotoras/"] .promotoras-mini-row,
  body[data-page="/promotoras/"] .promotoras-icon-points,
  body[data-page="/promotoras/"] .promotoras-timeline,
  body[data-page="/promotoras/"] .promotoras-results-card > div {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-page="/promotoras/"] .promotoras-timeline::before {
    display: none;
  }

  body[data-page="/promotoras/"] .promotoras-device-media {
    transform: none;
  }
}

@media (max-width: 720px) {
  body[data-page="/promotoras/"] .promotoras-editorial-page {
    --promotoras-shell: min(100% - 28px, 640px);
  }

  body[data-page="/promotoras/"] .promotoras-editorial-section {
    padding: 48px 0;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-copy h2,
  body[data-page="/promotoras/"] .promotoras-focus-section h2,
  body[data-page="/promotoras/"] .promotoras-related-section h2,
  body[data-page="/promotoras/"] .promotoras-faq-section h2 {
    font-size: 2.2rem;
    line-height: 1;
  }

  body[data-page="/promotoras/"] .promotoras-focus-cards,
  body[data-page="/promotoras/"] .promotoras-related-cards,
  body[data-page="/promotoras/"] .promotoras-mini-row,
  body[data-page="/promotoras/"] .promotoras-icon-points,
  body[data-page="/promotoras/"] .promotoras-timeline,
  body[data-page="/promotoras/"] .promotoras-results-card > div {
    grid-template-columns: 1fr;
  }

  body[data-page="/promotoras/"] .promotoras-large-media,
  body[data-page="/promotoras/"] .promotoras-dossier-media,
  body[data-page="/promotoras/"] .promotoras-device-media {
    min-height: 310px;
    border-radius: 18px;
  }

  body[data-page="/promotoras/"] .promotoras-focus-card figure,
  body[data-page="/promotoras/"] .promotoras-related-card figure {
    height: 190px;
  }

  body[data-page="/promotoras/"] .promotoras-focus-card > div,
  body[data-page="/promotoras/"] .promotoras-related-card > div {
    min-height: 0;
  }

  body[data-page="/promotoras/"] .promotoras-accordion summary {
    grid-template-columns: 34px minmax(0, 1fr) 24px;
    gap: 0.65rem;
    font-size: 0.88rem;
  }

  body[data-page="/promotoras/"] .promotoras-accordion details p {
    margin-left: 1rem;
  }
}

/* V4.90 vertical personality pages: same approved visual language, distinct compositions. */
body[data-home-template="true"] .vertical-personality {
  background:
    radial-gradient(circle at 82% 12%, rgba(214, 168, 79, 0.14), transparent 28rem),
    linear-gradient(180deg, #040807 0%, #08110d 38%, #11120b 100%);
  color: #f7efe2;
}

body[data-home-template="true"] .vertical-personality h1,
body[data-home-template="true"] .vertical-personality h2,
body[data-home-template="true"] .vertical-personality h3 {
  color: #f8f0e4;
}

body[data-home-template="true"] .vertical-personality p {
  color: rgba(247, 239, 226, 0.72);
}

body[data-home-template="true"] .vertical-hero {
  position: relative;
  min-height: clamp(680px, 78vh, 860px);
  display: grid;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  border-bottom: 1px solid rgba(214, 168, 79, 0.16);
}

body[data-home-template="true"] .vertical-hero-media {
  position: absolute;
  inset: 0;
  z-index: -2;
}

body[data-home-template="true"] .vertical-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.86) contrast(1.05) brightness(0.62);
  transform: scale(1.02);
}

body[data-home-template="true"] .vertical-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(3, 6, 7, 0.94) 0%, rgba(3, 6, 7, 0.72) 38%, rgba(3, 6, 7, 0.24) 100%),
    radial-gradient(circle at 82% 24%, rgba(214, 168, 79, 0.18), transparent 24rem);
}

body[data-home-template="true"] .vertical-hero-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.58fr);
  gap: clamp(2rem, 6vw, 6.5rem);
  align-items: center;
}

body[data-home-template="true"] .vertical-hero-copy {
  max-width: 680px;
}

body[data-home-template="true"] .vertical-hero-copy h1 {
  max-width: 10.8ch;
  margin: 0;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(4.8rem, 8vw, 8.8rem);
  line-height: 0.86;
  letter-spacing: -0.045em;
}

body[data-home-template="true"] .vertical-hero-copy > p:not(.v4-eyebrow) {
  max-width: 620px;
  margin: 1.4rem 0 0;
  font-size: clamp(1.06rem, 1.2vw, 1.22rem);
  line-height: 1.68;
}

body[data-home-template="true"] .vertical-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.72rem;
  margin-top: 1.5rem;
}

body[data-home-template="true"] .vertical-chip-row span {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  padding: 0 0.9rem;
  border: 1px solid rgba(214, 168, 79, 0.28);
  border-radius: 999px;
  background: rgba(4, 8, 7, 0.5);
  color: rgba(248, 240, 228, 0.82);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-home-template="true"] .vertical-hero-panel {
  align-self: stretch;
  display: grid;
  align-content: center;
  min-height: 430px;
  padding: clamp(1.6rem, 3vw, 2.6rem);
  border: 1px solid rgba(214, 168, 79, 0.28);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(11, 14, 12, 0.92), rgba(17, 18, 11, 0.72)),
    radial-gradient(circle at 95% 0%, rgba(214, 168, 79, 0.22), transparent 13rem);
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.42);
}

body[data-home-template="true"] .vertical-hero-panel p {
  margin: 0 0 1rem;
  color: #d6a84f;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body[data-home-template="true"] .vertical-hero-panel h2 {
  max-width: 10ch;
  margin: 0;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2.6rem, 4vw, 4.4rem);
  line-height: 0.9;
  letter-spacing: -0.045em;
}

body[data-home-template="true"] .vertical-hero-panel ul {
  display: grid;
  gap: 0.82rem;
  margin: 1.6rem 0 0;
  padding: 0;
  list-style: none;
}

body[data-home-template="true"] .vertical-hero-panel li {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  color: rgba(248, 240, 228, 0.82);
  font-size: 0.94rem;
  line-height: 1.45;
}

body[data-home-template="true"] .vertical-hero-panel li::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #d6a84f;
  box-shadow: 0 0 0 6px rgba(214, 168, 79, 0.12);
  flex: 0 0 auto;
}

body[data-home-template="true"] .vertical-intro,
body[data-home-template="true"] .vertical-blockers,
body[data-home-template="true"] .vertical-activation,
body[data-home-template="true"] .vertical-references,
body[data-home-template="true"] .vertical-method,
body[data-home-template="true"] .vertical-faq {
  position: relative;
  padding: clamp(5.5rem, 8vw, 9rem) 0;
  border-bottom: 1px solid rgba(214, 168, 79, 0.11);
}

body[data-home-template="true"] .vertical-intro {
  background: rgba(4, 10, 8, 0.68);
}

body[data-home-template="true"] .vertical-intro-grid,
body[data-home-template="true"] .vertical-blockers-grid,
body[data-home-template="true"] .vertical-method-grid,
body[data-home-template="true"] .vertical-faq-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: start;
}

body[data-home-template="true"] .vertical-intro h2,
body[data-home-template="true"] .vertical-section-head h2,
body[data-home-template="true"] .vertical-blockers h2,
body[data-home-template="true"] .vertical-method h2,
body[data-home-template="true"] .vertical-faq h2 {
  max-width: 11.6ch;
  margin: 0;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(3rem, 5.4vw, 6.2rem);
  line-height: 0.9;
  letter-spacing: -0.045em;
}

body[data-home-template="true"] .vertical-intro-grid > p {
  max-width: 660px;
  margin: 3.1rem 0 0;
  font-size: clamp(1.08rem, 1.22vw, 1.28rem);
  line-height: 1.72;
}

body[data-home-template="true"] .vertical-problem-list {
  display: grid;
  gap: 0.9rem;
  margin-top: 2rem;
}

body[data-home-template="true"] .vertical-problem-list article,
body[data-home-template="true"] .vertical-method-steps article,
body[data-home-template="true"] .vertical-faq-list details {
  border: 1px solid rgba(214, 168, 79, 0.22);
  border-radius: 8px;
  background: rgba(1, 5, 4, 0.48);
}

body[data-home-template="true"] .vertical-problem-list article {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 1rem;
  padding: 1.05rem;
}

body[data-home-template="true"] .vertical-problem-list article > span {
  width: 28px;
  height: 28px;
  margin-top: 0.15rem;
  border-radius: 999px;
  background: linear-gradient(135deg, #d6a84f, #7d5a1d);
}

body[data-home-template="true"] .vertical-problem-list h3,
body[data-home-template="true"] .vertical-activation-card h3,
body[data-home-template="true"] .vertical-reference-card h3,
body[data-home-template="true"] .vertical-method-steps h3 {
  margin: 0;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.45rem, 1.8vw, 2.1rem);
  line-height: 1;
  letter-spacing: -0.04em;
}

body[data-home-template="true"] .vertical-problem-list p,
body[data-home-template="true"] .vertical-activation-card p,
body[data-home-template="true"] .vertical-reference-card p,
body[data-home-template="true"] .vertical-method-steps p,
body[data-home-template="true"] .vertical-faq-list p {
  margin: 0.55rem 0 0;
  font-size: 0.94rem;
  line-height: 1.58;
}

body[data-home-template="true"] .vertical-feature-image {
  position: sticky;
  top: 110px;
  margin: 0;
  min-height: 520px;
  overflow: hidden;
  border: 1px solid rgba(214, 168, 79, 0.24);
  border-radius: 8px;
  background: #050706;
}

body[data-home-template="true"] .vertical-feature-image img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
}

body[data-home-template="true"] .vertical-section-head {
  display: grid;
  grid-template-columns: minmax(0, 0.74fr) minmax(0, 0.62fr);
  gap: clamp(2rem, 5vw, 4.5rem);
  align-items: end;
  margin-bottom: clamp(2rem, 4vw, 3.4rem);
}

body[data-home-template="true"] .vertical-section-head > p:not(.v4-eyebrow) {
  max-width: 560px;
  margin: 0 0 0.35rem;
  line-height: 1.7;
}

body[data-home-template="true"] .vertical-section-head.is-row {
  grid-template-columns: 1fr auto;
}

body[data-home-template="true"] .vertical-activation-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 1.7vw, 1.35rem);
}

body[data-home-template="true"] .vertical-activation-card,
body[data-home-template="true"] .vertical-reference-card {
  display: grid;
  overflow: hidden;
  border: 1px solid rgba(214, 168, 79, 0.22);
  border-radius: 8px;
  background: rgba(1, 5, 4, 0.66);
  color: inherit;
  text-decoration: none;
}

body[data-home-template="true"] .vertical-activation-card figure,
body[data-home-template="true"] .vertical-reference-card figure {
  margin: 0;
  aspect-ratio: 1.45 / 1;
  overflow: hidden;
}

body[data-home-template="true"] .vertical-activation-card img,
body[data-home-template="true"] .vertical-reference-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.55s ease;
}

body[data-home-template="true"] .vertical-activation-card:hover img,
body[data-home-template="true"] .vertical-reference-card:hover img {
  transform: scale(1.045);
}

body[data-home-template="true"] .vertical-activation-card > div,
body[data-home-template="true"] .vertical-reference-card > div {
  padding: clamp(1rem, 1.8vw, 1.45rem);
}

body[data-home-template="true"] .vertical-activation-card small,
body[data-home-template="true"] .vertical-reference-card span,
body[data-home-template="true"] .vertical-method-steps span {
  color: #d6a84f;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body[data-home-template="true"] .vertical-reference-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.92fr 0.92fr;
  gap: clamp(1rem, 1.7vw, 1.35rem);
}

body[data-home-template="true"] .vertical-reference-card:first-child figure {
  aspect-ratio: 1.65 / 1;
}

body[data-home-template="true"] .vertical-method {
  background:
    radial-gradient(circle at 82% 18%, rgba(214, 168, 79, 0.18), transparent 22rem),
    rgba(5, 9, 8, 0.78);
}

body[data-home-template="true"] .vertical-method-grid {
  align-items: center;
}

body[data-home-template="true"] .vertical-method-grid > div:first-child > p:not(.v4-eyebrow) {
  max-width: 580px;
  margin: 1.2rem 0 0;
}

body[data-home-template="true"] .vertical-method-steps {
  display: grid;
  gap: 1rem;
}

body[data-home-template="true"] .vertical-method-steps article {
  padding: 1.25rem;
}

body[data-home-template="true"] .vertical-faq-list {
  display: grid;
  gap: 0.82rem;
}

body[data-home-template="true"] .vertical-faq-list summary {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.05rem 1.15rem;
  color: #f8f0e4;
  font-weight: 800;
}

body[data-home-template="true"] .vertical-faq-list summary::after {
  content: "+";
  color: #d6a84f;
}

body[data-home-template="true"] .vertical-faq-list details[open] summary::after {
  content: "-";
}

body[data-home-template="true"] .vertical-faq-list p {
  padding: 0 1.15rem 1.05rem;
}

body[data-home-template="true"] .vertical-personality-industria .vertical-hero::after {
  background:
    linear-gradient(90deg, rgba(3, 6, 7, 0.96) 0%, rgba(3, 6, 7, 0.68) 44%, rgba(3, 6, 7, 0.34) 100%),
    linear-gradient(180deg, rgba(214, 168, 79, 0.04), rgba(74, 97, 83, 0.18));
}

body[data-home-template="true"] .vertical-personality-industria .vertical-activation-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body[data-home-template="true"] .vertical-personality-industria .vertical-activation-card:first-child {
  grid-row: auto;
}

body[data-home-template="true"] .vertical-personality-industria .vertical-activation-card:first-child figure {
  aspect-ratio: 1.45 / 1;
  min-height: 0;
}

body[data-home-template="true"] .vertical-personality-arquitectura .vertical-hero-shell {
  grid-template-columns: minmax(0, 0.82fr) minmax(420px, 0.72fr);
}

body[data-home-template="true"] .vertical-personality-arquitectura .vertical-hero-copy h1 {
  max-width: 11.6ch;
}

body[data-home-template="true"] .vertical-personality-arquitectura .vertical-activation-grid {
  grid-template-columns: 1.35fr 0.82fr 0.82fr;
}

body[data-home-template="true"] .vertical-personality-arquitectura .vertical-activation-card:first-child figure {
  aspect-ratio: 1.9 / 1;
}

@media (max-width: 1050px) {
  body[data-home-template="true"] .vertical-hero-shell,
  body[data-home-template="true"] .vertical-intro-grid,
  body[data-home-template="true"] .vertical-blockers-grid,
  body[data-home-template="true"] .vertical-method-grid,
  body[data-home-template="true"] .vertical-faq-grid,
  body[data-home-template="true"] .vertical-section-head,
  body[data-home-template="true"] .vertical-personality-arquitectura .vertical-hero-shell {
    grid-template-columns: 1fr;
  }

  body[data-home-template="true"] .vertical-section-head.is-row {
    grid-template-columns: 1fr;
  }

  body[data-home-template="true"] .vertical-hero-panel {
    min-height: 0;
  }

  body[data-home-template="true"] .vertical-feature-image {
    position: relative;
    top: auto;
  }

  body[data-home-template="true"] .vertical-activation-grid,
  body[data-home-template="true"] .vertical-reference-grid,
  body[data-home-template="true"] .vertical-personality-industria .vertical-activation-grid,
  body[data-home-template="true"] .vertical-personality-arquitectura .vertical-activation-grid {
    grid-template-columns: 1fr 1fr;
  }

  body[data-home-template="true"] .vertical-personality-industria .vertical-activation-card:first-child {
    grid-row: auto;
  }
}

@media (max-width: 680px) {
  body[data-home-template="true"] .vertical-hero {
    min-height: auto;
    padding: 7rem 0 4rem;
  }

  body[data-home-template="true"] .vertical-hero-copy h1 {
    font-size: clamp(3.4rem, 17vw, 5rem);
  }

  body[data-home-template="true"] .vertical-hero-panel h2,
  body[data-home-template="true"] .vertical-intro h2,
  body[data-home-template="true"] .vertical-section-head h2,
  body[data-home-template="true"] .vertical-blockers h2,
  body[data-home-template="true"] .vertical-method h2,
  body[data-home-template="true"] .vertical-faq h2 {
    font-size: clamp(2.65rem, 13vw, 4.2rem);
  }

  body[data-home-template="true"] .vertical-activation-grid,
  body[data-home-template="true"] .vertical-reference-grid,
  body[data-home-template="true"] .vertical-personality-industria .vertical-activation-grid,
  body[data-home-template="true"] .vertical-personality-arquitectura .vertical-activation-grid {
    grid-template-columns: 1fr;
  }

  body[data-home-template="true"] .vertical-feature-image,
  body[data-home-template="true"] .vertical-feature-image img,
  body[data-home-template="true"] .vertical-personality-industria .vertical-activation-card:first-child figure {
    min-height: 0;
  }
}

/* Final premium footer system for internal pages. */
body:not([data-page="/"]) .site-footer {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(3.35rem, 6vw, 5.4rem) clamp(20px, 5vw, 72px) clamp(1.35rem, 3vw, 2.25rem);
  border-top: 1px solid rgba(240, 206, 122, 0.18);
  background:
    radial-gradient(circle at 16% 0%, rgba(240, 198, 107, 0.16), transparent 28rem),
    linear-gradient(180deg, #070909 0%, #030404 100%);
  color: #f6efe4;
}

body:not([data-page="/"]) .site-footer *,
body:not([data-page="/"]) .site-footer *::before,
body:not([data-page="/"]) .site-footer *::after {
  box-sizing: border-box;
}

body:not([data-page="/"]) .site-footer-cta,
body:not([data-page="/"]) .site-footer-main,
body:not([data-page="/"]) .site-footer-funding,
body:not([data-page="/"]) .site-footer-bottom {
  width: min(100%, 1240px);
  max-width: 1240px;
  margin-inline: auto;
}

body:not([data-page="/"]) .site-footer-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(1rem, 3vw, 2rem);
  padding: clamp(1.15rem, 3vw, 2rem);
  border: 1px solid rgba(240, 206, 122, 0.24);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(240, 198, 107, 0.18), rgba(255, 255, 255, 0.035) 58%),
    rgba(255, 255, 255, 0.025);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.24);
}

body:not([data-page="/"]) .site-footer-kicker {
  margin: 0 0 0.45rem;
  color: #d9ad55;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-cta h2 {
  max-width: 17ch;
  margin: 0;
  color: #fff8ea;
  font-family: var(--font-display, "Playfair Display", serif);
  font-size: clamp(2rem, 4vw, 3.55rem);
  line-height: 0.94;
  letter-spacing: 0;
}

body:not([data-page="/"]) .site-footer-cta-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.75rem;
}

body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button {
  min-height: 48px;
  border-radius: 999px;
  white-space: nowrap;
}

body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary {
  border-color: rgba(117, 78, 20, 0.36);
  background: linear-gradient(135deg, #f0c66b 0%, #d7a84b 48%, #bf8a2e 100%);
  color: #17120a;
  box-shadow:
    0 18px 42px rgba(190, 136, 46, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.48);
}

body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-secondary {
  border-color: rgba(240, 206, 122, 0.28);
  background: rgba(255, 255, 255, 0.035);
  color: #f6efe4;
}

body:not([data-page="/"]) .site-footer-main {
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) repeat(3, minmax(145px, 0.55fr));
  gap: clamp(1.5rem, 4vw, 4.5rem);
  margin-top: clamp(2.4rem, 5vw, 4.4rem);
}

body:not([data-page="/"]) .site-footer-intro {
  max-width: 420px;
}

body:not([data-page="/"]) .site-footer .footer-logo {
  display: inline-flex;
  width: auto;
  min-width: 0;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #f0c66b;
  line-height: 1;
  text-decoration: none;
}

body:not([data-page="/"]) .site-footer .footer-logo::before {
  display: none;
  content: none;
}

body:not([data-page="/"]) .site-footer .footer-logo .brand-mark {
  color: #f0c66b;
  font-family: var(--font-body, "Inter", sans-serif);
  font-size: clamp(3rem, 5vw, 4.4rem);
  font-weight: 900;
  letter-spacing: 0;
  text-shadow: 0 18px 44px rgba(240, 198, 107, 0.22);
}

body:not([data-page="/"]) .site-footer-intro p {
  max-width: 34ch;
  margin: 1.1rem 0 0;
  color: rgba(246, 239, 228, 0.72);
  font-size: 1rem;
  line-height: 1.62;
}

body:not([data-page="/"]) .site-footer-signature {
  display: block;
  margin-top: 1rem;
  color: rgba(240, 206, 122, 0.7);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-group {
  display: grid;
  align-content: start;
  gap: 0.72rem;
}

body:not([data-page="/"]) .site-footer-group::before {
  display: none;
  content: none;
}

body:not([data-page="/"]) .site-footer-group h3 {
  margin: 0 0 0.28rem;
  color: #d9ad55;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer a {
  color: rgba(246, 239, 228, 0.72);
  font-weight: 600;
  text-decoration: none;
}

body:not([data-page="/"]) .site-footer a:hover,
body:not([data-page="/"]) .site-footer a:focus-visible {
  color: #f0ce7a;
}

body:not([data-page="/"]) .site-footer-funding {
  display: grid;
  place-items: center;
  margin-top: clamp(2rem, 4vw, 3.25rem);
  padding: clamp(0.85rem, 1.6vw, 1.2rem) clamp(1rem, 3vw, 1.8rem);
  border: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 8px;
  background: #fff;
  color: #15120d;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.2);
}

body:not([data-page="/"]) .site-footer-funding img {
  display: block;
  justify-self: center;
  width: min(100%, 980px);
  max-height: clamp(64px, 7.5vw, 112px);
  height: auto;
  object-fit: contain;
}

body:not([data-page="/"]) .site-footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.15rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(240, 206, 122, 0.12);
  color: rgba(246, 239, 228, 0.52);
  font-size: 0.78rem;
}

@media (max-width: 980px) {
  body:not([data-page="/"]) .site-footer-cta,
  body:not([data-page="/"]) .site-footer-main,
  body:not([data-page="/"]) .site-footer-funding {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .site-footer-cta-actions {
    justify-self: start;
  }

  body:not([data-page="/"]) .site-footer-funding img {
    justify-self: center;
  }
}
/* V4.81 pricing hard lock at EOF: desktop sections must match the supplied horizontal references. */
html body[data-page="/precios/"] {
  --pricing-shell: min(1320px, calc(100% - clamp(40px, 7vw, 128px))) !important;
}

html body[data-page="/precios/"] .pricing-editorial-section,
html body[data-page="/precios/"] .pricing-range-section,
html body[data-page="/precios/"] .pricing-index-section,
html body[data-page="/precios/"] .pricing-compare-section,
html body[data-page="/precios/"] .pricing-route-section,
html body[data-page="/precios/"] .pricing-faq-section {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding: clamp(4.5rem, 7vw, 7rem) 0 !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid,
html body[data-page="/precios/"] .pricing-process-track,
html body[data-page="/precios/"] .pricing-service-index,
html body[data-page="/precios/"] .pricing-compare-layout,
html body[data-page="/precios/"] .pricing-route-grid-v2,
html body[data-page="/precios/"] .pricing-faq-layout,
html body[data-page="/precios/"] .pricing-section-heading {
  width: var(--pricing-shell) !important;
  max-width: var(--pricing-shell) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}

html body[data-page="/precios/"] .pricing-section-heading {
  display: block !important;
  margin-bottom: clamp(1.8rem, 3vw, 3.2rem) !important;
  text-align: left !important;
}

html body[data-page="/precios/"] .pricing-section-heading h2 {
  max-width: 14ch !important;
  font-size: clamp(3.6rem, 5vw, 6.3rem) !important;
  line-height: 0.92 !important;
}

html body[data-page="/precios/"] .pricing-section-heading .lead {
  max-width: 64ch !important;
  margin-top: 1rem !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.58fr) minmax(360px, 0.42fr) !important;
  gap: clamp(2.2rem, 5vw, 5.5rem) !important;
  align-items: center !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child {
  display: block !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .eyebrow,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > h2,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .lead,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .pricing-rule-list {
  grid-column: auto !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid h2 {
  max-width: 12ch !important;
  font-size: clamp(4.2rem, 5.6vw, 7rem) !important;
  line-height: 0.9 !important;
}

html body[data-page="/precios/"] .pricing-rule-list {
  display: grid !important;
  gap: 0 !important;
  margin-top: clamp(1.8rem, 3vw, 3rem) !important;
}

html body[data-page="/precios/"] .pricing-rule-list article {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) auto !important;
  min-height: 96px !important;
  align-items: center !important;
  padding: 1rem 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(240, 189, 85, 0.18) !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body[data-page="/precios/"] .pricing-proposal-card {
  min-height: 560px !important;
  padding: clamp(2rem, 3vw, 3.2rem) !important;
}

html body[data-page="/precios/"] .pricing-proposal-card h3 {
  max-width: 12ch !important;
  font-size: clamp(2.3rem, 3.2vw, 4rem) !important;
}

html body[data-page="/precios/"] .pricing-process-track {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(1.2rem, 2vw, 2rem) !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-process-track::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 86px !important;
  left: 9% !important;
  right: 9% !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(240, 189, 85, 0.58), transparent) !important;
}

html body[data-page="/precios/"] .pricing-process-step {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: auto auto auto 1fr !important;
  justify-items: center !important;
  text-align: center !important;
  min-height: 360px !important;
  padding: clamp(1.7rem, 2.4vw, 2.5rem) clamp(1.2rem, 2vw, 2rem) !important;
}

html body[data-page="/precios/"] .pricing-process-step .pricing-range-top,
html body[data-page="/precios/"] .pricing-process-step small,
html body[data-page="/precios/"] .pricing-process-step h3,
html body[data-page="/precios/"] .pricing-process-step p {
  grid-column: auto !important;
  grid-row: auto !important;
}

html body[data-page="/precios/"] .pricing-process-step .pricing-range-top {
  display: grid !important;
  justify-content: center !important;
}

html body[data-page="/precios/"] .pricing-range-mark {
  width: 72px !important;
  height: 72px !important;
}

html body[data-page="/precios/"] .pricing-process-step h3 {
  max-width: 11ch !important;
  font-size: clamp(1.9rem, 2.25vw, 2.85rem) !important;
  line-height: 0.96 !important;
}

html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.38fr) minmax(0, 0.62fr) !important;
  gap: 1rem clamp(1.8rem, 4vw, 4rem) !important;
  align-items: end !important;
}

html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading .eyebrow {
  grid-column: 1 / -1 !important;
}

html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading h2 {
  grid-column: 1 !important;
  max-width: 11ch !important;
}

html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading .lead {
  grid-column: 2 !important;
  margin: 0 !important;
}

html body[data-page="/precios/"] .pricing-service-main {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(1rem, 1.6vw, 1.5rem) !important;
}

html body[data-page="/precios/"] .pricing-service-secondary {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(0.9rem, 1.3vw, 1.25rem) !important;
  margin-top: clamp(1rem, 1.5vw, 1.4rem) !important;
}

html body[data-page="/precios/"] .pricing-service-card.is-primary,
html body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card {
  display: grid !important;
  grid-template-columns: 1fr !important;
  min-height: 0 !important;
}

html body[data-page="/precios/"] .pricing-service-card.is-primary figure {
  height: 245px !important;
  min-height: 245px !important;
  border-right: 0 !important;
  border-bottom: 1px solid rgba(240, 189, 85, 0.16) !important;
}

html body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card figure {
  display: block !important;
  height: 160px !important;
  min-height: 160px !important;
  border-right: 0 !important;
  border-bottom: 1px solid rgba(240, 189, 85, 0.16) !important;
}

html body[data-page="/precios/"] .pricing-service-body,
html body[data-page="/precios/"] .pricing-service-card.is-secondary > div {
  display: block !important;
  padding: clamp(1.1rem, 1.7vw, 1.55rem) !important;
}

html body[data-page="/precios/"] .pricing-compare-layout {
  display: grid !important;
  grid-template-columns: minmax(330px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(2rem, 4vw, 4.5rem) !important;
  align-items: center !important;
}

html body[data-page="/precios/"] .pricing-compare-table-head,
html body[data-page="/precios/"] .pricing-compare-table-row {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 0.33fr) minmax(0, 0.33fr) !important;
}

html body[data-page="/precios/"] .pricing-route-section .pricing-section-heading {
  text-align: center !important;
}

html body[data-page="/precios/"] .pricing-route-section .pricing-section-heading h2,
html body[data-page="/precios/"] .pricing-route-section .pricing-section-heading .lead {
  max-width: 920px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

html body[data-page="/precios/"] .pricing-route-grid-v2 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(1rem, 1.6vw, 1.5rem) !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  min-height: 520px !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 figure {
  height: 245px !important;
  min-height: 245px !important;
  border-right: 0 !important;
  border-bottom: 1px solid rgba(240, 189, 85, 0.16) !important;
}

html body[data-page="/precios/"] .pricing-faq-layout {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(2rem, 4vw, 4.5rem) !important;
  align-items: start !important;
}

html body[data-page="/precios/"] .pricing-faq-layout > div .pricing-section-heading {
  width: 100% !important;
  max-width: 100% !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.85rem !important;
}

@media (max-width: 979px) {
  html body[data-page="/precios/"] {
    --pricing-shell: min(100% - 24px, 760px) !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid,
  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading,
  html body[data-page="/precios/"] .pricing-compare-layout,
  html body[data-page="/precios/"] .pricing-faq-layout {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading h2,
  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading .lead {
    grid-column: 1 !important;
  }

  html body[data-page="/precios/"] .pricing-process-track,
  html body[data-page="/precios/"] .pricing-service-main,
  html body[data-page="/precios/"] .pricing-service-secondary,
  html body[data-page="/precios/"] .pricing-route-grid-v2 {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-process-track::before {
    display: none !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-head {
    display: none !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-row {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-route-card-v2 {
    min-height: 0 !important;
  }
}

@media (max-width: 680px) {
  body:not([data-page="/"]) .site-footer {
    padding-inline: 1.15rem;
  }

  body:not([data-page="/"]) .site-footer-cta h2 {
    font-size: clamp(1.8rem, 12vw, 2.65rem);
  }

  body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button {
    width: 100%;
    justify-content: center;
  }

  body:not([data-page="/"]) .site-footer-main {
    gap: 1.65rem;
  }

  body:not([data-page="/"]) .site-footer-funding {
    padding: 1rem;
  }

  body:not([data-page="/"]) .site-footer-bottom {
    flex-direction: column;
  }
}

/* V4.34: final override layer for the premium vertical family. */
body:not([data-page="/"]) .vertical-logo-rail {
  display: flex;
  flex-wrap: wrap;
  gap: 0.46rem;
  margin-top: 1rem;
}

body:not([data-page="/"]) .vertical-logo-rail span {
  display: inline-grid;
  min-height: 34px;
  place-items: center;
  padding: 0.35rem 0.72rem;
  border: 1px solid rgba(240, 206, 122, 0.24);
  border-radius: 999px;
  background:
    linear-gradient(135deg, rgba(240, 206, 122, 0.12), rgba(255, 255, 255, 0.025)),
    rgba(5, 7, 6, 0.62);
  color: #f0ce7a;
  font-size: 0.66rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

body:not([data-page="/"]) .vertical-command-panel .hero-meta {
  padding-top: 1rem;
  border-top: 1px solid rgba(240, 206, 122, 0.12);
}

body:not([data-page="/"]) .vertical-journey-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: clamp(1rem, 2vw, 1.35rem);
}

body:not([data-page="/"]) .vertical-journey-step {
  position: relative;
  min-height: 126px;
  padding: 1rem;
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.015)),
    rgba(5, 7, 6, 0.6);
}

body:not([data-page="/"]) .vertical-journey-step::after {
  content: "";
  position: absolute;
  top: 1.34rem;
  right: -0.58rem;
  width: 0.78rem;
  height: 1px;
  background: rgba(240, 206, 122, 0.36);
}

body:not([data-page="/"]) .vertical-journey-step:last-child::after {
  display: none;
}

body:not([data-page="/"]) .vertical-journey-step span,
body:not([data-page="/"]) .card-chip {
  display: inline-grid;
  min-height: 28px;
  place-items: center;
  padding: 0.2rem 0.58rem;
  border: 1px solid rgba(240, 206, 122, 0.26);
  border-radius: 999px;
  background: rgba(5, 7, 6, 0.72);
  color: #f0ce7a;
  font-size: 0.62rem;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .vertical-journey-step strong {
  display: block;
  margin-top: 0.78rem;
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.05rem, 1.2vw, 1.24rem);
  line-height: 1.05;
}

body:not([data-page="/"]) .vertical-journey-step small {
  display: block;
  margin-top: 0.5rem;
  color: rgba(245, 239, 228, 0.64);
  font-size: 0.78rem;
  line-height: 1.45;
}

body:not([data-page="/"]) .card-media .card-chip {
  position: absolute;
  z-index: 3;
  top: 0.8rem;
  left: 0.8rem;
  backdrop-filter: blur(10px);
}

body:not([data-page="/"]) .card:not(.has-media) > .card-chip {
  width: max-content;
  margin-bottom: 0.75rem;
}

body:not([data-page="/"]) .vertical-decision-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body:not([data-page="/"]) .vertical-decision-card {
  min-height: 220px;
}

body:not([data-page="/"]) .vertical-showreel-screen {
  box-shadow:
    0 36px 110px rgba(0, 0, 0, 0.38),
    0 0 0 1px rgba(240, 206, 122, 0.08);
}

body:not([data-page="/"]) .vertical-showreel-rail span {
  min-height: 64px;
}

body:not([data-page="/"]) .vertical-final-section {
  align-items: center;
  min-height: clamp(560px, 48vw, 760px);
  padding-top: clamp(4.5rem, 8vw, 7rem);
  padding-bottom: clamp(4rem, 7vw, 6.4rem);
}

body:not([data-page="/"]) .vertical-final-section::before {
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.96), rgba(5, 7, 6, 0.66) 44%, rgba(5, 7, 6, 0.38) 70%, rgba(5, 7, 6, 0.84)),
    linear-gradient(180deg, rgba(5, 7, 6, 0.18), rgba(5, 7, 6, 0.86)),
    radial-gradient(circle at 18% 82%, rgba(214, 179, 90, 0.18), transparent 28rem);
}

body:not([data-page="/"]) .vertical-final-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.5fr);
  gap: clamp(1.25rem, 4vw, 4.2rem);
  align-items: end;
  width: min(100%, 1240px);
  max-width: 1240px;
  margin-inline: auto;
}

body:not([data-page="/"]) .vertical-final-copy {
  max-width: 760px;
}

body:not([data-page="/"]) .vertical-final-copy h2,
body:not([data-page="/"]) .vertical-final-shell h2 {
  max-width: 16ch;
  font-size: clamp(3.4rem, 6.6vw, 7rem);
  line-height: 0.92;
  letter-spacing: 0;
}

body:not([data-page="/"]) .vertical-final-copy .lead {
  max-width: 56ch;
  color: rgba(245, 239, 228, 0.8);
}

body:not([data-page="/"]) .vertical-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.78rem;
  margin-top: clamp(1.25rem, 2vw, 1.85rem);
}

body:not([data-page="/"]) .vertical-final-card {
  position: relative;
  overflow: hidden;
  align-self: stretch;
  min-height: 320px;
  padding: clamp(1.25rem, 2.4vw, 2rem);
  border: 1px solid rgba(240, 206, 122, 0.22);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.018)),
    rgba(5, 7, 6, 0.78);
  box-shadow:
    0 34px 120px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .vertical-final-card::after {
  content: "";
  position: absolute;
  inset: auto 1.4rem 1.4rem auto;
  width: 74px;
  height: 74px;
  border: 1px solid rgba(240, 206, 122, 0.2);
  border-radius: 999px;
  background:
    linear-gradient(90deg, transparent calc(50% - 1px), rgba(240, 206, 122, 0.36) 50%, transparent calc(50% + 1px)),
    linear-gradient(0deg, transparent calc(50% - 1px), rgba(240, 206, 122, 0.36) 50%, transparent calc(50% + 1px)),
    rgba(240, 206, 122, 0.04);
}

body:not([data-page="/"]) .vertical-final-card span {
  color: #f0ce7a;
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .vertical-final-card h3 {
  max-width: 14ch;
  margin: 1rem 0 0;
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.9rem, 3vw, 3rem);
  line-height: 0.96;
}

body:not([data-page="/"]) .vertical-final-card p {
  max-width: 34ch;
  margin: 1rem 0 0;
  color: rgba(245, 239, 228, 0.7);
  font-size: clamp(0.98rem, 1vw, 1.08rem);
  line-height: 1.58;
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .vertical-final-shell {
    grid-template-columns: 1fr;
    align-items: start;
  }

  body:not([data-page="/"]) .vertical-final-card {
    min-height: 260px;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .vertical-journey-strip,
  body:not([data-page="/"]) .vertical-decision-actions {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .vertical-journey-step::after {
    display: none;
  }

  body:not([data-page="/"]) .vertical-final-copy h2,
  body:not([data-page="/"]) .vertical-final-shell h2 {
    font-size: clamp(2.35rem, 11vw, 3.35rem);
  }

  body:not([data-page="/"]) .vertical-final-actions .button {
    width: 100%;
    justify-content: center;
  }

  body:not([data-page="/"]) .vertical-final-card {
    min-height: 0;
  }
}

/* Final lock: amber premium button finish, closer to the approved reference. */
body:not([data-page="/"]) .button-primary,
body:not([data-page="/"]) .button-nav,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary {
  border: 1px solid rgba(247, 190, 86, 0.62);
  border-radius: 999px;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%);
  color: #0c0d0c !important;
  box-shadow:
    0 7px 16px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 241, 196, 0.42);
  filter: none;
}

body:not([data-page="/"]) .button-primary:hover,
body:not([data-page="/"]) .button-primary:focus-visible,
body:not([data-page="/"]) .button-nav:hover,
body:not([data-page="/"]) .button-nav:focus-visible,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary:hover,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary:focus-visible {
  border-color: rgba(255, 205, 106, 0.74);
  background: linear-gradient(180deg, #ffd078 0%, #f5bd58 100%);
  box-shadow:
    0 9px 20px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 245, 208, 0.48);
  filter: none;
}

body:not([data-page="/"]) .button-primary::after,
body:not([data-page="/"]) .button-nav::after {
  color: #0c0d0c;
}


/* Final lock: amber premium button finish, closer to the approved reference. */
body:not([data-page="/"]) .button-primary,
body:not([data-page="/"]) .button-nav,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary {
  border: 1px solid rgba(247, 190, 86, 0.62);
  border-radius: 999px;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%);
  color: #0c0d0c !important;
  box-shadow:
    0 7px 16px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 241, 196, 0.42);
  filter: none;
}

body:not([data-page="/"]) .button-primary:hover,
body:not([data-page="/"]) .button-primary:focus-visible,
body:not([data-page="/"]) .button-nav:hover,
body:not([data-page="/"]) .button-nav:focus-visible,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary:hover,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary:focus-visible {
  border-color: rgba(255, 205, 106, 0.74);
  background: linear-gradient(180deg, #ffd078 0%, #f5bd58 100%);
  box-shadow:
    0 9px 20px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 245, 208, 0.48);
  filter: none;
}

body:not([data-page="/"]) .button-primary::after,
body:not([data-page="/"]) .button-nav::after {
  color: #0c0d0c;
}

/* Final lock: amber premium button finish, closer to the approved reference. */
body:not([data-page="/"]) .button-primary,
body:not([data-page="/"]) .button-nav,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary {
  border: 1px solid rgba(247, 190, 86, 0.62);
  border-radius: 999px;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%);
  color: #0c0d0c !important;
  box-shadow:
    0 7px 16px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 241, 196, 0.42);
  filter: none;
}

body:not([data-page="/"]) .button-primary:hover,
body:not([data-page="/"]) .button-primary:focus-visible,
body:not([data-page="/"]) .button-nav:hover,
body:not([data-page="/"]) .button-nav:focus-visible,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary:hover,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary:focus-visible {
  border-color: rgba(255, 205, 106, 0.74);
  background: linear-gradient(180deg, #ffd078 0%, #f5bd58 100%);
  box-shadow:
    0 9px 20px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 245, 208, 0.48);
  filter: none;
}

body:not([data-page="/"]) .button-primary::after,
body:not([data-page="/"]) .button-nav::after {
  color: #0c0d0c;
}

/* V4.33: premium 3.0 family system for vertical pages. */
body:not([data-page="/"]) .vertical-logo-rail {
  display: flex;
  flex-wrap: wrap;
  gap: 0.46rem;
  margin-top: 1rem;
}

body:not([data-page="/"]) .vertical-logo-rail span {
  display: inline-grid;
  min-height: 34px;
  place-items: center;
  padding: 0.35rem 0.72rem;
  border: 1px solid rgba(240, 206, 122, 0.24);
  border-radius: 999px;
  background:
    linear-gradient(135deg, rgba(240, 206, 122, 0.12), rgba(255, 255, 255, 0.025)),
    rgba(5, 7, 6, 0.62);
  color: #f0ce7a;
  font-size: 0.66rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

body:not([data-page="/"]) .vertical-command-panel .hero-meta {
  padding-top: 1rem;
  border-top: 1px solid rgba(240, 206, 122, 0.12);
}

body:not([data-page="/"]) .vertical-journey-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: clamp(1rem, 2vw, 1.35rem);
}

body:not([data-page="/"]) .vertical-journey-step {
  position: relative;
  min-height: 126px;
  padding: 1rem;
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.015)),
    rgba(5, 7, 6, 0.6);
}

body:not([data-page="/"]) .vertical-journey-step::after {
  content: "";
  position: absolute;
  top: 1.34rem;
  right: -0.58rem;
  width: 0.78rem;
  height: 1px;
  background: rgba(240, 206, 122, 0.36);
}

body:not([data-page="/"]) .vertical-journey-step:last-child::after {
  display: none;
}

body:not([data-page="/"]) .vertical-journey-step span,
body:not([data-page="/"]) .card-chip {
  display: inline-grid;
  min-height: 28px;
  place-items: center;
  padding: 0.2rem 0.58rem;
  border: 1px solid rgba(240, 206, 122, 0.26);
  border-radius: 999px;
  background: rgba(5, 7, 6, 0.72);
  color: #f0ce7a;
  font-size: 0.62rem;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .vertical-journey-step strong {
  display: block;
  margin-top: 0.78rem;
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.05rem, 1.2vw, 1.24rem);
  line-height: 1.05;
}

body:not([data-page="/"]) .vertical-journey-step small {
  display: block;
  margin-top: 0.5rem;
  color: rgba(245, 239, 228, 0.64);
  font-size: 0.78rem;
  line-height: 1.45;
}

body:not([data-page="/"]) .card-media .card-chip {
  position: absolute;
  z-index: 3;
  top: 0.8rem;
  left: 0.8rem;
  backdrop-filter: blur(10px);
}

body:not([data-page="/"]) .card:not(.has-media) > .card-chip {
  width: max-content;
  margin-bottom: 0.75rem;
}

body:not([data-page="/"]) .vertical-showreel-screen {
  box-shadow:
    0 36px 110px rgba(0, 0, 0, 0.38),
    0 0 0 1px rgba(240, 206, 122, 0.08);
}

body:not([data-page="/"]) .vertical-showreel-rail span {
  min-height: 64px;
}

body:not([data-page="/"]) .vertical-decision-board {
  align-items: center;
}

body:not([data-page="/"]) .vertical-decision-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body:not([data-page="/"]) .vertical-decision-card {
  min-height: 220px;
}

body:not([data-page="/"]) .vertical-final-section {
  align-items: center;
  min-height: clamp(560px, 48vw, 760px);
  padding-top: clamp(4.5rem, 8vw, 7rem);
  padding-bottom: clamp(4rem, 7vw, 6.4rem);
}

body:not([data-page="/"]) .vertical-final-section::before {
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.96), rgba(5, 7, 6, 0.66) 44%, rgba(5, 7, 6, 0.38) 70%, rgba(5, 7, 6, 0.84)),
    linear-gradient(180deg, rgba(5, 7, 6, 0.18), rgba(5, 7, 6, 0.86)),
    radial-gradient(circle at 18% 82%, rgba(214, 179, 90, 0.18), transparent 28rem);
}

body:not([data-page="/"]) .vertical-final-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.5fr);
  gap: clamp(1.25rem, 4vw, 4.2rem);
  align-items: end;
  width: min(100%, 1240px);
  max-width: 1240px;
  margin-inline: auto;
}

body:not([data-page="/"]) .vertical-final-copy {
  max-width: 760px;
}

body:not([data-page="/"]) .vertical-final-copy h2,
body:not([data-page="/"]) .vertical-final-shell h2 {
  max-width: 16ch;
  font-size: clamp(3.4rem, 6.6vw, 7rem);
  line-height: 0.92;
  letter-spacing: 0;
}

body:not([data-page="/"]) .vertical-final-copy .lead {
  max-width: 56ch;
  color: rgba(245, 239, 228, 0.8);
}

body:not([data-page="/"]) .vertical-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.78rem;
  margin-top: clamp(1.25rem, 2vw, 1.85rem);
}

body:not([data-page="/"]) .vertical-final-card {
  position: relative;
  overflow: hidden;
  align-self: stretch;
  min-height: 320px;
  padding: clamp(1.25rem, 2.4vw, 2rem);
  border: 1px solid rgba(240, 206, 122, 0.22);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.018)),
    rgba(5, 7, 6, 0.78);
  box-shadow:
    0 34px 120px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .vertical-final-card::after {
  content: "";
  position: absolute;
  inset: auto 1.4rem 1.4rem auto;
  width: 74px;
  height: 74px;
  border: 1px solid rgba(240, 206, 122, 0.2);
  border-radius: 999px;
  background:
    linear-gradient(90deg, transparent calc(50% - 1px), rgba(240, 206, 122, 0.36) 50%, transparent calc(50% + 1px)),
    linear-gradient(0deg, transparent calc(50% - 1px), rgba(240, 206, 122, 0.36) 50%, transparent calc(50% + 1px)),
    rgba(240, 206, 122, 0.04);
}

body:not([data-page="/"]) .vertical-final-card span {
  color: #f0ce7a;
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .vertical-final-card h3 {
  max-width: 14ch;
  margin: 1rem 0 0;
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.9rem, 3vw, 3rem);
  line-height: 0.96;
}

body:not([data-page="/"]) .vertical-final-card p {
  max-width: 34ch;
  margin: 1rem 0 0;
  color: rgba(245, 239, 228, 0.7);
  font-size: clamp(0.98rem, 1vw, 1.08rem);
  line-height: 1.58;
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .vertical-final-shell {
    grid-template-columns: 1fr;
    align-items: start;
  }

  body:not([data-page="/"]) .vertical-final-card {
    min-height: 260px;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .vertical-journey-strip,
  body:not([data-page="/"]) .vertical-decision-actions {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .vertical-journey-step::after {
    display: none;
  }

  body:not([data-page="/"]) .vertical-final-copy h2,
  body:not([data-page="/"]) .vertical-final-shell h2 {
    font-size: clamp(2.35rem, 11vw, 3.35rem);
  }

  body:not([data-page="/"]) .vertical-final-actions .button {
    width: 100%;
    justify-content: center;
  }

  body:not([data-page="/"]) .vertical-final-card {
    min-height: 0;
  }
}

/* Final lock: amber premium button finish, closer to the approved reference. */
body:not([data-page="/"]) .button-primary,
body:not([data-page="/"]) .button-nav,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary {
  border: 1px solid rgba(247, 190, 86, 0.62);
  border-radius: 999px;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%);
  color: #0c0d0c !important;
  box-shadow:
    0 7px 16px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 241, 196, 0.42);
  filter: none;
}

body:not([data-page="/"]) .button-primary:hover,
body:not([data-page="/"]) .button-primary:focus-visible,
body:not([data-page="/"]) .button-nav:hover,
body:not([data-page="/"]) .button-nav:focus-visible,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary:hover,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary:focus-visible {
  border-color: rgba(255, 205, 106, 0.74);
  background: linear-gradient(180deg, #ffd078 0%, #f5bd58 100%);
  box-shadow:
    0 9px 20px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 245, 208, 0.48);
  filter: none;
}

body:not([data-page="/"]) .button-primary::after,
body:not([data-page="/"]) .button-nav::after {
  color: #0c0d0c;
}


* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  background:
    radial-gradient(circle at 12% 0%, rgba(200, 161, 90, 0.12), transparent 24rem),
    radial-gradient(circle at 100% 14%, rgba(39, 53, 61, 0.08), transparent 28rem),
    linear-gradient(180deg, #fcfaf6 0%, #f7f3eb 46%, #f4efe6 100%);
  color: var(--text);
  text-rendering: optimizeLegibility;
}

a {
  color: inherit;
  text-decoration: none;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible {
  outline: 2px solid rgba(145, 119, 91, 0.55);
  outline-offset: 3px;
}

.skip-link {
  position: fixed;
  left: 1rem;
  top: 1rem;
  z-index: 1000;
  transform: translateY(-150%);
  border: 1px solid rgba(200, 161, 90, 0.45);
  border-radius: 999px;
  background: #0b0d0c;
  color: #f7f0df;
  padding: 0.75rem 1rem;
  font-size: 0.85rem;
  font-weight: 800;
  transition: transform 180ms ease;
}

.skip-link:focus {
  transform: translateY(0);
}

img {
  display: block;
  max-width: 100%;
}

button,
input,
textarea,
select {
  font: inherit;
}

.site-header,
.page-shell,
.site-footer {
  width: var(--container);
  margin: 0 auto;
}

.site-header {
  position: sticky;
  top: 0.8rem;
  z-index: 30;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.95rem 1.2rem;
  border-radius: 24px;
  backdrop-filter: blur(24px);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(248, 243, 234, 0.72)),
    radial-gradient(circle at top left, rgba(230, 209, 162, 0.34), transparent 34%);
  border: 1px solid rgba(255, 255, 255, 0.92);
  box-shadow:
    0 24px 70px rgba(20, 20, 20, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.brand {
  --brand-logo-size: clamp(1.7rem, 2.15vw, 2.62rem);
  --brand-logo-weight: 700;
  --brand-logo-tracking: -0.018em;
  position: relative;
  display: inline-grid;
  align-items: center;
  gap: 0;
  color: var(--text-dark);
  transform-origin: center;
  transition: transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

.brand::before {
  font-family: "Inter", sans-serif;
  font-size: var(--brand-logo-size);
  font-weight: var(--brand-logo-weight);
  line-height: 0.98;
  letter-spacing: var(--brand-logo-tracking);
  white-space: nowrap;
  pointer-events: none;
}

.brand::before {
  content: attr(data-logo);
  position: absolute;
  inset: 0;
  opacity: 0;
  color: transparent;
  background: linear-gradient(96deg, #a9863f, var(--accent) 48%, #d6b66c 66%, #b9954c);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  clip-path: inset(0 100% 0 0);
  transition:
    opacity 120ms ease,
    clip-path 0ms linear 120ms;
}

.brand:hover,
.brand:focus-visible {
  transform: translateY(-0.5px) scale(1.006);
}

.brand:hover::before,
.brand:focus-visible::before {
  opacity: 1;
  clip-path: inset(0 0 0 0);
  transition:
    clip-path 820ms cubic-bezier(0.16, 1, 0.3, 1),
    opacity 220ms ease;
}

.brand-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: auto;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--text-dark);
  font-family: "Inter", sans-serif;
  font-size: var(--brand-logo-size);
  font-weight: var(--brand-logo-weight);
  line-height: 0.98;
  letter-spacing: var(--brand-logo-tracking);
  transition: color 120ms ease;
}

.brand:hover .brand-mark,
.brand:focus-visible .brand-mark {
  color: transparent;
  transition: color 260ms ease 360ms;
}

.brand-wordmark {
  display: none;
  font-family: "Abel", sans-serif;
  font-size: 2.1rem;
  letter-spacing: 0.08em;
  color: var(--text-dark);
}

.site-nav {
  display: flex;
  align-items: center;
  gap: 1.05rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  box-shadow: none;
}

.site-nav a {
  font-size: 0.92rem;
  font-weight: 600;
  color: var(--text-soft-dark);
  letter-spacing: 0.01em;
}

.site-nav a:hover,
.site-nav a.is-active {
  color: var(--text-dark);
}

.nav-toggle {
  display: none;
  width: 48px;
  height: 48px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.9);
  color: var(--text-dark);
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 54px;
  padding: 0.95rem 1.5rem;
  border-radius: 999px;
  border: 1px solid transparent;
  font-family: "Inter", sans-serif;
  font-size: 0.95rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease, border-color 180ms ease, color 180ms ease, filter 180ms ease;
}

.button:hover {
  transform: translateY(-3px);
  filter: saturate(1.04);
}

.button-secondary:hover,
.button-ghost:hover {
  box-shadow: 0 18px 44px rgba(8, 13, 20, 0.08);
  border-color: rgba(184, 155, 94, 0.28);
}

.button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.button-primary {
  background:
    linear-gradient(135deg, #111315, #232931),
    linear-gradient(135deg, rgba(184, 155, 94, 0.12), transparent 60%);
  color: #f7f8fa;
  box-shadow: 0 18px 42px rgba(10, 13, 19, 0.18);
}

.button-secondary {
  border-color: rgba(17, 19, 21, 0.1);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(245, 247, 245, 0.9)),
    radial-gradient(circle at top left, rgba(221, 230, 234, 0.55), transparent 36%);
  color: var(--text-dark);
}

.button-ghost {
  border-color: rgba(14, 16, 18, 0.12);
  background: rgba(255, 255, 255, 0.24);
  color: var(--text-dark);
}

.button-nav {
  padding-inline: 1rem;
  background: linear-gradient(135deg, rgba(184, 155, 94, 0.9), rgba(216, 197, 157, 0.96));
  color: #101114 !important;
  box-shadow: 0 16px 36px rgba(184, 155, 94, 0.18);
}

.page-shell {
  padding: 1.4rem 0 4.5rem;
}

.site-notice {
  margin-bottom: 1rem;
  padding: 0.9rem 1rem;
  border: 1px solid rgba(219, 155, 73, 0.22);
  background: rgba(219, 155, 73, 0.12);
  border-radius: var(--radius-sm);
  color: var(--accent-soft);
}

.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
  margin: 0.35rem 0 1.2rem;
  color: var(--text-soft-dark);
  font-size: 0.9rem;
}

.crumb-sep {
  opacity: 0.5;
}

.hero,
.content-section,
.content-band {
  position: relative;
  overflow: hidden;
}

.hero {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 2.4rem;
  padding: 3rem;
  border-radius: var(--radius-xl);
  border: 1px solid rgba(255, 255, 255, 0.86);
  box-shadow: var(--shadow-strong);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(241, 244, 248, 0.96)),
    radial-gradient(circle at top right, rgba(145, 119, 91, 0.14), transparent 28%),
    radial-gradient(circle at bottom left, rgba(24, 52, 59, 0.08), transparent 26%);
}

.hero-home {
  background:
    radial-gradient(circle at 82% 14%, rgba(184, 155, 94, 0.2), transparent 20%),
    radial-gradient(circle at 8% 0%, rgba(28, 49, 56, 0.1), transparent 30%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(239, 243, 241, 0.98));
}

.hero-page {
  min-height: 620px;
}

.hero-page .hero-copy {
  max-width: 52rem;
}

.hero-immersive::before,
.section-frame::before {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.24), transparent 36%),
    linear-gradient(90deg, rgba(24, 52, 59, 0.04), transparent 24%, transparent 76%, rgba(145, 119, 91, 0.05));
  pointer-events: none;
}

.hero-home .hero-copy,
.hero-home .hero-copy h1,
.hero-home .hero-copy .lead,
.hero-home .hero-copy .hero-note {
  color: var(--text-dark);
}

.hero-copy {
  align-self: center;
}

.hero::after,
.content-section::after,
.content-band::after {
  content: "";
  position: absolute;
  inset: auto -60px -60px auto;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(219, 155, 73, 0.12), transparent 70%);
  pointer-events: none;
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0 0 1rem;
  color: var(--accent-soft);
  font-family: "Abel", sans-serif;
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.eyebrow::before {
  content: "";
  width: 32px;
  height: 1px;
  background: currentColor;
  opacity: 0.8;
}

h1,
h2,
h3,
h4 {
  margin: 0;
}

.hero h1,
.section-heading h2,
.split-copy h2,
.media-card-body h3,
.card h3,
.hero-tool-panel h3,
.services-story-overlay h3,
.process-cinematic-overlay strong,
.site-footer .footer-brand .brand-wordmark {
  font-family: "Playfair Display", Georgia, serif;
  line-height: 0.98;
  letter-spacing: -0.045em;
  text-wrap: balance;
}

.hero h1 {
  font-size: clamp(3.2rem, 7vw, 5.9rem);
}

.hero-page h1 {
  max-width: 10.8ch;
  font-size: clamp(3.05rem, 5.8vw, 5.7rem);
  line-height: 0.98;
}

.section-heading h2,
.split-copy h2 {
  font-size: clamp(2.2rem, 4vw, 4.1rem);
}

.lead,
p {
  line-height: 1.72;
}

.lead {
  margin-top: 1rem;
  max-width: 62ch;
  font-size: 1.11rem;
}

.hero-note {
  margin-top: 1.5rem;
  color: var(--text-muted);
  font-size: 0.98rem;
}

.cta-row,
.button-group {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  margin-top: 1.8rem;
}

.meta-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-top: 1.25rem;
}

.meta-strip span {
  display: inline-flex;
  align-items: center;
  padding: 0.58rem 0.88rem;
  border-radius: 999px;
  border: 1px solid rgba(17, 19, 23, 0.07);
  background: rgba(255, 255, 255, 0.72);
  color: var(--text-dark);
  font-size: 0.84rem;
  font-weight: 700;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.hero-metric-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.85rem;
  margin-top: 1.5rem;
}

.hero-metric-row article {
  display: grid;
  gap: 0.35rem;
  padding: 1rem 1rem 1.05rem;
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(243, 246, 244, 0.9)),
    radial-gradient(circle at top left, rgba(221, 230, 234, 0.45), transparent 40%);
  border: 1px solid rgba(255, 255, 255, 0.84);
  box-shadow: var(--shadow-soft);
}

.hero-metric-row strong {
  font-size: 0.84rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent-strong);
}

.hero-metric-row span {
  color: var(--text-soft-dark);
  line-height: 1.55;
  font-size: 0.9rem;
}

.hero-panel {
  display: grid;
  gap: 1rem;
}

.hero-panel-layered {
  align-content: start;
  gap: 1.2rem;
}

.hero-media-card {
  overflow: hidden;
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(17, 19, 23, 0.08);
  box-shadow: var(--shadow);
}

.visual-frame {
  position: relative;
  overflow: hidden;
  border-radius: 34px;
  border: 1px solid rgba(255, 255, 255, 0.84);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(237, 241, 246, 0.9));
  box-shadow: var(--shadow);
}

.visual-frame::after {
  content: "";
  position: absolute;
  inset: auto -8% -25% 38%;
  height: 55%;
  background: radial-gradient(circle, rgba(145, 119, 91, 0.14), transparent 64%);
  pointer-events: none;
}

.visual-frame img {
  width: 100%;
  min-height: 320px;
  object-fit: cover;
}

.visual-frame figcaption {
  display: grid;
  gap: 0.3rem;
  padding: 1rem 1.2rem 1.2rem;
}

.visual-frame figcaption strong {
  color: var(--text-dark);
}

.visual-frame figcaption span {
  color: var(--text-soft-dark);
  line-height: 1.6;
}

.visual-frame-tall img {
  min-height: 460px;
}

.hero-media-card img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.hero-media-card figcaption {
  display: grid;
  gap: 0.35rem;
  padding: 1rem 1.1rem 1.15rem;
}

.hero-media-card strong {
  color: var(--text-dark);
  font-size: 1rem;
}

.hero-media-card span {
  color: var(--text-soft-dark);
  line-height: 1.6;
}

.hero-collage {
  position: relative;
  display: grid;
  gap: 1rem;
  align-content: start;
}

.hero-interface-card {
  display: grid;
  gap: 1rem;
  max-width: 460px;
  margin-left: auto;
  padding: 1.5rem;
  border-radius: 32px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(238, 242, 240, 0.9)),
    linear-gradient(135deg, rgba(28, 49, 56, 0.05), transparent 65%);
  border: 1px solid rgba(255, 255, 255, 0.88);
  box-shadow: 0 28px 72px rgba(8, 13, 20, 0.1);
  transition: transform 240ms ease, box-shadow 240ms ease, border-color 240ms ease;
}

.hero-interface-card h3 {
  font-size: clamp(1.35rem, 2.4vw, 2rem);
  line-height: 1.14;
}

.hero-interface-card p:last-of-type {
  color: var(--text-soft-dark);
  line-height: 1.68;
}

.hero-dashboard {
  display: grid;
  gap: 0.95rem;
  padding: 1.15rem;
  border-radius: 28px;
  background: linear-gradient(160deg, rgba(18, 22, 28, 0.96), rgba(34, 39, 46, 0.97));
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 34px 90px rgba(8, 12, 18, 0.22);
  color: #f5f6f7;
  transition: transform 240ms ease, box-shadow 240ms ease;
}

.hero-dashboard-top {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

.dashboard-chip {
  display: inline-flex;
  align-items: center;
  min-height: 2rem;
  padding: 0.45rem 0.78rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: rgba(245, 246, 247, 0.94);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.hero-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
}

.hero-dashboard-grid article {
  display: grid;
  gap: 0.35rem;
  padding: 0.95rem;
  border-radius: 20px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.03)),
    radial-gradient(circle at top left, rgba(184, 155, 94, 0.14), transparent 42%);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.hero-dashboard-grid strong {
  font-size: 0.8rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
}

.hero-dashboard-grid span {
  color: rgba(245, 246, 247, 0.92);
  line-height: 1.58;
  font-size: 0.88rem;
}

.hero-stat-grid .stat-pill {
  background: rgba(255, 255, 255, 0.6);
}

.hero-collage-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 1rem;
}

.hero-collage-main,
.hero-collage-stack article {
  overflow: hidden;
  border-radius: 32px;
  background: var(--panel);
  border: 1px solid rgba(255, 255, 255, 0.9);
  box-shadow: var(--shadow);
}

.hero-collage-main {
  min-height: 430px;
}

.hero-collage-stack {
  display: grid;
  gap: 1rem;
}

.hero-collage-stack article {
  min-height: 205px;
}

.hero-collage img,
.split-image img,
.trust-logos img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-collage-main,
.hero-collage-stack article,
.trust-logos,
.split-image,
.process-visual-grid article,
.tool-preview-media-grid article,
.gallery-card {
  position: relative;
}

.hero-collage-main::after,
.hero-collage-stack article::after,
.split-image::after,
.tool-preview-media-grid article::after,
.gallery-card::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 40%;
  background: linear-gradient(180deg, transparent, rgba(17, 19, 21, 0.12));
  pointer-events: none;
}

.floating-card {
  max-width: 320px;
  margin-left: auto;
  padding: 1.15rem 1.2rem;
  border-radius: var(--radius-md);
  background: linear-gradient(155deg, rgba(17, 19, 21, 0.96), rgba(36, 40, 46, 0.97));
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #f5f6f7;
  box-shadow: 0 20px 52px rgba(17, 18, 20, 0.18);
  transition: transform 240ms ease, box-shadow 240ms ease;
}

.home-trust-frame,
.home-cases-frame,
.services-editorial,
.method-frame,
.home-tool-frame,
.home-differentials-frame {
  margin-top: 1.8rem;
}

.home-trust-strip,
.home-differentials-strip {
  align-items: stretch;
}

.premium-trust-media {
  min-height: 360px;
  border-radius: 34px;
  border: 1px solid rgba(255, 255, 255, 0.82);
  box-shadow: var(--shadow);
}

.trust-metric-grid {
  margin-top: 1.25rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.media-card-grid {
  display: grid;
  gap: 1rem;
}

.media-card-grid-sectors {
  grid-template-columns: 1.2fr 1fr 1fr;
}

.media-card-grid-featured {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 1rem;
}

.media-card-grid-compact {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 1rem;
}

.media-card {
  display: grid;
  overflow: hidden;
  grid-template-rows: minmax(220px, 280px) auto;
  min-height: 0;
  border-radius: 34px;
  border: 1px solid rgba(255, 255, 255, 0.94);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(242, 245, 243, 0.98)),
    radial-gradient(circle at top left, rgba(221, 230, 234, 0.42), transparent 42%);
  box-shadow: var(--shadow);
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.media-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 28px 72px rgba(8, 13, 20, 0.1);
  border-color: rgba(184, 155, 94, 0.2);
}

.media-card.is-featured {
  grid-template-rows: minmax(280px, 360px) auto;
}

.media-card.is-wide {
  grid-template-rows: minmax(250px, 320px) auto;
}

.media-card-image {
  position: relative;
  overflow: hidden;
  min-height: 100%;
}

.media-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 260ms ease;
}

.media-card:hover .media-card-image img {
  transform: scale(1.025);
}

.media-card-body {
  display: grid;
  gap: 0.8rem;
  padding: 1.32rem 1.35rem 1.4rem;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 247, 244, 0.98)),
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.08), transparent 34%);
  color: var(--text-dark);
}

.media-card-body h3 {
  font-size: clamp(1.3rem, 2vw, 1.9rem);
  line-height: 1.14;
}

.media-card-body p {
  margin: 0;
  color: var(--text-soft-dark);
  line-height: 1.68;
}

.media-card-body .card-kicker {
  color: #8f6334;
}

.media-card-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: auto;
  font-weight: 700;
  color: var(--teal);
}

.process-grid {
  display: grid;
  gap: 0.9rem;
  margin-top: 1.2rem;
}

.process-step {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 1rem;
  align-items: start;
  padding: 1rem 1.1rem;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(15, 20, 28, 0.06);
}

.process-step p {
  margin: 0;
  color: var(--text-soft-dark);
}

.process-step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(24, 52, 59, 0.9), rgba(40, 55, 69, 0.96));
  color: #f7f8fa;
  font-family: "Abel", sans-serif;
  font-size: 1.35rem;
  letter-spacing: 0.08em;
}

.floating-card strong {
  display: block;
  margin-bottom: 0.4rem;
}

.stacked-stat,
.tool-card,
.checklist > div {
  padding: 1.2rem 1.2rem;
  border-radius: var(--radius-md);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(244, 239, 232, 0.86));
  border: 1px solid rgba(255, 255, 255, 0.82);
  color: var(--text-dark);
}

.stacked-stat strong,
.checklist strong {
  display: block;
  margin-bottom: 0.35rem;
}

.stacked-stat span,
.checklist span,
.card p,
.tool-card p,
.faq-list p,
.site-footer p {
  color: var(--text-soft-dark);
}

.badge-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 0.4rem 0.7rem;
  background: rgba(190, 154, 98, 0.12);
  color: #87673d;
  font-size: 0.8rem;
  font-weight: 700;
}

.content-section,
.content-band {
  margin-top: 1.75rem;
  padding: 2rem;
  border-radius: var(--radius-xl);
  box-shadow: 0 22px 58px rgba(17, 18, 20, 0.06);
}

.content-section,
.content-band.section-light {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(244, 247, 244, 0.9)),
    radial-gradient(circle at top left, rgba(221, 230, 234, 0.22), transparent 44%);
  border: 1px solid rgba(255, 255, 255, 0.88);
  color: var(--text-dark);
}

.content-band.section-dark {
  background:
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.18), transparent 28%),
    linear-gradient(180deg, rgba(17, 19, 21, 0.98), rgba(25, 29, 33, 0.99));
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #f5f6f7;
  box-shadow: 0 30px 90px rgba(8, 13, 20, 0.18);
}

.content-band.section-dark .lead,
.content-band.section-dark p,
.content-band.section-dark .section-heading h2,
.content-band.section-dark .card h3,
.content-band.section-dark .card p,
.content-band.section-dark .split-copy h2,
.content-band.section-dark .split-copy .lead,
.content-band.section-dark .trust-strip p {
  color: inherit;
}

.content-band.section-dark .card,
.content-band.section-dark .tool-card,
.content-band.section-dark .checklist > div {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(244, 246, 244, 0.98)),
    radial-gradient(circle at top left, rgba(221, 230, 234, 0.22), transparent 44%);
  border: 1px solid rgba(17, 19, 23, 0.06);
  color: var(--text-dark);
  box-shadow: 0 20px 54px rgba(0, 0, 0, 0.12);
}

.content-band.section-dark .card p,
.content-band.section-dark .tool-card p,
.content-band.section-dark .checklist span {
  color: var(--text-soft-dark);
}

.section-heading {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  margin-bottom: 1.45rem;
}

.centered-heading {
  text-align: center;
  align-items: center;
}

.card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.card {
  display: flex;
  flex-direction: column;
  gap: 0.82rem;
  min-height: 100%;
  padding: 1.5rem;
  border-radius: 30px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(240, 243, 247, 0.92)),
    radial-gradient(circle at top right, rgba(145, 119, 91, 0.08), transparent 32%);
  border: 1px solid rgba(255, 255, 255, 0.82);
  color: var(--text-dark);
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease;
  position: relative;
  overflow: hidden;
}

.services-editorial .card-grid,
.home-differentials-frame .card-grid,
.faq-band .card-grid {
  margin-top: 1rem;
}

.home-tool-frame .split-copy .feature-list li {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.08);
  color: rgba(247, 245, 241, 0.88);
}

.home-tool-frame .split-copy .feature-list li::before {
  box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.08);
}

.home-tool-frame .feature-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}

.home-tool-frame .feature-list li {
  background: rgba(255, 255, 255, 0.78);
  border-color: rgba(15, 20, 28, 0.08);
  color: var(--text-dark);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.52);
}

.home-tool-frame .feature-list li::before {
  box-shadow: 0 0 0 4px rgba(24, 52, 59, 0.06);
}

.home-tool-frame .lead,
.home-tool-frame p {
  color: var(--text-soft-dark);
}

.home-tool-frame .button {
  justify-self: start;
}

.card:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 58px rgba(9, 12, 18, 0.09);
  border-color: rgba(24, 52, 59, 0.16);
}

.card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.92), transparent);
}

.compact-card {
  min-height: auto;
}

.card-kicker {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.72rem;
  color: #8f6334;
  font-weight: 800;
}

.card h3 {
  font-size: 1.16rem;
  line-height: 1.3;
}

.card p {
  margin: 0;
  font-size: 0.98rem;
  line-height: 1.68;
}

.card-link {
  margin-top: auto;
  font-weight: 700;
  color: var(--teal);
}

.split-section,
.split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  align-items: center;
}

.split.reverse,
.split-showcase.reverse {
  direction: rtl;
}

.split.reverse > *,
.split-showcase.reverse > * {
  direction: ltr;
}

.split-image {
  min-height: 420px;
  overflow: hidden;
  border-radius: 32px;
  border: 1px solid rgba(255, 255, 255, 0.84);
  box-shadow: var(--shadow);
}

.split-copy .lead {
  color: inherit;
}

.band-shell,
.dual-column {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
  gap: 1.4rem;
  align-items: end;
  margin-bottom: 1.4rem;
}

.services-ribbon {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin: 0 0 1.2rem;
}

.services-ribbon span {
  display: inline-flex;
  align-items: center;
  min-height: 2.1rem;
  padding: 0.52rem 0.92rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(17, 19, 21, 0.06);
  box-shadow: var(--shadow-soft);
  color: var(--text-dark);
  font-size: 0.82rem;
  font-weight: 700;
}

.band-aside,
.dual-panel,
.cta-card {
  padding: 1.3rem 1.3rem;
  border-radius: var(--radius-md);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.93), rgba(241, 244, 243, 0.95)),
    radial-gradient(circle at top left, rgba(221, 230, 234, 0.32), transparent 44%);
  border: 1px solid rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 48px rgba(8, 13, 20, 0.07);
}

.band-aside strong,
.dual-panel strong {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--text-dark);
}

.band-aside span,
.dual-panel span {
  color: var(--text-soft-dark);
  line-height: 1.6;
}

.dual-panel p:last-child {
  margin-bottom: 0;
}

.tool-showcase-copy {
  display: grid;
  align-content: center;
  gap: 0.95rem;
  min-height: 100%;
  padding: 0.2rem 0;
}

.tool-showcase-copy .button-row {
  margin-top: 0.25rem;
}

.tool-showcase-visual {
  display: grid;
  gap: 1rem;
  align-content: center;
}

.tool-preview-card {
  padding: 1.25rem 1.25rem 1.35rem;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(243, 246, 244, 0.98)),
    radial-gradient(circle at top right, rgba(28, 49, 56, 0.09), transparent 34%);
  border: 1px solid rgba(255, 255, 255, 0.94);
  box-shadow: 0 22px 60px rgba(8, 13, 20, 0.1);
}

.tool-preview-card h3,
.tool-preview-card p {
  margin: 0;
}

.tool-preview-card-main {
  display: grid;
  gap: 0.95rem;
}

.tool-preview-card-main p:last-child {
  color: var(--text-soft-dark);
  line-height: 1.68;
}

.tool-preview-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

.tool-preview-list span {
  display: inline-flex;
  align-items: center;
  min-height: 2rem;
  padding: 0.45rem 0.8rem;
  border-radius: 999px;
  background: rgba(24, 52, 59, 0.07);
  border: 1px solid rgba(24, 52, 59, 0.08);
  color: var(--text-dark);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.tool-preview-media-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
}

.tool-preview-dashboard {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
}

.tool-preview-dashboard article {
  display: grid;
  gap: 0.35rem;
  min-height: 132px;
  padding: 1rem;
  border-radius: 24px;
  background:
    linear-gradient(160deg, rgba(18, 22, 28, 0.96), rgba(33, 38, 44, 0.97)),
    radial-gradient(circle at top left, rgba(184, 155, 94, 0.18), transparent 44%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 22px 52px rgba(8, 13, 20, 0.16);
}

.tool-preview-dashboard strong {
  font-size: 0.8rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.68);
}

.tool-preview-dashboard span {
  color: rgba(245, 246, 247, 0.94);
  line-height: 1.6;
}

.tool-preview-media-grid article {
  overflow: hidden;
  min-height: 128px;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.88);
  box-shadow: 0 16px 38px rgba(8, 13, 20, 0.07);
}

.tool-preview-media-grid img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.process-visual-panel {
  padding: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at top left, rgba(24, 52, 59, 0.08), transparent 34%),
    linear-gradient(180deg, rgba(252, 253, 254, 0.96), rgba(241, 244, 248, 0.96));
}

.process-visual-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 0.85rem;
  padding: 1rem;
}

.process-visual-grid article,
.process-visual-note {
  overflow: hidden;
  min-height: 150px;
  border-radius: 22px;
  border: 1px solid rgba(255, 255, 255, 0.92);
  box-shadow: 0 14px 34px rgba(8, 13, 20, 0.06);
}

.process-visual-grid article:first-child {
  grid-row: span 2;
  min-height: 320px;
}

.process-visual-grid article img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.process-visual-note {
  display: grid;
  align-content: center;
  gap: 0.5rem;
  padding: 1.1rem 1.15rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(244, 247, 244, 0.95));
}

.process-visual-note strong {
  display: block;
  margin: 0;
}

.process-visual-note span {
  color: var(--text-soft-dark);
  line-height: 1.65;
}

.small-lead {
  max-width: 56rem;
}

.dual-visual {
  padding: 0;
  overflow: hidden;
  box-shadow: var(--shadow);
}

.dual-visual img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 420px;
  object-fit: cover;
}

.dual-top {
  align-items: start;
}

.home-band-intro .lead {
  margin-top: 0;
}


.trust-band,
.showcase-band,
.faq-band,
.final-cta-band {
  margin-top: 1.6rem;
}

.section-frame {
  position: relative;
  margin-top: 1.85rem;
  padding: 2.2rem;
  border-radius: 38px;
  border: 1px solid rgba(255, 255, 255, 0.88);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.8), rgba(241, 244, 242, 0.84)),
    radial-gradient(circle at top left, rgba(28, 49, 56, 0.05), transparent 28%);
  box-shadow: 0 24px 70px rgba(8, 13, 20, 0.07);
}

.section-frame-dark {
  color: var(--text-dark);
  background:
    linear-gradient(180deg, rgba(20, 23, 27, 0.98), rgba(29, 33, 38, 0.99)),
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.16), transparent 24%);
}

.section-dark.section-frame,
.section-dark {
  color: #f5f6f7;
}

.section-dark .eyebrow,
.section-dark h2,
.section-dark h3,
.section-dark p,
.section-dark span,
.section-dark strong,
.section-dark .lead {
  color: inherit;
}

.section-dark .button-secondary {
  background: rgba(255, 255, 255, 0.08);
  color: #f5f6f7;
  border-color: rgba(255, 255, 255, 0.12);
}

.section-dark .button-secondary:hover {
  border-color: rgba(255, 255, 255, 0.22);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.16);
}

.interface-panel {
  position: relative;
  display: grid;
  gap: 1rem;
  padding: 1.3rem;
  border-radius: 30px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(236, 240, 246, 0.88)),
    linear-gradient(135deg, rgba(24, 52, 59, 0.03), transparent 50%);
  border: 1px solid rgba(255, 255, 255, 0.8);
  box-shadow: 0 20px 58px rgba(8, 13, 20, 0.09);
}

.trust-band.section-frame {
  background:
    linear-gradient(180deg, rgba(251, 252, 250, 0.88), rgba(239, 243, 241, 0.92)),
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.08), transparent 28%);
}

.services-editorial.section-frame {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(242, 246, 245, 0.92)),
    radial-gradient(circle at top left, rgba(221, 230, 234, 0.3), transparent 42%);
}

.method-frame.section-frame {
  background:
    linear-gradient(180deg, rgba(249, 250, 248, 0.88), rgba(238, 242, 241, 0.92)),
    radial-gradient(circle at bottom right, rgba(28, 49, 56, 0.06), transparent 28%);
}

.home-cases-frame.section-frame {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(243, 247, 245, 0.94)),
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.1), transparent 24%);
}

.faq-band.section-frame {
  background:
    linear-gradient(180deg, rgba(250, 251, 249, 0.88), rgba(239, 243, 241, 0.93)),
    radial-gradient(circle at top left, rgba(221, 230, 234, 0.28), transparent 42%);
}

.final-cta-band.section-frame,
.home-tool-frame.section-frame,
.home-differentials-frame.section-frame {
  box-shadow: 0 34px 96px rgba(8, 13, 20, 0.18);
}

.panel-label {
  margin: 0;
  color: var(--teal);
  font-family: "Abel", sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 0.82rem;
}

.interface-panel h3 {
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  line-height: 1.18;
}

.interface-panel p {
  margin: 0;
  color: var(--text-soft-dark);
}

.interface-list {
  display: grid;
  gap: 0.9rem;
}

.interface-list div {
  display: grid;
  gap: 0.22rem;
  padding: 0.95rem 1rem;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.58);
  border: 1px solid rgba(15, 20, 28, 0.06);
}

.interface-list strong {
  color: var(--text-dark);
}

.interface-list span {
  color: var(--text-soft-dark);
  line-height: 1.6;
}

.stat-grid {
  display: grid;
  gap: 0.8rem;
}

.stat-pill {
  display: grid;
  gap: 0.3rem;
  padding: 0.95rem 1rem;
  border-radius: 20px;
  border: 1px solid rgba(15, 20, 28, 0.06);
  background: rgba(255, 255, 255, 0.66);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
}

.stat-pill strong {
  font-size: 0.82rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--teal);
}

.stat-pill span {
  color: var(--text-dark);
  line-height: 1.55;
}

.checklist,
.faq-list {
  display: grid;
  gap: 0.8rem;
}

.bullet-list {
  padding-left: 1.1rem;
  line-height: 1.7;
}

.feature-list {
  display: grid;
  gap: 0.8rem;
  margin: 1.2rem 0 0;
  padding: 0;
  list-style: none;
}

.feature-list li {
  position: relative;
  padding: 0.9rem 1rem 0.9rem 3rem;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.68);
  border: 1px solid rgba(255, 255, 255, 0.8);
  color: var(--text-soft-dark);
  line-height: 1.65;
}

.feature-list li::before {
  content: "";
  position: absolute;
  left: 1rem;
  top: 1rem;
  width: 1.1rem;
  height: 1.1rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--accent), var(--teal));
  box-shadow: 0 0 0 4px rgba(219, 155, 73, 0.12);
}

.faq-list details {
  padding: 1.05rem 1.15rem;
  border-radius: var(--radius-sm);
  border: 1px solid rgba(255, 255, 255, 0.88);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(244, 247, 244, 0.88)),
    radial-gradient(circle at top left, rgba(221, 230, 234, 0.36), transparent 46%);
  color: var(--text-dark);
  box-shadow: var(--shadow-soft);
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.faq-list summary {
  cursor: pointer;
  font-weight: 700;
}

.faq-list details:hover {
  transform: translateY(-2px);
  border-color: rgba(184, 155, 94, 0.18);
  box-shadow: 0 18px 44px rgba(8, 13, 20, 0.07);
}

.site-form {
  display: grid;
  gap: 0.9rem;
}

.site-form label {
  display: grid;
  gap: 0.35rem;
  font-weight: 700;
}

.site-form input,
.site-form textarea,
.site-form select,
.tool-card input,
.tool-card select {
  width: 100%;
  border: 1px solid rgba(17, 19, 23, 0.12);
  border-radius: 14px;
  padding: 0.9rem 1rem;
  background: rgba(255, 255, 255, 0.9);
}

.contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  gap: 1.3rem;
  align-items: start;
}

.contact-side-stack {
  display: grid;
  gap: 1rem;
}

.contact-channel-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

.contact-channel {
  display: grid;
  gap: 0.3rem;
  padding: 1rem;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(15, 20, 28, 0.06);
}

.contact-channel strong {
  color: var(--text-dark);
}

.contact-channel span {
  color: var(--text-soft-dark);
  line-height: 1.55;
}

.tool-grid {
  display: grid;
  gap: 0.85rem;
}

.case-richtext {
  max-width: 72ch;
  padding: 1.35rem 1.45rem;
  border-radius: var(--radius-md);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(247, 241, 232, 0.92));
  border: 1px solid rgba(17, 19, 23, 0.08);
}

.case-richtext p {
  margin: 0;
  color: var(--text-soft-dark);
  font-size: 1rem;
  line-height: 1.8;
}

.tool-option-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 0.7rem;
  margin-top: 1rem;
}

.option-chip {
  border: 1px solid rgba(17, 19, 23, 0.08);
  background: rgba(255, 255, 255, 0.88);
  border-radius: 16px;
  padding: 0.9rem;
  text-align: left;
  cursor: pointer;
}

.option-chip.is-active {
  background: rgba(219, 155, 73, 0.14);
  border-color: rgba(219, 155, 73, 0.35);
  color: #8f6334;
}

.tool-progress {
  height: 8px;
  margin-bottom: 1rem;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(17, 19, 23, 0.08);
}

.tool-progress span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--accent), var(--teal));
}

.tool-actions,
.tool-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1rem;
}

.tool-summary .stacked-stat {
  flex: 1 1 220px;
}

.calculator-step-header {
  display: grid;
  gap: 0.45rem;
}

.calculator-live-estimate,
.calculator-warning,
.calculator-highlight {
  margin-top: 1rem;
}

.calculator-highlight {
  background: linear-gradient(135deg, rgba(219, 155, 73, 0.2), rgba(255, 255, 255, 0.98));
  border-color: rgba(219, 155, 73, 0.28);
}

.calculator-warning {
  border-color: rgba(41, 59, 69, 0.18);
  background: linear-gradient(180deg, rgba(255, 250, 243, 0.98), rgba(236, 227, 214, 0.94));
}

.calculator-field {
  margin-top: 1.1rem;
}

.calculator-field-header {
  margin-bottom: 0.7rem;
}

.calculator-option-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.calculator-choice {
  display: grid;
  gap: 0.45rem;
  min-height: 110px;
  align-content: start;
}

.calculator-choice strong {
  font-size: 0.96rem;
}

.calculator-choice span {
  color: var(--text-soft-dark);
  font-size: 0.88rem;
  line-height: 1.55;
}

.calculator-number-field {
  display: grid;
  gap: 0.55rem;
}

.calculator-number-field span {
  font-weight: 700;
  color: var(--text-dark);
}

.calculator-number-field input {
  width: 100%;
  max-width: 220px;
}

.calculator-breakdown {
  align-items: stretch;
}

.calculator-breakdown .stacked-stat p {
  margin: 0.45rem 0 0;
  font-size: 0.88rem;
  line-height: 1.55;
}

.trust-strip {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 1.5rem;
  align-items: center;
}

.trust-strip .card-grid {
  margin: 0;
}

.trust-logos {
  overflow: hidden;
  min-height: 260px;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow);
}

.site-footer {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr;
  gap: 1rem;
  margin: 2.8rem auto 3rem;
  padding: 2.15rem;
  border-radius: 34px;
  background:
    linear-gradient(180deg, rgba(17, 19, 21, 0.99), rgba(12, 14, 16, 1)),
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.14), transparent 28%);
  color: #f5f1eb;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 34px 90px rgba(10, 12, 15, 0.26);
}

.site-footer div {
  display: grid;
  gap: 0.5rem;
}

.footer-brand {
  display: inline-flex !important;
  align-items: center;
  gap: 0.85rem;
  margin-bottom: 0.2rem;
}

.site-footer .brand-wordmark {
  color: #f5f1eb;
}

.site-footer .brand-mark {
  color: #f5f1eb;
  border-color: rgba(255, 255, 255, 0.08);
  background: linear-gradient(135deg, rgba(219, 155, 73, 0.24), rgba(255, 255, 255, 0.06));
}

.site-footer a {
  color: #e6ddd1;
}

.site-footer p {
  max-width: 34rem;
}

.gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.case-gallery-grid .gallery-card {
  min-height: 320px;
}

.gallery-card {
  overflow: hidden;
  min-height: 240px;
  border-radius: 30px;
  box-shadow: var(--shadow);
  border: 1px solid rgba(255, 255, 255, 0.84);
}

.gallery-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 220ms ease;
}

.gallery-card:hover img {
  transform: scale(1.03);
}

.video-frame {
  overflow: hidden;
  aspect-ratio: 16 / 9;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow);
}

.video-frame iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.reveal-ready {
  opacity: 0;
  transform: translateY(28px) scale(0.985);
  transition:
    opacity 560ms cubic-bezier(0.2, 0.7, 0.2, 1),
    transform 560ms cubic-bezier(0.2, 0.7, 0.2, 1);
  transition-delay: var(--reveal-delay, 0ms);
}

.reveal-ready.is-visible {
  opacity: 1;
  transform: translateY(0) scale(1);
}

/* Reveal de secciones para el resto de páginas (clase propia + !important para vencer
   reglas de opacidad de otros sistemas como d3-). */
.sr-up {
  opacity: 0 !important;
  transform: translateY(34px) !important;
  transition:
    opacity 0.7s cubic-bezier(0.2, 0.7, 0.2, 1),
    transform 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) !important;
  will-change: opacity, transform;
}
.sr-up.sr-in {
  opacity: 1 !important;
  transform: none !important;
}

.hero-home-premium {
  position: relative;
  min-height: 880px;
  padding: 2.2rem 2.2rem 1.7rem;
  background: linear-gradient(180deg, rgba(11, 14, 18, 0.94), rgba(15, 18, 24, 0.9));
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 34px 110px rgba(8, 12, 18, 0.3);
}

.hero-backdrop,
.hero-home-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.hero-backdrop img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.02) contrast(0.98);
}

.hero-home-overlay {
  background:
    radial-gradient(circle at 84% 24%, rgba(184, 155, 94, 0.16), transparent 16%),
    linear-gradient(90deg, rgba(6, 8, 10, 0.84) 0%, rgba(8, 10, 12, 0.7) 40%, rgba(8, 10, 12, 0.46) 64%, rgba(8, 10, 12, 0.78) 100%),
    linear-gradient(180deg, rgba(6, 8, 10, 0.18), rgba(6, 8, 10, 0.42));
}

.hero-home-grid,
.hero-bottom-ribbon {
  position: relative;
  z-index: 1;
}

.hero-home-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.82fr);
  gap: 1.5rem;
  align-items: center;
  min-height: 590px;
}

.hero-copy-premium {
  max-width: 44rem;
  padding: 1rem 0 0.2rem;
}

.hero-home-premium .hero-copy-premium,
.hero-home-premium .hero-copy-premium h1,
.hero-home-premium .hero-copy-premium .lead,
.hero-home-premium .hero-copy-premium .hero-note {
  color: #f6f7f8;
}

.hero-home-premium .eyebrow,
.hero-home-premium .hero-note {
  color: rgba(244, 240, 233, 0.82);
}

.hero-home-premium .eyebrow::before {
  background: rgba(244, 240, 233, 0.72);
}

.hero-home-premium h1 {
  max-width: 11.2ch;
  font-size: clamp(3.8rem, 6.8vw, 6.2rem);
  line-height: 0.94;
  letter-spacing: -0.04em;
  text-wrap: balance;
}

.hero-copy-premium .lead {
  max-width: 42rem;
  font-size: 1.12rem;
  line-height: 1.72;
}

.hero-home-premium .button-secondary {
  background: rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 255, 255, 0.22);
  color: #f5f7fa;
}

.hero-home-premium .button-secondary:hover {
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.16);
}

.hero-home-premium .meta-strip {
  margin-top: 1.25rem;
}

.hero-home-premium .meta-strip span {
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(247, 248, 250, 0.92);
  backdrop-filter: blur(16px);
}

.hero-home-premium .hero-metric-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.9rem;
  margin-top: 1.5rem;
}

.hero-home-premium .hero-metric-row article {
  display: grid;
  gap: 0.3rem;
  padding: 1rem 1.05rem;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(18px);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.12);
}

.hero-home-premium .hero-metric-row strong {
  font-family: "Abel", sans-serif;
  font-size: 1.55rem;
  letter-spacing: 0.04em;
}

.hero-home-premium .hero-metric-row span {
  color: rgba(244, 246, 248, 0.78);
  line-height: 1.55;
}

.hero-tool-panel {
  display: grid;
  gap: 1rem;
  align-self: end;
  padding: 1.55rem;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(13, 16, 20, 0.72), rgba(17, 21, 26, 0.76)),
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.16), transparent 30%);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow:
    0 28px 80px rgba(0, 0, 0, 0.26),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(22px);
  color: #f5f6f8;
}

.panel-label-light {
  color: rgba(247, 242, 233, 0.8);
}

.hero-tool-panel h3 {
  margin: 0;
  font-size: clamp(1.8rem, 2.5vw, 2.35rem);
  line-height: 1.04;
}

.hero-tool-panel p {
  margin: 0;
  color: rgba(244, 246, 248, 0.74);
  line-height: 1.66;
}

.hero-tool-options {
  display: grid;
  gap: 0.7rem;
}

.hero-option {
  width: 100%;
  text-align: left;
  padding: 0.95rem 1rem;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.05);
  color: rgba(245, 246, 248, 0.9);
  cursor: pointer;
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

.hero-option:hover,
.hero-option.is-active {
  transform: translateY(-2px);
  border-color: rgba(184, 155, 94, 0.42);
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.14);
}

.hero-tool-progress {
  height: 7px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.08);
}

.hero-tool-progress span {
  display: block;
  width: 68%;
  height: 100%;
  background: linear-gradient(90deg, #b89b5e, #f1d18d);
  box-shadow: 0 0 20px rgba(184, 155, 94, 0.3);
}

.hero-panel-button {
  width: 100%;
}

.hero-bottom-ribbon {
  display: grid;
  gap: 1rem;
  margin-top: 1.25rem;
}

.hero-thumb-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.9rem;
}

.hero-thumb-card {
  position: relative;
  overflow: hidden;
  min-height: 168px;
  border-radius: 22px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.08);
  box-shadow: 0 20px 52px rgba(0, 0, 0, 0.16);
}

.hero-thumb-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 260ms ease;
}

.hero-thumb-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8, 10, 12, 0.02), rgba(8, 10, 12, 0.72));
}

.hero-thumb-card:hover img {
  transform: scale(1.04);
}

.hero-thumb-card span,
.hero-thumb-card strong {
  position: absolute;
  z-index: 1;
  left: 1rem;
}

.hero-thumb-card span {
  top: 1rem;
  display: inline-flex;
  align-items: center;
  min-height: 1.85rem;
  padding: 0.35rem 0.7rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(247, 248, 250, 0.96);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  backdrop-filter: blur(16px);
}

.hero-thumb-card strong {
  right: 1rem;
  bottom: 1rem;
  color: #f7f8fa;
  line-height: 1.18;
  font-size: 1rem;
}

.hero-logo-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 1.35rem;
  padding: 1rem 1.2rem;
  border-radius: 22px;
  background: rgba(9, 11, 14, 0.58);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(246, 247, 248, 0.74);
  backdrop-filter: blur(20px);
}

.hero-logo-row > span {
  font-size: 0.88rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.hero-logo-row strong {
  color: rgba(247, 248, 250, 0.96);
  font-size: 0.98rem;
  font-weight: 600;
}

.sector-showcase-frame.section-frame {
  margin-top: 2.1rem;
}

.media-card-grid-sectors {
  grid-template-columns: 1.25fr 1fr;
  grid-auto-rows: minmax(0, 1fr);
}

.media-card-grid-sectors .media-card:first-child {
  grid-row: span 2;
}

.media-card-grid-sectors .media-card:first-child .media-card-image {
  min-height: 100%;
}

.services-story-frame.section-frame {
  background:
    linear-gradient(180deg, rgba(252, 252, 250, 0.9), rgba(241, 245, 243, 0.94)),
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.1), transparent 24%);
}

.services-story-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(360px, 0.98fr);
  gap: 1.4rem;
  align-items: stretch;
}

.services-story-copy .card-grid {
  margin-top: 1rem;
}

.services-story-visual {
  position: relative;
  overflow: hidden;
  min-height: 100%;
  border-radius: 34px;
  border: 1px solid rgba(255, 255, 255, 0.92);
  box-shadow: 0 30px 88px rgba(8, 13, 20, 0.12);
}

.services-story-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.services-story-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10, 12, 14, 0.08), rgba(10, 12, 14, 0.78));
}

.services-story-overlay {
  position: absolute;
  inset: auto 1.2rem 1.2rem 1.2rem;
  z-index: 1;
  display: grid;
  gap: 0.85rem;
  padding: 1.2rem;
  border-radius: 24px;
  background: rgba(9, 11, 14, 0.68);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(18px);
  color: #f7f8fa;
}

.story-badge {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 2rem;
  padding: 0.45rem 0.8rem;
  border-radius: 999px;
  background: rgba(184, 155, 94, 0.18);
  border: 1px solid rgba(184, 155, 94, 0.28);
  color: rgba(247, 248, 250, 0.96);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.services-story-overlay h3,
.services-story-overlay p,
.story-metrics strong,
.story-metrics span {
  color: inherit;
}

.story-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
}

.story-metrics article {
  display: grid;
  gap: 0.25rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.story-metrics span {
  color: rgba(247, 248, 250, 0.76);
  line-height: 1.5;
}

.process-cinematic-frame.section-frame {
  background:
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.16), transparent 22%),
    linear-gradient(180deg, rgba(14, 18, 23, 0.98), rgba(10, 13, 16, 0.98));
}

.process-cinematic-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.72fr);
  gap: 1.4rem;
  align-items: end;
  margin-bottom: 1.25rem;
}

.process-cinematic-head .lead {
  color: rgba(244, 246, 248, 0.78);
}

.process-cinematic-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  gap: 1.3rem;
}

.process-timeline {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.95rem;
}

.timeline-step {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 0.9rem;
  padding: 1.1rem;
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.05)),
    radial-gradient(circle at top left, rgba(184, 155, 94, 0.16), transparent 42%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.timeline-step strong {
  color: #f7f8fa;
}

.timeline-step p {
  margin: 0.25rem 0 0;
  color: rgba(244, 246, 248, 0.74);
  line-height: 1.58;
}

.timeline-step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(184, 155, 94, 0.94), rgba(251, 224, 161, 0.92));
  color: #111315;
  font-family: "Abel", sans-serif;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
}

.process-cinematic-visual {
  position: relative;
  overflow: hidden;
  min-height: 100%;
  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 26px 72px rgba(0, 0, 0, 0.22);
}

.process-cinematic-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.process-cinematic-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(7, 9, 11, 0.16), rgba(7, 9, 11, 0.72));
}

.process-cinematic-overlay {
  position: absolute;
  inset: auto 1.1rem 1.1rem 1.1rem;
  z-index: 1;
  display: grid;
  gap: 0.45rem;
  padding: 1rem 1.1rem;
  border-radius: 20px;
  background: rgba(9, 11, 14, 0.64);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #f7f8fa;
  backdrop-filter: blur(14px);
}

.process-cinematic-overlay span {
  color: rgba(244, 246, 248, 0.74);
  line-height: 1.55;
}

.media-card-grid-cases {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.media-card-grid-cases .media-card.is-featured {
  grid-column: span 2;
}

.goals-strip-frame.section-frame {
  background:
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.14), transparent 24%),
    linear-gradient(180deg, rgba(16, 19, 24, 0.98), rgba(13, 16, 20, 0.98));
}

.goals-strip-shell {
  display: grid;
  gap: 1.25rem;
}

.goals-strip-copy .lead {
  color: rgba(244, 246, 248, 0.76);
  max-width: 54rem;
}

.goals-strip-frame .card-grid {
  margin-top: 0.4rem;
}

.goals-strip-frame .card {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(244, 247, 244, 0.98)),
    radial-gradient(circle at top left, rgba(221, 230, 234, 0.22), transparent 40%);
}

.authority-split {
  align-items: stretch;
}

.authority-copy-panel {
  display: grid;
  gap: 1rem;
}

.authority-copy-panel .card-grid {
  margin-top: 0.8rem;
}

.authority-cta-panel {
  display: grid;
  gap: 1rem;
  align-content: start;
  padding: 1.45rem;
  border-radius: 30px;
  background:
    linear-gradient(180deg, rgba(251, 246, 236, 0.98), rgba(243, 233, 211, 0.96)),
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.18), transparent 34%);
  border: 1px solid rgba(184, 155, 94, 0.14);
  box-shadow: 0 22px 64px rgba(8, 13, 20, 0.08);
}

.authority-cta-panel img {
  width: 100%;
  min-height: 240px;
  object-fit: cover;
  border-radius: 22px;
  box-shadow: 0 16px 42px rgba(8, 13, 20, 0.08);
}

.media-card-grid-resources {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.media-card-grid-resources .media-card {
  grid-template-rows: minmax(160px, 210px) auto;
}

.faq-side-panel {
  align-content: stretch;
}

.faq-side-card {
  display: grid;
  gap: 1rem;
  height: 100%;
  padding: 1.3rem;
  border-radius: 30px;
  background:
    linear-gradient(180deg, rgba(15, 18, 23, 0.98), rgba(20, 24, 30, 0.98)),
    radial-gradient(circle at top right, rgba(184, 155, 94, 0.16), transparent 28%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #f7f8fa;
  box-shadow: 0 24px 72px rgba(8, 12, 18, 0.2);
}

.faq-side-card h2,
.faq-side-card p {
  color: inherit;
}

.faq-side-card .small-lead {
  color: rgba(244, 246, 248, 0.74);
}

.quick-link-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
}

.quick-link-pill {
  display: grid;
  gap: 0.2rem;
  padding: 0.95rem 1rem;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.quick-link-pill:hover {
  transform: translateY(-2px);
  border-color: rgba(184, 155, 94, 0.3);
  background: rgba(255, 255, 255, 0.09);
}

.quick-link-pill span {
  color: #f7f8fa;
  font-weight: 700;
}

.quick-link-pill small {
  color: rgba(244, 246, 248, 0.62);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.brand-wordmark {
  font-family: "Abel", sans-serif;
  letter-spacing: 0.08em;
}

.content-band.section-frame,
.content-section.section-frame {
  padding: clamp(2.8rem, 5vw, 4.8rem);
  border-radius: 36px;
  border-color: rgba(20, 20, 20, 0.08);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(248, 243, 234, 0.86)),
    radial-gradient(circle at top left, rgba(230, 209, 162, 0.14), transparent 32rem);
  box-shadow: var(--shadow);
}

.dark-section,
.section-dark,
.pricing-premium-frame.section-frame,
.faq-band-premium.section-frame,
.final-cta-premium.section-frame {
  color: #f6efe4;
  border-color: rgba(255, 255, 255, 0.1);
  background:
    radial-gradient(circle at top right, rgba(200, 161, 90, 0.16), transparent 24rem),
    radial-gradient(circle at bottom left, rgba(48, 59, 70, 0.28), transparent 22rem),
    linear-gradient(135deg, #0d1114, #171c20);
  box-shadow: var(--shadow-strong);
}

.section-dark .lead,
.section-dark p,
.pricing-premium-frame p,
.faq-band-premium p,
.final-cta-premium p {
  color: rgba(246, 239, 228, 0.78);
}

.section-dark .eyebrow,
.pricing-premium-frame .eyebrow,
.faq-band-premium .eyebrow,
.final-cta-premium .eyebrow {
  color: var(--accent-soft);
}

.section-dark .eyebrow::before,
.pricing-premium-frame .eyebrow::before,
.faq-band-premium .eyebrow::before,
.final-cta-premium .eyebrow::before {
  background: rgba(230, 209, 162, 0.76);
}

.button-primary {
  background: linear-gradient(135deg, #101418, #1b2025);
  box-shadow: 0 16px 40px rgba(17, 19, 21, 0.22);
}

.button-primary:hover {
  box-shadow: 0 20px 52px rgba(17, 19, 21, 0.28);
}

.button-secondary {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(248, 243, 234, 0.92)),
    radial-gradient(circle at top left, rgba(230, 209, 162, 0.24), transparent 36%);
}

.button-nav {
  padding-inline: 1.25rem;
  background: linear-gradient(135deg, #d4b06c, #b88b45);
  box-shadow: 0 16px 36px rgba(184, 139, 69, 0.22);
}

.stat-pill,
.card,
.media-card,
.faq-list details,
.hero-metric-row article {
  backdrop-filter: blur(12px);
}

.card {
  border-color: rgba(20, 20, 20, 0.08);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.74), rgba(248, 243, 234, 0.84)),
    radial-gradient(circle at top left, rgba(230, 209, 162, 0.18), transparent 44%);
  box-shadow: 0 12px 36px rgba(20, 20, 20, 0.08);
}

.card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 52px rgba(20, 20, 20, 0.14);
  border-color: rgba(200, 161, 90, 0.3);
}

.media-card {
  border-color: rgba(20, 20, 20, 0.08);
  background: rgba(255, 255, 255, 0.6);
  box-shadow: 0 18px 48px rgba(20, 20, 20, 0.1);
}

.media-card-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10, 12, 14, 0.02), rgba(10, 12, 14, 0.22));
  pointer-events: none;
}

.media-card-body {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(244, 237, 224, 0.96)),
    radial-gradient(circle at top right, rgba(200, 161, 90, 0.12), transparent 30%);
}

.media-card-body h3 {
  font-size: clamp(1.45rem, 2vw, 2.15rem);
  line-height: 1.06;
}

.media-card-link,
.card-link {
  color: var(--accent-strong);
}

.hero-home-premium {
  min-height: 960px;
  padding: 2.4rem;
  border-radius: 40px;
}

.hero-home-premium h1 {
  max-width: 10.8ch;
  font-size: clamp(3.6rem, 6vw, 5.5rem);
  line-height: 0.93;
}

.hero-copy-premium .lead {
  max-width: 34rem;
  font-size: 1.08rem;
}

.hero-home-grid {
  grid-template-columns: minmax(0, 0.94fr) minmax(380px, 0.96fr);
  gap: 2rem;
}

.hero-tool-panel {
  padding: 1.7rem;
  border-radius: 30px;
  background:
    linear-gradient(180deg, rgba(16, 20, 24, 0.68), rgba(20, 24, 28, 0.76)),
    radial-gradient(circle at top right, rgba(200, 161, 90, 0.18), transparent 28%);
}

.hero-thumb-card {
  min-height: 184px;
  border-radius: 24px;
}

.hero-logo-row {
  justify-content: space-between;
  gap: 0.75rem 1rem;
  background: rgba(10, 12, 14, 0.62);
}

.services-story-frame.section-frame,
.resources-editorial-frame.section-frame {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(247, 241, 230, 0.9)),
    radial-gradient(circle at top left, rgba(230, 209, 162, 0.2), transparent 30rem);
}

.services-ribbon {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin: 1.2rem 0 1rem;
}

.services-ribbon span {
  display: inline-flex;
  align-items: center;
  min-height: 2.1rem;
  padding: 0.4rem 0.78rem;
  border-radius: 999px;
  background: rgba(20, 20, 20, 0.04);
  border: 1px solid rgba(20, 20, 20, 0.08);
  color: var(--accent-strong);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pricing-premium-frame .dual-column {
  align-items: stretch;
}

.pricing-copy-panel,
.pricing-factors-panel {
  min-height: 100%;
}

.pricing-factor-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  height: 100%;
}

.pricing-factor-card {
  display: grid;
  gap: 0.5rem;
  padding: 1.2rem;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.pricing-factor-card strong {
  color: #f7efe2;
  font-size: 1.05rem;
}

.pricing-factor-card span {
  color: rgba(246, 239, 228, 0.72);
  line-height: 1.62;
}

.faq-band-premium .faq-list details {
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.05);
}

.faq-band-premium .faq-list details:hover {
  border-color: rgba(230, 209, 162, 0.32);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.16);
}

.faq-band-premium .faq-list summary,
.faq-band-premium .faq-list p {
  color: #f6efe4;
}

.faq-band-premium .faq-side-card {
  background:
    linear-gradient(180deg, rgba(21, 25, 29, 0.98), rgba(13, 17, 20, 0.98)),
    radial-gradient(circle at top right, rgba(200, 161, 90, 0.2), transparent 28%);
}

.final-cta-premium .tool-card {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.04)),
    radial-gradient(circle at top right, rgba(230, 209, 162, 0.18), transparent 28%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.16);
}

.site-footer {
  grid-template-columns: 1.7fr 1fr 1fr 0.9fr;
  gap: 1.4rem;
  padding: 2.5rem 2.3rem;
  border-radius: 32px;
  background:
    radial-gradient(circle at top right, rgba(200, 161, 90, 0.18), transparent 22rem),
    linear-gradient(180deg, #0b0f12, #12171b);
}

.site-footer > div {
  gap: 0.7rem;
}

.footer-logo {
  position: relative;
  display: inline-grid;
  width: fit-content;
  color: #f5f1eb;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(4.25rem, 7vw, 7.5rem);
  font-weight: 500;
  line-height: 0.82;
  letter-spacing: -0.07em;
  text-decoration: none;
}

.footer-logo span {
  color: currentColor;
}

.footer-logo::before {
  content: attr(data-logo);
  position: absolute;
  inset: 0;
  overflow: hidden;
  width: 0;
  color: var(--accent);
  white-space: nowrap;
  transition: width 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

.footer-logo:hover,
.footer-logo:focus-visible {
  color: #f5f1eb;
}

.footer-logo:hover::before,
.footer-logo:focus-visible::before {
  width: 100%;
}

.site-footer-intro p,
.site-footer a {
  color: rgba(240, 229, 211, 0.78);
}

.site-footer .footer-logo {
  color: #f5f1eb;
}

.site-footer a:hover {
  color: var(--accent-soft);
}

.site-footer-legal {
  justify-content: end;
}

/* El enlace "Condiciones de trabajo" es mas largo que el resto: forzar una sola linea en el footer de todas las paginas. */
.site-footer-legal a {
  white-space: nowrap;
}

/* ============ FAQ UNIFICADA (diseño de la home, global en toda la web) ============ */
.faqx-section { background: #08070a; color: #f4ecd9; padding: clamp(72px, 8vw, 120px) clamp(22px, 4vw, 48px); border-top: 1px solid rgba(255,255,255,0.06); }
.faqx-head { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: end; margin: 0 auto 56px; padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,0.08); max-width: 1640px; }
.faqx-head > div { display: flex; flex-direction: column; gap: 14px; }
.faqx-eyebrow { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: #e0a04a; }
.faqx-title { font-family: 'Archivo', Inter, system-ui, sans-serif; font-size: clamp(48px, 6.5vw, 96px); font-weight: 900; line-height: 0.9; letter-spacing: -0.05em; color: #f4ecd9; text-transform: uppercase; text-wrap: balance; margin: 0; }
.faqx-title .faqx-italic { font-family: 'Instrument Serif', 'Playfair Display', Georgia, serif; font-style: italic; font-weight: 400; text-transform: uppercase; color: #e0a04a; }
.faqx-sub { font-size: 14px; line-height: 1.6; max-width: 480px; color: #c4bba9; margin: 0; }
.faqx { list-style: none; border-top: 1px solid rgba(255,255,255,0.08); max-width: 1640px; margin: 0 auto; padding: 0; }
.faqx-item { border-bottom: 1px solid rgba(255,255,255,0.08); transition: background .15s; }
.faqx-item.is-open { background: rgba(224,160,74,0.03); }
.faqx-item > button { all: unset; box-sizing: border-box; cursor: pointer; width: 100%; padding: 24px 0; display: grid; grid-template-columns: 60px 1fr 28px; align-items: center; gap: 16px; }
.faqx-num { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 11px; letter-spacing: 0.12em; color: #e0a04a; }
.faqx-q { font-size: 18px; font-weight: 700; letter-spacing: -0.02em; color: #f0e8d6; text-wrap: balance; }
.faqx-chev { font-size: 24px; color: #e0a04a; text-align: center; line-height: 1; }
.faqx-body { max-height: 0; overflow: hidden; transition: max-height .3s ease, padding .3s; padding: 0 0 0 76px; }
.faqx-item.is-open .faqx-body { max-height: 420px; padding-bottom: 24px; }
.faqx-body p { font-size: 14px; line-height: 1.6; color: #c4bba9; max-width: 760px; margin: 0; }
@media (max-width: 760px) {
  .faqx-head { grid-template-columns: 1fr; gap: 18px; }
  .faqx-item > button { grid-template-columns: 46px 1fr 22px; padding: 18px 0; gap: 12px; }
  .faqx-q { font-size: 16px; }
  .faqx-body { padding-left: 0; }
}
/* Páginas internas (data-page ≠ home): re-afirmar el diseño FAQ de la home por
   encima de las reglas genéricas de "main h2 / main p" (!important + especificidad alta). */
body[data-page] .faqx-section .faqx-head .faqx-title { font-family: 'Archivo', Inter, system-ui, sans-serif !important; font-size: clamp(48px, 6.5vw, 96px) !important; font-weight: 900 !important; line-height: 0.9 !important; letter-spacing: -0.05em !important; color: #f4ecd9 !important; text-transform: uppercase !important; margin: 0 !important; }
body[data-page] .faqx-section .faqx-head .faqx-title .faqx-italic { font-family: 'Instrument Serif', 'Playfair Display', Georgia, serif !important; font-style: italic !important; font-weight: 400 !important; text-transform: uppercase !important; color: #e0a04a !important; }
body[data-page] .faqx-section .faqx-head .faqx-sub { font-size: 14px !important; line-height: 1.6 !important; color: #c4bba9 !important; }
body[data-page] .faqx-section .faqx .faqx-q { color: #f0e8d6 !important; }
body[data-page] .faqx-section .faqx .faqx-body p { color: #c4bba9 !important; }

/* Directorio sutil de un hub hacia sus páginas (enlazado interno SEO, sin saturar el footer) */
.hub-directory { max-width: 1640px; margin: 0 auto; padding: clamp(36px,5vw,64px) clamp(22px,4vw,48px); border-top: 1px solid rgba(255,255,255,0.08); }
.hub-directory-label { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: #e0a04a; margin: 0 0 16px; }
.hub-directory-links { display: flex; flex-wrap: wrap; gap: 10px 26px; }
.hub-directory-links a { color: #b8af9d; font-size: 13.5px; text-decoration: none; transition: color .15s; }
.hub-directory-links a:hover { color: #f4ecd9; }

/* === Sección de vídeo / tour 360 real del portfolio (facade ligero) === */
.page-video { padding: clamp(48px, 6vw, 88px) 24px; border-top: 1px solid rgba(255,255,255,0.07); background: linear-gradient(180deg, #0b0a0d 0%, #100e13 100%); }
.page-video-inner { max-width: 1080px; margin: 0 auto; text-align: center; }
.page-video-eyebrow { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: #e0a04a; margin: 0 0 12px; }
.page-video-title { font-size: clamp(22px, 3vw, 32px); font-weight: 700; color: #f4ecd9; letter-spacing: -0.01em; margin: 0 0 24px; line-height: 1.15; }
.page-video-frame { position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: 10px; overflow: hidden; background: #050407; border: 1px solid rgba(224,160,74,0.22); box-shadow: 0 28px 80px rgba(0,0,0,0.5); }
.page-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }
.page-video-facade { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; margin: 0; border: 0; cursor: pointer; background: #050407; display: block; }
.page-video-facade img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease, filter .3s ease; }
.page-video-facade:hover img, .page-video-facade:focus-visible img { transform: scale(1.04); filter: brightness(1.06); }
.page-video-facade:focus-visible { outline: 2px solid #e0a04a; outline-offset: 3px; }
.page-video-play { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 86px; height: 60px; display: flex; align-items: center; justify-content: center; pointer-events: none; filter: drop-shadow(0 8px 22px rgba(0,0,0,0.55)); }
.page-video-play svg { width: 100%; height: 100%; }
.page-video-play .pv-bg { fill: #e0a04a; opacity: 0.92; transition: opacity .2s; }
.page-video-play .pv-tri { fill: #0b0a0d; }
.page-video-facade:hover .pv-bg, .page-video-facade:focus-visible .pv-bg { opacity: 1; }
.page-video-play--360 { width: auto; height: auto; padding: 13px 22px; border-radius: 999px; background: rgba(224,160,74,0.94); color: #0b0a0d; font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 16px; font-weight: 700; letter-spacing: 0.06em; filter: drop-shadow(0 8px 22px rgba(0,0,0,0.5)); }
.page-video-facade--tour:hover .page-video-play--360, .page-video-facade--tour:focus-visible .page-video-play--360 { background: #f0c66b; }
.page-video-desc { margin: 22px auto 0; max-width: 700px; color: #b8af9d; font-size: 15px; line-height: 1.6; }
.page-video-link { display: inline-block; margin-top: 16px; color: #e0a04a; font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; text-decoration: none; border-bottom: 1px solid rgba(224,160,74,0.4); padding-bottom: 3px; transition: color .15s, border-color .15s; }
.page-video-link:hover { color: #f0c66b; border-color: #f0c66b; }
@media (max-width: 640px) { .page-video-play { width: 64px; height: 46px; } .page-video-play--360 { font-size: 14px; padding: 11px 18px; } }

.site-footer-group::before {
  display: block;
  margin-bottom: 0.35rem;
  color: rgba(230, 209, 162, 0.74);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.site-footer-group:nth-of-type(2)::before {
  content: "Servicios";
}

.site-footer-group:nth-of-type(3)::before {
  content: "Accesos";
}

.site-footer-group:nth-of-type(4)::before {
  content: "Legal";
}

@media (max-width: 1024px) {
  .hero,
  .split-section,
  .split,
  .trust-strip,
  .site-footer,
  .card-grid,
  .band-shell,
  .dual-column,
  .gallery-grid,
  .contact-grid,
  .contact-channel-grid,
  .media-card-grid-sectors,
  .media-card-grid-featured,
  .media-card-grid-compact,
  .trust-metric-grid,
  .hero-metric-row,
  .hero-dashboard-grid,
  .tool-preview-dashboard {
    grid-template-columns: 1fr;
  }

  .hero-collage-grid {
    grid-template-columns: 1fr;
  }

  .hero-interface-card,
  .hero-dashboard,
  .floating-card {
    max-width: none;
  }

  .hero-collage-main,
  .hero-collage-stack article,
  .split-image,
  .visual-frame img {
    min-height: 280px;
  }

  .grid-4,
  .grid-3,
  .grid-2 {
    grid-template-columns: 1fr 1fr;
  }

  .process-step {
    grid-template-columns: 58px 1fr;
  }

  .tool-preview-media-grid,
  .process-visual-grid {
    grid-template-columns: 1fr 1fr;
  }

  .process-visual-grid article:first-child {
    grid-row: auto;
    min-height: 240px;
  }

  .hero-home-grid,
  .services-story-grid,
  .process-cinematic-head,
  .process-cinematic-grid,
  .story-metrics,
  .media-card-grid-cases,
  .media-card-grid-resources,
  .quick-link-grid {
    grid-template-columns: 1fr;
  }

  .hero-home-premium {
    min-height: 0;
  }

  .hero-thumb-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .media-card-grid-sectors .media-card:first-child,
  .media-card-grid-cases .media-card.is-featured {
    grid-row: auto;
    grid-column: auto;
  }

  .process-timeline {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 800px) {
  .site-header {
    align-items: flex-start;
    top: 0.6rem;
    border-radius: 28px;
  }

  .nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .site-nav {
    position: absolute;
    right: 0;
    top: calc(100% + 0.4rem);
    flex-direction: column;
    align-items: stretch;
    width: min(320px, 100%);
    padding: 1rem;
    display: none;
    border-radius: 24px;
  }

  .site-nav.is-open {
    display: flex;
  }

  .hero,
  .content-section,
  .content-band {
    padding: 1.35rem;
  }

  .hero-home {
    gap: 1.5rem;
  }

  .hero-metric-row {
    margin-top: 1.2rem;
  }

  .hero h1 {
    font-size: clamp(2.7rem, 11vw, 4.5rem);
  }

  .grid-4,
  .grid-3,
  .grid-2 {
    grid-template-columns: 1fr;
  }

  .media-card {
    grid-template-rows: minmax(220px, 260px) auto;
  }

  .media-card.is-featured,
  .media-card.is-wide {
    grid-template-rows: minmax(220px, 260px) auto;
  }

  .media-card-body {
    padding: 1.2rem;
  }

  .process-step {
    grid-template-columns: 1fr;
  }

  .home-tool-frame .feature-list,
  .tool-preview-dashboard,
  .tool-preview-media-grid,
  .process-visual-grid {
    grid-template-columns: 1fr;
  }

  .tool-showcase-copy .button,
  .home-tool-frame .button {
    width: 100%;
    justify-self: stretch;
  }

  .tool-preview-card,
  .process-visual-note {
    padding: 1.1rem;
  }

  .hero-home-premium {
    padding: 1.25rem;
  }

  .hero-home-premium h1 {
    font-size: clamp(3rem, 11vw, 4.7rem);
  }

  .hero-home-premium .hero-metric-row,
  .hero-thumb-strip,
  .quick-link-grid {
    grid-template-columns: 1fr;
  }

  .hero-tool-panel {
    padding: 1.2rem;
  }

  .media-card-grid-sectors {
    grid-template-columns: 1fr;
  }

  .services-story-visual,
  .authority-cta-panel img,
  .process-cinematic-visual {
    min-height: 300px;
  }
}

@media (max-width: 1024px) {
  .site-footer {
    grid-template-columns: 1fr 1fr;
  }

  .site-footer-intro {
    grid-column: 1 / -1;
  }

  .pricing-factor-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 800px) {
  .site-footer,
  .pricing-factor-grid {
    grid-template-columns: 1fr;
  }

  .hero-home-premium {
    min-height: 0;
    padding: 1.35rem;
  }
}

/* V2 premium editorial landing */
:root {
  --bg-main: #f7f3eb;
  --bg-soft: #fbf8f1;
  --surface-warm: #f2ece0;
  --ink: #141414;
  --ink-muted: #5f5a50;
  --ink-soft: #8a8377;
  --dark: #0d1114;
  --dark-2: #15191d;
  --dark-3: #1d2227;
  --gold: #c8a15a;
  --gold-soft: #e6d1a2;
  --gold-muted: #9f7d3f;
  --border-light: rgba(20, 20, 20, 0.1);
  --border-dark: rgba(255, 255, 255, 0.12);
}

body[data-page="/"] {
  background:
    radial-gradient(circle at 10% 0%, rgba(200, 161, 90, 0.16), transparent 28rem),
    radial-gradient(circle at 88% 10%, rgba(38, 52, 60, 0.1), transparent 30rem),
    linear-gradient(180deg, #fbf8f1 0%, #f7f3eb 46%, #efe6d8 100%);
}

body[data-page="/"] .page-shell,
body[data-page="/"] .site-header,
body[data-page="/"] .site-footer {
  width: min(100% - clamp(20px, 4vw, 56px), 1440px);
}

body[data-page="/"] .page-shell {
  padding-top: 1rem;
}

body[data-page="/"] .content-band.section-frame,
body[data-page="/"] .content-section.section-frame {
  margin-top: clamp(2.2rem, 5vw, 4.6rem);
  padding: clamp(3rem, 7vw, 6.9rem) clamp(1.25rem, 4.6vw, 4.6rem);
  border-radius: clamp(28px, 4vw, 48px);
  scroll-margin-top: 110px;
}

body[data-page="/"] .site-header {
  top: 0;
  min-height: 76px;
  margin-top: 0;
  border-radius: 0 0 24px 24px;
  background: rgba(251, 248, 241, 0.9);
  border-color: rgba(20, 20, 20, 0.08);
  box-shadow: 0 18px 56px rgba(20, 20, 20, 0.08);
}

body[data-page="/"] .brand-mark {
  color: #16191c;
  background: transparent;
  border: 0;
  width: auto;
  height: auto;
  font-family: "Inter", sans-serif;
  font-size: var(--brand-logo-size);
  font-weight: var(--brand-logo-weight);
  line-height: 0.98;
  letter-spacing: var(--brand-logo-tracking);
}

body[data-page="/"] .brand-wordmark {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.65rem, 2vw, 2.05rem);
  letter-spacing: -0.04em;
}

body[data-page="/"] .site-nav {
  gap: clamp(0.7rem, 1.4vw, 1.35rem);
}

body[data-page="/"] .site-nav a:not(.button) {
  font-size: 0.82rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body[data-page="/"] .button {
  min-height: 50px;
  padding-inline: 1.25rem;
}

body[data-page="/"] .button-primary,
body[data-page="/"] .button-nav {
  background:
    linear-gradient(135deg, #11161a, #1d242a),
    radial-gradient(circle at 20% 0%, rgba(200, 161, 90, 0.26), transparent 46%);
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.14);
}

body[data-page="/"] .button-secondary {
  border-color: rgba(20, 20, 20, 0.12);
  background: rgba(255, 255, 255, 0.58);
}

body[data-page="/"] .button::after,
body[data-page="/"] .media-card-link::after,
body[data-page="/"] .card-link::after {
  content: "\2192";
  font-weight: 800;
}

body[data-page="/"] .reveal-ready {
  opacity: 1;
  transform: none;
}

.hero-home-editorial.section-frame {
  position: relative;
  display: block;
  min-height: clamp(760px, 84vh, 980px);
  overflow: hidden;
  padding: clamp(3rem, 6vw, 6.4rem) clamp(1.25rem, 4.5vw, 4.8rem) clamp(1.5rem, 3vw, 2.4rem);
  border-radius: clamp(32px, 5vw, 56px);
  border: 1px solid rgba(20, 20, 20, 0.08);
  box-shadow: 0 36px 110px rgba(20, 20, 20, 0.15);
  background:
    radial-gradient(circle at 74% 18%, rgba(200, 161, 90, 0.18), transparent 26rem),
    radial-gradient(circle at 8% 8%, rgba(255, 255, 255, 0.88), transparent 30rem),
    linear-gradient(135deg, #fbf8f1 0%, #f5efe3 48%, #e8dccb 100%);
}

.hero-home-editorial::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(rgba(20, 20, 20, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(20, 20, 20, 0.025) 1px, transparent 1px);
  background-size: 100% 92px, 92px 100%;
  opacity: 0.35;
  pointer-events: none;
}

.hero-home-editorial::after {
  content: "";
  position: absolute;
  width: 36vw;
  height: 36vw;
  right: -12vw;
  bottom: -14vw;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(200, 161, 90, 0.22), transparent 68%);
  pointer-events: none;
}

.hero-editorial-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(520px, 1.04fr);
  gap: clamp(1.8rem, 4.5vw, 5rem);
  align-items: center;
}

.hero-copy-editorial {
  padding-top: clamp(1rem, 4vw, 3rem);
}

.hero-copy-editorial h1 {
  max-width: 13.5ch;
  font-size: clamp(3.65rem, 5.8vw, 6rem);
  line-height: 0.93;
  letter-spacing: -0.052em;
}

.hero-copy-editorial .lead {
  max-width: 38rem;
  font-size: clamp(1.02rem, 1.2vw, 1.2rem);
  color: var(--ink-muted);
}

.hero-copy-editorial .hero-note {
  max-width: 34rem;
  color: var(--ink-soft);
}

.hero-editorial-stage {
  position: relative;
  min-height: clamp(560px, 54vw, 740px);
}

.hero-stage-main,
.hero-stage-secondary {
  position: absolute;
  overflow: hidden;
  border-radius: 30px;
  background: #11161a;
  border: 1px solid rgba(255, 255, 255, 0.34);
  box-shadow: 0 30px 92px rgba(20, 20, 20, 0.18);
}

.hero-stage-main {
  inset: 0 0 auto auto;
  width: 86%;
  height: 58%;
  border-radius: 34px;
}

.hero-stage-main img,
.hero-stage-secondary img,
.authority-cta-panel img,
.final-cta-premium::before {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-stage-main::after,
.hero-stage-secondary::after,
.media-card-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(7, 9, 11, 0.02), rgba(7, 9, 11, 0.38));
  pointer-events: none;
}

.hero-stage-metrics {
  position: absolute;
  z-index: 3;
  left: 1%;
  top: 31%;
  width: min(430px, 54%);
  padding: 1.2rem;
  border-radius: 24px;
  color: #f7f1e7;
  background:
    radial-gradient(circle at 100% 0%, rgba(200, 161, 90, 0.2), transparent 40%),
    rgba(13, 17, 20, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 28px 84px rgba(0, 0, 0, 0.36);
  backdrop-filter: blur(20px);
}

.hero-stage-metrics p {
  margin: 0 0 0.85rem;
  color: rgba(247, 241, 231, 0.84);
}

.hero-stage-metrics-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
}

.hero-stage-metrics-grid div {
  display: grid;
  gap: 0.2rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.hero-stage-metrics-grid strong {
  color: var(--gold-soft);
  font-size: clamp(1.25rem, 2vw, 1.8rem);
}

.hero-stage-metrics-grid span {
  color: rgba(247, 241, 231, 0.66);
  font-size: 0.78rem;
  line-height: 1.45;
}

.hero-stage-stack {
  position: absolute;
  z-index: 2;
  left: 5%;
  right: 2%;
  bottom: 0;
  display: grid;
  grid-template-columns: 0.86fr 1.14fr;
  gap: 1.1rem;
  align-items: end;
}

.hero-stage-secondary {
  position: relative;
  min-height: clamp(230px, 27vw, 340px);
}

.hero-stage-secondary:nth-child(2) {
  min-height: clamp(300px, 34vw, 430px);
}

.hero-stage-caption {
  position: absolute;
  z-index: 2;
  inset: auto 1rem 1rem 1rem;
  display: grid;
  gap: 0.15rem;
  padding: 0.9rem;
  border-radius: 18px;
  background: rgba(9, 12, 15, 0.72);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(14px);
}

.hero-stage-caption strong {
  color: #fff;
}

.hero-stage-caption span {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.9rem;
}

.hero-trust-bar {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(1.8rem, 3vw, 2.5rem);
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(20, 20, 20, 0.09);
  background: rgba(20, 20, 20, 0.08);
  box-shadow: 0 18px 50px rgba(20, 20, 20, 0.08);
}

.hero-trust-bar article {
  display: grid;
  gap: 0.4rem;
  padding: 1.1rem;
  background: rgba(255, 255, 255, 0.72);
}

.hero-trust-bar strong {
  color: var(--ink);
}

.hero-trust-bar span {
  color: var(--ink-muted);
  line-height: 1.5;
  font-size: 0.92rem;
}

body[data-page="/"] .hero-logo-row {
  position: relative;
  z-index: 2;
  margin-top: 1rem;
  background: rgba(255, 255, 255, 0.62);
  border-color: rgba(20, 20, 20, 0.08);
  color: var(--ink-muted);
}

body[data-page="/"] .hero-logo-row strong {
  color: var(--ink);
}

.media-card-grid-services-editorial {
  grid-template-columns: 1.15fr 0.9fr 0.95fr;
  grid-auto-flow: dense;
}

.media-card-grid-services-editorial .media-card:nth-child(1),
.media-card-grid-services-editorial .media-card:nth-child(6) {
  grid-row: span 2;
}

.media-card-grid-services-editorial .media-card:nth-child(1) .media-card-image,
.media-card-grid-services-editorial .media-card:nth-child(6) .media-card-image {
  min-height: 360px;
}

body[data-page="/"] .media-card {
  border-radius: 26px;
  box-shadow: 0 22px 64px rgba(20, 20, 20, 0.12);
}

body[data-page="/"] .media-card-body {
  padding: 1.25rem;
}

body[data-page="/"] .media-card-body h3,
body[data-page="/"] .card h3 {
  letter-spacing: -0.035em;
}

.solutions-cinematic-frame.section-frame,
.projects-dark-frame.section-frame,
.faq-band-premium.section-frame,
.pricing-premium-frame.section-frame,
.final-cta-premium.section-frame {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 4%, rgba(200, 161, 90, 0.22), transparent 26rem),
    radial-gradient(circle at 16% 86%, rgba(52, 72, 89, 0.36), transparent 30rem),
    linear-gradient(135deg, #0b0f12, #151a1f 54%, #0d1114);
}

.solutions-cinematic-frame.section-frame::before,
.projects-dark-frame.section-frame::before,
.pricing-premium-frame.section-frame::before,
.faq-band-premium.section-frame::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
    linear-gradient(112deg, transparent 0 62%, rgba(200, 161, 90, 0.09) 62.2%, transparent 63%);
  background-size: 100% 78px, 100% 100%;
  opacity: 0.24;
  pointer-events: none;
}

.solutions-cinematic-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(260px, 0.42fr) minmax(0, 1fr);
  gap: clamp(1.6rem, 4vw, 3.4rem);
  align-items: start;
}

.solutions-cinematic-copy {
  position: sticky;
  top: 110px;
}

.solutions-cinematic-copy h2,
.projects-dark-frame h2,
.pricing-premium-frame h2,
.faq-band-premium h2,
.final-cta-premium h2 {
  color: #f9f2e7;
}

.media-card-grid-solutions {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.media-card-grid-solutions .media-card,
.media-card-grid-cases .media-card {
  min-height: 430px;
  grid-template-rows: 1fr;
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.12);
}

.media-card-grid-solutions .media-card-image,
.media-card-grid-cases .media-card-image {
  grid-area: 1 / 1;
  min-height: 100%;
}

.media-card-grid-solutions .media-card-body,
.media-card-grid-cases .media-card-body {
  position: relative;
  z-index: 2;
  grid-area: 1 / 1;
  align-self: end;
  background: linear-gradient(180deg, transparent, rgba(7, 9, 11, 0.88));
  color: #fff;
}

.media-card-grid-solutions .media-card-body p,
.media-card-grid-cases .media-card-body p,
.media-card-grid-solutions .media-card-link,
.media-card-grid-cases .media-card-link,
.media-card-grid-solutions .card-kicker,
.media-card-grid-cases .card-kicker {
  color: rgba(247, 241, 231, 0.78);
}

.media-card-grid-solutions .media-card-body h3,
.media-card-grid-cases .media-card-body h3 {
  color: #fff;
}

.benefit-ribbon {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.8rem;
  margin-top: 2rem;
}

.benefit-ribbon span {
  padding: 1rem;
  border-radius: 18px;
  color: rgba(247, 241, 231, 0.88);
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.process-editorial-timeline {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 2rem;
}

.process-editorial-timeline .timeline-step {
  position: relative;
  grid-template-columns: 1fr;
  min-height: 260px;
  padding: 1.35rem;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(242, 236, 224, 0.72)),
    radial-gradient(circle at top right, rgba(200, 161, 90, 0.18), transparent 34%);
  border: 1px solid rgba(20, 20, 20, 0.08);
}

.process-editorial-timeline .timeline-step::after {
  content: "";
  position: absolute;
  left: calc(100% + 0.2rem);
  top: 2.7rem;
  width: calc(1rem - 0.4rem);
  height: 1px;
  background: rgba(200, 161, 90, 0.42);
}

.process-editorial-timeline .timeline-step:last-child::after {
  display: none;
}

.process-editorial-timeline .timeline-step-number {
  background: transparent;
  color: var(--gold-muted);
  border: 1px solid rgba(200, 161, 90, 0.28);
}

.process-editorial-timeline .timeline-step strong {
  color: var(--ink);
  font-size: 1.08rem;
}

.process-editorial-timeline .timeline-step p {
  color: var(--ink-muted);
}

.goals-premium-frame .goal-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.goals-premium-frame .card {
  min-height: 250px;
  padding: 1.35rem;
}

.authority-split-frame .authority-split {
  grid-template-columns: minmax(0, 0.96fr) minmax(380px, 0.72fr);
}

.authority-cta-panel {
  position: sticky;
  top: 110px;
}

.pricing-premium-frame .dual-column {
  grid-template-columns: minmax(290px, 0.72fr) minmax(0, 1.28fr);
}

.pricing-premium-frame .dual-panel,
.faq-band-premium .dual-panel {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

.pricing-copy-panel,
.faq-band-premium .dual-panel:first-child {
  padding: clamp(1.4rem, 3vw, 2.2rem);
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.035)),
    radial-gradient(circle at top left, rgba(230, 209, 162, 0.12), transparent 34%);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.pricing-premium-frame .button-secondary {
  background: linear-gradient(135deg, #d8b66f, #b98d43);
  color: #141414 !important;
  border-color: rgba(255, 255, 255, 0.22);
}

.pricing-copy-panel h2,
.pricing-copy-panel p,
.faq-band-premium .dual-panel:first-child h2,
.faq-band-premium .dual-panel:first-child p {
  color: #f9f2e7;
}

.pricing-factors-panel {
  display: grid;
  gap: 1rem;
  align-content: start;
}

.pricing-page-card-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.pricing-page-card {
  min-height: 340px;
  color: #f9f2e7;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.035)),
    radial-gradient(circle at top right, rgba(200, 161, 90, 0.14), transparent 40%);
  border-color: rgba(255, 255, 255, 0.12);
}

.pricing-page-card:nth-child(2) {
  transform: translateY(-12px);
  border-color: rgba(230, 209, 162, 0.5);
  box-shadow:
    0 28px 88px rgba(0, 0, 0, 0.28),
    0 0 0 1px rgba(230, 209, 162, 0.14);
}

.pricing-page-card:nth-child(2)::before {
  content: "Mas consultado";
  display: inline-flex;
  width: fit-content;
  margin-bottom: 0.65rem;
  padding: 0.4rem 0.7rem;
  border-radius: 999px;
  background: linear-gradient(135deg, #d9b86f, #b58a42);
  color: #141414;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pricing-page-card h3,
.pricing-page-card p,
.pricing-page-card .card-link {
  color: inherit;
}

.pricing-page-card h3 {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

.pricing-page-card p {
  display: -webkit-box;
  overflow: hidden;
  color: rgba(247, 241, 231, 0.72);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 7;
}

.pricing-factor-grid {
  margin-top: 1rem;
  height: auto;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.faq-band-premium .dual-column {
  grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1fr);
}

.faq-band-premium .faq-list details {
  border-radius: 18px;
}

.faq-band-premium .faq-list summary {
  cursor: pointer;
}

.final-cta-premium.section-frame {
  min-height: 430px;
  padding: clamp(2rem, 5vw, 4.8rem);
}

.final-cta-premium::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(7, 9, 11, 0.84), rgba(7, 9, 11, 0.58), rgba(7, 9, 11, 0.78)),
    url("img/v2/hero-residencial.webp") center/cover;
  opacity: 0.9;
  pointer-events: none;
}

.final-cta-premium .split-section {
  position: relative;
  z-index: 1;
}

.final-cta-premium .cta-card .button-secondary {
  background: rgba(20, 20, 20, 0.045);
  color: #141414 !important;
  border-color: rgba(20, 20, 20, 0.12);
}

body[data-page="/"] .site-footer {
  margin-top: clamp(2rem, 5vw, 4rem);
  border-radius: 34px 34px 0 0;
}

@media (max-width: 1180px) {
  .hero-editorial-grid,
  .solutions-cinematic-grid,
  .pricing-premium-frame .dual-column,
  .authority-split-frame .authority-split,
  .faq-band-premium .dual-column {
    grid-template-columns: 1fr;
  }

  .hero-editorial-stage {
    min-height: 690px;
  }

  .solutions-cinematic-copy,
  .authority-cta-panel {
    position: static;
  }

  .media-card-grid-services-editorial,
  .media-card-grid-solutions,
  .media-card-grid-cases,
  .media-card-grid-resources,
  .pricing-page-card-grid,
  .process-editorial-timeline,
  .benefit-ribbon {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1100px) {
  body[data-page="/"] .site-header {
    align-items: flex-start;
  }

  body[data-page="/"] .nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  body[data-page="/"] .site-nav {
    position: absolute;
    right: 0;
    top: calc(100% + 0.45rem);
    display: none;
    flex-direction: column;
    align-items: stretch;
    width: min(340px, calc(100vw - 32px));
    padding: 1rem;
    border-radius: 24px;
    background: rgba(251, 248, 241, 0.98);
    border: 1px solid rgba(20, 20, 20, 0.08);
    box-shadow: 0 18px 48px rgba(20, 20, 20, 0.12);
  }

  body[data-page="/"] .site-nav.is-open {
    display: flex;
  }
}

@media (max-width: 800px) {
  body[data-page="/"] .page-shell,
  body[data-page="/"] .site-header,
  body[data-page="/"] .site-footer {
    width: min(100% - 24px, 100%);
  }

  .hero-home-editorial.section-frame {
    min-height: 0;
    padding: 1.35rem;
  }

  .hero-copy-editorial h1 {
    max-width: 12ch;
    font-size: clamp(3rem, 15vw, 4.8rem);
  }

  .hero-editorial-stage {
    min-height: 680px;
  }

  .hero-stage-main {
    width: 100%;
    height: 40%;
  }

  .hero-stage-metrics {
    left: 0.8rem;
    right: 0.8rem;
    top: 35%;
    width: auto;
  }

  .hero-stage-metrics-grid,
  .hero-trust-bar,
  .hero-stage-stack,
  .media-card-grid-services-editorial,
  .media-card-grid-solutions,
  .media-card-grid-cases,
  .media-card-grid-resources,
  .pricing-page-card-grid,
  .process-editorial-timeline,
  .benefit-ribbon,
  .goals-premium-frame .goal-card-grid {
    grid-template-columns: 1fr;
  }

  .hero-stage-stack {
    left: 0;
    right: 0;
  }

  .hero-stage-secondary,
  .hero-stage-secondary:nth-child(2) {
    min-height: 210px;
  }

  .media-card-grid-services-editorial .media-card:nth-child(1),
  .media-card-grid-services-editorial .media-card:nth-child(6) {
    grid-row: auto;
  }

  .media-card-grid-solutions .media-card,
  .media-card-grid-cases .media-card {
    min-height: 360px;
  }

  .pricing-page-card:nth-child(2) {
    transform: none;
  }

  .process-editorial-timeline .timeline-step::after {
    display: none;
  }

  body[data-page="/"] .site-nav {
    background: rgba(251, 248, 241, 0.98);
    border: 1px solid rgba(20, 20, 20, 0.08);
    box-shadow: 0 18px 48px rgba(20, 20, 20, 0.12);
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    scroll-behavior: auto !important;
    transition: none !important;
  }
}

/* V2.1: closer to the provided editorial reference */
body[data-page="/"] {
  --home-container: min(calc(100% - clamp(40px, 8vw, 96px)), 1180px);
}

body[data-page="/"] .page-shell {
  width: 100%;
  max-width: none;
  padding: 0;
}

body[data-page="/"] .site-header {
  width: 100%;
  max-width: none;
  top: 0;
  min-height: 70px;
  padding: 0.55rem clamp(18px, 4vw, 70px);
  border-radius: 0;
  background: rgba(249, 245, 237, 0.94);
  box-shadow: 0 1px 0 rgba(20, 20, 20, 0.08);
}

body[data-page="/"] .brand {
  min-width: 0;
}

body[data-page="/"] .brand-mark {
  font-family: "Inter", sans-serif;
  font-size: var(--brand-logo-size);
  font-weight: var(--brand-logo-weight);
  line-height: 0.98;
  letter-spacing: var(--brand-logo-tracking);
}

body[data-page="/"] .brand-wordmark {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.75rem;
  font-weight: 600;
  letter-spacing: -0.045em;
}

body[data-page="/"] .site-nav {
  gap: clamp(1rem, 2vw, 2.1rem);
}

body[data-page="/"] .site-nav a:not(.button) {
  font-size: 0.76rem;
  letter-spacing: 0.02em;
  text-transform: none;
}

body[data-page="/"] .button {
  min-height: 44px;
  padding: 0.75rem 1.05rem;
  font-size: 0.82rem;
}

body[data-page="/"] .content-band.section-frame,
body[data-page="/"] .content-section.section-frame {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(64px, 8vw, 112px) 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

body[data-page="/"] .content-band.section-light,
body[data-page="/"] .content-section.section-frame {
  background:
    radial-gradient(circle at 86% 6%, rgba(200, 161, 90, 0.08), transparent 25rem),
    linear-gradient(180deg, #fbf8f1, #f7f3eb);
}

body[data-page="/"] .content-band > *,
body[data-page="/"] .content-section > * {
  position: relative;
  z-index: 1;
  width: var(--home-container);
  margin-left: auto;
  margin-right: auto;
}

.hero-home-editorial.section-frame {
  width: 100%;
  max-width: none;
  min-height: 0;
  padding: clamp(54px, 7vw, 88px) 0 36px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background:
    radial-gradient(circle at 78% 10%, rgba(200, 161, 90, 0.11), transparent 25rem),
    linear-gradient(105deg, #fbf8f1 0%, #f7f1e7 58%, #ede2d1 100%);
}

.hero-home-editorial::before {
  opacity: 0.18;
  background-size: 100% 86px, 86px 100%;
}

.hero-editorial-grid {
  width: var(--home-container);
  margin: 0 auto;
  grid-template-columns: minmax(0, 0.86fr) minmax(520px, 1.14fr);
  min-height: clamp(560px, 57vw, 700px);
  gap: clamp(36px, 5vw, 72px);
}

.hero-copy-editorial {
  align-self: center;
  padding: 0;
}

.hero-copy-editorial h1 {
  max-width: 13.4ch;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(3.8rem, 5.8vw, 5.8rem);
  font-weight: 500;
  line-height: 0.96;
  letter-spacing: -0.048em;
}

.hero-copy-editorial .lead {
  max-width: 34rem;
  margin-top: 1.15rem;
  color: #5f5a50;
  font-size: 1.02rem;
  line-height: 1.66;
}

.hero-copy-editorial .hero-note {
  max-width: 32rem;
  margin-top: 1.1rem;
  font-size: 0.9rem;
  line-height: 1.6;
}

.hero-copy-editorial .cta-row {
  margin-top: 1.55rem;
}

.hero-editorial-stage {
  min-height: clamp(520px, 52vw, 660px);
}

.hero-stage-main {
  top: 0;
  right: 0;
  width: 88%;
  height: 48%;
  border-radius: 22px;
}

.hero-stage-metrics {
  left: 0;
  top: 29%;
  width: min(420px, 58%);
  padding: 1.05rem;
  border-radius: 14px;
}

.hero-stage-metrics-grid strong {
  font-size: clamp(1.12rem, 1.7vw, 1.55rem);
}

.hero-stage-stack {
  left: 13%;
  right: 2%;
  bottom: 0;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 1rem;
}

.hero-stage-secondary {
  min-height: clamp(210px, 23vw, 300px);
  border-radius: 18px;
}

.hero-stage-secondary:nth-child(2) {
  min-height: clamp(270px, 29vw, 380px);
}

.hero-stage-caption {
  border-radius: 12px;
}

.hero-copy-editorial .hero-trust-bar {
  width: min(100%, 620px);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 1.7rem 0 0;
  border-radius: 16px;
}

.hero-copy-editorial .hero-trust-bar article {
  padding: 0.9rem;
}

.hero-copy-editorial .hero-trust-bar strong {
  font-size: 0.95rem;
}

.hero-copy-editorial .hero-trust-bar span {
  font-size: 0.76rem;
}

body[data-page="/"] .hero-logo-row {
  display: none;
}

body[data-page="/"] .section-heading h2,
body[data-page="/"] .split-copy h2,
body[data-page="/"] .media-card-body h3,
body[data-page="/"] .card h3 {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 600;
  letter-spacing: -0.035em;
}

body[data-page="/"] .section-heading h2,
body[data-page="/"] .split-copy h2 {
  font-size: clamp(2.55rem, 4.6vw, 4.25rem);
  line-height: 0.98;
}

body[data-page="/"] .eyebrow {
  color: var(--gold-muted);
  font-family: "Inter", sans-serif;
  font-size: 0.69rem;
  letter-spacing: 0.16em;
}

.sector-showcase-frame.section-frame {
  padding-top: clamp(60px, 7vw, 92px);
}

.media-card-grid-sectors {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.media-card-grid-sectors .media-card:first-child {
  grid-row: auto;
}

.media-card-grid-sectors .media-card:first-child .media-card-image {
  min-height: 190px;
}

.media-card-grid-services-editorial {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.9rem;
}

.media-card-grid-services-editorial .media-card,
.media-card-grid-sectors .media-card,
.media-card-grid-resources .media-card {
  grid-template-rows: 170px 1fr;
  min-height: 0;
  border-radius: 12px;
  box-shadow: 0 12px 34px rgba(20, 20, 20, 0.08);
}

.media-card-grid-services-editorial .media-card:nth-child(1),
.media-card-grid-services-editorial .media-card:nth-child(6) {
  grid-row: auto;
}

.media-card-grid-services-editorial .media-card:nth-child(1) .media-card-image,
.media-card-grid-services-editorial .media-card:nth-child(6) .media-card-image {
  min-height: 170px;
}

body[data-page="/"] .media-card-body {
  padding: 1rem;
}

body[data-page="/"] .media-card-body h3 {
  font-size: clamp(1.25rem, 1.55vw, 1.55rem);
  line-height: 1.05;
}

body[data-page="/"] .media-card-body p {
  font-size: 0.84rem;
  line-height: 1.55;
}

.services-editorial-footer {
  margin-top: 1.35rem;
}

.solutions-cinematic-frame.section-frame,
.projects-dark-frame.section-frame,
.pricing-premium-frame.section-frame,
.faq-band-premium.section-frame {
  padding: clamp(70px, 8vw, 116px) 0;
  border-radius: 0;
  background:
    radial-gradient(circle at 86% 2%, rgba(200, 161, 90, 0.18), transparent 23rem),
    radial-gradient(circle at 16% 86%, rgba(56, 73, 86, 0.26), transparent 30rem),
    linear-gradient(135deg, #0b0f12, #14191e 54%, #0d1114);
}

.solutions-cinematic-grid {
  grid-template-columns: minmax(260px, 0.34fr) minmax(0, 0.66fr);
  gap: clamp(1.5rem, 4vw, 3.6rem);
}

.solutions-cinematic-copy h2 {
  font-size: clamp(2.4rem, 4vw, 3.9rem);
}

.media-card-grid-solutions,
.media-card-grid-cases {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.media-card-grid-solutions .media-card,
.media-card-grid-cases .media-card {
  min-height: 310px;
  border-radius: 14px;
}

.media-card-grid-cases .media-card.is-featured {
  grid-column: auto;
}

.benefit-ribbon {
  width: var(--home-container);
  margin-left: auto;
  margin-right: auto;
}

.process-editorial-timeline .timeline-step {
  min-height: 180px;
  border-radius: 14px;
  box-shadow: none;
}

.goals-premium-frame.section-frame {
  padding: 46px 0;
  background: #fbf8f1;
}

.goals-premium-frame .goals-strip-shell {
  grid-template-columns: minmax(260px, 0.42fr) minmax(0, 0.58fr);
  align-items: center;
}

.goals-premium-frame .goal-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.85rem;
}

.goals-premium-frame .card {
  min-height: 160px;
  padding: 1rem;
  border-radius: 12px;
  box-shadow: none;
}

.authority-split-frame.section-frame {
  padding: clamp(64px, 8vw, 104px) 0;
}

.authority-split-frame .authority-split {
  grid-template-columns: minmax(0, 0.9fr) minmax(340px, 0.52fr);
}

.pricing-premium-frame .dual-column {
  grid-template-columns: minmax(280px, 0.34fr) minmax(0, 0.66fr);
  gap: clamp(1.4rem, 4vw, 3.4rem);
}

.pricing-premium-frame .pricing-page-card-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

body[data-page="/"] .pricing-premium-frame .pricing-page-card {
  min-height: 360px;
  padding: 1.15rem;
  color: #f8f0e5;
  border-color: rgba(200, 161, 90, 0.26);
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.025)),
    radial-gradient(circle at top right, rgba(200, 161, 90, 0.1), transparent 42%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

body[data-page="/"] .pricing-premium-frame .pricing-page-card:nth-child(2) {
  transform: translateY(-12px);
  background:
    linear-gradient(180deg, rgba(200, 161, 90, 0.18), rgba(255, 255, 255, 0.035)),
    radial-gradient(circle at top right, rgba(230, 209, 162, 0.2), transparent 42%);
  border-color: rgba(230, 209, 162, 0.62);
}

body[data-page="/"] .pricing-premium-frame .pricing-page-card p {
  color: rgba(248, 240, 229, 0.72);
}

.pricing-factor-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pricing-factor-card {
  border-radius: 12px;
}

.resources-editorial-frame.section-frame {
  padding-bottom: clamp(62px, 7vw, 98px);
}

.media-card-grid-resources {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.faq-band-premium .dual-column {
  grid-template-columns: minmax(280px, 0.4fr) minmax(0, 0.6fr);
  gap: clamp(1.4rem, 4vw, 3.4rem);
}

.faq-band-premium .dual-panel:first-child,
.faq-side-card {
  border-radius: 18px;
}

.final-cta-premium.section-frame {
  width: var(--home-container);
  margin: clamp(40px, 6vw, 72px) auto 0;
  padding: clamp(42px, 6vw, 74px);
  border-radius: 24px;
}

body[data-page="/"] .site-footer {
  width: 100%;
  max-width: none;
  margin-top: 0;
  padding: clamp(44px, 6vw, 72px) clamp(24px, 6vw, 92px);
  border-radius: 0;
}

@media (max-width: 1180px) {
  .hero-editorial-grid,
  .solutions-cinematic-grid,
  .pricing-premium-frame .dual-column,
  .authority-split-frame .authority-split,
  .faq-band-premium .dual-column,
  .goals-premium-frame .goals-strip-shell {
    grid-template-columns: 1fr;
  }

  .hero-editorial-stage {
    min-height: 620px;
  }

  .media-card-grid-services-editorial,
  .media-card-grid-solutions,
  .media-card-grid-cases,
  .media-card-grid-resources,
  .pricing-premium-frame .pricing-page-card-grid,
  .process-editorial-timeline,
  .benefit-ribbon {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 800px) {
  body[data-page="/"] {
    --home-container: min(calc(100% - 28px), 520px);
  }

  .hero-home-editorial.section-frame {
    padding-top: 34px;
  }

  .hero-editorial-grid {
    min-height: 0;
  }

  .hero-copy-editorial h1 {
    max-width: 12.5ch;
    font-size: clamp(3.1rem, 14vw, 4.35rem);
  }

  .hero-copy-editorial .hero-trust-bar,
  .media-card-grid-sectors,
  .media-card-grid-services-editorial,
  .media-card-grid-solutions,
  .media-card-grid-cases,
  .media-card-grid-resources,
  .pricing-premium-frame .pricing-page-card-grid,
  .process-editorial-timeline,
  .benefit-ribbon,
  .pricing-factor-grid,
  .goals-premium-frame .goal-card-grid {
    grid-template-columns: 1fr;
  }

  .hero-editorial-stage {
    min-height: 560px;
  }

  .hero-stage-main {
    width: 100%;
    height: 38%;
  }

  .hero-stage-metrics {
    top: 32%;
    left: 12px;
    right: 12px;
    width: auto;
  }

  .hero-stage-stack {
    left: 0;
    right: 0;
    grid-template-columns: 1fr;
  }

  .hero-stage-secondary,
  .hero-stage-secondary:nth-child(2) {
    min-height: 160px;
  }

  body[data-page="/"] .content-band.section-frame,
  body[data-page="/"] .content-section.section-frame {
    padding: 54px 0;
  }

  .final-cta-premium.section-frame {
    width: var(--home-container);
    padding: 28px 18px;
  }
}

/* V2.2: stronger editorial scale and more cinematic composition */
body[data-page="/"] {
  --home-container: min(calc(100% - clamp(40px, 7vw, 104px)), 1240px);
}

body[data-page="/"] .site-header {
  min-height: 76px;
  padding-inline: clamp(22px, 4.6vw, 78px);
}

.hero-home-editorial.section-frame {
  padding-top: clamp(46px, 5vw, 68px);
  padding-bottom: clamp(42px, 5vw, 64px);
}

.hero-editorial-grid {
  align-items: start;
  grid-template-columns: minmax(390px, 0.43fr) minmax(620px, 0.57fr);
  gap: clamp(28px, 4vw, 58px);
  min-height: clamp(700px, 57vw, 780px);
}

.hero-copy-editorial {
  padding-top: clamp(56px, 6vw, 92px);
}

.hero-copy-editorial h1 {
  max-width: 12.7ch;
  font-size: clamp(4.25rem, 6.45vw, 6.65rem);
  line-height: 0.91;
}

.hero-copy-editorial .lead {
  max-width: 35rem;
  font-size: clamp(1rem, 1vw, 1.12rem);
}

.hero-editorial-stage {
  min-height: clamp(650px, 55vw, 760px);
  margin-top: -10px;
  transform: translateX(clamp(12px, 2.2vw, 34px));
}

.hero-stage-main {
  right: 0;
  width: 94%;
  height: 55%;
  border-radius: 24px;
  box-shadow: 0 34px 96px rgba(20, 20, 20, 0.2);
}

.hero-stage-metrics {
  left: -7%;
  top: 27%;
  width: min(440px, 61%);
  padding: 1.18rem;
  border-radius: 16px;
  box-shadow: 0 26px 86px rgba(0, 0, 0, 0.38);
}

.hero-stage-stack {
  left: 2%;
  right: -1%;
  bottom: 2px;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 1.1rem;
}

.hero-stage-secondary {
  min-height: clamp(230px, 24vw, 320px);
  border-radius: 20px;
}

.hero-stage-secondary:nth-child(2) {
  min-height: clamp(300px, 31vw, 420px);
  transform: translateY(-18px);
}

.hero-copy-editorial .hero-trust-bar {
  margin-top: 1.85rem;
  box-shadow: 0 16px 50px rgba(20, 20, 20, 0.08);
}

body[data-page="/"] .content-band.section-frame,
body[data-page="/"] .content-section.section-frame {
  padding-block: clamp(78px, 9vw, 138px);
}

.sector-showcase-frame.section-frame {
  padding-top: clamp(72px, 8vw, 118px);
}

.media-card-grid-sectors {
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.9fr) minmax(0, 0.9fr);
  gap: 1.15rem;
}

.media-card-grid-sectors .media-card {
  border-radius: 18px;
}

.media-card-grid-sectors .media-card:first-child {
  transform: translateY(-20px);
}

.media-card-grid-sectors .media-card:first-child .media-card-image {
  min-height: 250px;
}

.media-card-grid-services-editorial {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1rem;
}

.media-card-grid-services-editorial .media-card {
  grid-column: span 2;
  border-radius: 16px;
}

.media-card-grid-services-editorial .media-card:nth-child(1),
.media-card-grid-services-editorial .media-card:nth-child(4) {
  grid-column: span 3;
  transform: translateY(-16px);
}

.media-card-grid-services-editorial .media-card:nth-child(2),
.media-card-grid-services-editorial .media-card:nth-child(5) {
  grid-column: span 2;
}

.media-card-grid-services-editorial .media-card:nth-child(3),
.media-card-grid-services-editorial .media-card:nth-child(6) {
  grid-column: span 2;
  transform: translateY(16px);
}

.media-card-grid-services-editorial .media-card .media-card-image {
  min-height: 188px;
}

.solutions-cinematic-frame.section-frame,
.projects-dark-frame.section-frame,
.pricing-premium-frame.section-frame,
.faq-band-premium.section-frame {
  padding-block: clamp(84px, 9vw, 136px);
  background:
    radial-gradient(circle at 82% 4%, rgba(200, 161, 90, 0.24), transparent 24rem),
    radial-gradient(circle at 9% 78%, rgba(67, 90, 106, 0.28), transparent 32rem),
    linear-gradient(135deg, #080c0f, #13181d 52%, #090d10);
}

.solutions-cinematic-grid {
  grid-template-columns: minmax(280px, 0.32fr) minmax(0, 0.68fr);
}

.media-card-grid-solutions,
.media-card-grid-cases {
  gap: 1.1rem;
}

.media-card-grid-solutions .media-card,
.media-card-grid-cases .media-card {
  min-height: 350px;
  border-radius: 20px;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
}

.media-card-grid-solutions .media-card:first-child,
.media-card-grid-cases .media-card:first-child {
  transform: translateY(-20px);
}

.media-card-grid-solutions .media-card:nth-child(3),
.media-card-grid-cases .media-card:nth-child(3) {
  transform: translateY(18px);
}

.process-editorial-frame.section-frame {
  padding-block: clamp(70px, 7vw, 108px);
}

.process-editorial-timeline .timeline-step {
  min-height: 168px;
  border-radius: 18px;
}

.pricing-premium-frame .dual-column {
  grid-template-columns: minmax(320px, 0.31fr) minmax(0, 0.69fr);
}

body[data-page="/"] .pricing-premium-frame .pricing-page-card {
  min-height: 390px;
  border-radius: 18px;
}

body[data-page="/"] .pricing-premium-frame .pricing-page-card:nth-child(2) {
  transform: translateY(-22px) scale(1.025);
  box-shadow:
    0 28px 90px rgba(200, 161, 90, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.final-cta-premium.section-frame {
  min-height: 490px;
  margin-top: clamp(52px, 7vw, 92px);
  padding: clamp(54px, 7vw, 92px);
  border-radius: 30px;
}

.final-cta-premium .split-section {
  min-height: 300px;
  align-items: end;
}

.final-cta-premium h2 {
  max-width: 11ch;
  font-size: clamp(3rem, 5.4vw, 5.4rem);
  line-height: 0.92;
}

@media (max-width: 1180px) {
  .hero-editorial-grid {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .hero-copy-editorial {
    padding-top: 18px;
  }

  .hero-editorial-stage {
    width: min(100%, 780px);
    margin-inline: auto;
    transform: none;
  }

  .hero-stage-metrics {
    left: 4%;
  }

  .media-card-grid-sectors,
  .media-card-grid-services-editorial,
  .media-card-grid-solutions,
  .media-card-grid-cases,
  .pricing-premium-frame .pricing-page-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .media-card-grid-services-editorial .media-card,
  .media-card-grid-services-editorial .media-card:nth-child(1),
  .media-card-grid-services-editorial .media-card:nth-child(2),
  .media-card-grid-services-editorial .media-card:nth-child(3),
  .media-card-grid-services-editorial .media-card:nth-child(4),
  .media-card-grid-services-editorial .media-card:nth-child(5),
  .media-card-grid-services-editorial .media-card:nth-child(6) {
    grid-column: auto;
    transform: none;
  }
}

@media (max-width: 800px) {
  body[data-page="/"] .site-header {
    min-height: 66px;
  }

  .hero-home-editorial.section-frame {
    padding-top: 24px;
  }

  .hero-copy-editorial h1 {
    max-width: 11.7ch;
    font-size: clamp(3rem, 13.2vw, 4.05rem);
  }

  .hero-copy-editorial .hero-trust-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hero-copy-editorial .hero-trust-bar article {
    padding: 0.82rem;
  }

  .hero-editorial-stage {
    min-height: 510px;
  }

  .hero-stage-main {
    height: 40%;
  }

  .hero-stage-metrics {
    top: 30%;
    left: 10px;
    right: 10px;
    width: auto;
  }

  .hero-stage-stack {
    gap: 0.75rem;
  }

  .hero-stage-secondary,
  .hero-stage-secondary:nth-child(2) {
    min-height: 142px;
    transform: none;
  }

  body[data-page="/"] .content-band.section-frame,
  body[data-page="/"] .content-section.section-frame {
    padding-block: 64px;
  }

  .media-card-grid-sectors,
  .media-card-grid-services-editorial,
  .media-card-grid-solutions,
  .media-card-grid-cases,
  .pricing-premium-frame .pricing-page-card-grid {
    grid-template-columns: 1fr;
  }

  .media-card-grid-sectors .media-card:first-child,
  .media-card-grid-solutions .media-card:first-child,
  .media-card-grid-cases .media-card:first-child,
  .media-card-grid-solutions .media-card:nth-child(3),
  .media-card-grid-cases .media-card:nth-child(3),
  body[data-page="/"] .pricing-premium-frame .pricing-page-card:nth-child(2) {
    transform: none;
  }

  .final-cta-premium.section-frame {
    min-height: 0;
    border-radius: 22px;
  }
}

/* V2.3: tighter first fold, closer to the supplied hero reference */
@media (min-width: 1181px) {
  .hero-home-editorial.section-frame {
    padding-top: clamp(24px, 3vw, 38px);
  }

  .hero-editorial-grid {
    min-height: clamp(620px, 52vw, 710px);
  }

  .hero-copy-editorial {
    padding-top: 0;
  }

  .hero-copy-editorial h1 {
    max-width: 14.1ch;
    font-size: clamp(3.95rem, 5.85vw, 6.08rem);
    line-height: 0.92;
  }

  .hero-editorial-stage {
    min-height: clamp(620px, 52vw, 710px);
    margin-top: 0;
  }

  .hero-stage-main {
    height: 56%;
  }

  .hero-stage-metrics {
    top: 29%;
  }
}

@media (max-width: 800px) {
  .hero-copy-editorial h1 {
    max-width: 11.8ch;
    font-size: clamp(2.85rem, 12.4vw, 3.95rem);
  }
}

/* V2.4: keep the six service cards intentional without orphan rows */
@media (min-width: 1181px) {
  .media-card-grid-services-editorial {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .media-card-grid-services-editorial .media-card,
  .media-card-grid-services-editorial .media-card:nth-child(1),
  .media-card-grid-services-editorial .media-card:nth-child(2),
  .media-card-grid-services-editorial .media-card:nth-child(3),
  .media-card-grid-services-editorial .media-card:nth-child(4),
  .media-card-grid-services-editorial .media-card:nth-child(5),
  .media-card-grid-services-editorial .media-card:nth-child(6) {
    grid-column: auto;
  }

  .media-card-grid-services-editorial .media-card:nth-child(1),
  .media-card-grid-services-editorial .media-card:nth-child(4) {
    transform: translateY(-14px);
  }

  .media-card-grid-services-editorial .media-card:nth-child(3),
  .media-card-grid-services-editorial .media-card:nth-child(6) {
    transform: translateY(14px);
  }
}

/* V2.5: global dark premium direction for all inner pages */
body:not([data-page="/"]) {
  --bg: #030404;
  --bg-soft: #070808;
  --panel: rgba(12, 12, 11, 0.72);
  --panel-strong: rgba(18, 18, 16, 0.9);
  --surface: rgba(14, 14, 13, 0.86);
  --surface-strong: rgba(20, 20, 18, 0.94);
  --surface-muted: rgba(255, 255, 255, 0.055);
  --text: #f7f2e8;
  --text-muted: rgba(247, 242, 232, 0.66);
  --text-dark: #fbf7ef;
  --text-soft-dark: rgba(247, 242, 232, 0.68);
  --accent: #bd9041;
  --accent-soft: #e3c477;
  --accent-strong: #d6aa55;
  --teal: #151b1c;
  --line: rgba(227, 196, 119, 0.15);
  --line-dark: rgba(255, 255, 255, 0.1);
  --shadow: 0 28px 86px rgba(0, 0, 0, 0.34);
  --shadow-strong: 0 44px 140px rgba(0, 0, 0, 0.58);
  --shadow-soft: 0 20px 56px rgba(0, 0, 0, 0.28);
  background:
    radial-gradient(circle at 78% -10%, rgba(189, 144, 65, 0.12), transparent 32rem),
    radial-gradient(circle at 12% 8%, rgba(255, 255, 255, 0.045), transparent 22rem),
    linear-gradient(180deg, #030404 0%, #060707 42%, #030404 100%);
  color: var(--text);
}

body:not([data-page="/"])::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.022) 1px, transparent 1px);
  background-size: 92px 92px;
  mask-image: radial-gradient(circle at 50% 0%, rgba(0, 0, 0, 0.65), transparent 68%);
  opacity: 0.38;
}

body:not([data-page="/"]) .site-header {
  top: 0;
  width: min(100%, 100vw);
  max-width: none;
  margin: 0;
  padding: 1rem clamp(1rem, 4vw, 4.5rem);
  border-width: 0 0 1px;
  border-radius: 0;
  background:
    linear-gradient(180deg, rgba(3, 4, 4, 0.92), rgba(3, 4, 4, 0.76)),
    radial-gradient(circle at 0% 0%, rgba(189, 144, 65, 0.12), transparent 28rem);
  border-color: rgba(227, 196, 119, 0.12);
  box-shadow: 0 20px 70px rgba(0, 0, 0, 0.38);
}

body:not([data-page="/"]) .brand,
body:not([data-page="/"]) .brand-mark,
body:not([data-page="/"]) .brand-wordmark {
  color: #fff8ee;
}

body:not([data-page="/"]) .site-nav {
  gap: clamp(1rem, 2vw, 1.75rem);
}

body:not([data-page="/"]) .site-nav a {
  color: rgba(255, 248, 238, 0.78);
  font-size: 0.84rem;
  font-weight: 600;
  letter-spacing: 0;
}

body:not([data-page="/"]) .site-nav a:hover,
body:not([data-page="/"]) .site-nav a.is-active {
  color: #ffffff;
}

body:not([data-page="/"]) .nav-toggle {
  position: relative;
  width: 48px;
  height: 48px;
  border-color: rgba(227, 196, 119, 0.2);
  border-radius: 999px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02)),
    rgba(8, 8, 7, 0.76);
  color: transparent;
  font-size: 0;
  box-shadow:
    0 18px 46px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body:not([data-page="/"]) .nav-toggle::before,
body:not([data-page="/"]) .nav-toggle::after {
  content: "";
  position: absolute;
  left: 15px;
  width: 18px;
  height: 1.5px;
  border-radius: 99px;
  background: #fff8ee;
  box-shadow: 0 6px 0 rgba(255, 248, 238, 0.72);
}

body:not([data-page="/"]) .nav-toggle::before {
  top: 17px;
}

body:not([data-page="/"]) .nav-toggle::after {
  top: 29px;
  left: 23px;
  width: 10px;
  box-shadow: none;
}

body:not([data-page="/"]) .nav-cta,
body:not([data-page="/"]) .button-primary {
  color: #17130b;
  border: 1px solid rgba(242, 203, 120, 0.38);
  background:
    linear-gradient(135deg, #a8742d 0%, #d4a94f 46%, #f0cf84 100%),
    radial-gradient(circle at 30% 0%, rgba(255, 255, 255, 0.5), transparent 42%);
  box-shadow:
    0 18px 52px rgba(189, 144, 65, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.34);
}

body:not([data-page="/"]) .button-secondary {
  color: #fff8ee;
  border: 1px solid rgba(227, 196, 119, 0.38);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.015)),
    rgba(0, 0, 0, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body:not([data-page="/"]) .button:hover,
body:not([data-page="/"]) .nav-cta:hover {
  transform: translateY(-2px);
  box-shadow:
    0 24px 64px rgba(0, 0, 0, 0.38),
    0 0 36px rgba(189, 144, 65, 0.18);
}

body:not([data-page="/"]) .page-shell {
  padding-top: clamp(2.4rem, 5vw, 5.4rem);
}

body:not([data-page="/"]) .breadcrumb {
  color: rgba(247, 242, 232, 0.42);
}

body:not([data-page="/"]) .hero,
body:not([data-page="/"]) .section-frame,
body:not([data-page="/"]) .content-section,
body:not([data-page="/"]) .content-band {
  border-color: rgba(227, 196, 119, 0.13);
  background:
    linear-gradient(135deg, rgba(16, 16, 15, 0.92), rgba(6, 7, 7, 0.92)),
    radial-gradient(circle at 78% 8%, rgba(189, 144, 65, 0.14), transparent 28rem),
    radial-gradient(circle at 0% 92%, rgba(255, 255, 255, 0.04), transparent 22rem);
  box-shadow: var(--shadow-strong);
}

body:not([data-page="/"]) .hero::before,
body:not([data-page="/"]) .section-frame::before,
body:not([data-page="/"]) .hero-immersive::before {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent 30%),
    linear-gradient(90deg, rgba(189, 144, 65, 0.075), transparent 28%, transparent 74%, rgba(227, 196, 119, 0.055));
}

body:not([data-page="/"]) .hero::after,
body:not([data-page="/"]) .content-section::after,
body:not([data-page="/"]) .content-band::after {
  background: radial-gradient(circle, rgba(189, 144, 65, 0.18), transparent 70%);
  opacity: 0.78;
}

body:not([data-page="/"]) .hero h1,
body:not([data-page="/"]) .section-heading h2,
body:not([data-page="/"]) .split-copy h2,
body:not([data-page="/"]) .media-card-body h3,
body:not([data-page="/"]) .card h3,
body:not([data-page="/"]) .hero-tool-panel h3,
body:not([data-page="/"]) .services-story-overlay h3 {
  color: #fff8ee;
  letter-spacing: -0.035em;
}

body:not([data-page="/"]) .lead,
body:not([data-page="/"]) p,
body:not([data-page="/"]) li,
body:not([data-page="/"]) .hero-note,
body:not([data-page="/"]) .media-card-body p,
body:not([data-page="/"]) .card p,
body:not([data-page="/"]) .interface-panel p {
  color: var(--text-muted);
}

body:not([data-page="/"]) .eyebrow,
body:not([data-page="/"]) .panel-label,
body:not([data-page="/"]) .card-kicker,
body:not([data-page="/"]) .metric-label {
  color: var(--accent-soft);
}

body:not([data-page="/"]) .meta-strip span,
body:not([data-page="/"]) .stat-pill,
body:not([data-page="/"]) .hero-metric-row article,
body:not([data-page="/"]) .stacked-stat,
body:not([data-page="/"]) .pricing-page-card,
body:not([data-page="/"]) .pricing-card,
body:not([data-page="/"]) .card,
body:not([data-page="/"]) .media-card,
body:not([data-page="/"]) .interface-panel,
body:not([data-page="/"]) .hero-interface-card,
body:not([data-page="/"]) .hero-tool-panel,
body:not([data-page="/"]) .hero-dashboard,
body:not([data-page="/"]) .tool-card,
body:not([data-page="/"]) .calculator-choice,
body:not([data-page="/"]) .calculator-live-estimate,
body:not([data-page="/"]) .calculator-warning,
body:not([data-page="/"]) .calculator-highlight,
body:not([data-page="/"]) .faq-item,
body:not([data-page="/"]) details,
body:not([data-page="/"]) .contact-channel {
  color: #fff8ee;
  border: 1px solid rgba(227, 196, 119, 0.13);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.025)),
    rgba(8, 8, 7, 0.72);
  box-shadow:
    0 26px 72px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .media-card,
body:not([data-page="/"]) .pricing-page-card,
body:not([data-page="/"]) .card,
body:not([data-page="/"]) .tool-card {
  transition:
    transform 520ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 520ms ease,
    box-shadow 520ms ease;
}

body:not([data-page="/"]) .media-card:hover,
body:not([data-page="/"]) .pricing-page-card:hover,
body:not([data-page="/"]) .card:hover,
body:not([data-page="/"]) .tool-card:hover {
  transform: translateY(-6px);
  border-color: rgba(227, 196, 119, 0.32);
  box-shadow:
    0 36px 92px rgba(0, 0, 0, 0.48),
    0 0 42px rgba(189, 144, 65, 0.12);
}

body:not([data-page="/"]) .media-card.is-featured,
body:not([data-page="/"]) .media-card.is-wide {
  background:
    linear-gradient(180deg, rgba(227, 196, 119, 0.08), rgba(255, 255, 255, 0.026)),
    rgba(9, 9, 8, 0.82);
}

body:not([data-page="/"]) .media-card-image,
body:not([data-page="/"]) .hero-media-card,
body:not([data-page="/"]) .visual-frame,
body:not([data-page="/"]) .dual-visual,
body:not([data-page="/"]) .trust-logos,
body:not([data-page="/"]) .hero-collage-main,
body:not([data-page="/"]) .hero-collage-stack article {
  overflow: hidden;
  border: 1px solid rgba(227, 196, 119, 0.12);
  background: rgba(0, 0, 0, 0.58);
  box-shadow: 0 30px 84px rgba(0, 0, 0, 0.42);
}

body:not([data-page="/"]) .media-card-image::after,
body:not([data-page="/"]) .hero-media-card::after,
body:not([data-page="/"]) .hero-collage-main::after,
body:not([data-page="/"]) .hero-collage-stack article::after {
  background:
    linear-gradient(180deg, transparent 42%, rgba(0, 0, 0, 0.76)),
    radial-gradient(circle at 0% 0%, rgba(227, 196, 119, 0.16), transparent 36%);
}

body:not([data-page="/"]) .media-card-image img,
body:not([data-page="/"]) .hero-media-card img,
body:not([data-page="/"]) .hero-collage img,
body:not([data-page="/"]) .dual-visual img,
body:not([data-page="/"]) .visual-frame img,
body:not([data-page="/"]) .trust-logos img {
  filter: brightness(0.62) contrast(1.08) saturate(0.92);
}

body:not([data-page="/"]) .media-card:hover .media-card-image img {
  filter: brightness(0.76) contrast(1.12) saturate(1);
}

body:not([data-page="/"]) .media-card-link,
body:not([data-page="/"]) .icon-pill,
body:not([data-page="/"]) .service-icon,
body:not([data-page="/"]) .hero-option.is-active {
  color: var(--accent-soft);
  border-color: rgba(227, 196, 119, 0.36);
  background:
    radial-gradient(circle at 35% 20%, rgba(227, 196, 119, 0.24), transparent 48%),
    rgba(189, 144, 65, 0.07);
}

body:not([data-page="/"]) .interface-list div,
body:not([data-page="/"]) .hero-option,
body:not([data-page="/"]) .hero-dashboard-grid article,
body:not([data-page="/"]) .process-step,
body:not([data-page="/"]) .checklist li {
  border-color: rgba(227, 196, 119, 0.11);
  background: rgba(255, 255, 255, 0.045);
}

body:not([data-page="/"]) .hero-metric-row strong,
body:not([data-page="/"]) .stacked-stat strong,
body:not([data-page="/"]) .interface-list strong,
body:not([data-page="/"]) .calculator-choice strong,
body:not([data-page="/"]) .hero-dashboard-grid strong {
  color: #fff8ee;
}

body:not([data-page="/"]) input,
body:not([data-page="/"]) textarea,
body:not([data-page="/"]) select {
  color: #fff8ee;
  border-color: rgba(227, 196, 119, 0.18);
  background: rgba(0, 0, 0, 0.42);
}

body:not([data-page="/"]) input::placeholder,
body:not([data-page="/"]) textarea::placeholder {
  color: rgba(247, 242, 232, 0.44);
}

body:not([data-page="/"]) .calculator-highlight {
  background:
    linear-gradient(135deg, rgba(189, 144, 65, 0.18), rgba(255, 255, 255, 0.035)),
    rgba(7, 7, 6, 0.76);
}

body:not([data-page="/"]) .calculator-warning {
  background:
    linear-gradient(180deg, rgba(227, 196, 119, 0.09), rgba(255, 255, 255, 0.026)),
    rgba(7, 7, 6, 0.76);
}

body:not([data-page="/"]) .tool-progress,
body:not([data-page="/"]) .hero-tool-progress {
  background: rgba(255, 255, 255, 0.08);
}

body:not([data-page="/"]) .tool-progress span,
body:not([data-page="/"]) .hero-tool-progress span {
  background: linear-gradient(90deg, #9d6e28, #e0bd72);
  box-shadow: 0 0 24px rgba(224, 189, 114, 0.24);
}

body:not([data-page="/"]) .section-dark.section-frame,
body:not([data-page="/"]) .section-dark,
body:not([data-page="/"]) .final-cta-band.section-frame,
body:not([data-page="/"]) .final-cta-premium.section-frame {
  background:
    linear-gradient(135deg, rgba(2, 3, 3, 0.98), rgba(13, 13, 12, 0.96)),
    radial-gradient(circle at 85% 0%, rgba(189, 144, 65, 0.18), transparent 30rem);
  color: #fff8ee;
}

body:not([data-page="/"]) .site-footer {
  border-color: rgba(227, 196, 119, 0.14);
  background:
    linear-gradient(180deg, rgba(5, 5, 5, 0.98), #020202),
    radial-gradient(circle at 100% 0%, rgba(189, 144, 65, 0.18), transparent 30rem);
  box-shadow: 0 34px 100px rgba(0, 0, 0, 0.5);
}

@media (max-width: 980px) {
  body:not([data-page="/"]) .site-header {
    padding: 0.8rem 1rem;
  }

  body:not([data-page="/"]) .site-nav {
    background:
      linear-gradient(180deg, rgba(8, 8, 7, 0.98), rgba(4, 4, 4, 0.98)),
      radial-gradient(circle at top, rgba(189, 144, 65, 0.16), transparent 18rem);
    border: 1px solid rgba(227, 196, 119, 0.16);
    box-shadow: 0 30px 84px rgba(0, 0, 0, 0.48);
  }

  body:not([data-page="/"]) .hero,
  body:not([data-page="/"]) .section-frame {
    border-radius: 28px;
  }
}

/* V3.24: interior pages, dark cinematic premium system */
body:not([data-page="/"]) {
  --inner-black: #020303;
  --inner-graphite: #080908;
  --inner-panel: rgba(11, 11, 10, 0.78);
  --inner-panel-strong: rgba(16, 15, 13, 0.9);
  --inner-line: rgba(223, 188, 111, 0.15);
  --inner-line-strong: rgba(223, 188, 111, 0.32);
  --inner-gold: #bd9041;
  --inner-gold-soft: #e2c275;
  --inner-text: #fff8ee;
  --inner-muted: rgba(255, 248, 238, 0.64);
  background:
    radial-gradient(circle at 12% 7%, rgba(226, 194, 117, 0.1), transparent 24rem),
    radial-gradient(circle at 84% 18%, rgba(255, 255, 255, 0.035), transparent 30rem),
    linear-gradient(180deg, #020303 0%, #050606 48%, #020303 100%);
}

body:not([data-page="/"])::before {
  background:
    linear-gradient(118deg, transparent 0 46%, rgba(223, 188, 111, 0.1) 46.12%, transparent 46.7% 100%),
    linear-gradient(126deg, transparent 0 68%, rgba(223, 188, 111, 0.075) 68.1%, transparent 68.5% 100%),
    radial-gradient(circle at 0% 26%, rgba(223, 188, 111, 0.08), transparent 24rem),
    radial-gradient(circle at 100% 72%, rgba(223, 188, 111, 0.07), transparent 22rem);
  background-size: 100% 100%, 100% 100%, auto, auto;
  mask-image: none;
  opacity: 0.62;
}

body:not([data-page="/"]) .page-shell {
  width: min(1160px, calc(100vw - clamp(28px, 7vw, 112px)));
  padding-top: clamp(2.7rem, 5vw, 5.2rem);
}

body:not([data-page="/"]) .breadcrumb,
body:not([data-page="/"]) .breadcrumbs {
  display: none;
}

body:not([data-page="/"]) .site-header {
  min-height: 78px;
  padding-inline: clamp(1rem, 4vw, 4.7rem);
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.9), rgba(3, 4, 4, 0.68)),
    radial-gradient(circle at 100% 0%, rgba(223, 188, 111, 0.1), transparent 28rem);
  backdrop-filter: blur(22px);
}

body:not([data-page="/"]) .brand-mark {
  font-size: clamp(1.55rem, 2vw, 2.05rem);
  letter-spacing: -0.05em;
}

body:not([data-page="/"]) .site-nav a {
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0;
}

body:not([data-page="/"]) .nav-cta {
  color: var(--inner-text);
  border-color: rgba(226, 194, 117, 0.55);
  background:
    linear-gradient(180deg, rgba(226, 194, 117, 0.08), rgba(0, 0, 0, 0.3)),
    rgba(0, 0, 0, 0.2);
}

body:not([data-page="/"]) .hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(360px, 0.96fr);
  gap: clamp(2rem, 4.4vw, 4.6rem);
  min-height: auto;
  padding: clamp(2.4rem, 5vw, 4.9rem);
  margin-bottom: clamp(1.2rem, 2vw, 1.8rem);
  border-radius: 26px;
  border-color: var(--inner-line);
  background:
    linear-gradient(105deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.82) 36%, rgba(12, 12, 11, 0.72) 62%, rgba(3, 4, 4, 0.94) 100%),
    radial-gradient(circle at 68% 18%, rgba(226, 194, 117, 0.14), transparent 24rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.01));
  overflow: hidden;
  box-shadow: 0 40px 140px rgba(0, 0, 0, 0.62);
}

body:not([data-page="/"]) .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(115deg, rgba(223, 188, 111, 0.14) 0 1px, transparent 1px 58%),
    radial-gradient(circle at 82% 12%, rgba(255, 255, 255, 0.08), transparent 22rem);
  opacity: 0.42;
}

body:not([data-page="/"]) .hero-copy {
  position: relative;
  z-index: 1;
  align-self: center;
  max-width: 610px;
}

body:not([data-page="/"]) .hero h1 {
  max-width: 16.4ch;
  margin-bottom: 1.35rem;
  color: var(--inner-text);
  font-size: clamp(2.75rem, 4.15vw, 4.75rem);
  line-height: 0.94;
  letter-spacing: -0.045em;
}

body:not([data-page="/"]) .hero h1 strong,
body:not([data-page="/"]) .hero h1 em {
  color: var(--inner-gold-soft);
  font-style: normal;
}

body:not([data-page="/"]) .hero .lead {
  max-width: 56ch;
  font-size: clamp(1rem, 1.2vw, 1.17rem);
  line-height: 1.78;
}

body:not([data-page="/"]) .hero-note {
  max-width: 54ch;
}

body:not([data-page="/"]) .hero-panel-layered {
  position: relative;
  z-index: 1;
  align-self: center;
  display: grid;
  gap: 1rem;
  justify-items: center;
}

body:not([data-page="/"]) .hero-panel-layered > .interface-panel {
  width: min(100%, 455px);
}

body:not([data-page="/"]) .hero-panel-layered > .stacked-stat {
  display: none;
}

body:not([data-page="/"]) .hero-panel-visual {
  width: min(100%, 430px);
  min-height: 270px;
  border-radius: 20px;
}

body:not([data-page="/"]) .hero-panel-visual img {
  min-height: clamp(230px, 26vw, 330px);
  object-fit: cover;
  filter: brightness(0.58) contrast(1.12) saturate(0.94);
  transform: scale(1.015);
}

body:not([data-page="/"]) .hero-panel-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.03), rgba(0, 0, 0, 0.56)),
    radial-gradient(circle at 18% 8%, rgba(223, 188, 111, 0.22), transparent 34%);
}

body:not([data-page="/"]) .hero-panel-visual figcaption {
  position: absolute;
  inset: auto 1rem 1rem;
  z-index: 1;
  border-radius: 14px;
  border: 1px solid rgba(223, 188, 111, 0.18);
  background: rgba(4, 4, 4, 0.62);
  backdrop-filter: blur(16px);
}

body:not([data-page="/"]) .hero-panel-visual figcaption span,
body:not([data-page="/"]) .hero .stat-pill span {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

body:not([data-page="/"]) .hero-panel-visual figcaption span {
  -webkit-line-clamp: 2;
}

body:not([data-page="/"]) .interface-panel,
body:not([data-page="/"]) .tool-card,
body:not([data-page="/"]) .faq-item,
body:not([data-page="/"]) details,
body:not([data-page="/"]) .contact-channel,
body:not([data-page="/"]) .pricing-page-card,
body:not([data-page="/"]) .pricing-card,
body:not([data-page="/"]) .card,
body:not([data-page="/"]) .media-card {
  border-radius: 20px;
  border-color: rgba(223, 188, 111, 0.16);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02)),
    rgba(8, 8, 7, 0.76);
  box-shadow:
    0 30px 90px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .content-section,
body:not([data-page="/"]) .content-band,
body:not([data-page="/"]) .section-frame {
  width: 100%;
  margin: clamp(1rem, 2.5vw, 1.85rem) auto;
  padding: clamp(2rem, 4vw, 3.4rem);
  border-radius: 24px;
  border-color: rgba(223, 188, 111, 0.13);
  background:
    linear-gradient(140deg, rgba(12, 12, 11, 0.9), rgba(4, 5, 5, 0.94)),
    radial-gradient(circle at 88% 0%, rgba(223, 188, 111, 0.1), transparent 24rem),
    radial-gradient(circle at 0% 100%, rgba(255, 255, 255, 0.035), transparent 18rem);
  box-shadow: 0 34px 120px rgba(0, 0, 0, 0.48);
}

body:not([data-page="/"]) .section-heading {
  max-width: 620px;
  margin-bottom: clamp(1.25rem, 2.5vw, 2.2rem);
}

body:not([data-page="/"]) .section-heading h2,
body:not([data-page="/"]) .split-copy h2,
body:not([data-page="/"]) .dual-panel h2 {
  max-width: 12ch;
  color: var(--inner-text);
  font-size: clamp(2rem, 3vw, 3.25rem);
  line-height: 0.96;
}

body:not([data-page="/"]) .eyebrow,
body:not([data-page="/"]) .panel-label,
body:not([data-page="/"]) .card-kicker {
  color: var(--inner-gold-soft);
  letter-spacing: 0.16em;
}

body:not([data-page="/"]) .card-grid,
body:not([data-page="/"]) .media-card-grid {
  gap: clamp(0.85rem, 1.6vw, 1.2rem);
}

body:not([data-page="/"]) .card,
body:not([data-page="/"]) .media-card,
body:not([data-page="/"]) .pricing-page-card {
  position: relative;
  overflow: hidden;
  min-height: 170px;
  transition:
    transform 620ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 620ms ease,
    box-shadow 620ms ease;
}

body:not([data-page="/"]) .card::before,
body:not([data-page="/"]) .pricing-page-card::before,
body:not([data-page="/"]) .media-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 15% 0%, rgba(223, 188, 111, 0.12), transparent 38%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), transparent 44%);
  opacity: 0.6;
}

body:not([data-page="/"]) .card:hover,
body:not([data-page="/"]) .media-card:hover,
body:not([data-page="/"]) .pricing-page-card:hover {
  transform: translateY(-7px);
  border-color: rgba(223, 188, 111, 0.38);
  box-shadow:
    0 42px 120px rgba(0, 0, 0, 0.58),
    0 0 44px rgba(189, 144, 65, 0.12);
}

body:not([data-page="/"]) .card h3,
body:not([data-page="/"]) .media-card h3,
body:not([data-page="/"]) .pricing-page-card h3 {
  color: var(--inner-text);
}

body:not([data-page="/"]) .card p,
body:not([data-page="/"]) .media-card p,
body:not([data-page="/"]) .pricing-page-card p,
body:not([data-page="/"]) .interface-panel p,
body:not([data-page="/"]) .interface-list span,
body:not([data-page="/"]) .lead {
  color: var(--inner-muted);
}

body:not([data-page="/"]) .card-link,
body:not([data-page="/"]) .media-card-link {
  position: relative;
  width: 38px;
  height: 38px;
  min-width: 38px;
  margin-top: 1rem;
  color: transparent;
  border: 1px solid rgba(223, 188, 111, 0.42);
  border-radius: 999px;
  background:
    radial-gradient(circle at 35% 25%, rgba(226, 194, 117, 0.22), transparent 48%),
    rgba(0, 0, 0, 0.36);
}

body:not([data-page="/"]) .card-link::after,
body:not([data-page="/"]) .media-card-link::after {
  content: "->";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: var(--inner-gold-soft);
  font-size: 0.86rem;
}

body:not([data-page="/"]) .media-card-image,
body:not([data-page="/"]) .visual-frame,
body:not([data-page="/"]) .hero-media-card,
body:not([data-page="/"]) .case-hero-media,
body:not([data-page="/"]) .trust-logos {
  border-radius: 20px;
  border-color: rgba(223, 188, 111, 0.16);
  background: rgba(0, 0, 0, 0.54);
}

body:not([data-page="/"]) .media-card-image img,
body:not([data-page="/"]) .visual-frame img,
body:not([data-page="/"]) .hero-media-card img,
body:not([data-page="/"]) .case-hero-media img {
  transition: transform 900ms cubic-bezier(0.22, 1, 0.36, 1), filter 900ms ease;
}

body:not([data-page="/"]) .media-card:hover img,
body:not([data-page="/"]) .visual-frame:hover img {
  transform: scale(1.055);
  filter: brightness(0.76) contrast(1.13) saturate(1);
}

body:not([data-page="/"]) .visual-frame img[src*="clientes-logos-premium"] {
  object-fit: contain;
  padding: clamp(1rem, 2.5vw, 1.8rem);
  background: #020303;
  filter: grayscale(1) brightness(1.12) contrast(0.9);
  transform: none;
}

body:not([data-page="/"]) .visual-frame:hover img[src*="clientes-logos-premium"] {
  transform: none;
  filter: grayscale(1) brightness(1.2) contrast(0.92);
}

body:not([data-page="/"]) .stat-grid {
  grid-template-columns: 1fr;
  gap: 0.75rem;
}

body:not([data-page="/"]) .stat-pill {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 0.7rem;
  align-items: center;
  border-radius: 15px;
  padding: 0.85rem 0.95rem;
}

body:not([data-page="/"]) .stat-pill::before {
  content: "";
  grid-row: 1 / span 2;
  width: 30px;
  height: 30px;
  border: 1px solid rgba(223, 188, 111, 0.36);
  border-radius: 10px;
  background:
    radial-gradient(circle at 35% 25%, rgba(226, 194, 117, 0.24), transparent 48%),
    rgba(0, 0, 0, 0.36);
}

body:not([data-page="/"]) .stat-pill strong,
body:not([data-page="/"]) .stat-pill span {
  grid-column: 2;
}

body:not([data-page="/"]) .process-step,
body:not([data-page="/"]) .timeline-step {
  border-color: rgba(223, 188, 111, 0.18);
  background: rgba(255, 255, 255, 0.04);
}

body:not([data-page="/"]) .process-step strong::before,
body:not([data-page="/"]) .timeline-step-number {
  border-color: rgba(223, 188, 111, 0.44);
  color: var(--inner-gold-soft);
}

body:not([data-page="/"]) .pricing-page-card:nth-child(2),
body:not([data-page="/"]) .pricing-card.is-featured,
body:not([data-page="/"]) .v3-pricing-card.is-featured {
  border-color: rgba(226, 194, 117, 0.58);
  box-shadow:
    0 42px 128px rgba(0, 0, 0, 0.58),
    0 0 58px rgba(189, 144, 65, 0.18);
}

body:not([data-page="/"]) .pricing-page-card strong,
body:not([data-page="/"]) .pricing-card strong,
body:not([data-page="/"]) .v3-pricing-price {
  color: var(--inner-gold-soft);
}

body:not([data-page="/"]) .trust-logos,
body:not([data-page="/"]) .premium-trust-media {
  padding: clamp(1.4rem, 3vw, 2.4rem);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)),
    rgba(0, 0, 0, 0.72);
}

body:not([data-page="/"]) .trust-logos img,
body:not([data-page="/"]) .premium-trust-media img {
  filter: grayscale(1) brightness(1.12) contrast(0.92);
  opacity: 0.82;
  mix-blend-mode: normal;
}

body:not([data-page="/"]) .faq-list {
  gap: 0.75rem;
}

body:not([data-page="/"]) details {
  padding: 1rem 1.1rem;
}

body:not([data-page="/"]) summary {
  color: var(--inner-text);
}

body:not([data-page="/"]) .final-cta-band .split-section,
body:not([data-page="/"]) .final-cta-premium .split-section {
  align-items: center;
}

body:not([data-page="/"]) .button {
  min-height: 48px;
  border-radius: 999px;
  transition:
    transform 520ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 520ms ease,
    border-color 520ms ease;
}

body:not([data-page="/"]) .button-primary {
  color: #181209;
  background:
    linear-gradient(135deg, #a9742d 0%, #d2a44d 45%, #efd082 100%),
    radial-gradient(circle at 26% 0%, rgba(255, 255, 255, 0.55), transparent 40%);
}

body:not([data-page="/"]) .button-secondary {
  color: var(--inner-text);
  border-color: rgba(226, 194, 117, 0.42);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.012)),
    rgba(0, 0, 0, 0.3);
}

body:not([data-page="/"]) .button:hover {
  transform: translateY(-2px);
  box-shadow:
    0 24px 66px rgba(0, 0, 0, 0.45),
    0 0 34px rgba(226, 194, 117, 0.18);
}

@media (max-width: 980px) {
  body:not([data-page="/"]) .page-shell {
    width: min(100% - 1.2rem, 720px);
    padding-top: 1.4rem;
  }

  body:not([data-page="/"]) .hero {
    grid-template-columns: 1fr;
    gap: 1.4rem;
    padding: clamp(1.35rem, 6vw, 2rem);
    border-radius: 22px;
  }

  body:not([data-page="/"]) .hero h1 {
    max-width: 13.6ch;
    font-size: clamp(2.3rem, 10.5vw, 3.35rem);
    line-height: 0.96;
  }

  body:not([data-page="/"]) .content-section,
  body:not([data-page="/"]) .content-band,
  body:not([data-page="/"]) .section-frame {
    padding: clamp(1.25rem, 6vw, 2rem);
    border-radius: 20px;
  }

  body:not([data-page="/"]) .section-heading h2,
  body:not([data-page="/"]) .split-copy h2,
  body:not([data-page="/"]) .dual-panel h2 {
    max-width: 13ch;
    font-size: clamp(2rem, 10vw, 3rem);
  }

  body:not([data-page="/"]) .hero-panel-visual img {
    min-height: 230px;
  }
}

/* V4.11: bring interior pages closer to the premium home direction */
body:not([data-page="/"]) {
  --container: min(1320px, calc(100vw - 2rem));
  background:
    radial-gradient(circle at 12% 7%, rgba(226, 194, 117, 0.1), transparent 24rem),
    radial-gradient(circle at 84% 18%, rgba(255, 255, 255, 0.035), transparent 30rem),
    linear-gradient(180deg, #020303 0%, #050606 48%, #020303 100%);
}

body:not([data-page="/"]) .page-shell {
  width: min(1280px, calc(100vw - clamp(1.25rem, 5vw, 5rem)));
}

body:not([data-page="/"]) .hero,
body:not([data-page="/"]) .content-section,
body:not([data-page="/"]) .content-band,
body:not([data-page="/"]) .section-frame,
body:not([data-page="/"]) .media-card,
body:not([data-page="/"]) .card,
body:not([data-page="/"]) .pricing-page-card,
body:not([data-page="/"]) .tool-card,
body:not([data-page="/"]) details {
  border-radius: 8px;
}

body:not([data-page="/"]) .hero {
  grid-template-columns: minmax(0, 0.95fr) minmax(420px, 1.05fr);
  min-height: clamp(500px, 42vw, 650px);
  border-color: rgba(240, 206, 122, 0.16);
  background:
    linear-gradient(90deg, rgba(2, 3, 3, 0.98), rgba(2, 3, 3, 0.9) 45%, rgba(2, 3, 3, 0.98)),
    radial-gradient(circle at 76% 12%, rgba(240, 206, 122, 0.12), transparent 30rem),
    url("img/premium/renders-comerciales.jpg") center / cover no-repeat,
    #030505;
}

body:not([data-page="/"]) .hero h1 {
  max-width: 13ch;
  font-size: clamp(2.75rem, 4.15vw, 5.35rem);
}

body:not([data-page="/"]) .hero .lead,
body:not([data-page="/"]) .hero-note {
  max-width: 46ch;
}

body:not([data-page="/"]) .hero-copy {
  max-width: 570px;
}

body:not([data-page="/"]) .hero-panel-layered {
  align-self: center;
}

body:not([data-page="/"]) .hero-panel-visual {
  width: min(100%, 560px);
  min-height: clamp(300px, 28vw, 420px);
  border-radius: 8px;
}

body:not([data-page="/"]) .hero-panel-visual img {
  min-height: clamp(300px, 28vw, 420px);
}

body:not([data-page="/"]) .interface-panel,
body:not([data-page="/"]) .hero-interface-card,
body:not([data-page="/"]) .hero-dashboard,
body:not([data-page="/"]) .tool-card {
  border-radius: 8px;
  border-color: rgba(240, 206, 122, 0.18);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
    rgba(8, 10, 10, 0.8);
}

body:not([data-page="/"]) .content-section,
body:not([data-page="/"]) .content-band,
body:not([data-page="/"]) .section-frame {
  max-width: 1280px;
  margin-block: clamp(1.25rem, 2.5vw, 2.2rem);
  border-color: rgba(240, 206, 122, 0.13);
  background:
    linear-gradient(135deg, rgba(13, 16, 15, 0.94), rgba(4, 6, 6, 0.96)),
    radial-gradient(circle at 90% 0%, rgba(240, 206, 122, 0.1), transparent 28rem);
}

body:not([data-page="/"]) .section-heading {
  max-width: 680px;
}

body:not([data-page="/"]) .section-heading h2,
body:not([data-page="/"]) .split-copy h2,
body:not([data-page="/"]) .dual-panel h2 {
  max-width: 13.5ch;
}

body:not([data-page="/"]) .media-card-grid,
body:not([data-page="/"]) .card-grid {
  gap: clamp(0.9rem, 1.5vw, 1.25rem);
}

body:not([data-page="/"]) .media-card,
body:not([data-page="/"]) .card,
body:not([data-page="/"]) .pricing-page-card {
  border-color: rgba(240, 206, 122, 0.14);
}

body:not([data-page="/"]) .media-card:hover,
body:not([data-page="/"]) .card:hover,
body:not([data-page="/"]) .pricing-page-card:hover,
body:not([data-page="/"]) .tool-card:hover {
  transform: none;
  border-color: rgba(240, 206, 122, 0.34);
  box-shadow:
    0 34px 92px rgba(0, 0, 0, 0.44),
    0 0 38px rgba(240, 206, 122, 0.1);
}

body:not([data-page="/"]) .media-card-image,
body:not([data-page="/"]) .visual-frame,
body:not([data-page="/"]) .case-hero-media,
body:not([data-page="/"]) .trust-logos {
  border-radius: 8px;
}

body:not([data-page="/"]) .media-card-image img,
body:not([data-page="/"]) .visual-frame img,
body:not([data-page="/"]) .case-hero-media img {
  filter: brightness(0.68) contrast(1.1) saturate(0.95);
}

@media (max-width: 980px) {
  body:not([data-page="/"]) .hero {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  body:not([data-page="/"]) .hero h1 {
    font-size: clamp(2.45rem, 11vw, 3.7rem);
  }
}

/* V4.12: same web language for every secondary page */
body:not([data-page="/"]) {
  --inner-black: #050505;
  --inner-graphite: #081018;
  --inner-gold: #c8a96b;
  --inner-gold-strong: #d6b97a;
  --inner-text: #f7f2e8;
  --inner-muted: rgba(247, 242, 232, 0.68);
  --inner-hero-image: url("img/premium/renders-comerciales-v4.webp");
  margin: 0;
  overflow-x: hidden;
  background:
    radial-gradient(circle at 78% 8%, rgba(200, 169, 107, 0.12), transparent 32rem),
    radial-gradient(circle at 14% 22%, rgba(38, 64, 86, 0.28), transparent 34rem),
    linear-gradient(180deg, var(--inner-black) 0%, var(--inner-graphite) 46%, var(--inner-black) 100%);
  color: var(--inner-text);
}

body[data-page="/promotoras/"] { --inner-hero-image: url("img/v2/hero-residencial.webp"); }
body[data-page="/industria/"] { --inner-hero-image: url("img/v2/product-industrial.webp"); }
body[data-page="/arquitectura/"] { --inner-hero-image: url("img/v2/interior-kitchen-dark.webp"); }
body[data-page="/casos/"],
body[data-page^="/casos/"] { --inner-hero-image: url("img/v2/hero-masterplan.webp"); }
body[data-page="/precios/"],
body[data-page^="/precios/"],
body[data-page="/calculadora-render-3d/"] { --inner-hero-image: url("img/v2/configurator-ui.webp"); }
body[data-page="/contacto/"],
body[data-page="/por-que-grup3d/"] { --inner-hero-image: url("img/premium/empresas-confian-grup3d.jpg"); }

body:not([data-page="/"])::before {
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.016) 1px, transparent 1px);
  background-size: 86px 86px;
  opacity: 0.16;
  mask-image: none;
}

body:not([data-page="/"]) .page-shell {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

body:not([data-page="/"]) .breadcrumb,
body:not([data-page="/"]) .breadcrumbs {
  display: none;
}

body:not([data-page="/"]) .site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 80;
  width: 100%;
  max-width: none;
  min-height: 72px;
  margin: 0;
  padding: 0 clamp(20px, 5vw, 72px);
  border: 0;
  border-bottom: 1px solid rgba(200, 169, 107, 0.12);
  border-radius: 0;
  background: linear-gradient(180deg, rgba(5, 5, 5, 0.78), rgba(5, 5, 5, 0.32));
  box-shadow: none;
  backdrop-filter: blur(14px);
}

body:not([data-page="/"]).is-scrolled .site-header {
  border-bottom-color: rgba(200, 169, 107, 0.28);
  background: rgba(5, 5, 5, 0.84);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
}

body:not([data-page="/"]) .brand,
body:not([data-page="/"]) .brand-mark,
body:not([data-page="/"]) .brand-wordmark {
  color: var(--inner-gold);
}

body:not([data-page="/"]) .brand-mark {
  font-family: "Cormorant Garamond", "Playfair Display", Georgia, serif;
  font-size: 2.45rem;
  font-weight: 700;
  letter-spacing: 0;
}

body:not([data-page="/"]) .site-nav {
  gap: clamp(0.8rem, 2vw, 1.75rem);
}

body:not([data-page="/"]) .site-nav a:not(.button) {
  position: relative;
  color: rgba(247, 242, 232, 0.74);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0;
}

body:not([data-page="/"]) .site-nav a:not(.button)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.44rem;
  height: 1px;
  background: var(--inner-gold);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 420ms ease;
}

body:not([data-page="/"]) .site-nav a:not(.button):hover,
body:not([data-page="/"]) .site-nav a:not(.button):focus-visible {
  color: var(--inner-gold-strong);
}

body:not([data-page="/"]) .site-nav a:not(.button):hover::after,
body:not([data-page="/"]) .site-nav a:not(.button):focus-visible::after {
  transform: scaleX(1);
}

body:not([data-page="/"]) .button-nav {
  min-height: 42px;
  padding: 0 1.1rem;
  border: 1px solid rgba(200, 169, 107, 0.42);
  border-radius: 999px;
  background: linear-gradient(135deg, #d9bf7d, #b98d45);
  color: #080806 !important;
  font-size: 0.78rem;
  font-weight: 900;
  box-shadow: 0 16px 36px rgba(200, 169, 107, 0.2);
}

body:not([data-page="/"]) .hero.hero-page,
body:not([data-page="/"]) .hero.hero-immersive {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(340px, 0.74fr);
  align-items: center;
  width: 100%;
  max-width: none;
  min-height: clamp(660px, 92svh, 780px);
  margin: 0;
  padding: clamp(116px, 12vw, 160px) clamp(38px, 6vw, 88px) clamp(54px, 8vw, 94px);
  border: 0;
  border-radius: 0;
  background:
    linear-gradient(90deg, rgba(5, 5, 5, 0.94) 0%, rgba(5, 5, 5, 0.76) 38%, rgba(5, 5, 5, 0.36) 64%, rgba(5, 5, 5, 0.78) 100%),
    linear-gradient(180deg, rgba(5, 5, 5, 0.08) 0%, rgba(5, 5, 5, 0.84) 100%),
    var(--inner-hero-image);
  background-position: center;
  background-size: cover;
  box-shadow: none;
  overflow: hidden;
  isolation: isolate;
}

body:not([data-page="/"]) .hero.hero-page::before,
body:not([data-page="/"]) .hero.hero-immersive::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(110deg, transparent 0 36%, rgba(200, 169, 107, 0.16) 36.08%, transparent 36.42% 100%),
    linear-gradient(126deg, transparent 0 78%, rgba(200, 169, 107, 0.12) 78.08%, transparent 78.38% 100%);
  opacity: 0.5;
}

body:not([data-page="/"]) .hero.hero-page::after,
body:not([data-page="/"]) .hero.hero-immersive::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  width: 100%;
  height: 34%;
  border-radius: 0;
  background: linear-gradient(180deg, transparent, rgba(5, 5, 5, 0.94));
  opacity: 1;
  pointer-events: none;
}

body:not([data-page="/"]) .hero-copy,
body:not([data-page="/"]) .hero-panel {
  position: relative;
  z-index: 1;
}

body:not([data-page="/"]) .hero-copy {
  max-width: 680px;
}

body:not([data-page="/"]) .hero h1 {
  max-width: 16.2ch;
  margin-bottom: 1.35rem;
  color: var(--inner-text);
  font-family: "Cormorant Garamond", "Playfair Display", Georgia, serif;
  font-size: clamp(3rem, 4.7vw, 5.05rem);
  font-weight: 600;
  line-height: 0.94;
  letter-spacing: 0;
}

body:not([data-page="/"]) .hero .lead {
  max-width: 58ch;
  color: rgba(247, 242, 232, 0.78);
  font-size: clamp(1rem, 1.15vw, 1.12rem);
  line-height: 1.58;
}

body:not([data-page="/"]) .hero-note {
  max-width: 58ch;
  margin-top: 1.1rem;
  color: rgba(247, 242, 232, 0.68);
}

body:not([data-page="/"]) .hero.hero-page .hero-note,
body:not([data-page="/"]) .hero.hero-immersive .hero-note {
  display: none;
}

body:not([data-page="/"]) .eyebrow,
body:not([data-page="/"]) .panel-label,
body:not([data-page="/"]) .card-kicker {
  color: var(--inner-gold-strong);
  font-family: Inter, system-ui, sans-serif;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.12em;
}

body:not([data-page="/"]) .button-primary,
body:not([data-page="/"]) .button-secondary {
  min-height: 48px;
  border-radius: 8px;
  font-weight: 900;
}

body:not([data-page="/"]) .button-primary {
  color: #080806;
  border: 1px solid rgba(200, 169, 107, 0.42);
  background: linear-gradient(135deg, #d9bf7d, #b98d45);
  box-shadow: 0 16px 36px rgba(200, 169, 107, 0.22);
}

body:not([data-page="/"]) .button-secondary {
  color: var(--inner-text);
  border: 1px solid rgba(200, 169, 107, 0.36);
  background: rgba(5, 5, 5, 0.42);
  box-shadow: none;
}

body:not([data-page="/"]) .meta-strip span {
  color: rgba(247, 242, 232, 0.82);
  border-color: rgba(200, 169, 107, 0.24);
  background: rgba(5, 5, 5, 0.34);
  box-shadow: none;
  backdrop-filter: blur(12px);
}

body:not([data-page="/"]) .hero-panel-layered {
  display: grid;
  align-self: center;
  justify-items: end;
}

body:not([data-page="/"]) .hero-panel-layered > .interface-panel {
  width: min(100%, 462px);
  max-height: min(540px, calc(100svh - 150px));
  overflow: hidden;
  padding: clamp(1.35rem, 2.6vw, 2rem);
  border: 1px solid rgba(200, 169, 107, 0.26);
  border-radius: 8px;
  background: rgba(16, 18, 18, 0.86);
  box-shadow:
    0 34px 90px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .hero-panel-layered > .visual-frame {
  display: none;
}

body:not([data-page="/"]) .interface-panel h3 {
  color: var(--inner-text);
  font-family: Inter, system-ui, sans-serif;
  font-size: clamp(1.35rem, 2vw, 1.82rem);
  line-height: 1.12;
  letter-spacing: 0;
}

body:not([data-page="/"]) .stat-grid {
  grid-template-columns: 1fr;
}

body:not([data-page="/"]) .stat-pill {
  border-radius: 8px;
  border-color: rgba(200, 169, 107, 0.16);
  background: rgba(5, 5, 5, 0.32);
  padding: 0.72rem 0.84rem;
}

body:not([data-page="/"]) .stat-pill strong {
  font-size: 0.68rem;
  letter-spacing: 0.12em;
  opacity: 0.72;
}

body:not([data-page="/"]) .stat-pill span {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:not([data-page="/"]) .hero-panel-layered .stat-grid .stat-pill:nth-child(3) {
  display: none;
}

body:not([data-page="/"]) .content-section,
body:not([data-page="/"]) .content-band,
body:not([data-page="/"]) .section-frame {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(64px, 7vw, 92px) clamp(38px, 6vw, 88px);
  border: 0;
  border-radius: 0;
  background:
    radial-gradient(circle at 78% 10%, rgba(200, 169, 107, 0.08), transparent 28rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.018), transparent 40%),
    linear-gradient(180deg, #050505 0%, #081018 100%);
  box-shadow: none;
}

body:not([data-page="/"]) .content-band:nth-of-type(even),
body:not([data-page="/"]) .content-section:nth-of-type(even) {
  background:
    radial-gradient(circle at 12% 18%, rgba(38, 64, 86, 0.22), transparent 30rem),
    linear-gradient(180deg, #081018 0%, #050505 100%);
}

body:not([data-page="/"]) .content-section > *,
body:not([data-page="/"]) .content-band > *,
body:not([data-page="/"]) .section-frame > * {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
}

body:not([data-page="/"]) .section-heading {
  max-width: 760px;
  margin-bottom: clamp(1.5rem, 2.5vw, 2.4rem);
}

body:not([data-page="/"]) .section-heading h2,
body:not([data-page="/"]) .split-copy h2,
body:not([data-page="/"]) .dual-panel h2 {
  max-width: 760px;
  color: var(--inner-text);
  font-family: "Cormorant Garamond", "Playfair Display", Georgia, serif;
  font-size: clamp(2.55rem, 4.2vw, 4.35rem);
  font-weight: 600;
  line-height: 0.98;
  letter-spacing: 0;
}

body:not([data-page="/"]) .card-grid,
body:not([data-page="/"]) .media-card-grid {
  gap: clamp(1rem, 1.8vw, 1.35rem);
}

body:not([data-page="/"]) .card,
body:not([data-page="/"]) .media-card,
body:not([data-page="/"]) .pricing-page-card,
body:not([data-page="/"]) .tool-card,
body:not([data-page="/"]) details,
body:not([data-page="/"]) .contact-channel {
  border-radius: 8px;
  border-color: rgba(200, 169, 107, 0.18);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
    rgba(8, 8, 7, 0.74);
  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .card h3,
body:not([data-page="/"]) .media-card h3,
body:not([data-page="/"]) .pricing-page-card h3 {
  color: var(--inner-text);
  letter-spacing: 0;
}

body:not([data-page="/"]) .card p,
body:not([data-page="/"]) .media-card p,
body:not([data-page="/"]) .pricing-page-card p,
body:not([data-page="/"]) .interface-panel p,
body:not([data-page="/"]) .lead,
body:not([data-page="/"]) p,
body:not([data-page="/"]) li {
  color: var(--inner-muted);
}

body:not([data-page="/"]) .visual-frame,
body:not([data-page="/"]) .media-card-image,
body:not([data-page="/"]) .hero-media-card,
body:not([data-page="/"]) .case-hero-media,
body:not([data-page="/"]) .trust-logos {
  border-radius: 8px;
}

body:not([data-page="/"]) .final-cta-band,
body:not([data-page="/"]) .final-cta-premium {
  background:
    linear-gradient(90deg, rgba(5, 5, 5, 0.94), rgba(5, 5, 5, 0.72)),
    var(--inner-hero-image);
  background-position: center;
  background-size: cover;
}

body:not([data-page="/"]) .site-footer {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(42px, 6vw, 68px) clamp(38px, 6vw, 88px);
  border: 0;
  border-top: 1px solid rgba(200, 169, 107, 0.16);
  border-radius: 0;
  background: linear-gradient(180deg, rgba(5, 5, 5, 0.98), #020202);
  box-shadow: none;
}

body:not([data-page="/"]) .site-footer > * {
  max-width: 1240px;
}

@media (max-width: 980px) {
  body:not([data-page="/"]) .site-header {
    min-height: 66px;
    padding: 0.75rem 1rem;
  }

  body:not([data-page="/"]) .nav-toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(200, 169, 107, 0.28);
    border-radius: 999px;
    background: rgba(5, 5, 5, 0.52);
    color: transparent;
    font-size: 0;
  }

  body:not([data-page="/"]) .nav-toggle::before,
  body:not([data-page="/"]) .nav-toggle::after {
    content: "";
    position: absolute;
    left: 14px;
    width: 18px;
    height: 1.5px;
    border-radius: 99px;
    background: var(--inner-gold-strong);
    box-shadow: 0 6px 0 rgba(214, 185, 122, 0.78);
  }

  body:not([data-page="/"]) .nav-toggle::before {
    top: 16px;
  }

  body:not([data-page="/"]) .nav-toggle::after {
    top: 28px;
    left: 22px;
    width: 10px;
    box-shadow: none;
  }

  body:not([data-page="/"]) .site-nav {
    position: absolute;
    right: 1rem;
    top: calc(100% + 0.5rem);
    display: none;
    flex-direction: column;
    align-items: stretch;
    width: min(340px, calc(100vw - 32px));
    padding: 1rem;
    border-radius: 8px;
  }

  body:not([data-page="/"]) .site-nav.is-open {
    display: flex;
  }

  body:not([data-page="/"]) .brand-mark {
    font-size: 2rem;
  }

  body:not([data-page="/"]) .site-nav {
    background:
      linear-gradient(180deg, rgba(8, 8, 7, 0.98), rgba(4, 4, 4, 0.98)),
      radial-gradient(circle at top, rgba(200, 169, 107, 0.16), transparent 18rem);
    border: 1px solid rgba(200, 169, 107, 0.18);
  }

  body:not([data-page="/"]) .hero.hero-page,
  body:not([data-page="/"]) .hero.hero-immersive {
    grid-template-columns: 1fr;
    min-height: auto;
    padding: 104px 22px 56px;
  }

  body:not([data-page="/"]) .hero h1 {
    max-width: 12.5ch;
    overflow-wrap: anywhere;
    font-size: clamp(2.45rem, 11.4vw, 3.25rem);
  }

  body:not([data-page="/"]) .hero-panel-layered {
    justify-items: stretch;
  }

  body:not([data-page="/"]) .hero-panel-layered > .interface-panel {
    width: 100%;
  }

  body:not([data-page="/"]) .content-section,
  body:not([data-page="/"]) .content-band,
  body:not([data-page="/"]) .section-frame {
    padding: 54px 22px;
  }

  body:not([data-page="/"]) .section-heading h2,
  body:not([data-page="/"]) .split-copy h2,
  body:not([data-page="/"]) .dual-panel h2 {
    font-size: clamp(2.35rem, 12vw, 3.4rem);
  }

  body:not([data-page="/"]) .site-footer {
    padding: 42px 22px;
  }
}

@media (max-width: 560px) {
  body:not([data-page="/"]) .site-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  body:not([data-page="/"]) .nav-toggle {
    display: inline-flex !important;
    flex: 0 0 46px;
    margin-left: auto;
    opacity: 1;
    visibility: visible;
    z-index: 2;
  }

  body:not([data-page="/"]) .hero.hero-page,
  body:not([data-page="/"]) .hero.hero-immersive {
    padding: 98px 22px 48px;
  }

  body:not([data-page="/"]) .hero-copy {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  body:not([data-page="/"]) .hero h1 {
    max-width: 100%;
    overflow-wrap: break-word;
    font-size: clamp(2.2rem, 10.6vw, 2.84rem);
  }

  body:not([data-page="/"]) .hero .lead,
  body:not([data-page="/"]) .hero-note {
    max-width: 100%;
    font-size: 0.98rem;
    overflow-wrap: break-word;
  }

  body:not([data-page="/"]) .hero-panel-layered {
    display: none;
  }

  body:not([data-page="/"]) .cta-row .button {
    width: 100%;
  }

  body:not([data-page="/"]) .meta-strip {
    display: grid;
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .meta-strip span {
    width: 100%;
    justify-content: center;
  }
}

/* V4.20: unified premium system for secondary pages */
body:not([data-page="/"]) {
  --inner-black: #050707;
  --inner-graphite: #0a0d0d;
  --inner-panel: rgba(13, 16, 15, 0.86);
  --inner-panel-strong: rgba(9, 12, 12, 0.94);
  --inner-border: rgba(214, 179, 90, 0.18);
  --inner-border-strong: rgba(214, 179, 90, 0.28);
  --inner-gold: #d6b35a;
  --inner-gold-soft: #b89445;
  --inner-text: #f4efe3;
  --inner-muted: rgba(244, 239, 227, 0.72);
  --inner-faint: rgba(244, 239, 227, 0.52);
  --secondary-shell: min(1240px, calc(100vw - clamp(2rem, 8vw, 7rem)));
  --secondary-gutter: max(clamp(1.25rem, 4vw, 4.5rem), calc((100vw - 1240px) / 2));
  background:
    radial-gradient(circle at 78% 6%, rgba(214, 179, 90, 0.11), transparent 31rem),
    radial-gradient(circle at 8% 28%, rgba(31, 56, 70, 0.26), transparent 34rem),
    linear-gradient(180deg, #030505 0%, #050707 42%, #030505 100%);
  color: var(--inner-text);
}

body[data-page*="promotor"],
body[data-page*="inmobiliario"],
body[data-page*="tour-360"] {
  --inner-hero-image: url("img/v2/hero-residencial.webp");
}

body[data-page*="industria"],
body[data-page*="industrial"],
body[data-page*="producto"],
body[data-page*="catalogo"] {
  --inner-hero-image: url("img/v2/product-industrial.webp");
}

body[data-page*="arquitectura"],
body[data-page*="infografias"],
body[data-page*="planos"],
body[data-page*="interior"] {
  --inner-hero-image: url("img/v2/interior-kitchen-dark.webp");
}

body[data-page*="configurador"],
body[data-page*="calculadora"],
body[data-page*="precio"] {
  --inner-hero-image: url("img/v2/configurator-ui.webp");
}

body:not([data-page="/"])::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.012) 1px, transparent 1px);
  background-size: 92px 92px;
  opacity: 0.16;
}

body:not([data-page="/"]) .page-shell {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

body:not([data-page="/"]) .site-header {
  min-height: 72px;
  padding-inline: var(--secondary-gutter);
  border-bottom: 1px solid rgba(214, 179, 90, 0.14);
  background:
    linear-gradient(180deg, rgba(5, 7, 7, 0.88), rgba(5, 7, 7, 0.46)),
    radial-gradient(circle at 70% 0%, rgba(214, 179, 90, 0.09), transparent 22rem);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .brand-mark {
  color: var(--inner-text);
  font-family: Inter, system-ui, sans-serif;
  font-size: clamp(1.65rem, 2vw, 2.18rem);
  font-weight: 800;
  letter-spacing: -0.02em;
}

body:not([data-page="/"]) .site-nav a:not(.button) {
  color: rgba(244, 239, 227, 0.72);
  font-size: 0.76rem;
  font-weight: 700;
}

body:not([data-page="/"]) .site-nav a:not(.button):hover,
body:not([data-page="/"]) .site-nav a:not(.button):focus-visible {
  color: var(--inner-gold);
}

body:not([data-page="/"]) .button,
body:not([data-page="/"]) .button-nav {
  min-height: 46px;
  padding: 0.78rem 1.18rem;
  border-radius: 8px;
  letter-spacing: 0;
  font-size: 0.88rem;
  font-weight: 800;
}

body:not([data-page="/"]) .button-primary,
body:not([data-page="/"]) .button-nav {
  color: #080908 !important;
  border: 1px solid rgba(214, 179, 90, 0.42);
  background:
    linear-gradient(135deg, #f0ce7a, #d6b35a 46%, #a87a31);
  box-shadow: 0 18px 42px rgba(214, 179, 90, 0.18);
}

body:not([data-page="/"]) .button-secondary,
body:not([data-page="/"]) .button-ghost {
  color: var(--inner-text);
  border: 1px solid rgba(214, 179, 90, 0.34);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.01)),
    rgba(5, 7, 7, 0.5);
  box-shadow: none;
}

body:not([data-page="/"]) .button:hover {
  transform: translateY(-2px);
}

body:not([data-page="/"]) .hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(300px, 3fr);
  align-items: center;
  gap: clamp(1.2rem, 3vw, 3rem);
  width: 100%;
  max-width: none;
  min-height: clamp(560px, 76svh, 690px);
  margin: 0;
  padding: clamp(112px, 10vw, 144px) var(--secondary-gutter) clamp(48px, 6vw, 76px);
  border: 0;
  border-radius: 0;
  overflow: hidden;
  isolation: isolate;
  background:
    linear-gradient(90deg, rgba(3, 5, 5, 0.95) 0%, rgba(3, 5, 5, 0.78) 42%, rgba(3, 5, 5, 0.44) 70%, rgba(3, 5, 5, 0.86) 100%),
    linear-gradient(180deg, rgba(3, 5, 5, 0.12), rgba(3, 5, 5, 0.86)),
    var(--inner-hero-image);
  background-position: center;
  background-size: cover;
  box-shadow: none;
}

body:not([data-page="/"]) .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 78% 22%, rgba(214, 179, 90, 0.13), transparent 25rem),
    linear-gradient(105deg, transparent 12%, rgba(214, 179, 90, 0.05) 36%, transparent 58%);
  opacity: 0.72;
}

body:not([data-page="/"]) .hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 0;
  height: 35%;
  pointer-events: none;
  background: linear-gradient(180deg, transparent, #050707 88%);
}

body:not([data-page="/"]) .hero-copy,
body:not([data-page="/"]) .hero-panel {
  position: relative;
  z-index: 1;
}

body:not([data-page="/"]) .hero-copy {
  width: 100%;
  max-width: 780px;
}

body:not([data-page="/"]) .hero h1 {
  max-width: 14.4ch;
  margin: 0 0 clamp(1rem, 1.7vw, 1.35rem);
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2.8rem, 4.45vw, 5.05rem);
  font-weight: 600;
  line-height: 0.94;
  letter-spacing: 0;
  text-wrap: balance;
}

body:not([data-page="/"]) .hero .lead {
  max-width: 65ch;
  color: rgba(244, 239, 227, 0.76);
  font-size: clamp(0.98rem, 1.05vw, 1.08rem);
  line-height: 1.62;
}

body:not([data-page="/"]) .hero-note,
body:not([data-page="/"]) .hero.hero-page .hero-note,
body:not([data-page="/"]) .hero.hero-immersive .hero-note {
  display: block;
  max-width: 60ch;
  margin-top: 1rem;
  color: var(--inner-faint);
  font-size: 0.94rem;
  line-height: 1.58;
}

body:not([data-page="/"]) .eyebrow,
body:not([data-page="/"]) .panel-label,
body:not([data-page="/"]) .card-kicker {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  color: var(--inner-gold);
  font-family: Inter, system-ui, sans-serif;
  font-size: 0.7rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  line-height: 1.2;
  text-transform: uppercase;
}

body:not([data-page="/"]) .eyebrow::before {
  content: "";
  width: 32px;
  height: 1px;
  background: currentColor;
  opacity: 0.66;
}

body:not([data-page="/"]) .card-kicker::before,
body:not([data-page="/"]) .panel-label::before {
  content: none;
}

body:not([data-page="/"]) .cta-row,
body:not([data-page="/"]) .button-group {
  gap: 0.72rem;
  margin-top: clamp(1.25rem, 2vw, 1.75rem);
}

body:not([data-page="/"]) .meta-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.58rem;
  margin-top: clamp(1.2rem, 2vw, 1.6rem);
}

body:not([data-page="/"]) .meta-strip span {
  min-height: 34px;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-radius: 999px;
  color: rgba(244, 239, 227, 0.78);
  background: rgba(5, 7, 7, 0.48);
  backdrop-filter: blur(14px);
}

body:not([data-page="/"]) .hero-panel-layered {
  display: grid;
  justify-items: end;
  gap: 0.9rem;
}

body:not([data-page="/"]) .hero-panel-layered > .interface-panel,
body:not([data-page="/"]) .hero-panel-layered > .visual-frame {
  width: min(100%, 420px);
}

body:not([data-page="/"]) .hero-panel-layered > .interface-panel {
  max-height: none;
  overflow: visible;
}

body:not([data-page="/"]) .hero-panel-layered > .visual-frame {
  display: block;
  min-height: 196px;
  max-height: 230px;
}

body:not([data-page="/"]) .hero-panel-layered > .visual-frame img {
  min-height: 196px;
  max-height: 230px;
}

body:not([data-page="/"]) .interface-panel,
body:not([data-page="/"]) .tool-card,
body:not([data-page="/"]) .faq-item,
body:not([data-page="/"]) details,
body:not([data-page="/"]) .contact-channel,
body:not([data-page="/"]) .pricing-page-card,
body:not([data-page="/"]) .pricing-card,
body:not([data-page="/"]) .card,
body:not([data-page="/"]) .media-card,
body:not([data-page="/"]) .calculator-choice,
body:not([data-page="/"]) .calculator-live-estimate,
body:not([data-page="/"]) .calculator-warning,
body:not([data-page="/"]) .calculator-highlight {
  position: relative;
  border: 1px solid var(--inner-border);
  border-radius: 8px;
  background:
    radial-gradient(circle at 100% 0%, rgba(214, 179, 90, 0.08), transparent 16rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    var(--inner-panel);
  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .interface-panel {
  padding: clamp(1.15rem, 2vw, 1.65rem);
}

body:not([data-page="/"]) .interface-panel h3,
body:not([data-page="/"]) .tool-card h2,
body:not([data-page="/"]) .tool-card h3 {
  color: var(--inner-text);
}

body:not([data-page="/"]) .stat-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.7rem;
}

body:not([data-page="/"]) .stat-pill,
body:not([data-page="/"]) .interface-list div,
body:not([data-page="/"]) .checklist > div,
body:not([data-page="/"]) .checklist li,
body:not([data-page="/"]) .feature-list li,
body:not([data-page="/"]) .bullet-list li {
  border: 1px solid rgba(214, 179, 90, 0.13);
  border-radius: 8px;
  background: rgba(5, 7, 7, 0.38);
}

body:not([data-page="/"]) .stat-pill {
  padding: 0.72rem 0.82rem;
}

body:not([data-page="/"]) .stat-pill strong,
body:not([data-page="/"]) .interface-list strong,
body:not([data-page="/"]) .checklist strong {
  color: var(--inner-text);
}

body:not([data-page="/"]) .stat-pill span {
  color: var(--inner-muted);
  -webkit-line-clamp: unset;
}

body:not([data-page="/"]) .content-section,
body:not([data-page="/"]) .content-band,
body:not([data-page="/"]) .section-frame {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(56px, 6.2vw, 86px) var(--secondary-gutter);
  border: 0;
  border-radius: 0;
  background:
    radial-gradient(circle at 80% 8%, rgba(214, 179, 90, 0.075), transparent 28rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.014), transparent 34%),
    linear-gradient(180deg, #050707 0%, #070b0b 100%);
  box-shadow: none;
}

body:not([data-page="/"]) .content-band:nth-of-type(even),
body:not([data-page="/"]) .content-section:nth-of-type(even) {
  background:
    radial-gradient(circle at 12% 20%, rgba(31, 56, 70, 0.22), transparent 30rem),
    linear-gradient(180deg, #070b0b 0%, #050707 100%);
}

body:not([data-page="/"]) .content-section > *,
body:not([data-page="/"]) .content-band > *,
body:not([data-page="/"]) .section-frame > * {
  width: 100%;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
}

body:not([data-page="/"]) .section-heading,
body:not([data-page="/"]) .band-shell {
  margin-bottom: clamp(1.25rem, 2.2vw, 2rem);
}

body:not([data-page="/"]) .section-heading h2,
body:not([data-page="/"]) .split-copy h2,
body:not([data-page="/"]) .dual-panel h2,
body:not([data-page="/"]) .content-section h2,
body:not([data-page="/"]) .content-band h2 {
  max-width: 820px;
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2.25rem, 3.6vw, 4rem);
  font-weight: 600;
  line-height: 0.98;
  letter-spacing: 0;
  text-wrap: balance;
}

body:not([data-page="/"]) .lead,
body:not([data-page="/"]) p,
body:not([data-page="/"]) li,
body:not([data-page="/"]) .card p,
body:not([data-page="/"]) .media-card p,
body:not([data-page="/"]) .pricing-page-card p,
body:not([data-page="/"]) .interface-panel p,
body:not([data-page="/"]) .interface-list span,
body:not([data-page="/"]) .checklist span {
  color: var(--inner-muted);
}

body:not([data-page="/"]) .case-richtext {
  max-width: 900px;
  color: var(--inner-muted);
}

body:not([data-page="/"]) .section-heading + .case-richtext,
body:not([data-page="/"]) .intro-richtext {
  padding: clamp(1.1rem, 2vw, 1.5rem);
  border: 1px solid rgba(214, 179, 90, 0.13);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.036), rgba(255, 255, 255, 0.01)),
    rgba(8, 11, 11, 0.54);
}

body:not([data-page="/"]) .case-richtext p {
  max-width: 74ch;
}

body:not([data-page="/"]) .band-shell,
body:not([data-page="/"]) .dual-column,
body:not([data-page="/"]) .split-section,
body:not([data-page="/"]) .contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(300px, 0.95fr);
  gap: clamp(1.1rem, 3vw, 2.2rem);
  align-items: start;
}

body:not([data-page="/"]) .band-aside {
  justify-self: end;
  max-width: 430px;
  padding: clamp(1rem, 1.7vw, 1.35rem);
  border: 1px solid rgba(214, 179, 90, 0.13);
  border-radius: 8px;
  background: rgba(8, 11, 11, 0.5);
}

body:not([data-page="/"]) .band-aside strong {
  display: block;
  margin-bottom: 0.4rem;
  color: var(--inner-text);
}

body:not([data-page="/"]) .card-grid,
body:not([data-page="/"]) .media-card-grid,
body:not([data-page="/"]) .gallery-grid {
  display: grid;
  gap: clamp(0.85rem, 1.55vw, 1.2rem);
}

body:not([data-page="/"]) .card-grid,
body:not([data-page="/"]) .grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body:not([data-page="/"]) .grid-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body:not([data-page="/"]) .grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body:not([data-page="/"]) .grid-1 {
  grid-template-columns: 1fr;
}

body:not([data-page="/"]) .card,
body:not([data-page="/"]) .pricing-page-card {
  display: flex;
  flex-direction: column;
  min-height: 210px;
  padding: clamp(1rem, 1.6vw, 1.35rem);
  overflow: hidden;
}

body:not([data-page="/"]) .card::after,
body:not([data-page="/"]) .pricing-page-card::after {
  content: "";
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  width: 11px;
  height: 11px;
  border: 1px solid var(--inner-gold);
  border-radius: 999px;
  opacity: 0.62;
}

body:not([data-page="/"]) .compact-card {
  min-height: 0;
}

body:not([data-page="/"]) .card h3,
body:not([data-page="/"]) .media-card h3,
body:not([data-page="/"]) .pricing-page-card h3 {
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.42rem, 1.55vw, 1.78rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
}

body:not([data-page="/"]) .card-link,
body:not([data-page="/"]) .media-card-link {
  width: fit-content;
  margin-top: auto;
  padding-top: 1rem;
  color: var(--inner-gold);
  font-size: 0.82rem;
  font-weight: 900;
}

body:not([data-page="/"]) .card:hover,
body:not([data-page="/"]) .media-card:hover,
body:not([data-page="/"]) .pricing-page-card:hover,
body:not([data-page="/"]) .tool-card:hover {
  transform: translateY(-4px);
  border-color: var(--inner-border-strong);
  box-shadow:
    0 32px 92px rgba(0, 0, 0, 0.42),
    0 0 34px rgba(214, 179, 90, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

body:not([data-page="/"]) .media-card {
  overflow: hidden;
}

body:not([data-page="/"]) .media-card-image,
body:not([data-page="/"]) .visual-frame,
body:not([data-page="/"]) .hero-media-card,
body:not([data-page="/"]) .case-hero-media,
body:not([data-page="/"]) .gallery-card,
body:not([data-page="/"]) .trust-logos {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-radius: 8px;
  background: rgba(5, 7, 7, 0.6);
}

body:not([data-page="/"]) .media-card-image::after,
body:not([data-page="/"]) .visual-frame::after,
body:not([data-page="/"]) .hero-media-card::after,
body:not([data-page="/"]) .case-hero-media::after,
body:not([data-page="/"]) .gallery-card::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(5, 7, 7, 0.02), rgba(5, 7, 7, 0.2) 56%, rgba(5, 7, 7, 0.64)),
    linear-gradient(90deg, rgba(5, 7, 7, 0.28), transparent 48%, rgba(5, 7, 7, 0.22));
}

body:not([data-page="/"]) .media-card-image img,
body:not([data-page="/"]) .visual-frame img,
body:not([data-page="/"]) .hero-media-card img,
body:not([data-page="/"]) .case-hero-media img,
body:not([data-page="/"]) .gallery-card img,
body:not([data-page="/"]) .trust-logos img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.88) contrast(1.06) saturate(0.96);
}

body:not([data-page="/"]) .visual-frame figcaption {
  z-index: 2;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.78);
}

body:not([data-page="/"]) .process-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(0.85rem, 1.5vw, 1.15rem);
}

body:not([data-page="/"]) .process-step {
  min-height: 150px;
  padding: clamp(1rem, 1.5vw, 1.25rem);
}

body:not([data-page="/"]) .process-step-number,
body:not([data-page="/"]) .timeline-step-number {
  color: var(--inner-gold);
  border-color: rgba(214, 179, 90, 0.34);
}

body:not([data-page="/"]) .feature-list,
body:not([data-page="/"]) .bullet-list,
body:not([data-page="/"]) .checklist {
  display: grid;
  gap: 0.65rem;
  padding: 0;
  list-style: none;
}

body:not([data-page="/"]) .feature-list li,
body:not([data-page="/"]) .bullet-list li,
body:not([data-page="/"]) .checklist > div,
body:not([data-page="/"]) .checklist li {
  position: relative;
  padding: 0.82rem 0.9rem 0.82rem 2.35rem;
}

body:not([data-page="/"]) .feature-list li::before,
body:not([data-page="/"]) .bullet-list li::before,
body:not([data-page="/"]) .checklist > div::before {
  content: "";
  position: absolute;
  left: 0.9rem;
  top: 1.14rem;
  width: 9px;
  height: 9px;
  border: 1px solid var(--inner-gold);
  border-radius: 999px;
}

body:not([data-page="/"]) .interface-list {
  display: grid;
  gap: 0.68rem;
}

body:not([data-page="/"]) .interface-list div {
  padding: 0.82rem 0.9rem;
}

body:not([data-page="/"]) .faq-list {
  display: grid;
  gap: 0.72rem;
}

body:not([data-page="/"]) details {
  padding: 0;
  overflow: hidden;
}

body:not([data-page="/"]) summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.15rem;
  color: var(--inner-text);
  cursor: pointer;
}

body:not([data-page="/"]) summary::after {
  content: "+";
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(214, 179, 90, 0.36);
  border-radius: 999px;
  color: var(--inner-gold);
}

body:not([data-page="/"]) details[open] summary::after {
  content: "-";
}

body:not([data-page="/"]) details p {
  margin: 0;
  padding: 0 1.15rem 1.1rem;
  color: var(--inner-muted);
}

body:not([data-page="/"]) .final-cta-band,
body:not([data-page="/"]) .final-cta-premium {
  background:
    linear-gradient(90deg, rgba(5, 7, 7, 0.94), rgba(5, 7, 7, 0.74) 48%, rgba(5, 7, 7, 0.88)),
    linear-gradient(180deg, rgba(5, 7, 7, 0.08), rgba(5, 7, 7, 0.86)),
    var(--inner-hero-image);
  background-position: center;
  background-size: cover;
}

body:not([data-page="/"]) .site-form {
  display: grid;
  gap: 0.9rem;
}

body:not([data-page="/"]) .site-form label {
  color: rgba(244, 239, 227, 0.78);
  font-size: 0.82rem;
  font-weight: 800;
}

body:not([data-page="/"]) input,
body:not([data-page="/"]) textarea,
body:not([data-page="/"]) select {
  width: 100%;
  margin-top: 0.38rem;
  border: 1px solid rgba(214, 179, 90, 0.2);
  border-radius: 8px;
  background: rgba(5, 7, 7, 0.62);
  color: var(--inner-text);
}

body:not([data-page="/"]) input::placeholder,
body:not([data-page="/"]) textarea::placeholder {
  color: rgba(244, 239, 227, 0.44);
}

body:not([data-page="/"]) .video-frame iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-radius: 8px;
  background: #050707;
}

body:not([data-page="/"]) .site-footer {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(42px, 6vw, 68px) var(--secondary-gutter);
  border: 0;
  border-top: 1px solid rgba(214, 179, 90, 0.14);
  border-radius: 0;
  background:
    radial-gradient(circle at 18% 0%, rgba(214, 179, 90, 0.075), transparent 22rem),
    linear-gradient(180deg, rgba(5, 7, 7, 0.98), #020303);
  box-shadow: none;
}

body:not([data-page="/"]) .site-footer > * {
  max-width: 1240px;
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .hero,
  body:not([data-page="/"]) .band-shell,
  body:not([data-page="/"]) .dual-column,
  body:not([data-page="/"]) .split-section,
  body:not([data-page="/"]) .contact-grid {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .hero-panel-layered {
    justify-items: start;
  }

  body:not([data-page="/"]) .card-grid,
  body:not([data-page="/"]) .grid-4,
  body:not([data-page="/"]) .grid-3,
  body:not([data-page="/"]) .process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  body:not([data-page="/"]) {
    --secondary-gutter: clamp(1rem, 5vw, 2rem);
  }

  body:not([data-page="/"]) .site-header {
    min-height: 66px;
  }

  body:not([data-page="/"]) .site-nav {
    background:
      linear-gradient(180deg, rgba(8, 11, 11, 0.98), rgba(4, 6, 6, 0.98)),
      radial-gradient(circle at top, rgba(214, 179, 90, 0.12), transparent 18rem);
    border: 1px solid rgba(214, 179, 90, 0.18);
    border-radius: 8px;
  }

  body:not([data-page="/"]) .hero {
    min-height: auto;
    padding-top: 96px;
  }

  body:not([data-page="/"]) .hero h1 {
    max-width: 12.5ch;
    font-size: clamp(2.45rem, 10vw, 3.55rem);
  }

  body:not([data-page="/"]) .hero-panel-layered > .interface-panel,
  body:not([data-page="/"]) .hero-panel-layered > .visual-frame {
    width: 100%;
  }

  body:not([data-page="/"]) .content-section,
  body:not([data-page="/"]) .content-band,
  body:not([data-page="/"]) .section-frame {
    padding-block: clamp(46px, 8vw, 66px);
  }
}

@media (max-width: 680px) {
  body:not([data-page="/"]) .hero {
    padding-top: 92px;
    padding-bottom: 44px;
  }

  body:not([data-page="/"]) .hero h1 {
    max-width: 100%;
    overflow-wrap: break-word;
    font-size: clamp(2.2rem, 10.4vw, 3rem);
  }

  body:not([data-page="/"]) .hero .lead,
  body:not([data-page="/"]) .hero-note {
    max-width: 100%;
    font-size: 0.97rem;
  }

  body:not([data-page="/"]) .hero-panel-layered {
    display: grid;
  }

  body:not([data-page="/"]) .hero-panel-layered > .visual-frame {
    display: none;
  }

  body:not([data-page="/"]) .card-grid,
  body:not([data-page="/"]) .grid-4,
  body:not([data-page="/"]) .grid-3,
  body:not([data-page="/"]) .grid-2,
  body:not([data-page="/"]) .process-grid,
  body:not([data-page="/"]) .media-card-grid {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .cta-row,
  body:not([data-page="/"]) .button-group {
    display: grid;
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .button {
    width: 100%;
  }

  body:not([data-page="/"]) .meta-strip {
    display: grid;
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .meta-strip span {
    justify-content: center;
  }
}

/* V4.21: compact secondary heroes while keeping the premium HOME language */
body:not([data-page="/"]) .hero-panel-layered {
  align-content: center;
}

body:not([data-page="/"]) .hero-panel-layered > .visual-frame {
  display: none;
}

body:not([data-page="/"]) .hero-panel-layered > .interface-panel {
  width: min(100%, 430px);
}

body:not([data-page="/"]) .contact-form-card .site-form {
  margin-top: clamp(0.9rem, 1.6vw, 1.25rem);
}

@media (max-width: 680px) {
  body:not([data-page="/"]) .hero-panel-layered {
    display: none;
  }
}

/* V4.22: secondary pages aligned with the HOME premium visual system */
body:not([data-page="/"]) {
  --secondary-shell: min(100% - clamp(32px, 7vw, 132px), 1240px);
  --secondary-gold: #d6b35a;
  --secondary-gold-soft: rgba(214, 179, 90, 0.18);
  --secondary-text: #f5efe4;
  --secondary-muted: rgba(245, 239, 228, 0.76);
  --secondary-soft: rgba(245, 239, 228, 0.58);
  background:
    radial-gradient(circle at 82% 8%, rgba(214, 179, 90, 0.11), transparent 30rem),
    radial-gradient(circle at 18% 24%, rgba(66, 80, 78, 0.24), transparent 34rem),
    linear-gradient(180deg, #050706 0%, #080c0a 46%, #050706 100%);
}

body:not([data-page="/"]) .site-header {
  min-height: 72px;
  padding-inline: clamp(22px, 5vw, 64px);
  background: rgba(5, 7, 6, 0.9);
  border-bottom: 1px solid rgba(214, 179, 90, 0.15);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .brand-mark {
  color: var(--secondary-gold);
  font-family: Inter, system-ui, sans-serif;
  font-size: 1.02rem;
  font-weight: 900;
  letter-spacing: 0;
}

body:not([data-page="/"]) .site-nav a:not(.button) {
  color: rgba(245, 239, 228, 0.78);
  font-size: 0.78rem;
}

body:not([data-page="/"]) .button-nav {
  min-height: 38px;
  padding-inline: 1rem;
  border-color: rgba(214, 179, 90, 0.5);
  background: rgba(5, 7, 6, 0.38);
  color: var(--secondary-text) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

body:not([data-page="/"]) .button-nav::after {
  content: "->";
  margin-left: 0.55rem;
  color: var(--secondary-gold);
}

body:not([data-page="/"]) .page-shell {
  width: 100%;
  max-width: none;
  padding: 0;
}

body:not([data-page="/"]) .hero.hero-page {
  grid-template-columns: minmax(0, 0.95fr) minmax(380px, 0.75fr);
  min-height: clamp(690px, 92svh, 820px);
  padding: clamp(112px, 11vw, 152px) clamp(34px, 7vw, 92px) clamp(56px, 8vw, 96px);
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.94), rgba(5, 7, 6, 0.7) 44%, rgba(5, 7, 6, 0.28) 72%, rgba(5, 7, 6, 0.78)),
    var(--inner-hero-image);
  background-position: center;
  background-size: cover;
}

body:not([data-page="/"]) .internal-hero-media {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
}

body:not([data-page="/"]) .internal-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.76;
  filter: saturate(0.96) contrast(1.04);
}

body:not([data-page="/"]) .internal-hero::before {
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.96), rgba(5, 7, 6, 0.68) 46%, rgba(5, 7, 6, 0.38) 74%, rgba(5, 7, 6, 0.86)),
    linear-gradient(180deg, rgba(5, 7, 6, 0.1), rgba(5, 7, 6, 0.92)),
    linear-gradient(110deg, transparent 0 36%, rgba(214, 179, 90, 0.14) 36.08%, transparent 36.36% 100%);
  opacity: 1;
}

body:not([data-page="/"]) .hero h1 {
  max-width: 15ch;
  color: var(--secondary-text);
  font-size: clamp(3rem, 5.3vw, 5.65rem);
  line-height: 0.92;
}

body:not([data-page="/"]) .hero-copy h1,
body:not([data-page="/"]) .hero-copy .lead,
body:not([data-page="/"]) .hero-copy .hero-note {
  text-shadow: 0 2px 22px rgba(0, 0, 0, 0.54);
}

body:not([data-page="/"]) .pricing-hero::before {
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.98), rgba(5, 7, 6, 0.76) 44%, rgba(5, 7, 6, 0.54) 74%, rgba(5, 7, 6, 0.9)),
    linear-gradient(180deg, rgba(5, 7, 6, 0.16), rgba(5, 7, 6, 0.94));
}

body:not([data-page="/"]) .hero .lead {
  color: var(--secondary-muted);
  font-size: clamp(1.03rem, 1.22vw, 1.18rem);
  line-height: 1.68;
}

body:not([data-page="/"]) .hero-panel-layered {
  gap: 1rem;
  justify-items: stretch;
}

body:not([data-page="/"]) .hero-panel-layered > .interface-panel {
  width: min(100%, 470px);
  max-height: none;
  border-color: rgba(214, 179, 90, 0.24);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.018)),
    rgba(9, 10, 8, 0.82);
}

body:not([data-page="/"]) .hero-panel-layered > .visual-frame {
  display: block;
  width: min(100%, 470px);
  min-height: 300px;
  margin: 0;
}

body:not([data-page="/"]) .internal-hero-mini-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
  width: min(100%, 470px);
}

body:not([data-page="/"]) .hero-panel-visual {
  min-height: 210px;
  margin: 0;
}

body:not([data-page="/"]) .hero-panel-visual img,
body:not([data-page="/"]) .internal-section-visual img,
body:not([data-page="/"]) .card-media img,
body:not([data-page="/"]) .internal-final-media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
}

body:not([data-page="/"]) .visual-frame figcaption {
  position: absolute;
  inset: auto 0 0;
  padding: 1rem;
  background: linear-gradient(180deg, transparent, rgba(5, 7, 6, 0.88));
}

body:not([data-page="/"]) .visual-frame figcaption strong,
body:not([data-page="/"]) .visual-frame figcaption span {
  display: block;
}

body:not([data-page="/"]) .visual-frame figcaption strong {
  color: var(--secondary-text);
  font-size: 0.9rem;
}

body:not([data-page="/"]) .visual-frame figcaption span {
  margin-top: 0.24rem;
  color: rgba(245, 239, 228, 0.68);
  font-size: 0.78rem;
  line-height: 1.45;
}

body:not([data-page="/"]) .content-section,
body:not([data-page="/"]) .content-band,
body:not([data-page="/"]) .section-frame {
  padding: clamp(70px, 8vw, 112px) clamp(24px, 6vw, 72px);
  background:
    radial-gradient(circle at 86% 18%, rgba(214, 179, 90, 0.075), transparent 25rem),
    linear-gradient(180deg, #060807, #09100d);
}

body:not([data-page="/"]) .content-section:nth-of-type(even),
body:not([data-page="/"]) .content-band:nth-of-type(even) {
  background:
    radial-gradient(circle at 12% 20%, rgba(66, 80, 78, 0.22), transparent 28rem),
    linear-gradient(180deg, #080d0b, #050706);
}

body:not([data-page="/"]) .content-section > *,
body:not([data-page="/"]) .content-band > *,
body:not([data-page="/"]) .section-frame > * {
  width: var(--secondary-shell);
  max-width: 1240px;
}

body:not([data-page="/"]) .section-heading h2,
body:not([data-page="/"]) .dual-panel h2,
body:not([data-page="/"]) .split-section h2 {
  color: var(--secondary-text);
  font-size: clamp(2.35rem, 4.2vw, 4.5rem);
  line-height: 0.98;
}

body:not([data-page="/"]) p,
body:not([data-page="/"]) li,
body:not([data-page="/"]) .case-richtext p,
body:not([data-page="/"]) .card p,
body:not([data-page="/"]) .interface-panel p,
body:not([data-page="/"]) details p {
  color: var(--secondary-muted);
  font-size: clamp(0.96rem, 1vw, 1.04rem);
  line-height: 1.68;
}

body:not([data-page="/"]) .dual-column {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.84fr);
  gap: clamp(1.2rem, 3vw, 3rem);
  align-items: center;
}

body:not([data-page="/"]) .internal-story-grid > .visual-frame,
body:not([data-page="/"]) .internal-section-visual {
  position: relative;
  min-height: 0;
  aspect-ratio: 4 / 3;
  margin: 0;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.34);
}

body:not([data-page="/"]) .internal-story-grid .case-richtext {
  max-width: 68ch;
}

body:not([data-page="/"]) .card-grid {
  display: grid;
  gap: clamp(1rem, 1.6vw, 1.35rem);
}

body:not([data-page="/"]) .grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body:not([data-page="/"]) .grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body:not([data-page="/"]) .grid-1 {
  grid-template-columns: 1fr;
}

body:not([data-page="/"]) .card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(214, 179, 90, 0.17);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
    rgba(8, 10, 8, 0.78);
}

body:not([data-page="/"]) .card:not(.has-media) {
  padding: clamp(1.2rem, 2vw, 1.65rem);
}

body:not([data-page="/"]) .card.has-media {
  flex-direction: column;
}

body:not([data-page="/"]) .card-media {
  aspect-ratio: 16 / 9;
  width: 100%;
  overflow: hidden;
  border-bottom: 1px solid rgba(214, 179, 90, 0.15);
  background: #050706;
}

body:not([data-page="/"]) .card.has-media > :not(.card-media) {
  margin-left: clamp(1.1rem, 1.7vw, 1.45rem);
  margin-right: clamp(1.1rem, 1.7vw, 1.45rem);
}

body:not([data-page="/"]) .card.has-media .card-kicker {
  margin-top: clamp(1.05rem, 1.6vw, 1.3rem);
}

body:not([data-page="/"]) .card.has-media .card-link {
  margin-bottom: clamp(1.1rem, 1.7vw, 1.45rem);
}

body:not([data-page="/"]) .card h3 {
  color: var(--secondary-text);
  font-size: clamp(1.22rem, 1.55vw, 1.6rem);
  line-height: 1.05;
}

body:not([data-page="/"]) .card-link {
  margin-top: auto;
  color: var(--secondary-gold);
}

@media (min-width: 981px) {
  body:not([data-page="/"]) .grid-3.items-5 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  body:not([data-page="/"]) .grid-3.items-5 .card {
    grid-column: span 2;
  }

  body:not([data-page="/"]) .grid-3.items-5 .card:nth-child(4) {
    grid-column: 2 / span 2;
  }

  body:not([data-page="/"]) .grid-3.items-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body:not([data-page="/"]) .grid-3.items-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

body:not([data-page="/"]) .feature-list {
  display: grid;
  gap: 0.7rem;
}

body:not([data-page="/"]) .feature-list li {
  border: 1px solid rgba(214, 179, 90, 0.14);
  border-radius: 8px;
  background: rgba(6, 8, 7, 0.52);
}

body:not([data-page="/"]) .process-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 0.85rem;
}

body:not([data-page="/"]) .step,
body:not([data-page="/"]) .stat-pill,
body:not([data-page="/"]) details,
body:not([data-page="/"]) .tool-card,
body:not([data-page="/"]) .interface-panel {
  border-color: rgba(214, 179, 90, 0.17);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015)),
    rgba(7, 9, 8, 0.72);
}

body:not([data-page="/"]) .faq-list {
  display: grid;
  gap: 0.65rem;
}

body:not([data-page="/"]) details summary {
  color: rgba(245, 239, 228, 0.88);
  font-size: 0.98rem;
}

body:not([data-page="/"]) .internal-final-cta {
  position: relative;
  overflow: hidden;
  background: #050706;
}

body:not([data-page="/"]) .internal-final-media {
  position: absolute;
  inset: 0;
  opacity: 0.42;
}

body:not([data-page="/"]) .internal-final-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.96), rgba(5, 7, 6, 0.72) 52%, rgba(5, 7, 6, 0.88)),
    linear-gradient(180deg, rgba(5, 7, 6, 0.12), rgba(5, 7, 6, 0.92));
  z-index: 1;
}

body:not([data-page="/"]) .internal-final-cta > *:not(.internal-final-media) {
  position: relative;
  z-index: 2;
}

body:not([data-page="/"]) .site-footer {
  padding-inline: clamp(24px, 6vw, 72px);
}

body:not([data-page="/"]) .site-footer > * {
  width: var(--secondary-shell);
  max-width: 1240px;
  margin-inline: auto;
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .hero.hero-page,
  body:not([data-page="/"]) .dual-column,
  body:not([data-page="/"]) .split-section {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .internal-hero-mini-grid {
    max-width: 680px;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) {
    --secondary-shell: min(100% - 32px, 1240px);
  }

  body:not([data-page="/"]) .hero.hero-page {
    min-height: auto;
    padding-top: 104px;
  }

  body:not([data-page="/"]) .hero h1 {
    max-width: 100%;
    font-size: clamp(2.35rem, 11vw, 3.25rem);
  }

  body:not([data-page="/"]) .internal-hero-mini-grid,
  body:not([data-page="/"]) .grid-3,
  body:not([data-page="/"]) .grid-2,
  body:not([data-page="/"]) .grid-1,
  body:not([data-page="/"]) .card-grid {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .internal-story-grid > .visual-frame,
  body:not([data-page="/"]) .internal-section-visual {
    min-height: 0;
    aspect-ratio: 16 / 10;
  }
}

/* V4.23: raise every internal page to the same premium family as HOME */
body:not([data-page="/"]) .site-header {
  min-height: 70px;
  padding: 0 clamp(22px, 4vw, 72px);
  border-bottom-color: rgba(240, 206, 122, 0.14);
  background: rgba(4, 7, 8, 0.9);
}

body:not([data-page="/"]) .brand-mark {
  color: #f0ce7a;
  font-size: 2rem;
  font-weight: 900;
  line-height: 0.98;
}

body:not([data-page="/"]) .site-nav {
  gap: clamp(1rem, 2vw, 2.1rem);
}

body:not([data-page="/"]) .site-nav a:not(.button) {
  color: rgba(246, 239, 228, 0.74);
  font-size: 0.78rem;
  font-weight: 700;
}

body:not([data-page="/"]) .button-nav {
  min-height: 46px;
  padding: 0 1.15rem;
  border-radius: 999px;
  border-color: rgba(226, 190, 112, 0.42);
  background: rgba(7, 9, 9, 0.72);
  color: #f8edd8 !important;
  box-shadow: none;
}

body:not([data-page="/"]) .hero.hero-page {
  padding-top: clamp(118px, 12vw, 160px);
}

body:not([data-page="/"]) .hero-panel-layered > .interface-panel,
body:not([data-page="/"]) .tool-card,
body:not([data-page="/"]) .cta-card {
  color: var(--secondary-text);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.018)),
    rgba(9, 11, 10, 0.86);
}

body:not([data-page="/"]) .internal-final-cta .tool-card,
body:not([data-page="/"]) .internal-final-cta .cta-card {
  border: 1px solid rgba(240, 206, 122, 0.24);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.02)),
    rgba(9, 11, 10, 0.88);
  box-shadow: 0 24px 82px rgba(0, 0, 0, 0.32);
}

body:not([data-page="/"]) .internal-final-cta .tool-card h3,
body:not([data-page="/"]) .internal-final-cta .tool-card p {
  color: var(--secondary-text);
}

body:not([data-page="/"]) .resource-hub-hero .hero-copy h1 {
  max-width: 13ch;
}

body:not([data-page="/"]) .resource-hub-panel .internal-hero-mini-grid .visual-frame {
  min-height: 190px;
}

body:not([data-page="/"]) .resource-card-grid .card:first-child,
body:not([data-page="/"]) .resource-library-grid .card:first-child {
  border-color: rgba(240, 206, 122, 0.36);
  background:
    linear-gradient(180deg, rgba(240, 206, 122, 0.09), rgba(255, 255, 255, 0.018)),
    rgba(9, 11, 10, 0.82);
}

body:not([data-page="/"]) .resource-category-grid .card-media {
  aspect-ratio: 4 / 3;
}

body:not([data-page="/"]) .resource-dual-groups {
  align-items: start;
}

body:not([data-page="/"]) .resource-dual-groups .card {
  min-height: 180px;
}

body:not([data-page="/"]) .resource-related-section {
  background:
    radial-gradient(circle at 50% 0%, rgba(240, 206, 122, 0.08), transparent 30rem),
    linear-gradient(180deg, #070a09, #050707);
}

body:not([data-page="/"]) .site-footer {
  display: grid;
  grid-template-columns: minmax(280px, 0.95fr) repeat(3, minmax(130px, 0.45fr));
  gap: 3rem;
  padding: 3.6rem clamp(22px, 4vw, 72px);
  border-top: 1px solid rgba(240, 206, 122, 0.12);
  background:
    linear-gradient(115deg, rgba(240, 206, 122, 0.04), transparent 38%),
    #050808;
}

body:not([data-page="/"]) .site-footer > * {
  width: auto;
  max-width: none;
  margin: 0;
}

body:not([data-page="/"]) .site-footer-intro {
  max-width: 360px;
}

body:not([data-page="/"]) .site-footer .footer-logo {
  display: inline-grid;
  place-items: center;
  width: auto;
  min-width: 96px;
  min-height: 54px;
  padding: 0.45rem 0.75rem;
  border: 1px solid transparent;
  border-radius: 12px;
  background: transparent;
}

body:not([data-page="/"]) .site-footer .footer-logo .brand-mark {
  color: #d0a04b;
  font-size: 2rem;
  font-weight: 900;
}

body:not([data-page="/"]) .site-footer-intro p {
  max-width: 30ch;
  color: rgba(246, 239, 228, 0.7);
  line-height: 1.55;
}

body:not([data-page="/"]) .site-footer-group {
  display: grid;
  align-content: start;
  gap: 0.72rem;
}

body:not([data-page="/"]) .site-footer-group::before {
  color: #d0a04b;
  letter-spacing: 0.14em;
}

body:not([data-page="/"]) .site-footer a {
  color: rgba(246, 239, 228, 0.72);
}

body:not([data-page="/"]) .site-footer a:hover,
body:not([data-page="/"]) .site-footer a:focus-visible {
  color: #f0ce7a;
}

@media (min-width: 981px) {
  body:not([data-page="/"]) .resource-card-grid.grid-3.items-3 .card:first-child {
    transform: translateY(-14px);
  }

  body:not([data-page="/"]) .resource-library-grid.grid-3.items-12 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 1120px) {
  body:not([data-page="/"]) .site-footer {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .brand-mark {
    font-size: 1.55rem;
  }

  body:not([data-page="/"]) .site-header {
    min-height: 66px;
  }

  body:not([data-page="/"]) .site-footer {
    padding: 3rem 1.25rem;
  }
}

/* V4.24: final contrast guard for image-heavy internal heroes */
body:not([data-page="/"]) .internal-hero {
  background: #050706;
}

body:not([data-page="/"]) .internal-hero .internal-hero-media {
  z-index: 0;
}

body:not([data-page="/"]) .internal-hero::before,
body:not([data-page="/"]) .internal-hero::after {
  z-index: 1;
}

body:not([data-page="/"]) .internal-hero .hero-copy,
body:not([data-page="/"]) .internal-hero .hero-panel {
  z-index: 2;
  opacity: 1;
}

body:not([data-page="/"]) .internal-hero h1 {
  color: #f6efe4 !important;
  opacity: 1 !important;
}

body:not([data-page="/"]) .internal-hero .lead,
body:not([data-page="/"]) .internal-hero .hero-note {
  color: rgba(246, 239, 228, 0.82) !important;
  opacity: 1 !important;
}

body:not([data-page="/"]) .internal-hero .internal-hero-media img {
  opacity: 0.62;
  filter: brightness(0.62) contrast(1.12) saturate(0.96);
}

body:not([data-page="/"]) .pricing-hero .internal-hero-media img {
  opacity: 0.5;
  filter: brightness(0.46) contrast(1.16) saturate(0.92);
}

/* V4.25: internal heroes own their image layer instead of mixing with legacy backgrounds */
body:not([data-page="/"]) .hero.hero-page.internal-hero,
body:not([data-page="/"]) .hero.hero-immersive.internal-hero {
  background: #050706;
}

/* V4.26: one exact premium header family across every website page */
body:not([data-page="/"]) .site-header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 80;
  width: 100%;
  max-width: none;
  min-height: 70px;
  margin: 0;
  padding: 0 clamp(22px, 4vw, 72px);
  border: 0;
  border-bottom: 1px solid rgba(226, 190, 112, 0.14);
  border-radius: 0;
  background: rgba(4, 7, 8, 0.9);
  box-shadow: none;
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]).is-scrolled .site-header {
  background: rgba(4, 7, 8, 0.92);
  border-bottom-color: rgba(226, 190, 112, 0.2);
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.28);
}

body:not([data-page="/"]) .brand {
  --brand-logo-size: clamp(1.7rem, 2.15vw, 2.62rem);
  --brand-logo-weight: 700;
  --brand-logo-tracking: -0.018em;
  min-width: 0;
  color: #f0ce7a;
}

body:not([data-page="/"]) .brand::before {
  background: linear-gradient(96deg, #a9863f, #c8a15a 48%, #d6b66c 66%, #b9954c);
  -webkit-background-clip: text;
  background-clip: text;
}

body:not([data-page="/"]) .brand-mark {
  width: auto;
  height: auto;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #f0ce7a;
  font-family: "Inter", sans-serif;
  font-size: var(--brand-logo-size);
  font-weight: var(--brand-logo-weight);
  line-height: 0.98;
  letter-spacing: var(--brand-logo-tracking);
}

body:not([data-page="/"]) .brand:hover .brand-mark,
body:not([data-page="/"]) .brand:focus-visible .brand-mark {
  color: transparent;
}

body:not([data-page="/"]) .site-nav {
  display: flex;
  align-items: center;
  gap: clamp(1rem, 2vw, 2.1rem);
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  box-shadow: none;
}

body:not([data-page="/"]) .site-nav a:not(.button) {
  position: relative;
  color: rgba(246, 239, 228, 0.74);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-transform: none;
}

body:not([data-page="/"]) .site-nav a:not(.button)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.44rem;
  height: 1px;
  background: #f0ce7a;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 420ms ease;
}

body:not([data-page="/"]) .site-nav a:not(.button):hover,
body:not([data-page="/"]) .site-nav a:not(.button):focus-visible,
body:not([data-page="/"]) .site-nav a.is-active:not(.button) {
  color: #fffaf0;
}

body:not([data-page="/"]) .site-nav a:not(.button):hover::after,
body:not([data-page="/"]) .site-nav a:not(.button):focus-visible::after,
body:not([data-page="/"]) .site-nav a.is-active:not(.button)::after {
  transform: scaleX(1);
}

body:not([data-page="/"]) .button-nav {
  min-height: 44px;
  padding: 0 1.35rem;
  border: 1px solid rgba(226, 190, 112, 0.42);
  border-radius: 999px;
  background: rgba(7, 9, 9, 0.72);
  color: #fffaf1 !important;
  font-size: 0.82rem;
  font-weight: 800;
  box-shadow: none;
}

body:not([data-page="/"]) .button-nav::after {
  content: "\2192";
  margin-left: 0.55rem;
  color: #f0ce7a;
  font-weight: 800;
}

body:not([data-page="/"]) .nav-toggle {
  border-color: rgba(226, 190, 112, 0.28);
  background: rgba(7, 9, 9, 0.72);
  color: #f8edd8;
}

@media (max-width: 1120px) {
  body:not([data-page="/"]) .site-header {
    min-height: 70px;
    padding-inline: clamp(18px, 5vw, 42px);
  }

  body:not([data-page="/"]) .nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  body:not([data-page="/"]) .site-nav {
    position: absolute;
    top: calc(100% + 10px);
    right: clamp(18px, 5vw, 42px);
    display: none;
    width: min(360px, calc(100vw - 36px));
    padding: 1rem;
    border: 1px solid rgba(226, 190, 112, 0.18);
    border-radius: 18px;
    background: rgba(4, 7, 8, 0.96);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
  }

  body:not([data-page="/"]) .site-nav.is-open {
    display: grid;
    gap: 0.65rem;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .site-header {
    min-height: 66px;
  }

  body:not([data-page="/"]) .brand-mark {
    font-size: clamp(1.75rem, 8vw, 2.2rem);
  }
}

/* V4.27: secondary pages tightened to the same premium rhythm as HOME */
body:not([data-page="/"]) {
  --secondary-shell: min(1280px, calc(100% - clamp(32px, 8vw, 136px)));
  --secondary-panel: rgba(8, 10, 9, 0.78);
  --secondary-panel-strong: rgba(10, 12, 10, 0.9);
}

body:not([data-page="/"]) .hero::after,
body:not([data-page="/"]) .content-section::after,
body:not([data-page="/"]) .content-band::after {
  content: none;
}

body:not([data-page="/"]) .hero.hero-page.internal-hero,
body:not([data-page="/"]) .hero.hero-immersive.internal-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 470px);
  align-items: end;
  min-height: clamp(720px, 88svh, 860px);
  padding: clamp(118px, 12vw, 164px) clamp(32px, 7vw, 96px) clamp(64px, 8vw, 104px);
  border: 0;
  border-radius: 0;
  gap: clamp(2rem, 6vw, 7rem);
  box-shadow: none;
  isolation: isolate;
}

body:not([data-page="/"]) .internal-hero::before {
  background:
    linear-gradient(90deg, rgba(4, 7, 8, 0.96), rgba(4, 7, 8, 0.74) 40%, rgba(4, 7, 8, 0.32) 72%, rgba(4, 7, 8, 0.82)),
    linear-gradient(180deg, rgba(4, 7, 8, 0.18), rgba(4, 7, 8, 0.92)),
    radial-gradient(circle at 18% 72%, rgba(240, 206, 122, 0.14), transparent 27rem);
}

body:not([data-page="/"]) .internal-hero .internal-hero-media img {
  opacity: 0.7;
  filter: brightness(0.6) contrast(1.12) saturate(0.96);
}

body:not([data-page="/"]) .hero-copy {
  align-self: end;
  max-width: 760px;
}

body:not([data-page="/"]) .hero h1 {
  max-width: 12ch;
  font-size: clamp(3.2rem, 5.5vw, 6.25rem);
  line-height: 0.91;
  letter-spacing: 0;
}

body:not([data-page="/"]) .hero .lead {
  max-width: 64ch;
  margin-top: clamp(1rem, 1.6vw, 1.45rem);
}

body:not([data-page="/"]) .hero-note {
  max-width: 58ch;
}

body:not([data-page="/"]) .hero-panel-layered {
  align-self: center;
  justify-self: end;
  width: min(100%, 470px);
}

body:not([data-page="/"]) .hero-panel-layered > .visual-frame {
  display: none;
}

body:not([data-page="/"]) .hero-panel-layered > .interface-panel {
  width: 100%;
  padding: clamp(1.05rem, 1.8vw, 1.45rem);
  border-color: rgba(240, 206, 122, 0.28);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.018)),
    var(--secondary-panel-strong);
  box-shadow:
    0 30px 90px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .hero-panel-layered .stat-grid {
  gap: 0.68rem;
}

body:not([data-page="/"]) .hero-panel-layered .stat-pill {
  padding: 0.86rem 0.9rem;
  background: rgba(255, 255, 255, 0.045);
}

body:not([data-page="/"]) .content-section,
body:not([data-page="/"]) .content-band,
body:not([data-page="/"]) .section-frame {
  padding: clamp(58px, 7vw, 98px) 0;
}

body:not([data-page="/"]) .content-section > *,
body:not([data-page="/"]) .content-band > *,
body:not([data-page="/"]) .section-frame > * {
  width: var(--secondary-shell);
  margin-inline: auto;
}

body:not([data-page="/"]) .vertical-brief-section {
  border-top: 1px solid rgba(240, 206, 122, 0.08);
  border-bottom: 1px solid rgba(240, 206, 122, 0.08);
  background:
    radial-gradient(circle at 78% 8%, rgba(240, 206, 122, 0.11), transparent 27rem),
    linear-gradient(180deg, #070a09, #050706);
}

body:not([data-page="/"]) .vertical-brief-section .dual-column {
  grid-template-columns: minmax(0, 0.92fr) minmax(320px, 0.58fr);
  gap: clamp(1.4rem, 4vw, 4.5rem);
}

body:not([data-page="/"]) .vertical-brief-section .feature-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: clamp(1.2rem, 2vw, 1.8rem);
}

body:not([data-page="/"]) .vertical-brief-section .feature-list li {
  min-height: 112px;
  padding: 1rem;
}

body:not([data-page="/"]) .section-heading {
  margin-bottom: clamp(1.45rem, 2.8vw, 2.55rem);
}

body:not([data-page="/"]) .section-heading h2,
body:not([data-page="/"]) .dual-panel h2,
body:not([data-page="/"]) .split-section h2 {
  max-width: 13.5ch;
  font-size: clamp(2.3rem, 4vw, 4.85rem);
  letter-spacing: 0;
}

body:not([data-page="/"]) .centered-heading {
  text-align: left;
}

body:not([data-page="/"]) .centered-heading h2 {
  margin-inline: 0;
}

body:not([data-page="/"]) .editorial-visual-section .dual-column {
  grid-template-columns: minmax(0, 0.86fr) minmax(320px, 0.58fr);
  gap: clamp(1.35rem, 4vw, 4rem);
}

body:not([data-page="/"]) .case-richtext {
  max-width: 72ch;
}

body:not([data-page="/"]) .internal-story-grid > .visual-frame,
body:not([data-page="/"]) .internal-section-visual {
  border-color: rgba(240, 206, 122, 0.18);
  box-shadow: 0 30px 92px rgba(0, 0, 0, 0.34);
}

body:not([data-page="/"]) .card {
  border-color: rgba(240, 206, 122, 0.17);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.058), rgba(255, 255, 255, 0.015)),
    var(--secondary-panel);
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.2);
}

body:not([data-page="/"]) .card p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  font-size: 0.92rem;
  line-height: 1.58;
}

body:not([data-page="/"]) .card.has-media .card-media {
  aspect-ratio: 16 / 10;
}

body:not([data-page="/"]) .card h3 {
  text-wrap: balance;
}

body:not([data-page="/"]) .related-next-section .card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body:not([data-page="/"]) .faq-section {
  padding-top: clamp(46px, 5.5vw, 78px);
}

body:not([data-page="/"]) .faq-list {
  max-width: 900px;
  margin-inline: auto;
}

body:not([data-page="/"]) .internal-final-cta {
  min-height: clamp(420px, 46vw, 560px);
  display: grid;
  align-items: center;
}

body:not([data-page="/"]) .site-footer {
  align-items: start;
  gap: clamp(1.6rem, 5vw, 5.5rem);
  min-height: 0;
  padding: clamp(2.7rem, 4vw, 4.7rem) clamp(22px, 4vw, 72px);
}

body:not([data-page="/"]) .site-footer-intro p {
  margin-top: 1.25rem;
}

@media (min-width: 1440px) {
  body:not([data-page="/"]) .site-footer {
    grid-template-columns: minmax(280px, 0.72fr) repeat(3, minmax(150px, 0.32fr));
  }
}

@media (max-width: 980px) {
  body:not([data-page="/"]) .hero.hero-page.internal-hero,
  body:not([data-page="/"]) .hero.hero-immersive.internal-hero,
  body:not([data-page="/"]) .vertical-brief-section .dual-column,
  body:not([data-page="/"]) .editorial-visual-section .dual-column {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .hero-panel-layered {
    justify-self: start;
    width: min(100%, 560px);
  }

  body:not([data-page="/"]) .vertical-brief-section .feature-list,
  body:not([data-page="/"]) .related-next-section .card-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .hero.hero-page.internal-hero,
  body:not([data-page="/"]) .hero.hero-immersive.internal-hero {
    min-height: auto;
    padding: 102px 16px 44px;
    gap: 1.2rem;
  }

  body:not([data-page="/"]) .hero h1 {
    max-width: 100%;
    font-size: clamp(2.35rem, 10vw, 3.15rem);
    line-height: 1;
  }

  body:not([data-page="/"]) .hero-panel-layered {
    width: 100%;
  }

  body:not([data-page="/"]) .content-section,
  body:not([data-page="/"]) .content-band,
  body:not([data-page="/"]) .section-frame {
    padding-block: 48px;
  }
}

/* V4.28: collision fixes and stronger secondary-page identity */
body:not([data-page="/"]) .hero-copy,
body:not([data-page="/"]) .section-heading,
body:not([data-page="/"]) .band-aside,
body:not([data-page="/"]) .dual-column > *,
body:not([data-page="/"]) .card,
body:not([data-page="/"]) .interface-panel,
body:not([data-page="/"]) .site-footer > * {
  min-width: 0;
}

body:not([data-page="/"]) .hero-copy {
  max-width: min(100%, 780px);
}

body:not([data-page="/"]) .hero h1,
body:not([data-page="/"]) .section-heading h2,
body:not([data-page="/"]) .dual-panel h2,
body:not([data-page="/"]) .split-section h2 {
  text-wrap: balance;
  overflow-wrap: normal;
}

body:not([data-page="/"]) .hero .lead,
body:not([data-page="/"]) .hero-note,
body:not([data-page="/"]) .case-richtext,
body:not([data-page="/"]) .band-aside,
body:not([data-page="/"]) .interface-panel p {
  max-width: 68ch;
}

body:not([data-page="/"]) .cta-row,
body:not([data-page="/"]) .button-group {
  display: flex;
  flex-wrap: wrap;
  gap: 0.72rem;
  align-items: center;
  max-width: 100%;
}

body:not([data-page="/"]) .button,
body:not([data-page="/"]) .button-nav {
  max-width: 100%;
  min-width: 0;
  min-height: 44px;
  justify-content: center;
  white-space: normal;
  text-align: center;
  line-height: 1.08;
  overflow-wrap: break-word;
}

body:not([data-page="/"]) .button::after,
body:not([data-page="/"]) .button-nav::after {
  flex: 0 0 auto;
}

body:not([data-page="/"]) .vertical-hero-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: clamp(0.9rem, 1.8vw, 1.35rem);
  align-items: start;
  position: relative;
  overflow: hidden;
}

body:not([data-page="/"]) .vertical-hero-panel > :not(.hero-panel-brand) {
  position: relative;
  z-index: 2;
}

body:not([data-page="/"]) .vertical-hero-panel .panel-label {
  grid-column: 1;
  grid-row: 1;
}

body:not([data-page="/"]) .vertical-hero-panel h3 {
  grid-column: 1;
  grid-row: 2;
}

body:not([data-page="/"]) .vertical-hero-panel > p:not(.panel-label),
body:not([data-page="/"]) .vertical-hero-panel .stat-grid {
  grid-column: 1 / -1;
}

body:not([data-page="/"]) .hero-panel-brand {
  grid-column: 2;
  grid-row: 1 / span 2;
  position: relative;
  z-index: 1;
  display: grid;
  width: clamp(6.2rem, 8vw, 8.6rem);
  aspect-ratio: 1;
  place-items: center;
  border: 1px solid rgba(214, 179, 90, 0.24);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(214, 179, 90, 0.16), rgba(255, 255, 255, 0.035)),
    rgba(5, 7, 6, 0.46);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 24px 58px rgba(0, 0, 0, 0.24);
  pointer-events: none;
}

body:not([data-page="/"]) .hero-panel-brand::before,
body:not([data-page="/"]) .hero-panel-brand::after {
  content: "";
  position: absolute;
  inset: 0.58rem;
  border: 1px solid rgba(214, 179, 90, 0.2);
  border-radius: 6px;
}

body:not([data-page="/"]) .hero-panel-brand::after {
  inset: 1.05rem;
  border-color: rgba(245, 239, 228, 0.12);
  transform: rotate(8deg);
}

body:not([data-page="/"]) .hero-panel-brand span {
  color: rgba(245, 239, 228, 0.88);
  font-family: Inter, system-ui, sans-serif;
  font-size: clamp(1.8rem, 3vw, 2.7rem);
  font-weight: 950;
  letter-spacing: 0;
  line-height: 0.95;
}

body:not([data-page="/"]) .hero-panel-brand small {
  margin-top: -1.1rem;
  color: rgba(214, 179, 90, 0.9);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.18em;
}

@media (min-width: 981px) {
  body:not([data-page="/"]) .vertical-hero-panel {
    padding-right: clamp(1.05rem, 1.8vw, 1.45rem);
  }

  body:not([data-page="/"]) .grid-3.items-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  body:not([data-page="/"]) .grid-3.items-5 .card,
  body:not([data-page="/"]) .grid-3.items-5 .card:nth-child(4) {
    grid-column: auto;
  }
}

body:not([data-page="/"]) .feature-list li,
body:not([data-page="/"]) .bullet-list li,
body:not([data-page="/"]) .checklist > div,
body:not([data-page="/"]) .checklist li,
body:not([data-page="/"]) .vertical-brief-section .feature-list li {
  padding-left: clamp(2.85rem, 3.2vw, 3.15rem);
}

body:not([data-page="/"]) .feature-list li::before,
body:not([data-page="/"]) .bullet-list li::before,
body:not([data-page="/"]) .checklist > div::before {
  left: 1.05rem;
  top: 1.22rem;
}

body:not([data-page="/"]) .card > * {
  position: relative;
  z-index: 1;
}

body:not([data-page="/"]) .card h3,
body:not([data-page="/"]) .card p,
body:not([data-page="/"]) .card-link,
body:not([data-page="/"]) summary {
  max-width: 100%;
  overflow-wrap: break-word;
}

body:not([data-page="/"]) .card-link {
  display: inline-flex;
  width: fit-content;
  max-width: calc(100% - 2px);
  align-items: center;
}

body:not([data-page="/"]) .site-footer {
  grid-template-columns: minmax(260px, 0.9fr) repeat(3, minmax(150px, 0.34fr));
}

body:not([data-page="/"]) .site-footer-intro p {
  max-width: 32ch;
}

body:not([data-page="/"]) .site-footer .footer-logo {
  width: fit-content;
  max-width: 100%;
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .site-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  body:not([data-page="/"]) .hero-panel-brand {
    inset: auto;
    width: 6.2rem;
    margin: 0 0 0.85rem auto;
  }

  body:not([data-page="/"]) .vertical-brief-section .feature-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  body:not([data-page="/"]) .section-heading h2,
  body:not([data-page="/"]) .dual-panel h2,
  body:not([data-page="/"]) .split-section h2 {
    max-width: 100%;
    font-size: clamp(2rem, 8.8vw, 2.65rem);
    line-height: 1.02;
    overflow-wrap: anywhere;
  }

  body:not([data-page="/"]) .section-heading,
  body:not([data-page="/"]) .case-richtext,
  body:not([data-page="/"]) .lead {
    max-width: 100%;
  }

  body:not([data-page="/"]) .cta-row,
  body:not([data-page="/"]) .button-group {
    display: grid;
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .button,
  body:not([data-page="/"]) .button-nav,
  body:not([data-page="/"]) .card-link {
    width: 100%;
  }

  body:not([data-page="/"]) .site-footer {
    grid-template-columns: 1fr;
  }
}

/* V4.29: premium vertical pages for promotoras, industria and arquitectura */
body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered > .vertical-command-panel {
  width: min(100%, 540px);
  padding: clamp(1.25rem, 2vw, 1.8rem);
}

body:not([data-page="/"]) .vertical-command-panel {
  position: relative;
  overflow: hidden;
}

body:not([data-page="/"]) .vertical-command-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(120deg, transparent 0 48%, rgba(214, 179, 90, 0.1) 48.3%, transparent 48.9% 100%),
    radial-gradient(circle at 84% 10%, rgba(214, 179, 90, 0.18), transparent 11rem);
  pointer-events: none;
}

body:not([data-page="/"]) .vertical-command-panel > * {
  position: relative;
  z-index: 1;
}

body:not([data-page="/"]) .command-panel-top {
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.1rem;
}

body:not([data-page="/"]) .command-panel-badge,
body:not([data-page="/"]) .vertical-action-code,
body:not([data-page="/"]) .vertical-signal-code {
  display: inline-grid;
  min-width: 44px;
  min-height: 36px;
  place-items: center;
  border: 1px solid rgba(214, 179, 90, 0.34);
  border-radius: 999px;
  background: rgba(214, 179, 90, 0.08);
  color: var(--secondary-gold);
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.08em;
}

body:not([data-page="/"]) .command-panel-badge {
  padding: 0.65rem 0.9rem;
  min-width: 0;
  min-height: 0;
  white-space: nowrap;
}

body:not([data-page="/"]) .vertical-command-panel h3 {
  max-width: 13ch;
  color: var(--secondary-text);
  font-size: clamp(2rem, 2.6vw, 3rem);
  line-height: 0.96;
  letter-spacing: 0;
}

body:not([data-page="/"]) .vertical-command-panel > p:not(.panel-label) {
  margin-top: 1rem;
  max-width: 44ch;
}

body:not([data-page="/"]) .vertical-signal-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(0.8rem, 1.4vw, 1.05rem);
  margin-top: clamp(1.2rem, 2vw, 1.6rem);
}

body:not([data-page="/"]) .hero-signal-grid {
  grid-template-columns: 1fr;
}

body:not([data-page="/"]) .vertical-signal-card,
body:not([data-page="/"]) .vertical-action-card,
body:not([data-page="/"]) .vertical-decision-card {
  position: relative;
  min-width: 0;
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.014)),
    rgba(5, 7, 6, 0.62);
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.22);
}

body:not([data-page="/"]) .vertical-signal-card {
  padding: clamp(1rem, 1.6vw, 1.25rem);
}

body:not([data-page="/"]) .vertical-signal-card h3 {
  margin-top: 0.85rem;
  color: var(--secondary-text);
  font-size: clamp(1.02rem, 1.15vw, 1.22rem);
  line-height: 1.12;
}

body:not([data-page="/"]) .vertical-signal-card p {
  margin-top: 0.55rem;
  color: var(--secondary-muted);
  font-size: 0.92rem;
  line-height: 1.55;
}

body:not([data-page="/"]) .vertical-focus-shell,
body:not([data-page="/"]) .vertical-process-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(440px, 0.72fr);
  gap: clamp(2.2rem, 5vw, 6rem);
  align-items: center;
}

body:not([data-page="/"]) .vertical-focus-copy .lead,
body:not([data-page="/"]) .vertical-process-shell .lead {
  max-width: 58ch;
}

body:not([data-page="/"]) .vertical-showreel {
  display: grid;
  gap: 0.9rem;
  width: 100%;
}

body:not([data-page="/"]) .vertical-showreel-screen {
  position: relative;
  min-height: clamp(360px, 34vw, 540px);
  aspect-ratio: 16 / 11;
  overflow: hidden;
  border: 1px solid rgba(214, 179, 90, 0.2);
  border-radius: 8px;
  background: #050706;
  box-shadow: 0 34px 100px rgba(0, 0, 0, 0.38);
}

body:not([data-page="/"]) .vertical-showreel-screen img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  animation: verticalShowreel 30s infinite;
  animation-delay: calc(var(--slide) * 5s);
  filter: brightness(0.86) contrast(1.06) saturate(0.98);
}

body:not([data-page="/"]) .vertical-showreel-screen img:first-child {
  opacity: 1;
}

@keyframes verticalShowreel {
  0%,
  14% {
    opacity: 1;
    transform: scale(1);
  }

  18%,
  100% {
    opacity: 0;
    transform: scale(1.035);
  }
}

body:not([data-page="/"]) .vertical-showreel-caption {
  position: absolute;
  inset: auto 1rem 1rem 1rem;
  z-index: 2;
  max-width: min(420px, calc(100% - 2rem));
  padding: 0.9rem 1rem;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-radius: 8px;
  background: rgba(5, 7, 6, 0.72);
  backdrop-filter: blur(14px);
}

body:not([data-page="/"]) .vertical-showreel-caption span {
  color: var(--secondary-gold);
  font-size: 0.68rem;
  font-weight: 950;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .vertical-showreel-caption strong {
  display: block;
  margin-top: 0.24rem;
  color: var(--secondary-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.15rem, 1.7vw, 1.7rem);
  line-height: 1.02;
  white-space: normal;
  overflow-wrap: break-word;
}

body:not([data-page="/"]) .vertical-showreel-rail {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.55rem;
}

body:not([data-page="/"]) .vertical-showreel-rail span {
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border: 1px solid rgba(214, 179, 90, 0.14);
  border-radius: 6px;
  opacity: 0.72;
}

body:not([data-page="/"]) .vertical-showreel-rail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body:not([data-page="/"]) .vertical-activation-section .band-shell,
body:not([data-page="/"]) .vertical-case-section .band-shell {
  align-items: end;
}

body:not([data-page="/"]) .vertical-action-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 1.6vw, 1.35rem);
  width: var(--secondary-shell);
  max-width: 1240px;
  margin-inline: auto;
}

body:not([data-page="/"]) .vertical-action-card {
  display: grid;
  min-height: 244px;
  padding: clamp(1.2rem, 2vw, 1.55rem);
}

body:not([data-page="/"]) .vertical-action-card::after,
body:not([data-page="/"]) .vertical-decision-card::after {
  content: "->";
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid rgba(214, 179, 90, 0.28);
  border-radius: 999px;
  color: var(--secondary-gold);
}

body:not([data-page="/"]) .vertical-action-card h3 {
  margin-top: 1.15rem;
  color: var(--secondary-text);
  font-size: clamp(1.28rem, 1.6vw, 1.75rem);
  line-height: 1.04;
}

body:not([data-page="/"]) .vertical-action-card p {
  margin-top: 0.72rem;
  color: var(--secondary-muted);
  line-height: 1.58;
}

body:not([data-page="/"]) .vertical-action-card a {
  align-self: end;
  width: fit-content;
  margin-top: 1rem;
  color: var(--secondary-gold);
  font-size: 0.82rem;
  font-weight: 900;
  text-decoration: none;
}

body:not([data-page="/"]) .vertical-cta-aside {
  display: flex;
  justify-content: flex-end;
}

body:not([data-page="/"]) .premium-case-grid .card,
body:not([data-page="/"]) .related-premium-grid .card,
body:not([data-page="/"]) .vertical-package-grid .card {
  min-height: 100%;
}

body:not([data-page="/"]) .premium-case-grid .card p,
body:not([data-page="/"]) .related-premium-grid .card p,
body:not([data-page="/"]) .vertical-package-grid .card p {
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
}

body:not([data-page="/"]) .premium-case-grid .card-link,
body:not([data-page="/"]) .related-premium-grid .card-link,
body:not([data-page="/"]) .vertical-package-grid .card-link {
  width: fit-content;
  height: auto;
  min-width: 0;
  min-height: 38px;
  padding: 0.7rem 1rem;
  color: var(--secondary-gold);
  border-radius: 999px;
  background: rgba(214, 179, 90, 0.08);
  text-decoration: none;
}

body:not([data-page="/"]) .premium-case-grid .card-link::after,
body:not([data-page="/"]) .related-premium-grid .card-link::after,
body:not([data-page="/"]) .vertical-package-grid .card-link::after {
  content: " ->";
  position: static;
  display: inline;
  margin-left: 0.4rem;
  color: currentColor;
}

body:not([data-page="/"]) .vertical-package-grid {
  counter-reset: packageStep;
}

body:not([data-page="/"]) .vertical-package-grid .package-card {
  counter-increment: packageStep;
}

body:not([data-page="/"]) .vertical-package-grid .package-card::before {
  content: counter(packageStep);
  position: absolute;
  top: clamp(0.85rem, 1.4vw, 1.05rem);
  right: clamp(0.85rem, 1.4vw, 1.05rem);
  z-index: 2;
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border: 1px solid rgba(214, 179, 90, 0.42);
  border-radius: 999px;
  background:
    radial-gradient(circle at 35% 25%, rgba(240, 206, 122, 0.34), transparent 48%),
    rgba(5, 7, 6, 0.68);
  color: var(--secondary-gold);
  font-weight: 950;
}

body:not([data-page="/"]) .vertical-process-list {
  display: grid;
  gap: 0.85rem;
  margin-top: clamp(1.2rem, 2vw, 1.6rem);
}

body:not([data-page="/"]) .vertical-process-step {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
  padding: 1rem;
  border: 1px solid rgba(214, 179, 90, 0.15);
  border-radius: 8px;
  background: rgba(5, 7, 6, 0.54);
}

body:not([data-page="/"]) .vertical-process-step span,
body:not([data-page="/"]) .vertical-decision-card span {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid rgba(214, 179, 90, 0.34);
  border-radius: 999px;
  color: var(--secondary-gold);
  font-weight: 950;
}

body:not([data-page="/"]) .vertical-process-step p {
  margin: 0;
}

body:not([data-page="/"]) .vertical-decision-board {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(520px, 1fr);
  gap: clamp(1.4rem, 4vw, 4.5rem);
  align-items: center;
  width: var(--secondary-shell);
  max-width: 1240px;
  margin-inline: auto;
  padding: clamp(1.2rem, 2.6vw, 2rem);
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-radius: 8px;
  background:
    radial-gradient(circle at 78% 18%, rgba(214, 179, 90, 0.14), transparent 24rem),
    linear-gradient(135deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.012)),
    rgba(5, 7, 6, 0.76);
}

body:not([data-page="/"]) .vertical-decision-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.9rem;
}

body:not([data-page="/"]) .vertical-decision-card {
  display: grid;
  min-height: 220px;
  padding: 1rem;
  color: inherit;
  text-decoration: none;
}

body:not([data-page="/"]) .vertical-decision-card strong {
  margin-top: 1rem;
  color: var(--secondary-text);
  font-size: clamp(1.08rem, 1.3vw, 1.32rem);
  line-height: 1.12;
}

body:not([data-page="/"]) .vertical-decision-card small {
  margin-top: 0.68rem;
  color: var(--secondary-muted);
  font-size: 0.9rem;
  line-height: 1.5;
}

body:not([data-page="/"]) .vertical-faq-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.55fr) minmax(520px, 0.82fr);
  gap: clamp(1.6rem, 5vw, 5.2rem);
  align-items: start;
  width: var(--secondary-shell);
  max-width: 1180px;
  margin-inline: auto;
}

body:not([data-page="/"]) .vertical-faq-section .faq-list {
  max-width: none;
}

body:not([data-page="/"]) .vertical-final-shell {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) auto;
  gap: clamp(1rem, 4vw, 4rem);
  align-items: end;
  width: var(--secondary-shell);
  max-width: 1180px;
  margin-inline: auto;
}

body:not([data-page="/"]) .vertical-final-section {
  overflow: hidden;
}

body:not([data-page="/"]) .vertical-final-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.94), rgba(5, 7, 6, 0.64) 55%, rgba(5, 7, 6, 0.9)),
    radial-gradient(circle at 18% 82%, rgba(214, 179, 90, 0.16), transparent 26rem);
}

body:not([data-page="/"]) .vertical-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-end;
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .vertical-focus-shell,
  body:not([data-page="/"]) .vertical-process-shell,
  body:not([data-page="/"]) .vertical-decision-board,
  body:not([data-page="/"]) .vertical-faq-shell,
  body:not([data-page="/"]) .vertical-final-shell {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .vertical-action-grid,
  body:not([data-page="/"]) .vertical-decision-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body:not([data-page="/"]) .vertical-cta-aside,
  body:not([data-page="/"]) .vertical-final-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .command-panel-top {
    display: grid;
    justify-items: start;
  }

  body:not([data-page="/"]) .vertical-command-panel h3 {
    max-width: 100%;
  }

  body:not([data-page="/"]) .vertical-signal-grid,
  body:not([data-page="/"]) .vertical-action-grid,
  body:not([data-page="/"]) .vertical-decision-actions {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .vertical-showreel-screen {
    min-height: 300px;
  }

  body:not([data-page="/"]) .vertical-showreel-rail {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body:not([data-page="/"]) .vertical-action-card,
  body:not([data-page="/"]) .vertical-decision-card {
    min-height: 0;
  }

  body:not([data-page="/"]) .vertical-final-actions,
  body:not([data-page="/"]) .vertical-final-actions .button {
    width: 100%;
  }
}

/* V4.30: mobile overflow guard for premium vertical pages */
@media (max-width: 760px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  body:not([data-page="/"]) {
    --secondary-shell: min(calc(100vw - 32px), 358px);
  }

  body:not([data-page="/"]) .site-header {
    width: 100vw;
    max-width: 100vw;
    padding-inline: 20px;
    overflow: hidden;
  }

  body:not([data-page="/"]) .button-nav {
    display: none;
  }

  body:not([data-page="/"]) main,
  body:not([data-page="/"]) .hero.hero-page.internal-hero,
  body:not([data-page="/"]) .hero.hero-immersive.internal-hero,
  body:not([data-page="/"]) .content-section,
  body:not([data-page="/"]) .content-band,
  body:not([data-page="/"]) .section-frame {
    width: 100vw;
    max-width: 100vw;
    overflow: hidden;
  }

  body:not([data-page="/"]) .hero.hero-page.internal-hero,
  body:not([data-page="/"]) .hero.hero-immersive.internal-hero {
    grid-template-columns: minmax(0, 1fr);
    padding-inline: 16px;
  }

  body:not([data-page="/"]) .hero-copy,
  body:not([data-page="/"]) .hero-copy > *,
  body:not([data-page="/"]) .hero-panel-layered,
  body:not([data-page="/"]) .vertical-command-panel,
  body:not([data-page="/"]) .content-section > *,
  body:not([data-page="/"]) .content-band > *,
  body:not([data-page="/"]) .section-frame > *,
  body:not([data-page="/"]) .vertical-focus-shell,
  body:not([data-page="/"]) .vertical-process-shell,
  body:not([data-page="/"]) .vertical-decision-board,
  body:not([data-page="/"]) .vertical-faq-shell,
  body:not([data-page="/"]) .vertical-final-shell,
  body:not([data-page="/"]) .vertical-action-grid,
  body:not([data-page="/"]) .card-grid {
    width: var(--secondary-shell);
    max-width: var(--secondary-shell);
    min-width: 0;
  }

  body:not([data-page="/"]) .hero h1,
  body:not([data-page="/"]) .section-heading h2,
  body:not([data-page="/"]) .vertical-focus-copy h2,
  body:not([data-page="/"]) .vertical-process-shell h2,
  body:not([data-page="/"]) .vertical-decision-copy h2,
  body:not([data-page="/"]) .card h3,
  body:not([data-page="/"]) p,
  body:not([data-page="/"]) a,
  body:not([data-page="/"]) small,
  body:not([data-page="/"]) strong {
    max-width: 100%;
    overflow-wrap: break-word;
  }

  body:not([data-page="/"]) .hero h1,
  body:not([data-page="/"]) .section-heading h2,
  body:not([data-page="/"]) .vertical-focus-copy h2,
  body:not([data-page="/"]) .vertical-process-shell h2,
  body:not([data-page="/"]) .vertical-decision-copy h2 {
    font-size: clamp(2.15rem, 9vw, 2.72rem);
    line-height: 0.98;
  }

  body:not([data-page="/"]) .vertical-showreel-caption {
    inset-inline: 0.75rem;
    max-width: calc(100% - 1.5rem);
  }

  body:not([data-page="/"]) .vertical-showreel-caption strong {
    font-size: clamp(1rem, 6vw, 1.22rem);
  }
}

/* V4.31: richer recovered WordPress case pages */
body[data-page^="/casos/"] .case-hero .hero-copy {
  max-width: min(760px, 100%);
}

body[data-page^="/casos/"] .case-hero .hero-panel-layered {
  width: min(100%, 520px);
}

body[data-page^="/casos/"] .case-hero .hero-panel-layered > .visual-frame {
  width: 100%;
  min-height: clamp(320px, 38vw, 500px);
}

body[data-page^="/casos/"] .case-hero .hero-panel-layered > .interface-panel {
  width: 100%;
}

body[data-page^="/casos/"] .case-context-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.7fr);
  gap: clamp(1.6rem, 4vw, 4.5rem);
  align-items: center;
}

body[data-page^="/casos/"] .case-context-grid .section-heading h2,
body[data-page^="/casos/"] .case-deliverables-section h2,
body[data-page^="/casos/"] .case-approach-section h2,
body[data-page^="/casos/"] .case-impact-section h2 {
  max-width: 15ch;
}

body[data-page^="/casos/"] .case-richtext {
  max-width: 78ch;
}

body[data-page^="/casos/"] .case-richtext p {
  color: rgba(245, 239, 228, 0.82);
  font-size: clamp(1rem, 1.05vw, 1.12rem);
  line-height: 1.72;
}

body[data-page^="/casos/"] .case-context-section .feature-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
  margin-top: clamp(1.2rem, 2vw, 1.65rem);
}

body[data-page^="/casos/"] .case-context-section .feature-list li {
  min-height: 124px;
  padding: 1rem;
  border: 1px solid rgba(214, 179, 90, 0.18);
  background: rgba(255, 255, 255, 0.035);
}

body[data-page^="/casos/"] .case-context-visual {
  min-height: clamp(340px, 40vw, 560px);
}

body[data-page^="/casos/"] .case-context-visual img {
  min-height: inherit;
  object-fit: cover;
}

body[data-page^="/casos/"] .premium-case-grid {
  gap: clamp(0.85rem, 1.5vw, 1.1rem);
}

body[data-page^="/casos/"] .premium-case-grid .card {
  min-height: 100%;
  overflow: hidden;
}

body[data-page^="/casos/"] .premium-case-grid .card-media {
  aspect-ratio: 16 / 9;
}

body[data-page^="/casos/"] .premium-case-grid .card h3 {
  font-size: clamp(1.25rem, 1.6vw, 1.75rem);
}

body[data-page^="/casos/"] .premium-case-grid .card p {
  -webkit-line-clamp: 6;
  color: rgba(245, 239, 228, 0.76);
}

body[data-page^="/casos/"] .case-deliverables-section .dual-column {
  align-items: stretch;
  gap: clamp(1.1rem, 3vw, 3rem);
}

body[data-page^="/casos/"] .case-deliverables-section .feature-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
}

body[data-page^="/casos/"] .case-deliverables-section .feature-list li {
  border: 1px solid rgba(214, 179, 90, 0.2);
  background: linear-gradient(180deg, rgba(214, 179, 90, 0.08), rgba(255, 255, 255, 0.025));
}

body[data-page^="/casos/"] .case-gallery-section .section-heading {
  margin-bottom: clamp(1.2rem, 2.6vw, 2.2rem);
}

body[data-page^="/casos/"] .case-gallery-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.75rem;
}

body[data-page^="/casos/"] .case-gallery-grid .gallery-card {
  aspect-ratio: 4 / 5;
  border-color: rgba(214, 179, 90, 0.18);
  background: rgba(255, 255, 255, 0.035);
  overflow: hidden;
}

body[data-page^="/casos/"] .case-gallery-grid .gallery-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.9) contrast(1.02);
  transition: transform 700ms ease, filter 700ms ease;
}

body[data-page^="/casos/"] .case-gallery-grid .gallery-card:hover img {
  transform: scale(1.035);
  filter: saturate(1.02) contrast(1.06);
}

@media (max-width: 980px) {
  body[data-page^="/casos/"] .case-context-grid,
  body[data-page^="/casos/"] .case-deliverables-section .dual-column {
    grid-template-columns: 1fr;
  }

  body[data-page^="/casos/"] .case-context-section .feature-list,
  body[data-page^="/casos/"] .case-deliverables-section .feature-list,
  body[data-page^="/casos/"] .case-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  body[data-page^="/casos/"] .case-context-section .feature-list,
  body[data-page^="/casos/"] .case-deliverables-section .feature-list,
  body[data-page^="/casos/"] .case-gallery-grid {
    grid-template-columns: 1fr;
  }

  body[data-page^="/casos/"] .case-context-visual {
    min-height: 300px;
  }
}

/* V4.52: premium editorial structure for individual case pages. */
body[data-page^="/casos/"] .button:hover {
  transform: none;
}

body[data-page^="/casos/"] .case-section-shell,
body[data-page^="/casos/"] .case-editorial-grid,
body[data-page^="/casos/"] .case-commercial-layout,
body[data-page^="/casos/"] .case-gallery-composition,
body[data-page^="/casos/"] .case-video-layout,
body[data-page^="/casos/"] .case-next-actions,
body[data-page^="/casos/"] .case-process-rail {
  width: var(--secondary-shell);
  max-width: 1240px;
  margin-inline: auto;
}

body[data-page^="/casos/"] .case-section-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(300px, 0.48fr);
  gap: clamp(1.2rem, 4vw, 4rem);
  align-items: end;
  margin-bottom: clamp(1.35rem, 3vw, 2.4rem);
  text-align: left;
}

body[data-page^="/casos/"] .case-section-shell .section-heading {
  margin: 0;
}

body[data-page^="/casos/"] .case-section-note {
  max-width: 54ch;
  margin: 0;
  color: rgba(245, 239, 228, 0.72);
  font-size: clamp(0.95rem, 1vw, 1.05rem);
  line-height: 1.68;
}

body[data-page^="/casos/"] .case-editorial-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(360px, 0.72fr);
  gap: clamp(1.5rem, 4vw, 4.4rem);
  align-items: center;
}

body[data-page^="/casos/"] .case-editorial-copy {
  min-width: 0;
}

body[data-page^="/casos/"] .case-editorial-copy .section-heading {
  margin-bottom: clamp(1.05rem, 2.2vw, 1.85rem);
}

body[data-page^="/casos/"] .case-richtext {
  max-width: 70ch;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body[data-page^="/casos/"] .case-richtext p + p {
  margin-top: 0.95rem;
}

body[data-page^="/casos/"] .case-mini-logo {
  display: grid;
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  place-items: center;
  color: var(--secondary-gold);
  border: 1px solid rgba(214, 179, 90, 0.28);
  border-radius: 999px;
  background:
    radial-gradient(circle at 35% 20%, rgba(214, 179, 90, 0.28), transparent 50%),
    rgba(214, 179, 90, 0.07);
  box-shadow: inset 0 0 20px rgba(214, 179, 90, 0.06);
}

body[data-page^="/casos/"] .case-mini-logo svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body[data-page^="/casos/"] .case-logo-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.82rem;
  margin-top: clamp(1.2rem, 2.4vw, 1.8rem);
}

body[data-page^="/casos/"] .case-logo-grid.items-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body[data-page^="/casos/"] .case-logo-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 0.9rem;
  min-height: 132px;
  padding: clamp(0.9rem, 1.4vw, 1.12rem);
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.054), rgba(255, 255, 255, 0.012)),
    rgba(6, 9, 8, 0.66);
  box-shadow: 0 22px 58px rgba(0, 0, 0, 0.18);
  transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

body[data-page^="/casos/"] .case-logo-item:hover {
  border-color: rgba(214, 179, 90, 0.36);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.018)),
    rgba(8, 12, 10, 0.78);
  box-shadow: 0 26px 68px rgba(0, 0, 0, 0.24);
}

body[data-page^="/casos/"] .case-logo-item em {
  display: block;
  margin-bottom: 0.32rem;
  color: rgba(214, 179, 90, 0.82);
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body[data-page^="/casos/"] .case-logo-item strong {
  display: block;
  color: var(--secondary-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.05rem, 1.3vw, 1.35rem);
  line-height: 1.05;
}

body[data-page^="/casos/"] .case-logo-item p {
  margin: 0.5rem 0 0;
  color: rgba(245, 239, 228, 0.66);
  font-size: 0.87rem;
  line-height: 1.48;
}

body[data-page^="/casos/"] .case-reading-panel h2 {
  max-width: 12ch;
  margin: 0.35rem 0 1rem;
  color: var(--secondary-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.55rem, 2vw, 2.35rem);
  line-height: 0.98;
}

body[data-page^="/casos/"] .case-reading-panel .case-logo-grid {
  grid-template-columns: 1fr;
  margin-top: 0;
}

body[data-page^="/casos/"] .case-reading-panel .case-logo-item {
  min-height: 0;
  padding: 0.86rem;
}

body[data-page^="/casos/"] .case-context-visual {
  align-self: stretch;
  min-height: clamp(420px, 42vw, 620px);
}

body[data-page^="/casos/"] .case-context-visual figcaption,
body[data-page^="/casos/"] .case-commercial-main figcaption,
body[data-page^="/casos/"] .case-gallery-hero figcaption {
  backdrop-filter: blur(18px);
}

body[data-page^="/casos/"] .case-commercial-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(330px, 0.62fr);
  gap: clamp(1rem, 3vw, 2rem);
  align-items: stretch;
}

body[data-page^="/casos/"] .case-commercial-main,
body[data-page^="/casos/"] .case-gallery-hero {
  position: relative;
  min-height: clamp(420px, 38vw, 580px);
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.52);
  box-shadow: 0 34px 96px rgba(0, 0, 0, 0.36);
}

body[data-page^="/casos/"] .case-commercial-main img,
body[data-page^="/casos/"] .case-gallery-hero img {
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
  filter: brightness(0.76) contrast(1.08) saturate(0.95);
}

body[data-page^="/casos/"] .case-commercial-main::after,
body[data-page^="/casos/"] .case-gallery-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(5, 7, 6, 0.02), rgba(5, 7, 6, 0.72)),
    radial-gradient(circle at 0% 0%, rgba(214, 179, 90, 0.18), transparent 30rem);
  pointer-events: none;
}

body[data-page^="/casos/"] .case-commercial-main figcaption,
body[data-page^="/casos/"] .case-gallery-hero figcaption {
  position: absolute;
  left: clamp(1rem, 2vw, 1.4rem);
  right: clamp(1rem, 2vw, 1.4rem);
  bottom: clamp(1rem, 2vw, 1.4rem);
  z-index: 2;
  padding: 1rem;
  border: 1px solid rgba(214, 179, 90, 0.2);
  border-radius: 8px;
  background: rgba(5, 7, 6, 0.64);
}

body[data-page^="/casos/"] .case-commercial-main figcaption span,
body[data-page^="/casos/"] .case-gallery-hero figcaption small {
  display: block;
  color: rgba(245, 239, 228, 0.68);
  font-size: 0.82rem;
  line-height: 1.5;
}

body[data-page^="/casos/"] .case-commercial-main figcaption strong,
body[data-page^="/casos/"] .case-gallery-hero figcaption strong {
  display: block;
  color: var(--secondary-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.25rem, 1.8vw, 1.85rem);
  line-height: 1.05;
}

body[data-page^="/casos/"] .case-logo-stack .case-logo-grid {
  grid-template-columns: 1fr;
  height: 100%;
  margin-top: 0;
}

body[data-page^="/casos/"] .case-logo-stack .case-logo-item {
  min-height: 0;
}

body[data-page^="/casos/"] .case-signal-grid {
  align-items: stretch;
}

body[data-page^="/casos/"] .case-result-panel {
  display: grid;
  align-content: center;
  min-height: 100%;
  padding: clamp(1.2rem, 2.2vw, 2rem);
  background:
    linear-gradient(135deg, rgba(214, 179, 90, 0.1), transparent 52%),
    rgba(6, 9, 8, 0.78);
}

body[data-page^="/casos/"] .case-result-panel h3 {
  max-width: 20ch;
  margin: 0.7rem 0 0.75rem;
  color: var(--secondary-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.55rem, 2vw, 2.45rem);
  line-height: 1;
}

body[data-page^="/casos/"] .case-process-rail {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.82rem;
}

body[data-page^="/casos/"] .case-process-rail > .case-logo-grid {
  display: contents;
}

body[data-page^="/casos/"] .case-process-rail .case-logo-item {
  min-height: 184px;
}

body[data-page^="/casos/"] .case-gallery-composition {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(320px, 0.62fr);
  gap: 0.85rem;
  align-items: stretch;
}

body[data-page^="/casos/"] .case-gallery-hero figcaption {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 0.85rem;
  align-items: center;
}

body[data-page^="/casos/"] .case-gallery-thumbs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

body[data-page^="/casos/"] .case-gallery-thumb {
  min-height: 0;
  overflow: hidden;
  border: 1px solid rgba(214, 179, 90, 0.15);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.035);
}

body[data-page^="/casos/"] .case-gallery-thumb img {
  width: 100%;
  height: 100%;
  min-height: 155px;
  object-fit: cover;
  filter: brightness(0.78) contrast(1.08) saturate(0.94);
  transition: filter 180ms ease;
}

body[data-page^="/casos/"] .case-gallery-thumb:hover img {
  filter: brightness(0.9) contrast(1.1) saturate(1);
}

body[data-page^="/casos/"] .case-video-layout {
  display: grid;
  grid-template-columns: minmax(300px, 0.42fr) minmax(0, 0.88fr);
  gap: clamp(1rem, 3vw, 2.5rem);
  align-items: center;
}

body[data-page^="/casos/"] .case-video-layout .case-logo-item {
  margin-top: clamp(1.1rem, 2vw, 1.5rem);
}

body[data-page^="/casos/"] .case-next-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.9rem;
}

body[data-page^="/casos/"] .case-next-card {
  display: grid;
  gap: 0.68rem;
  min-height: 240px;
  padding: clamp(1rem, 1.7vw, 1.35rem);
  color: inherit;
  text-decoration: none;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.014)),
    rgba(6, 9, 8, 0.72);
  box-shadow: 0 22px 62px rgba(0, 0, 0, 0.2);
  transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

body[data-page^="/casos/"] .case-next-card:hover {
  border-color: rgba(214, 179, 90, 0.4);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.082), rgba(255, 255, 255, 0.018)),
    rgba(8, 12, 10, 0.82);
  box-shadow: 0 28px 74px rgba(0, 0, 0, 0.26);
}

body[data-page^="/casos/"] .case-next-card em {
  color: rgba(214, 179, 90, 0.82);
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body[data-page^="/casos/"] .case-next-card strong {
  color: var(--secondary-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.35rem, 1.7vw, 1.95rem);
  line-height: 1.04;
}

body[data-page^="/casos/"] .case-next-card p {
  margin: 0;
  color: rgba(245, 239, 228, 0.66);
  font-size: 0.92rem;
  line-height: 1.58;
}

@media (max-width: 1080px) {
  body[data-page^="/casos/"] .case-section-shell,
  body[data-page^="/casos/"] .case-editorial-grid,
  body[data-page^="/casos/"] .case-commercial-layout,
  body[data-page^="/casos/"] .case-gallery-composition,
  body[data-page^="/casos/"] .case-video-layout {
    grid-template-columns: 1fr;
  }

  body[data-page^="/casos/"] .case-logo-grid,
  body[data-page^="/casos/"] .case-logo-grid.items-4,
  body[data-page^="/casos/"] .case-process-rail,
  body[data-page^="/casos/"] .case-next-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  body[data-page^="/casos/"] .case-logo-grid,
  body[data-page^="/casos/"] .case-logo-grid.items-4,
  body[data-page^="/casos/"] .case-process-rail,
  body[data-page^="/casos/"] .case-gallery-thumbs,
  body[data-page^="/casos/"] .case-next-actions {
    grid-template-columns: 1fr;
  }

  body[data-page^="/casos/"] .case-logo-item,
  body[data-page^="/casos/"] .case-next-card {
    min-height: 0;
  }

  body[data-page^="/casos/"] .case-commercial-main,
  body[data-page^="/casos/"] .case-gallery-hero {
    min-height: 360px;
  }
}

/* V4.31: persistent premium header and gold nav CTA across secondary pages. */
body:not([data-page="/"]) .site-header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 1000;
  width: 100%;
  max-width: none;
  transform: none;
  opacity: 1;
  visibility: visible;
}

body:not([data-page="/"]) .button-nav {
  border-color: rgba(117, 78, 20, 0.35);
  background: linear-gradient(135deg, #f0c66b 0%, #d7a84b 48%, #bf8a2e 100%);
  color: #17120a !important;
  box-shadow:
    0 18px 42px rgba(190, 136, 46, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.48);
}

body:not([data-page="/"]) .button-nav::after {
  color: #17120a;
}

body:not([data-page="/"]) .button-nav:hover,
body:not([data-page="/"]) .button-nav:focus-visible {
  border-color: rgba(117, 78, 20, 0.44);
  box-shadow:
    0 24px 52px rgba(190, 136, 46, 0.4),
    inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

/* V4.32: reference-led premium system for vertical service pages. */
body:not([data-page="/"]) .vertical-premium-hero {
  grid-template-columns: minmax(0, 0.76fr) minmax(620px, 0.74fr);
  gap: clamp(2rem, 5vw, 5.5rem);
  align-items: center;
  min-height: clamp(760px, 92vh, 980px);
  padding-top: clamp(8rem, 12vh, 11rem);
  background:
    radial-gradient(circle at 82% 18%, rgba(214, 179, 90, 0.11), transparent 30rem),
    linear-gradient(135deg, #050706 0%, #101610 58%, #050706 100%);
}

body:not([data-page="/"]) .hero.hero-page.internal-hero.vertical-premium-hero,
body:not([data-page="/"]) .hero.hero-immersive.internal-hero.vertical-premium-hero {
  grid-template-columns: minmax(0, 0.76fr) minmax(620px, 0.74fr);
  align-items: center;
  min-height: clamp(760px, 92vh, 980px);
}

body:not([data-page="/"]) .vertical-premium-hero .internal-hero-media::after {
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.96), rgba(5, 7, 6, 0.68) 48%, rgba(5, 7, 6, 0.9)),
    linear-gradient(180deg, rgba(5, 7, 6, 0.46), rgba(5, 7, 6, 0.92));
}

body:not([data-page="/"]) .vertical-premium-hero .hero-copy {
  max-width: min(780px, 100%);
}

body:not([data-page="/"]) .vertical-premium-hero .lead {
  max-width: 68ch;
  color: rgba(245, 239, 228, 0.82);
}

body:not([data-page="/"]) .vertical-premium-hero .hero-note {
  max-width: 66ch;
  color: rgba(245, 239, 228, 0.7);
}

body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered {
  width: min(100%, 780px);
  max-width: 780px;
  justify-self: end;
}

body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered > .vertical-command-panel {
  width: min(100%, 780px);
  max-height: none;
  padding: clamp(1.15rem, 2vw, 1.7rem);
}

body:not([data-page="/"]) .vertical-command-panel {
  border: 1px solid rgba(214, 179, 90, 0.28);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.018)),
    rgba(7, 9, 8, 0.8);
  box-shadow:
    0 40px 120px rgba(0, 0, 0, 0.46),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .vertical-command-panel::before {
  background:
    linear-gradient(120deg, transparent 0 52%, rgba(214, 179, 90, 0.12) 52.2%, transparent 53% 100%),
    radial-gradient(circle at 88% 10%, rgba(214, 179, 90, 0.22), transparent 10rem);
}

body:not([data-page="/"]) .vertical-command-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(150px, 0.28fr);
  gap: clamp(1rem, 2vw, 1.5rem);
  align-items: start;
}

body:not([data-page="/"]) .vertical-command-copy h3 {
  max-width: 24ch;
  color: var(--secondary-text);
  font-size: clamp(1.85rem, 2.35vw, 3rem);
  line-height: 1;
}

body:not([data-page="/"]) .vertical-command-copy p {
  margin-top: 1rem;
  color: rgba(245, 239, 228, 0.72);
  font-size: clamp(1rem, 1.1vw, 1.12rem);
  line-height: 1.62;
}

body:not([data-page="/"]) .vertical-tech-rail {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.55rem;
}

body:not([data-page="/"]) .vertical-tech-rail span {
  display: grid;
  min-height: 52px;
  place-items: center;
  border: 1px solid rgba(214, 179, 90, 0.28);
  border-radius: 8px;
  background:
    radial-gradient(circle at 30% 15%, rgba(240, 206, 122, 0.18), transparent 42%),
    rgba(255, 255, 255, 0.035);
  color: var(--secondary-gold);
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.08em;
}

body:not([data-page="/"]) .vertical-command-modules {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: clamp(1.1rem, 2vw, 1.45rem);
}

body:not([data-page="/"]) .vertical-command-module {
  min-width: 0;
  min-height: 132px;
  padding: 1rem;
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.014)),
    rgba(5, 7, 6, 0.62);
}

body:not([data-page="/"]) .vertical-command-module span {
  display: inline-grid;
  min-width: 38px;
  min-height: 30px;
  place-items: center;
  border: 1px solid rgba(214, 179, 90, 0.24);
  border-radius: 999px;
  color: var(--secondary-gold);
  font-size: 0.66rem;
  font-weight: 950;
}

body:not([data-page="/"]) .vertical-command-module strong {
  display: block;
  margin-top: 0.9rem;
  color: var(--secondary-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1rem, 1.08vw, 1.18rem);
  line-height: 1.08;
}

body:not([data-page="/"]) .vertical-command-module small {
  display: block;
  margin-top: 0.55rem;
  color: rgba(245, 239, 228, 0.66);
  font-size: 0.78rem;
  line-height: 1.48;
}

body:not([data-page="/"]) .vertical-focus-section,
body:not([data-page="/"]) .vertical-process-section,
body:not([data-page="/"]) .vertical-related-section {
  background:
    radial-gradient(circle at 82% 16%, rgba(214, 179, 90, 0.08), transparent 28rem),
    linear-gradient(180deg, #101510 0%, #07100c 100%);
}

body:not([data-page="/"]) .vertical-focus-shell {
  grid-template-columns: minmax(0, 0.58fr) minmax(560px, 1fr);
  gap: clamp(2.2rem, 5vw, 6.5rem);
}

body:not([data-page="/"]) .vertical-focus-copy .vertical-signal-grid {
  grid-template-columns: 1fr;
  max-width: 680px;
}

body:not([data-page="/"]) .vertical-focus-copy .vertical-signal-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 1rem;
  align-items: start;
  min-height: 0;
}

body:not([data-page="/"]) .vertical-focus-copy .vertical-signal-card h3,
body:not([data-page="/"]) .vertical-focus-copy .vertical-signal-card p {
  margin-top: 0;
}

body:not([data-page="/"]) .vertical-focus-copy .vertical-signal-card p {
  grid-column: 2;
  margin-top: 0.35rem;
}

body:not([data-page="/"]) .vertical-showreel-screen {
  min-height: clamp(430px, 42vw, 650px);
  aspect-ratio: 16 / 10;
  border-color: rgba(214, 179, 90, 0.26);
  background:
    linear-gradient(135deg, rgba(214, 179, 90, 0.08), transparent),
    #050706;
}

body:not([data-page="/"]) .vertical-showreel-screen img {
  animation-duration: 40s;
}

body:not([data-page="/"]) .vertical-showreel-caption {
  max-width: min(520px, calc(100% - 2rem));
  background: rgba(5, 7, 6, 0.76);
}

body:not([data-page="/"]) .vertical-showreel-rail {
  grid-template-columns: repeat(8, minmax(0, 1fr));
}

body:not([data-page="/"]) .vertical-showreel-rail span {
  border-color: rgba(214, 179, 90, 0.22);
  opacity: 0.86;
  transition: transform 180ms ease, opacity 180ms ease, border-color 180ms ease;
}

body:not([data-page="/"]) .vertical-showreel-rail span:hover {
  transform: translateY(-2px);
  opacity: 1;
  border-color: rgba(214, 179, 90, 0.44);
}

body:not([data-page="/"]) .vertical-activation-section {
  background:
    linear-gradient(180deg, #07100c 0%, #050706 100%);
}

body:not([data-page="/"]) .vertical-activation-section .band-aside {
  padding: 1.15rem;
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.035);
}

body:not([data-page="/"]) .vertical-action-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: stretch;
}

body:not([data-page="/"]) .vertical-action-card {
  grid-column: span 4;
  min-height: 250px;
  padding: clamp(1.15rem, 1.8vw, 1.55rem);
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

body:not([data-page="/"]) .vertical-action-card.is-featured {
  grid-column: span 6;
  min-height: 315px;
}

body:not([data-page="/"]) .vertical-action-card:nth-child(2),
body:not([data-page="/"]) .vertical-action-card:nth-child(3) {
  grid-column: span 3;
}

body:not([data-page="/"]) .vertical-action-card:hover,
body:not([data-page="/"]) .vertical-decision-card:hover,
body:not([data-page="/"]) .premium-case-grid .card:hover,
body:not([data-page="/"]) .related-premium-grid .card:hover,
body:not([data-page="/"]) .vertical-package-grid .card:hover {
  transform: translateY(-4px);
  border-color: rgba(214, 179, 90, 0.42);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.02)),
    rgba(7, 10, 8, 0.82);
}

body:not([data-page="/"]) .vertical-action-icon {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(214, 179, 90, 0.24);
  border-radius: 999px;
  background:
    linear-gradient(90deg, transparent calc(50% - 1px), rgba(214, 179, 90, 0.45) 50%, transparent calc(50% + 1px)),
    linear-gradient(0deg, transparent calc(50% - 1px), rgba(214, 179, 90, 0.45) 50%, transparent calc(50% + 1px)),
    rgba(214, 179, 90, 0.055);
}

body:not([data-page="/"]) .vertical-action-card.is-featured h3 {
  max-width: 16ch;
  font-size: clamp(1.75rem, 2.1vw, 2.45rem);
}

body:not([data-page="/"]) .vertical-case-section {
  background:
    radial-gradient(circle at 18% 20%, rgba(214, 179, 90, 0.08), transparent 26rem),
    #050706;
}

body:not([data-page="/"]) .premium-case-grid,
body:not([data-page="/"]) .related-next-section .related-premium-grid,
body:not([data-page="/"]) .related-premium-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(0.85rem, 1.4vw, 1.1rem);
}

body:not([data-page="/"]) .premium-case-grid .card,
body:not([data-page="/"]) .related-premium-grid .card {
  grid-column: span 4;
  border-color: rgba(214, 179, 90, 0.18);
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

body:not([data-page="/"]) .premium-case-grid .card:first-child {
  grid-column: span 6;
}

body:not([data-page="/"]) .premium-case-grid .card:nth-child(2),
body:not([data-page="/"]) .premium-case-grid .card:nth-child(3) {
  grid-column: span 3;
}

body:not([data-page="/"]) .premium-case-grid .card:first-child .card-media {
  aspect-ratio: 16 / 10;
}

body:not([data-page="/"]) .premium-case-grid .card-media,
body:not([data-page="/"]) .related-premium-grid .card-media,
body:not([data-page="/"]) .vertical-package-grid .card-media {
  position: relative;
}

body:not([data-page="/"]) .premium-case-grid .card-media::after,
body:not([data-page="/"]) .related-premium-grid .card-media::after,
body:not([data-page="/"]) .vertical-package-grid .card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(5, 7, 6, 0), rgba(5, 7, 6, 0.32));
  pointer-events: none;
}

body:not([data-page="/"]) .card-media img,
body:not([data-page="/"]) .internal-final-media img {
  filter: brightness(0.9) contrast(1.05) saturate(0.96);
}

body:not([data-page="/"]) .vertical-package-section {
  background:
    linear-gradient(180deg, #101510 0%, #07100c 100%);
}

body:not([data-page="/"]) .vertical-package-grid {
  position: relative;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 1.6vw, 1.35rem);
}

body:not([data-page="/"]) .vertical-package-grid::before {
  content: "";
  position: absolute;
  top: 2.9rem;
  left: 8%;
  right: 8%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(214, 179, 90, 0.42), transparent);
}

body:not([data-page="/"]) .vertical-package-grid .package-card {
  position: relative;
  z-index: 1;
}

body:not([data-page="/"]) .vertical-package-grid .package-card::before {
  width: 52px;
  height: 52px;
  font-size: 1rem;
}

body:not([data-page="/"]) .vertical-process-shell {
  grid-template-columns: minmax(0, 0.9fr) minmax(520px, 0.78fr);
}

body:not([data-page="/"]) .vertical-process-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

body:not([data-page="/"]) .vertical-process-step {
  min-height: 158px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.012)),
    rgba(5, 7, 6, 0.66);
}

body:not([data-page="/"]) .vertical-process-section .vertical-showreel-screen {
  min-height: clamp(360px, 34vw, 520px);
}

body:not([data-page="/"]) .vertical-decision-section {
  background:
    radial-gradient(circle at 75% 0%, rgba(214, 179, 90, 0.09), transparent 24rem),
    #050706;
}

body:not([data-page="/"]) .vertical-decision-board {
  grid-template-columns: minmax(0, 0.62fr) minmax(600px, 1fr);
  padding: clamp(1.35rem, 2.8vw, 2.25rem);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
    linear-gradient(135deg, rgba(214, 179, 90, 0.08), transparent 50%),
    rgba(7, 10, 8, 0.82);
}

body:not([data-page="/"]) .vertical-decision-actions {
  gap: 0.8rem;
}

body:not([data-page="/"]) .vertical-decision-card {
  min-height: 250px;
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

body:not([data-page="/"]) .vertical-decision-card strong {
  font-family: "Playfair Display", Georgia, serif;
}

body:not([data-page="/"]) .related-premium-grid .card:nth-child(n + 4) {
  display: grid;
  grid-template-columns: 140px minmax(0, 1fr);
  grid-auto-rows: min-content;
}

body:not([data-page="/"]) .related-premium-grid .card:nth-child(n + 4) .card-media {
  grid-row: 1 / span 5;
  height: 100%;
  min-height: 210px;
  aspect-ratio: auto;
  border-bottom: 0;
  border-right: 1px solid rgba(214, 179, 90, 0.15);
}

body:not([data-page="/"]) .related-premium-grid .card:nth-child(n + 4).has-media > :not(.card-media) {
  margin-left: 1rem;
  margin-right: 1rem;
}

body:not([data-page="/"]) .vertical-faq-section {
  background:
    linear-gradient(180deg, #050706 0%, #07100c 100%);
}

body:not([data-page="/"]) .vertical-faq-shell {
  padding: clamp(1rem, 2vw, 1.5rem);
  border: 1px solid rgba(214, 179, 90, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.025);
}

body:not([data-page="/"]) .vertical-faq-section details {
  border-color: rgba(214, 179, 90, 0.18);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.012)),
    rgba(5, 7, 6, 0.62);
}

body:not([data-page="/"]) .vertical-final-section {
  display: grid;
  align-items: end;
  min-height: clamp(520px, 55vw, 720px);
  padding-top: clamp(5rem, 10vw, 9rem);
  padding-bottom: clamp(4rem, 8vw, 7rem);
}

body:not([data-page="/"]) .vertical-final-section::before {
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.96), rgba(5, 7, 6, 0.55) 56%, rgba(5, 7, 6, 0.88)),
    linear-gradient(180deg, rgba(5, 7, 6, 0.16), rgba(5, 7, 6, 0.78)),
    radial-gradient(circle at 18% 82%, rgba(214, 179, 90, 0.16), transparent 26rem);
}

body:not([data-page="/"]) .vertical-final-shell {
  align-items: center;
}

body:not([data-page="/"]) .vertical-final-shell h2 {
  max-width: 14ch;
  font-size: clamp(3rem, 6vw, 6.6rem);
  line-height: 0.94;
}

body:not([data-page="/"]) .vertical-final-actions .button {
  min-width: 210px;
}

body:not([data-page="/"]) .button,
body:not([data-page="/"]) .card-link,
body:not([data-page="/"]) .vertical-action-card a {
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

body:not([data-page="/"]) .reveal-ready {
  opacity: 1;
  transform: none;
}

body:not([data-page="/"]) .button:hover,
body:not([data-page="/"]) .card-link:hover,
body:not([data-page="/"]) .vertical-action-card a:hover {
  transform: translateY(-2px);
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .hero.hero-page.internal-hero.vertical-premium-hero,
  body:not([data-page="/"]) .hero.hero-immersive.internal-hero.vertical-premium-hero,
  body:not([data-page="/"]) .vertical-premium-hero,
  body:not([data-page="/"]) .vertical-focus-shell,
  body:not([data-page="/"]) .vertical-process-shell,
  body:not([data-page="/"]) .vertical-decision-board {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered {
    justify-self: start;
  }

  body:not([data-page="/"]) .vertical-action-grid,
  body:not([data-page="/"]) .premium-case-grid,
  body:not([data-page="/"]) .related-next-section .related-premium-grid,
  body:not([data-page="/"]) .related-premium-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  body:not([data-page="/"]) .vertical-action-card,
  body:not([data-page="/"]) .vertical-action-card.is-featured,
  body:not([data-page="/"]) .vertical-action-card:nth-child(2),
  body:not([data-page="/"]) .vertical-action-card:nth-child(3),
  body:not([data-page="/"]) .premium-case-grid .card,
  body:not([data-page="/"]) .premium-case-grid .card:first-child,
  body:not([data-page="/"]) .premium-case-grid .card:nth-child(2),
  body:not([data-page="/"]) .premium-case-grid .card:nth-child(3),
  body:not([data-page="/"]) .related-premium-grid .card {
    grid-column: span 3;
  }

  body:not([data-page="/"]) .vertical-decision-board {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .hero.hero-page.internal-hero.vertical-premium-hero,
  body:not([data-page="/"]) .hero.hero-immersive.internal-hero.vertical-premium-hero,
  body:not([data-page="/"]) .vertical-premium-hero {
    min-height: 0;
    padding-top: 6.75rem;
    padding-bottom: 3.25rem;
  }

  body:not([data-page="/"]) .vertical-command-body,
  body:not([data-page="/"]) .vertical-command-modules,
  body:not([data-page="/"]) .vertical-process-list,
  body:not([data-page="/"]) .vertical-package-grid,
  body:not([data-page="/"]) .vertical-faq-shell,
  body:not([data-page="/"]) .vertical-final-shell {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .vertical-tech-rail {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered {
    display: grid !important;
    width: var(--secondary-shell);
    max-width: var(--secondary-shell);
    margin-top: 1.25rem;
  }

  body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered > .vertical-command-panel {
    width: 100%;
  }

  body:not([data-page="/"]) .vertical-command-module {
    min-height: 0;
  }

  body:not([data-page="/"]) .vertical-focus-copy .vertical-signal-card {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .vertical-focus-copy .vertical-signal-card p {
    grid-column: auto;
  }

  body:not([data-page="/"]) .vertical-showreel-screen,
  body:not([data-page="/"]) .vertical-process-section .vertical-showreel-screen {
    min-height: 275px;
  }

  body:not([data-page="/"]) .vertical-showreel-rail {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body:not([data-page="/"]) .vertical-action-grid,
  body:not([data-page="/"]) .premium-case-grid,
  body:not([data-page="/"]) .related-next-section .related-premium-grid,
  body:not([data-page="/"]) .related-premium-grid {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .vertical-action-card,
  body:not([data-page="/"]) .vertical-action-card.is-featured,
  body:not([data-page="/"]) .vertical-action-card:nth-child(2),
  body:not([data-page="/"]) .vertical-action-card:nth-child(3),
  body:not([data-page="/"]) .premium-case-grid .card,
  body:not([data-page="/"]) .premium-case-grid .card:first-child,
  body:not([data-page="/"]) .premium-case-grid .card:nth-child(2),
  body:not([data-page="/"]) .premium-case-grid .card:nth-child(3),
  body:not([data-page="/"]) .related-premium-grid .card {
    grid-column: auto;
  }

  body:not([data-page="/"]) .related-premium-grid .card:nth-child(n + 4) {
    display: flex;
    flex-direction: column;
  }

  body:not([data-page="/"]) .related-premium-grid .card:nth-child(n + 4) .card-media {
    min-height: 0;
    aspect-ratio: 16 / 9;
    border-right: 0;
    border-bottom: 1px solid rgba(214, 179, 90, 0.15);
  }

  body:not([data-page="/"]) .vertical-package-grid::before {
    display: none;
  }

  body:not([data-page="/"]) .vertical-final-section {
    min-height: 460px;
  }

  body:not([data-page="/"]) .vertical-final-shell h2 {
    font-size: clamp(2.25rem, 11vw, 3.15rem);
  }
}

/* V4.35: final override layer after the vertical premium system. */
body:not([data-page="/"]) .vertical-logo-rail {
  display: flex;
  flex-wrap: wrap;
  gap: 0.46rem;
  margin-top: 1rem;
}

body:not([data-page="/"]) .vertical-logo-rail span {
  display: inline-grid;
  min-height: 34px;
  place-items: center;
  padding: 0.35rem 0.72rem;
  border: 1px solid rgba(240, 206, 122, 0.24);
  border-radius: 999px;
  background:
    linear-gradient(135deg, rgba(240, 206, 122, 0.12), rgba(255, 255, 255, 0.025)),
    rgba(5, 7, 6, 0.62);
  color: #f0ce7a;
  font-size: 0.66rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .vertical-command-panel .hero-meta {
  padding-top: 1rem;
  border-top: 1px solid rgba(240, 206, 122, 0.12);
}

body:not([data-page="/"]) .vertical-journey-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: clamp(1rem, 2vw, 1.35rem);
}

body:not([data-page="/"]) .vertical-journey-step {
  position: relative;
  min-height: 126px;
  padding: 1rem;
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.015)),
    rgba(5, 7, 6, 0.6);
}

body:not([data-page="/"]) .vertical-journey-step::after {
  content: "";
  position: absolute;
  top: 1.34rem;
  right: -0.58rem;
  width: 0.78rem;
  height: 1px;
  background: rgba(240, 206, 122, 0.36);
}

body:not([data-page="/"]) .vertical-journey-step:last-child::after {
  display: none;
}

body:not([data-page="/"]) .vertical-journey-step span,
body:not([data-page="/"]) .card-chip {
  display: inline-grid;
  min-height: 28px;
  place-items: center;
  padding: 0.2rem 0.58rem;
  border: 1px solid rgba(240, 206, 122, 0.26);
  border-radius: 999px;
  background: rgba(5, 7, 6, 0.72);
  color: #f0ce7a;
  font-size: 0.62rem;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .vertical-journey-step strong {
  display: block;
  margin-top: 0.78rem;
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.05rem, 1.2vw, 1.24rem);
  line-height: 1.05;
}

body:not([data-page="/"]) .vertical-journey-step small {
  display: block;
  margin-top: 0.5rem;
  color: rgba(245, 239, 228, 0.64);
  font-size: 0.78rem;
  line-height: 1.45;
}

body:not([data-page="/"]) .card-media .card-chip {
  position: absolute;
  z-index: 3;
  top: 0.8rem;
  left: 0.8rem;
  backdrop-filter: blur(10px);
}

body:not([data-page="/"]) .card:not(.has-media) > .card-chip {
  width: max-content;
  margin-bottom: 0.75rem;
}

body:not([data-page="/"]) .vertical-decision-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body:not([data-page="/"]) .vertical-decision-card {
  min-height: 220px;
}

body:not([data-page="/"]) .vertical-showreel-screen {
  box-shadow:
    0 36px 110px rgba(0, 0, 0, 0.38),
    0 0 0 1px rgba(240, 206, 122, 0.08);
}

body:not([data-page="/"]) .vertical-showreel-rail span {
  min-height: 64px;
}

body:not([data-page="/"]) .vertical-final-section {
  align-items: center;
  min-height: clamp(560px, 48vw, 760px);
  padding-top: clamp(4.5rem, 8vw, 7rem);
  padding-bottom: clamp(4rem, 7vw, 6.4rem);
}

body:not([data-page="/"]) .vertical-final-section::before {
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.96), rgba(5, 7, 6, 0.66) 44%, rgba(5, 7, 6, 0.38) 70%, rgba(5, 7, 6, 0.84)),
    linear-gradient(180deg, rgba(5, 7, 6, 0.18), rgba(5, 7, 6, 0.86)),
    radial-gradient(circle at 18% 82%, rgba(214, 179, 90, 0.18), transparent 28rem);
}

body:not([data-page="/"]) .vertical-final-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.5fr);
  gap: clamp(1.25rem, 4vw, 4.2rem);
  align-items: end;
  width: min(100%, 1240px);
  max-width: 1240px;
  margin-inline: auto;
}

body:not([data-page="/"]) .vertical-final-copy {
  max-width: 760px;
}

body:not([data-page="/"]) .vertical-final-copy h2,
body:not([data-page="/"]) .vertical-final-shell h2 {
  max-width: 16ch;
  font-size: clamp(3.4rem, 6.6vw, 7rem);
  line-height: 0.92;
  letter-spacing: 0;
}

body:not([data-page="/"]) .vertical-final-copy .lead {
  max-width: 56ch;
  color: rgba(245, 239, 228, 0.8);
}

body:not([data-page="/"]) .vertical-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.78rem;
  margin-top: clamp(1.25rem, 2vw, 1.85rem);
}

body:not([data-page="/"]) .vertical-final-card {
  position: relative;
  overflow: hidden;
  align-self: stretch;
  min-height: 320px;
  padding: clamp(1.25rem, 2.4vw, 2rem);
  border: 1px solid rgba(240, 206, 122, 0.22);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.018)),
    rgba(5, 7, 6, 0.78);
  box-shadow:
    0 34px 120px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(18px);
}

body:not([data-page="/"]) .vertical-final-card::after {
  content: "";
  position: absolute;
  inset: auto 1.4rem 1.4rem auto;
  width: 74px;
  height: 74px;
  border: 1px solid rgba(240, 206, 122, 0.2);
  border-radius: 999px;
  background:
    linear-gradient(90deg, transparent calc(50% - 1px), rgba(240, 206, 122, 0.36) 50%, transparent calc(50% + 1px)),
    linear-gradient(0deg, transparent calc(50% - 1px), rgba(240, 206, 122, 0.36) 50%, transparent calc(50% + 1px)),
    rgba(240, 206, 122, 0.04);
}

body:not([data-page="/"]) .vertical-final-card span {
  color: #f0ce7a;
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .vertical-final-card h3 {
  max-width: 14ch;
  margin: 1rem 0 0;
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.9rem, 3vw, 3rem);
  line-height: 0.96;
}

body:not([data-page="/"]) .vertical-final-card p {
  max-width: 34ch;
  margin: 1rem 0 0;
  color: rgba(245, 239, 228, 0.7);
  font-size: clamp(0.98rem, 1vw, 1.08rem);
  line-height: 1.58;
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .vertical-final-shell {
    grid-template-columns: 1fr;
    align-items: start;
  }

  body:not([data-page="/"]) .vertical-final-card {
    min-height: 260px;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .vertical-journey-strip,
  body:not([data-page="/"]) .vertical-decision-actions {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .vertical-journey-step::after {
    display: none;
  }

  body:not([data-page="/"]) .vertical-final-copy h2,
  body:not([data-page="/"]) .vertical-final-shell h2 {
    font-size: clamp(2.35rem, 11vw, 3.35rem);
  }

  body:not([data-page="/"]) .vertical-final-actions .button {
    width: 100%;
    justify-content: center;
  }

  body:not([data-page="/"]) .vertical-final-card {
    min-height: 0;
  }
}

/* V4.36: calmer final CTA typography. */
body:not([data-page="/"]) .vertical-final-copy h2,
body:not([data-page="/"]) .vertical-final-shell h2 {
  max-width: 18ch;
  font-size: clamp(3rem, 5.2vw, 5.6rem);
  line-height: 0.94;
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .vertical-final-copy h2,
  body:not([data-page="/"]) .vertical-final-shell h2 {
    font-size: clamp(2.25rem, 10.5vw, 3.2rem);
  }
}

/* V4.37: promotoras premium pass, wider commerce layout and cleaner image system. */
body[data-page="/promotoras/"] .vertical-premium-hero {
  min-height: clamp(680px, 88vh, 860px);
  padding-top: clamp(5.2rem, 6vw, 6.7rem);
  padding-bottom: clamp(2.2rem, 4.6vw, 4rem);
  grid-template-columns: minmax(660px, 1fr) minmax(500px, 0.58fr);
  gap: clamp(1.8rem, 3.5vw, 3.7rem);
  align-items: center;
}

body[data-page="/promotoras/"] .hero.hero-page.internal-hero.vertical-premium-hero,
body[data-page="/promotoras/"] .hero.hero-immersive.internal-hero.vertical-premium-hero {
  min-height: clamp(680px, 88vh, 860px);
  padding-top: clamp(5.2rem, 6vw, 6.7rem);
  padding-bottom: clamp(2.2rem, 4.6vw, 4rem);
  grid-template-columns: minmax(660px, 1fr) minmax(500px, 0.58fr);
  gap: clamp(1.8rem, 3.5vw, 3.7rem);
  align-items: center;
}

body[data-page="/promotoras/"] .vertical-premium-hero .internal-hero-media img {
  object-position: center 40%;
  filter: saturate(0.88) contrast(1.04) brightness(0.82);
}

body[data-page="/promotoras/"] .vertical-premium-hero::after {
  background:
    linear-gradient(90deg, rgba(5, 8, 7, 0.94) 0%, rgba(5, 8, 7, 0.62) 35%, rgba(5, 8, 7, 0.28) 66%, rgba(5, 8, 7, 0.72) 100%),
    linear-gradient(180deg, rgba(5, 8, 7, 0.28), rgba(5, 8, 7, 0.86));
}

body[data-page="/promotoras/"] .vertical-premium-hero .hero-copy {
  align-self: center;
}

body[data-page="/promotoras/"] .vertical-premium-hero .hero-copy h1 {
  max-width: 13.4ch;
  font-size: clamp(3.9rem, 5.35vw, 5.85rem);
  line-height: 0.9;
}

body[data-page="/promotoras/"] .vertical-premium-hero .lead {
  max-width: 58ch;
}

body[data-page="/promotoras/"] .vertical-premium-hero .hero-note {
  max-width: 56ch;
}

body[data-page="/promotoras/"] .vertical-premium-hero .meta-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: clamp(1.1rem, 2vw, 1.55rem);
}

body[data-page="/promotoras/"] .vertical-premium-hero .meta-strip span {
  min-height: 36px;
  padding-inline: 0.85rem;
  font-size: 0.73rem;
}

body[data-page="/promotoras/"] .vertical-premium-hero .hero-panel-layered {
  justify-self: end;
  align-self: center;
}

body[data-page="/promotoras/"] .vertical-premium-hero .hero-panel-layered > .vertical-command-panel {
  width: min(100%, 560px);
}

body[data-page="/promotoras/"] .vertical-command-panel {
  padding: clamp(1.25rem, 2.2vw, 1.75rem);
  border-color: rgba(240, 206, 122, 0.26);
  background:
    linear-gradient(122deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.018) 58%),
    linear-gradient(98deg, rgba(240, 198, 107, 0.11), transparent 42%),
    rgba(8, 11, 10, 0.76);
}

body[data-page="/promotoras/"] .vertical-command-panel::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 57%;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(240, 206, 122, 0.28), transparent);
  transform: skewX(-22deg);
  pointer-events: none;
}

body[data-page="/promotoras/"] .vertical-command-body {
  grid-template-columns: minmax(0, 1fr) minmax(126px, 0.22fr);
  gap: clamp(1rem, 1.8vw, 1.5rem);
  align-items: start;
}

body[data-page="/promotoras/"] .vertical-command-copy h3 {
  max-width: 13ch;
  font-size: clamp(2rem, 2.55vw, 2.9rem);
  line-height: 0.94;
}

body[data-page="/promotoras/"] .vertical-command-copy p {
  max-width: 48ch;
}

body[data-page="/promotoras/"] .vertical-tech-rail {
  grid-template-columns: 1fr;
  align-content: start;
  gap: 0.46rem;
}

body[data-page="/promotoras/"] .vertical-tech-rail span {
  min-height: 44px;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(240, 206, 122, 0.16), rgba(255, 255, 255, 0.035)),
    rgba(255, 255, 255, 0.035);
}

body[data-page="/promotoras/"] .vertical-command-modules {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.68rem;
  margin-top: clamp(1.15rem, 1.9vw, 1.45rem);
  padding-top: 1rem;
  border-top: 1px solid rgba(240, 206, 122, 0.14);
}

body[data-page="/promotoras/"] .vertical-command-module {
  min-height: 118px;
  padding: 0.85rem;
  border-color: rgba(240, 206, 122, 0.16);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015)),
    rgba(5, 8, 7, 0.58);
}

body[data-page="/promotoras/"] .vertical-command-module span {
  width: max-content;
}

body[data-page="/promotoras/"] .vertical-command-panel .hero-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.44rem;
  margin-top: 1rem;
}

body[data-page="/promotoras/"] .vertical-command-panel .hero-meta span {
  min-height: 30px;
  padding: 0.28rem 0.62rem;
  font-size: 0.6rem;
}

body[data-page="/promotoras/"] .vertical-focus-section {
  padding-top: clamp(5rem, 8vw, 7.2rem);
  padding-bottom: clamp(5rem, 8vw, 7.2rem);
}

body[data-page="/promotoras/"] .vertical-focus-shell {
  width: min(100%, 1380px);
  max-width: 1380px;
  grid-template-columns: minmax(460px, 0.74fr) minmax(690px, 1fr);
  gap: clamp(2.2rem, 5vw, 5.5rem);
  align-items: center;
}

body[data-page="/promotoras/"] .vertical-focus-copy h2 {
  max-width: 10.6ch;
  font-size: clamp(3.7rem, 5.4vw, 6.35rem);
}

body[data-page="/promotoras/"] .vertical-focus-copy .lead {
  max-width: 54ch;
}

body[data-page="/promotoras/"] .vertical-focus-copy .vertical-signal-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.68rem;
}

body[data-page="/promotoras/"] .vertical-focus-copy .vertical-signal-card {
  grid-template-columns: 1fr;
  min-height: 152px;
  padding: 0.95rem;
}

body[data-page="/promotoras/"] .vertical-focus-copy .vertical-signal-card p {
  grid-column: auto;
  font-size: 0.76rem;
}

body[data-page="/promotoras/"] .vertical-focus-copy .vertical-journey-strip {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body[data-page="/promotoras/"] .vertical-focus-copy .vertical-journey-step {
  min-height: 122px;
  padding: 0.9rem;
}

body[data-page="/promotoras/"] .vertical-showreel-promotoras .vertical-showreel-screen {
  min-height: clamp(440px, 35vw, 560px);
  aspect-ratio: 16 / 10;
}

body[data-page="/promotoras/"] .vertical-showreel-promotoras .vertical-showreel-screen img {
  object-fit: cover;
  object-position: center;
}

body[data-page="/promotoras/"] .vertical-showreel-promotoras .vertical-showreel-rail {
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 0.35rem;
}

body[data-page="/promotoras/"] .vertical-showreel-promotoras .vertical-showreel-rail span {
  min-height: 58px;
}

body[data-page="/promotoras/"] .vertical-activation-section {
  padding-top: clamp(5rem, 8vw, 7.4rem);
}

body:not([data-page="/"]) .vertical-activation-showcase {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.55fr);
  gap: clamp(1rem, 2.4vw, 2rem);
  align-items: stretch;
  width: min(100%, 1240px);
  margin: clamp(1.6rem, 3vw, 2.5rem) auto clamp(1.35rem, 2.8vw, 2.25rem);
}

body:not([data-page="/"]) .vertical-activation-media {
  position: relative;
  overflow: hidden;
  min-height: clamp(340px, 32vw, 470px);
  margin: 0;
  border: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.025);
  box-shadow: 0 34px 100px rgba(0, 0, 0, 0.32);
}

body:not([data-page="/"]) .vertical-activation-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.88) contrast(1.04);
}

body:not([data-page="/"]) .vertical-activation-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5, 8, 7, 0.76), rgba(5, 8, 7, 0.08) 52%, rgba(5, 8, 7, 0.5)),
    linear-gradient(180deg, transparent 42%, rgba(5, 8, 7, 0.9));
}

body:not([data-page="/"]) .vertical-activation-media figcaption {
  position: absolute;
  z-index: 2;
  left: clamp(1rem, 2.2vw, 1.8rem);
  right: clamp(1rem, 2.2vw, 1.8rem);
  bottom: clamp(1rem, 2.2vw, 1.8rem);
  max-width: 520px;
  padding: clamp(1rem, 1.8vw, 1.35rem);
  border: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 8px;
  background: rgba(7, 9, 8, 0.74);
  backdrop-filter: blur(16px);
}

body:not([data-page="/"]) .vertical-activation-media figcaption span {
  color: #e0b55d;
  font-size: 0.68rem;
  font-weight: 950;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .vertical-activation-media figcaption strong {
  display: block;
  margin-top: 0.45rem;
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.75rem, 2.6vw, 3rem);
  line-height: 0.98;
}

body:not([data-page="/"]) .vertical-activation-media figcaption small {
  display: block;
  max-width: 44ch;
  margin-top: 0.7rem;
  color: rgba(245, 239, 228, 0.72);
  font-size: 0.86rem;
  line-height: 1.55;
}

body:not([data-page="/"]) .vertical-activation-stack {
  display: grid;
  align-content: space-between;
  gap: 1rem;
  padding: clamp(1rem, 1.8vw, 1.35rem);
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background:
    radial-gradient(circle at 0% 0%, rgba(240, 206, 122, 0.14), transparent 16rem),
    rgba(255, 255, 255, 0.025);
}

body:not([data-page="/"]) .vertical-activation-stack .vertical-logo-rail {
  margin-top: 0;
}

body:not([data-page="/"]) .vertical-activation-thumbs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
}

body:not([data-page="/"]) .vertical-activation-thumbs span {
  overflow: hidden;
  min-height: 96px;
  border: 1px solid rgba(240, 206, 122, 0.13);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.03);
}

body:not([data-page="/"]) .vertical-activation-thumbs img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body[data-page="/promotoras/"] .vertical-action-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: min(100%, 1240px);
}

body[data-page="/promotoras/"] .vertical-action-card,
body[data-page="/promotoras/"] .vertical-action-card.is-featured,
body[data-page="/promotoras/"] .vertical-action-card:nth-child(2),
body[data-page="/promotoras/"] .vertical-action-card:nth-child(3) {
  grid-column: auto;
  min-height: 236px;
}

body[data-page="/promotoras/"] .vertical-action-card.is-featured {
  min-height: 286px;
  grid-column: span 1;
  background:
    linear-gradient(180deg, rgba(240, 206, 122, 0.1), rgba(255, 255, 255, 0.018)),
    rgba(255, 255, 255, 0.03);
}

body[data-page="/promotoras/"] .vertical-package-grid {
  gap: 1.25rem;
}

body[data-page="/promotoras/"] .vertical-package-grid::before,
body[data-page="/promotoras/"] .vertical-package-grid .package-card::before {
  display: none;
}

body[data-page="/promotoras/"] .vertical-package-grid .package-card {
  min-height: 0;
}

body[data-page="/promotoras/"] .vertical-package-grid .card-media {
  aspect-ratio: 16 / 9;
}

body[data-page="/promotoras/"] .vertical-package-grid .card-media .card-chip {
  top: 0.9rem;
  left: 0.9rem;
}

body[data-page="/promotoras/"] .vertical-package-grid .card-link {
  width: max-content;
  margin-top: auto;
}

body[data-page="/promotoras/"] .vertical-process-shell {
  width: min(100%, 1380px);
  grid-template-columns: minmax(460px, 0.82fr) minmax(720px, 1fr);
  align-items: center;
}

body[data-page="/promotoras/"] .vertical-process-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body[data-page="/promotoras/"] .vertical-process-section .vertical-showreel-screen {
  min-height: clamp(410px, 32vw, 540px);
}

body[data-page="/promotoras/"] .related-next-section .related-premium-grid,
body[data-page="/promotoras/"] .related-premium-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: min(100%, 1240px);
}

body[data-page="/promotoras/"] .related-premium-grid .card,
body[data-page="/promotoras/"] .related-premium-grid .card:nth-child(n + 4) {
  display: flex;
  flex-direction: column;
  grid-column: auto;
  min-height: 0;
}

body[data-page="/promotoras/"] .related-premium-grid .card:nth-child(n + 4) .card-media {
  width: auto;
  min-height: 0;
  aspect-ratio: 16 / 9;
  border-right: 0;
  border-bottom: 1px solid rgba(214, 179, 90, 0.15);
}

body[data-page="/promotoras/"] .related-premium-grid .card:nth-child(n + 4).has-media > :not(.card-media) {
  padding-left: clamp(1rem, 1.6vw, 1.25rem);
  padding-right: clamp(1rem, 1.6vw, 1.25rem);
}

body[data-page="/promotoras/"] .vertical-final-section {
  min-height: clamp(560px, 48vw, 720px);
  padding-top: clamp(4.6rem, 7vw, 6.6rem);
  padding-bottom: clamp(4.4rem, 7vw, 6.2rem);
}

body[data-page="/promotoras/"] .vertical-final-section::before {
  background:
    linear-gradient(90deg, rgba(5, 8, 7, 0.92), rgba(5, 8, 7, 0.54) 48%, rgba(5, 8, 7, 0.28) 68%, rgba(5, 8, 7, 0.84)),
    linear-gradient(180deg, rgba(5, 8, 7, 0.1), rgba(5, 8, 7, 0.9));
}

body[data-page="/promotoras/"] .vertical-final-shell {
  width: min(100%, 1240px);
  grid-template-columns: minmax(0, 0.88fr) minmax(340px, 0.48fr);
  align-items: center;
}

body[data-page="/promotoras/"] .vertical-final-copy h2,
body[data-page="/promotoras/"] .vertical-final-shell h2 {
  max-width: 12ch;
  font-size: clamp(3.5rem, 6.1vw, 6.7rem);
  line-height: 0.9;
}

body[data-page="/promotoras/"] .vertical-final-copy .lead {
  max-width: 46ch;
}

body[data-page="/promotoras/"] .vertical-final-card {
  min-height: 300px;
}

body[data-page="/promotoras/"] .vertical-final-card h3 {
  max-width: 12ch;
  font-size: clamp(2.2rem, 3.4vw, 3.45rem);
}

body[data-page="/promotoras/"] .internal-final-media img {
  object-position: center 45%;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .vertical-premium-hero,
  body[data-page="/promotoras/"] .vertical-focus-shell,
  body[data-page="/promotoras/"] .vertical-process-shell,
  body:not([data-page="/"]) .vertical-activation-showcase,
  body[data-page="/promotoras/"] .vertical-final-shell {
    grid-template-columns: 1fr;
  }

  body[data-page="/promotoras/"] .vertical-premium-hero .hero-panel-layered {
    justify-self: start;
  }

  body[data-page="/promotoras/"] .vertical-action-grid,
  body[data-page="/promotoras/"] .related-next-section .related-premium-grid,
  body[data-page="/promotoras/"] .related-premium-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .vertical-premium-hero {
    min-height: 0;
    padding-top: 6.6rem;
  }

  body[data-page="/promotoras/"] .vertical-premium-hero .hero-copy h1,
  body[data-page="/promotoras/"] .vertical-focus-copy h2,
  body[data-page="/promotoras/"] .vertical-final-copy h2,
  body[data-page="/promotoras/"] .vertical-final-shell h2 {
    font-size: clamp(2.7rem, 13vw, 4.15rem);
  }

  body[data-page="/promotoras/"] .vertical-command-body,
  body[data-page="/promotoras/"] .vertical-command-modules,
  body[data-page="/promotoras/"] .vertical-focus-copy .vertical-signal-grid,
  body[data-page="/promotoras/"] .vertical-focus-copy .vertical-journey-strip,
  body[data-page="/promotoras/"] .vertical-action-grid,
  body[data-page="/promotoras/"] .vertical-process-list,
  body[data-page="/promotoras/"] .related-next-section .related-premium-grid,
  body[data-page="/promotoras/"] .related-premium-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/promotoras/"] .vertical-tech-rail {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body[data-page="/promotoras/"] .vertical-showreel-promotoras .vertical-showreel-screen,
  body[data-page="/promotoras/"] .vertical-process-section .vertical-showreel-screen {
    min-height: 300px;
  }

  body:not([data-page="/"]) .vertical-activation-media {
    min-height: 310px;
  }

  body:not([data-page="/"]) .vertical-activation-thumbs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-page="/promotoras/"] .vertical-final-card {
    min-height: 0;
  }

  body[data-page="/promotoras/"] .vertical-final-section {
    padding-inline: 1rem;
  }

  body[data-page="/promotoras/"] .vertical-final-shell {
    padding-inline: 0.15rem;
  }

  body[data-page="/promotoras/"] .vertical-final-copy h2,
  body[data-page="/promotoras/"] .vertical-final-shell h2 {
    font-size: clamp(2.35rem, 11vw, 3.2rem);
  }
}

/* V4.38: contacto premium, briefing desk and guided conversion flow. */
body[data-page="/contacto/"] .hero.hero-page.internal-hero,
body[data-page="/contacto/"] .hero.hero-immersive.internal-hero {
  min-height: clamp(700px, 88vh, 860px);
  grid-template-columns: minmax(560px, 0.95fr) minmax(520px, 0.64fr);
  gap: clamp(2rem, 4.5vw, 5rem);
  align-items: center;
  padding-top: clamp(6.2rem, 8vw, 8.5rem);
  padding-bottom: clamp(3rem, 6vw, 5.4rem);
}

body[data-page="/contacto/"] .internal-hero-media img {
  object-position: center 52%;
  filter: saturate(0.78) contrast(1.08) brightness(0.8);
}

body[data-page="/contacto/"] .hero.hero-page.internal-hero::before,
body[data-page="/contacto/"] .hero.hero-immersive.internal-hero::before {
  background:
    linear-gradient(116deg, transparent 0 38%, rgba(240, 198, 107, 0.16) 38.1%, transparent 38.42% 100%),
    linear-gradient(128deg, transparent 0 80%, rgba(240, 198, 107, 0.12) 80.08%, transparent 80.38% 100%);
}

body[data-page="/contacto/"] .hero.hero-page.internal-hero::after,
body[data-page="/contacto/"] .hero.hero-immersive.internal-hero::after {
  height: 48%;
  background:
    linear-gradient(180deg, transparent, rgba(5, 7, 6, 0.94)),
    linear-gradient(90deg, rgba(5, 7, 6, 0.9), transparent 58%, rgba(5, 7, 6, 0.74));
}

body[data-page="/contacto/"] .hero-copy {
  max-width: 760px;
}

body[data-page="/contacto/"] .hero h1 {
  max-width: 10.8ch;
  font-size: clamp(4.2rem, 6.5vw, 7.25rem);
  line-height: 0.9;
}

body[data-page="/contacto/"] .hero .lead {
  max-width: 62ch;
  color: rgba(246, 239, 228, 0.84);
}

body[data-page="/contacto/"] .hero-note {
  max-width: 50ch;
}

body[data-page="/contacto/"] .contact-meta-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: clamp(1rem, 2vw, 1.45rem);
}

body[data-page="/contacto/"] .contact-meta-strip span {
  min-height: 34px;
  padding: 0.34rem 0.78rem;
  border: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 999px;
  background: rgba(5, 7, 6, 0.58);
  color: rgba(246, 239, 228, 0.78);
  font-size: 0.72rem;
  font-weight: 850;
}

body[data-page="/contacto/"] .contact-command-panel {
  position: relative;
  overflow: hidden;
  width: min(100%, 620px);
  padding: clamp(1.25rem, 2.2vw, 1.8rem);
  border-color: rgba(240, 206, 122, 0.24);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.018)),
    radial-gradient(circle at 100% 0%, rgba(240, 206, 122, 0.16), transparent 16rem),
    rgba(6, 8, 7, 0.78);
  box-shadow:
    0 42px 120px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(18px);
}

body[data-page="/contacto/"] .contact-command-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(122deg, transparent 0 56%, rgba(240, 206, 122, 0.16) 56.2%, transparent 56.65% 100%);
  pointer-events: none;
}

body[data-page="/contacto/"] .contact-command-panel > * {
  position: relative;
  z-index: 1;
}

body[data-page="/contacto/"] .contact-command-panel h3 {
  max-width: 14ch;
  margin: clamp(1.5rem, 2.8vw, 2.2rem) 0 0;
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2.35rem, 3.45vw, 4.05rem);
  line-height: 0.94;
  letter-spacing: 0;
}

body[data-page="/contacto/"] .contact-command-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.72rem;
  margin-top: clamp(1.35rem, 2.5vw, 2rem);
}

body[data-page="/contacto/"] .contact-command-grid article {
  min-height: 142px;
  padding: 0.92rem;
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.012)),
    rgba(5, 7, 6, 0.62);
}

body[data-page="/contacto/"] .contact-command-grid span,
body[data-page="/contacto/"] .contact-intro-rail span {
  display: inline-grid;
  min-width: 34px;
  min-height: 28px;
  place-items: center;
  border: 1px solid rgba(240, 206, 122, 0.32);
  border-radius: 999px;
  color: #f0ce7a;
  font-size: 0.64rem;
  font-weight: 950;
}

body[data-page="/contacto/"] .contact-command-grid strong,
body[data-page="/contacto/"] .contact-intro-rail strong {
  display: block;
  margin-top: 0.72rem;
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.08rem, 1.3vw, 1.28rem);
  line-height: 1;
}

body[data-page="/contacto/"] .contact-command-grid small,
body[data-page="/contacto/"] .contact-intro-rail small {
  display: block;
  margin-top: 0.5rem;
  color: rgba(245, 239, 228, 0.66);
  font-size: 0.78rem;
  line-height: 1.45;
}

body[data-page="/contacto/"] .contact-direct-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: clamp(1rem, 2vw, 1.45rem);
  padding-top: 1rem;
  border-top: 1px solid rgba(240, 206, 122, 0.14);
}

body[data-page="/contacto/"] .contact-direct-row a {
  min-height: 74px;
  padding: 0.9rem;
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.026);
  color: inherit;
}

body[data-page="/contacto/"] .contact-direct-row strong {
  display: block;
  color: #f0ce7a;
  font-size: 0.76rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-direct-row span {
  display: block;
  margin-top: 0.34rem;
  color: rgba(245, 239, 228, 0.7);
  font-size: 0.86rem;
}

body[data-page="/contacto/"] .contact-main-section {
  padding-top: clamp(4.8rem, 8vw, 7.4rem);
  padding-bottom: clamp(5.2rem, 9vw, 8rem);
}

body[data-page="/contacto/"] .contact-intro-rail {
  width: min(100%, 1240px);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
  margin: 0 auto clamp(1.4rem, 3vw, 2.5rem);
}

body[data-page="/contacto/"] .contact-intro-rail article {
  position: relative;
  min-height: 132px;
  padding: 1rem;
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.046), rgba(255, 255, 255, 0.012)),
    rgba(5, 8, 7, 0.55);
}

body[data-page="/contacto/"] .contact-grid {
  width: min(100%, 1240px);
  grid-template-columns: minmax(0, 1fr) minmax(420px, 0.78fr);
  gap: clamp(1.2rem, 3vw, 2.4rem);
  margin-inline: auto;
}

body[data-page="/contacto/"] .contact-form-card {
  padding: clamp(1.35rem, 3vw, 2.3rem);
  border-color: rgba(240, 206, 122, 0.2);
  background:
    radial-gradient(circle at 100% 0%, rgba(240, 206, 122, 0.1), transparent 18rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.054), rgba(255, 255, 255, 0.014)),
    rgba(5, 7, 6, 0.68);
}

body[data-page="/contacto/"] .contact-form-card h2 {
  max-width: 10ch;
  margin-bottom: clamp(1.1rem, 2vw, 1.6rem);
  font-size: clamp(3rem, 5.2vw, 5.2rem);
}

body[data-page="/contacto/"] .contact-form-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.88rem;
}

body[data-page="/contacto/"] .site-form label {
  gap: 0.45rem;
  color: rgba(246, 239, 228, 0.74);
  font-size: 0.78rem;
  font-weight: 850;
}

body[data-page="/contacto/"] .site-form input,
body[data-page="/contacto/"] .site-form select,
body[data-page="/contacto/"] .site-form textarea {
  min-height: 48px;
  border-color: rgba(240, 206, 122, 0.18);
  border-radius: 7px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.025), rgba(255, 255, 255, 0.008)),
    rgba(2, 4, 4, 0.74);
  color: #fff8ea;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

body[data-page="/contacto/"] .site-form textarea {
  min-height: 150px;
}

body[data-page="/contacto/"] .site-form .button-primary {
  width: 100%;
  margin-top: 0.4rem;
}

body[data-page="/contacto/"] .form-note {
  max-width: 66ch;
  margin-top: 1.15rem;
  color: rgba(245, 239, 228, 0.66);
  line-height: 1.55;
}

body[data-page="/contacto/"] .contact-side-stack {
  display: grid;
  gap: 0.85rem;
}

body[data-page="/contacto/"] .contact-visual-card {
  position: relative;
  overflow: hidden;
  min-height: 280px;
  margin: 0;
  border: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.025);
  box-shadow: 0 26px 74px rgba(0, 0, 0, 0.28);
}

body[data-page="/contacto/"] .contact-visual-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.88) contrast(1.04) brightness(0.86);
}

body[data-page="/contacto/"] .contact-visual-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, transparent 36%, rgba(5, 7, 6, 0.9)),
    linear-gradient(90deg, rgba(5, 7, 6, 0.5), transparent);
}

body[data-page="/contacto/"] .contact-visual-card figcaption {
  position: absolute;
  z-index: 2;
  left: 1rem;
  right: 1rem;
  bottom: 1rem;
  padding: 1rem;
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background: rgba(5, 7, 6, 0.72);
  backdrop-filter: blur(14px);
}

body[data-page="/contacto/"] .contact-visual-card span {
  color: #f0ce7a;
  font-size: 0.66rem;
  font-weight: 950;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-visual-card strong {
  display: block;
  max-width: 20ch;
  margin-top: 0.46rem;
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.45rem, 2.2vw, 2.25rem);
  line-height: 1;
}

body[data-page="/contacto/"] .contact-check-panel {
  padding: clamp(1rem, 2vw, 1.35rem);
}

body[data-page="/contacto/"] .contact-channel-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}

body[data-page="/contacto/"] .contact-channel {
  position: relative;
  min-height: 126px;
  padding: 1rem;
  border-color: rgba(240, 206, 122, 0.18);
  background:
    linear-gradient(145deg, rgba(240, 206, 122, 0.08), rgba(255, 255, 255, 0.018)),
    rgba(255, 255, 255, 0.026);
  color: inherit;
}

body[data-page="/contacto/"] a.contact-channel::after {
  content: "->";
  position: absolute;
  right: 1rem;
  bottom: 0.9rem;
  color: #f0ce7a;
  font-weight: 900;
}

body[data-page="/contacto/"] .contact-channel strong {
  color: #fff8ea;
}

body[data-page="/contacto/"] .contact-channel span {
  color: rgba(245, 239, 228, 0.68);
  line-height: 1.45;
}

body[data-page="/contacto/"] .contact-side-stack > .button-secondary {
  width: 100%;
  justify-content: center;
  min-height: 48px;
}

@media (max-width: 1180px) {
  body[data-page="/contacto/"] .hero.hero-page.internal-hero,
  body[data-page="/contacto/"] .hero.hero-immersive.internal-hero,
  body[data-page="/contacto/"] .contact-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/contacto/"] .contact-command-panel {
    width: 100%;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] .hero.hero-page.internal-hero,
  body[data-page="/contacto/"] .hero.hero-immersive.internal-hero {
    min-height: 0;
    padding-top: 6.5rem;
  }

  body[data-page="/contacto/"] .hero h1 {
    font-size: clamp(3rem, 15vw, 4.25rem);
  }

  body[data-page="/contacto/"] .contact-command-grid,
  body[data-page="/contacto/"] .contact-direct-row,
  body[data-page="/contacto/"] .contact-intro-rail,
  body[data-page="/contacto/"] .contact-form-fields,
  body[data-page="/contacto/"] .contact-channel-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/contacto/"] .contact-form-card h2 {
    font-size: clamp(2.45rem, 12vw, 3.45rem);
  }

  body[data-page="/contacto/"] .contact-visual-card {
    min-height: 250px;
  }
}

/* Final lock: premium footer must beat legacy internal-page footer rules. */
body:not([data-page="/"]) .site-footer {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(3.35rem, 6vw, 5.4rem) clamp(20px, 5vw, 72px) clamp(1.35rem, 3vw, 2.25rem);
  border-top: 1px solid rgba(240, 206, 122, 0.18);
  background:
    radial-gradient(circle at 16% 0%, rgba(240, 198, 107, 0.16), transparent 28rem),
    linear-gradient(180deg, #070909 0%, #030404 100%);
  color: #f6efe4;
}

body:not([data-page="/"]) .site-footer-cta,
body:not([data-page="/"]) .site-footer-main,
body:not([data-page="/"]) .site-footer-funding,
body:not([data-page="/"]) .site-footer-bottom {
  width: min(100%, 1240px);
  max-width: 1240px;
  margin-inline: auto;
}

body:not([data-page="/"]) .site-footer-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(1rem, 3vw, 2rem);
  padding: clamp(1.15rem, 3vw, 2rem);
  border: 1px solid rgba(240, 206, 122, 0.24);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(240, 198, 107, 0.18), rgba(255, 255, 255, 0.035) 58%),
    rgba(255, 255, 255, 0.025);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.24);
}

body:not([data-page="/"]) .site-footer-kicker,
body:not([data-page="/"]) .site-footer-group h3 {
  margin: 0 0 0.45rem;
  color: #d9ad55;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-cta h2 {
  max-width: 17ch;
  margin: 0;
  color: #fff8ea;
  font-family: var(--font-display, "Playfair Display", serif);
  font-size: clamp(2rem, 4vw, 3.55rem);
  line-height: 0.94;
  letter-spacing: 0;
}

body:not([data-page="/"]) .site-footer-cta-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.75rem;
}

body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button {
  min-height: 48px;
  border-radius: 999px;
  white-space: nowrap;
}

body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary {
  border-color: rgba(117, 78, 20, 0.36);
  background: linear-gradient(135deg, #f0c66b 0%, #d7a84b 48%, #bf8a2e 100%);
  color: #17120a;
  box-shadow:
    0 18px 42px rgba(190, 136, 46, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.48);
}

body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-secondary {
  border-color: rgba(240, 206, 122, 0.28);
  background: rgba(255, 255, 255, 0.035);
  color: #f6efe4;
}

body:not([data-page="/"]) .site-footer-main {
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) repeat(3, minmax(145px, 0.55fr));
  gap: clamp(1.5rem, 4vw, 4.5rem);
  margin-top: clamp(2.4rem, 5vw, 4.4rem);
}

body:not([data-page="/"]) .site-footer-intro {
  max-width: 420px;
}

body:not([data-page="/"]) .site-footer .footer-logo {
  display: inline-flex;
  width: auto;
  min-width: 0;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #f0c66b;
  line-height: 1;
  text-decoration: none;
}

body:not([data-page="/"]) .site-footer .footer-logo::before,
body:not([data-page="/"]) .site-footer-group::before {
  display: none;
  content: none;
}

body:not([data-page="/"]) .site-footer .footer-logo .brand-mark {
  color: #f0c66b;
  font-family: var(--font-body, "Inter", sans-serif);
  font-size: clamp(3rem, 5vw, 4.4rem);
  font-weight: 900;
  letter-spacing: 0;
  text-shadow: 0 18px 44px rgba(240, 198, 107, 0.22);
}

body:not([data-page="/"]) .site-footer-intro p {
  max-width: 34ch;
  margin: 1.1rem 0 0;
  color: rgba(246, 239, 228, 0.72);
  font-size: 1rem;
  line-height: 1.62;
}

body:not([data-page="/"]) .site-footer-signature {
  display: block;
  margin-top: 1rem;
  color: rgba(240, 206, 122, 0.7);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-group {
  display: grid;
  align-content: start;
  gap: 0.72rem;
}

body:not([data-page="/"]) .site-footer a {
  color: rgba(246, 239, 228, 0.72);
  font-weight: 600;
  text-decoration: none;
}

body:not([data-page="/"]) .site-footer a:hover,
body:not([data-page="/"]) .site-footer a:focus-visible {
  color: #f0ce7a;
}

body:not([data-page="/"]) .site-footer-funding {
  display: grid;
  grid-template-columns: minmax(170px, 0.48fr) minmax(290px, 0.92fr);
  align-items: center;
  gap: clamp(1rem, 3vw, 2rem);
  margin-top: clamp(2rem, 4vw, 3.25rem);
  padding: clamp(0.9rem, 2vw, 1.2rem) clamp(1rem, 3vw, 1.65rem);
  border: 1px solid rgba(240, 206, 122, 0.28);
  border-radius: 8px;
  background: linear-gradient(135deg, #fbf8f0 0%, #efe6d4 100%);
  color: #15120d;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.22);
}

body:not([data-page="/"]) .site-footer-funding-copy span {
  display: block;
  color: rgba(21, 18, 13, 0.58);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-funding-copy strong {
  display: block;
  margin-top: 0.2rem;
  color: #11100b;
  font-size: clamp(1.55rem, 3vw, 2.45rem);
  line-height: 1;
}

body:not([data-page="/"]) .site-footer-funding-copy p {
  max-width: 34ch;
  margin: 0.55rem 0 0;
  color: rgba(21, 18, 13, 0.66);
  font-size: 0.92rem;
  line-height: 1.45;
}

body:not([data-page="/"]) .site-footer-funding img {
  display: block;
  justify-self: end;
  width: min(100%, 540px);
  height: auto;
  object-fit: contain;
}

body:not([data-page="/"]) .site-footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.15rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(240, 206, 122, 0.12);
  color: rgba(246, 239, 228, 0.52);
  font-size: 0.78rem;
}

@media (max-width: 980px) {
  body:not([data-page="/"]) .site-footer-cta,
  body:not([data-page="/"]) .site-footer-main,
  body:not([data-page="/"]) .site-footer-funding {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .site-footer-cta-actions,
  body:not([data-page="/"]) .site-footer-funding img {
    justify-self: start;
  }
}

@media (max-width: 680px) {
  body:not([data-page="/"]) .site-footer {
    padding-inline: 1.15rem;
  }

  body:not([data-page="/"]) .site-footer-cta h2 {
    font-size: clamp(1.8rem, 12vw, 2.65rem);
  }

  body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button {
    width: 100%;
    justify-content: center;
  }

  body:not([data-page="/"]) .site-footer-main {
    gap: 1.65rem;
  }

  body:not([data-page="/"]) .site-footer-funding {
    padding: 1rem;
  }

  body:not([data-page="/"]) .site-footer-bottom {
    flex-direction: column;
  }
}

/* Final lock: amber premium button finish, closer to the approved reference. */
body:not([data-page="/"]) .button-primary,
body:not([data-page="/"]) .button-nav,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary {
  border: 1px solid rgba(247, 190, 86, 0.62);
  border-radius: 999px;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%);
  color: #0c0d0c !important;
  box-shadow:
    0 7px 16px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 241, 196, 0.42);
  filter: none;
}

body:not([data-page="/"]) .button-primary:hover,
body:not([data-page="/"]) .button-primary:focus-visible,
body:not([data-page="/"]) .button-nav:hover,
body:not([data-page="/"]) .button-nav:focus-visible,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary:hover,
body:not([data-page="/"]) .site-footer .site-footer-cta-actions .button-primary:focus-visible {
  border-color: rgba(255, 205, 106, 0.74);
  background: linear-gradient(180deg, #ffd078 0%, #f5bd58 100%);
  box-shadow:
    0 9px 20px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 245, 208, 0.48);
  filter: none;
}

body:not([data-page="/"]) .button-primary::after,
body:not([data-page="/"]) .button-nav::after {
  color: #0c0d0c;
}

/* Final footer refinement: subtler CTA, transparent funding marks, logo-only hover. */
body:not([data-page="/"]) .site-footer-cta {
  position: relative;
  width: min(100%, 1060px);
  grid-template-columns: minmax(0, 0.92fr) auto;
  padding: clamp(1.15rem, 2.4vw, 1.7rem) clamp(1.2rem, 3vw, 2rem);
  border-color: rgba(240, 206, 122, 0.16);
  background:
    radial-gradient(circle at 12% 0%, rgba(240, 206, 122, 0.12), transparent 22rem),
    linear-gradient(135deg, rgba(255, 255, 255, 0.036), rgba(255, 255, 255, 0.008)),
    rgba(5, 8, 8, 0.54);
  box-shadow:
    0 22px 68px rgba(0, 0, 0, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
  backdrop-filter: blur(14px);
}

body:not([data-page="/"]) .site-footer-cta h2 {
  max-width: 19ch;
  font-size: clamp(1.72rem, 2.65vw, 2.95rem);
  line-height: 0.98;
}

body:not([data-page="/"]) .site-footer-cta-copy {
  max-width: 42rem;
  margin: 0.75rem 0 0;
  color: rgba(246, 239, 228, 0.62);
  font-size: clamp(0.9rem, 0.95vw, 1rem);
  line-height: 1.58;
}

body:not([data-page="/"]) .site-footer .footer-logo,
body:not([data-page="/"]) .site-footer .footer-logo:hover,
body:not([data-page="/"]) .site-footer .footer-logo:focus-visible {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0;
}

body:not([data-page="/"]) .site-footer .footer-logo .brand-mark {
  display: inline-block;
  color: #f0c66b;
  transition: filter 0.24s ease, text-shadow 0.24s ease, transform 0.24s ease;
}

body:not([data-page="/"]) .site-footer .footer-logo:hover .brand-mark,
body:not([data-page="/"]) .site-footer .footer-logo:focus-visible .brand-mark {
  background: linear-gradient(115deg, #f6d47c 0%, #b88434 48%, #f8e3a7 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 0 18px rgba(240, 198, 107, 0.2));
  text-shadow: none;
  transform: translateY(-1px);
}

body:not([data-page="/"]) .site-footer-funding {
  width: min(100%, 1060px);
  grid-template-columns: 1fr;
  margin-top: clamp(1.65rem, 3.2vw, 2.7rem);
  padding: clamp(0.8rem, 1.45vw, 1.05rem) clamp(1rem, 2.4vw, 1.6rem);
  border-color: rgba(240, 206, 122, 0.13);
  background:
    linear-gradient(90deg, rgba(240, 206, 122, 0.055), rgba(255, 255, 255, 0.018), rgba(240, 206, 122, 0.045)),
    rgba(255, 255, 255, 0.018);
  color: rgba(246, 239, 228, 0.72);
  box-shadow:
    0 18px 58px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(12px);
}

body:not([data-page="/"]) .site-footer-funding img {
  justify-self: center;
  width: min(100%, 860px);
  max-height: clamp(48px, 5.2vw, 78px);
  opacity: 0.72;
  filter: saturate(0.86) brightness(0.98);
}

@media (max-width: 980px) {
  body:not([data-page="/"]) .site-footer-cta {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  body:not([data-page="/"]) .site-footer-cta h2 {
    font-size: clamp(1.6rem, 9vw, 2.2rem);
  }

  body:not([data-page="/"]) .site-footer-funding img {
    max-height: 42px;
  }
}

/* V4.26 footer: editorial studio closing, social channels and funding line. */
body:not([data-page="/"]) .site-footer {
  position: relative;
  overflow: hidden;
  padding: clamp(4.2rem, 7vw, 6.8rem) clamp(1.15rem, 5vw, 4rem) 2rem;
  background:
    radial-gradient(circle at 16% 18%, rgba(240, 198, 107, 0.13), transparent 28rem),
    radial-gradient(circle at 88% 0%, rgba(90, 111, 108, 0.16), transparent 30rem),
    linear-gradient(180deg, rgba(4, 7, 7, 0.98), rgba(6, 10, 10, 0.98));
}

body:not([data-page="/"]) .site-footer::before {
  content: "";
  position: absolute;
  left: -5rem;
  bottom: 10.6rem;
  width: min(34rem, 38vw);
  height: min(14rem, 17vw);
  border: 1px solid rgba(240, 198, 107, 0.13);
  border-left: 0;
  opacity: 0.34;
  transform: skewY(-18deg);
  pointer-events: none;
}

body:not([data-page="/"]) .site-footer::after {
  content: "";
  position: absolute;
  left: clamp(1.5rem, 4vw, 4.5rem);
  top: 0;
  bottom: 14rem;
  width: 1px;
  background: linear-gradient(180deg, rgba(240, 198, 107, 0.68), rgba(240, 198, 107, 0.04));
  box-shadow: 0 0 24px rgba(240, 198, 107, 0.26);
  pointer-events: none;
}

body:not([data-page="/"]) .site-footer-cta {
  display: none;
}

body:not([data-page="/"]) .site-footer-main {
  position: relative;
  z-index: 1;
  width: min(100%, 1320px);
  display: grid;
  grid-template-columns: minmax(250px, 1.18fr) minmax(130px, 0.55fr) minmax(150px, 0.6fr) minmax(120px, 0.45fr) minmax(250px, 0.92fr);
  gap: clamp(1.5rem, 3.3vw, 3.8rem);
  align-items: start;
  margin: 0 auto;
  padding-bottom: clamp(2.2rem, 4vw, 3.4rem);
  border-bottom: 1px solid rgba(240, 206, 122, 0.16);
}

body:not([data-page="/"]) .site-footer-group {
  min-height: 100%;
  padding-left: clamp(1.1rem, 2vw, 2rem);
  border-left: 1px solid rgba(240, 206, 122, 0.13);
}

body:not([data-page="/"]) .site-footer-intro {
  max-width: 360px;
}

body:not([data-page="/"]) .site-footer-intro p {
  max-width: 25ch;
  margin-top: 1.35rem;
  font-size: clamp(1.02rem, 1.35vw, 1.22rem);
  line-height: 1.55;
}

body:not([data-page="/"]) .site-footer-signature {
  position: relative;
  margin-top: 1.6rem;
  padding-left: 2.45rem;
  color: rgba(246, 239, 228, 0.72);
  font-size: 0.86rem;
  line-height: 1.65;
}

body:not([data-page="/"]) .site-footer-signature::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.14rem;
  width: 1.3rem;
  height: 1.3rem;
  border: 1px solid rgba(240, 198, 107, 0.62);
  transform: rotate(45deg);
}

body:not([data-page="/"]) .site-footer-contact p {
  max-width: 28ch;
  margin: 0.65rem 0 1.8rem;
  color: rgba(246, 239, 228, 0.7);
  font-size: 0.96rem;
  line-height: 1.62;
}

body:not([data-page="/"]) .site-footer-contact-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  width: min(100%, 260px);
  min-height: 48px;
  border: 1px solid rgba(240, 198, 107, 0.74);
  border-radius: 4px;
  color: #f0c66b !important;
  font-size: 0.78rem;
  font-weight: 900 !important;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  background: rgba(255, 255, 255, 0.018);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body:not([data-page="/"]) .site-footer-contact-button:hover,
body:not([data-page="/"]) .site-footer-contact-button:focus-visible {
  color: #120f09 !important;
  background: linear-gradient(180deg, #f7c66d, #d8a04d);
  box-shadow: 0 14px 36px rgba(216, 160, 77, 0.18);
}

body:not([data-page="/"]) .site-footer-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  margin-top: 1.6rem;
}

body:not([data-page="/"]) .site-footer-social-link {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(246, 239, 228, 0.16);
  border-radius: 5px;
  color: rgba(246, 239, 228, 0.9) !important;
  background: rgba(255, 255, 255, 0.018);
  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}

body:not([data-page="/"]) .site-footer-social-link:hover,
body:not([data-page="/"]) .site-footer-social-link:focus-visible {
  color: #f0c66b !important;
  border-color: rgba(240, 198, 107, 0.58);
  background: rgba(240, 198, 107, 0.07);
  transform: translateY(-2px);
}

body:not([data-page="/"]) .site-footer-social-link svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body:not([data-page="/"]) .site-footer-social-link svg path {
  fill: currentColor;
  stroke: none;
}

body:not([data-page="/"]) .site-footer-social-link svg rect,
body:not([data-page="/"]) .site-footer-social-link svg circle {
  fill: none;
  stroke: currentColor;
}

body:not([data-page="/"]) .site-footer-social-link .site-footer-social-play {
  fill: #070909;
}

body:not([data-page="/"]) .site-footer-funding {
  position: relative;
  z-index: 1;
  width: min(100%, 1320px);
  display: grid;
  grid-template-columns: minmax(320px, 0.78fr) minmax(520px, 1.2fr);
  align-items: center;
  gap: clamp(1.5rem, 4vw, 4.5rem);
  margin: clamp(2.2rem, 4vw, 3.2rem) auto 0;
  padding: clamp(1.55rem, 2.4vw, 2rem) clamp(1.4rem, 3vw, 2.4rem);
  border: 1px solid rgba(240, 206, 122, 0.22);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(240, 206, 122, 0.06), rgba(255, 255, 255, 0.018), rgba(255, 255, 255, 0.028)),
    rgba(4, 7, 7, 0.58);
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(12px);
}

body:not([data-page="/"]) .site-footer-funding-copy {
  position: relative;
  max-width: 43ch;
  padding-left: 4.65rem;
}

body:not([data-page="/"]) .site-footer-funding-copy::before {
  content: "\2713";
  position: absolute;
  left: 0;
  top: 0.05rem;
  display: grid;
  place-items: center;
  width: 3.2rem;
  height: 3.2rem;
  border: 1px solid rgba(240, 198, 107, 0.42);
  border-radius: 999px;
  color: #f0c66b;
  font-size: 1.35rem;
  box-shadow: 0 0 32px rgba(240, 198, 107, 0.08);
}

body:not([data-page="/"]) .site-footer-funding-copy span {
  display: block;
  color: #e7bb5f;
  font-size: 0.75rem;
  font-weight: 900;
  letter-spacing: 0.18em;
  line-height: 1.4;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-funding-copy p {
  margin: 0.65rem 0 0;
  color: rgba(246, 239, 228, 0.68);
  font-size: 0.94rem;
  line-height: 1.62;
}

body:not([data-page="/"]) .site-footer-funding img {
  justify-self: end;
  width: min(100%, 720px);
  max-height: clamp(54px, 5.8vw, 88px);
  opacity: 0.86;
  filter: saturate(0.94) brightness(1.02);
}

body:not([data-page="/"]) .site-footer-bottom {
  position: relative;
  z-index: 1;
  width: min(100%, 1320px);
  margin: 1.65rem auto 0;
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .site-footer-main {
    grid-template-columns: minmax(250px, 1.2fr) repeat(2, minmax(150px, 0.7fr));
  }

  body:not([data-page="/"]) .site-footer-contact {
    grid-column: span 2;
  }

  body:not([data-page="/"]) .site-footer-funding {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .site-footer-funding img {
    justify-self: start;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .site-footer {
    padding-top: 3.4rem;
  }

  body:not([data-page="/"]) .site-footer::after {
    display: none;
  }

  body:not([data-page="/"]) .site-footer-main,
  body:not([data-page="/"]) .site-footer-contact {
    grid-template-columns: 1fr;
    grid-column: auto;
  }

  body:not([data-page="/"]) .site-footer-group {
    padding-left: 0;
    border-left: 0;
  }

  body:not([data-page="/"]) .site-footer-contact-button {
    width: 100%;
  }

  body:not([data-page="/"]) .site-footer-funding-copy {
    padding-left: 0;
  }

  body:not([data-page="/"]) .site-footer-funding-copy::before {
    position: static;
    margin-bottom: 1rem;
  }
}

/* V4.27 footer authority strip: replace institutional block with own proof. */
body:not([data-page="/"]) .site-footer-socials {
  display: grid;
  grid-template-columns: repeat(4, 40px);
  align-items: center;
  gap: 0.72rem;
  width: max-content;
  max-width: 100%;
  margin-top: 1.35rem;
}

body:not([data-page="/"]) .site-footer-social-label {
  grid-column: 1 / -1;
  color: rgba(240, 198, 107, 0.72);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.18em;
  line-height: 1;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-social-link {
  width: 40px;
  height: 40px;
  border-color: rgba(246, 239, 228, 0.13);
  background: rgba(255, 255, 255, 0.012);
}

body:not([data-page="/"]) .site-footer-social-link svg {
  width: 19px;
  height: 19px;
}

body:not([data-page="/"]) .site-footer-proof {
  position: relative;
  z-index: 1;
  width: min(100%, 1320px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: clamp(2rem, 4vw, 3.2rem) auto 0;
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(240, 206, 122, 0.055), rgba(255, 255, 255, 0.018), rgba(240, 206, 122, 0.028)),
    rgba(4, 7, 7, 0.45);
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(10px);
}

body:not([data-page="/"]) .site-footer-proof-item {
  min-height: 100%;
  padding: clamp(1.1rem, 2vw, 1.55rem);
}

body:not([data-page="/"]) .site-footer-proof-item + .site-footer-proof-item {
  border-left: 1px solid rgba(240, 206, 122, 0.12);
}

body:not([data-page="/"]) .site-footer-proof-item span {
  display: block;
  color: rgba(240, 198, 107, 0.72);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-proof-item strong {
  display: block;
  margin-top: 0.62rem;
  color: #fff4df;
  font-family: var(--font-display, "Playfair Display", serif);
  font-size: clamp(1.15rem, 1.45vw, 1.55rem);
  line-height: 1.08;
}

body:not([data-page="/"]) .site-footer-proof-item p {
  margin: 0.65rem 0 0;
  color: rgba(246, 239, 228, 0.62);
  font-size: 0.86rem;
  line-height: 1.55;
}

@media (max-width: 980px) {
  body:not([data-page="/"]) .site-footer-proof {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body:not([data-page="/"]) .site-footer-proof-item:nth-child(3) {
    border-left: 0;
    border-top: 1px solid rgba(240, 206, 122, 0.12);
  }

  body:not([data-page="/"]) .site-footer-proof-item:nth-child(4) {
    border-top: 1px solid rgba(240, 206, 122, 0.12);
  }
}

@media (max-width: 620px) {
  body:not([data-page="/"]) .site-footer-proof {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/"]) .site-footer-proof-item + .site-footer-proof-item {
    border-left: 0;
    border-top: 1px solid rgba(240, 206, 122, 0.12);
  }
}

/* V4.28 footer tightening: remove proof cards and turn services into a clean line. */
body:not([data-page="/"]) .site-footer-main {
  grid-template-columns: minmax(260px, 1.15fr) minmax(135px, 0.54fr) minmax(155px, 0.62fr) minmax(120px, 0.46fr) minmax(250px, 0.92fr);
  align-items: start;
  padding-bottom: clamp(1.55rem, 3vw, 2.15rem);
}

body:not([data-page="/"]) .site-footer-group {
  min-height: 0;
  padding: 0 0 0 clamp(1rem, 1.7vw, 1.55rem);
  border-left-color: rgba(240, 206, 122, 0.095);
}

body:not([data-page="/"]) .site-footer-group:not(.site-footer-contact) {
  gap: 0.58rem;
  align-self: start;
}

body:not([data-page="/"]) .site-footer-group h3 {
  margin-bottom: 0.72rem;
}

body:not([data-page="/"]) .site-footer-group a {
  width: fit-content;
  line-height: 1.25;
}

body:not([data-page="/"]) .site-footer-signature {
  display: none;
}

body:not([data-page="/"]) .site-footer-proof {
  display: none;
}

body:not([data-page="/"]) .site-footer-capabilities {
  position: relative;
  z-index: 1;
  width: min(100%, 1320px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.65rem;
  margin: clamp(1.45rem, 2.6vw, 2rem) auto 0;
  padding: 0.85rem clamp(1rem, 2vw, 1.35rem);
  border-top: 1px solid rgba(240, 206, 122, 0.13);
  border-bottom: 1px solid rgba(240, 206, 122, 0.09);
  background:
    linear-gradient(90deg, rgba(240, 198, 107, 0.055), rgba(255, 255, 255, 0.014), rgba(240, 198, 107, 0.03));
}

body:not([data-page="/"]) .site-footer-capabilities::before {
  content: "";
  width: 1.05rem;
  height: 1.05rem;
  margin-right: 0.25rem;
  border: 1px solid rgba(240, 198, 107, 0.58);
  transform: rotate(45deg);
  flex: 0 0 auto;
}

body:not([data-page="/"]) .site-footer-capabilities span {
  color: rgba(246, 239, 228, 0.78);
  font-size: clamp(0.76rem, 0.9vw, 0.88rem);
  font-weight: 900;
  letter-spacing: 0.12em;
  line-height: 1.35;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-capabilities span + span::before {
  content: "\00B7";
  margin: 0 0.65rem 0 0;
  color: rgba(240, 198, 107, 0.72);
}

body:not([data-page="/"]) .site-footer-bottom {
  margin-top: 1.1rem;
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .site-footer-main {
    grid-template-columns: minmax(250px, 1.2fr) repeat(2, minmax(150px, 0.7fr));
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .site-footer-main {
    padding-bottom: 1.3rem;
  }

  body:not([data-page="/"]) .site-footer-group {
    padding-left: 0;
    border-left: 0;
  }

  body:not([data-page="/"]) .site-footer-capabilities {
    align-items: flex-start;
  }

  body:not([data-page="/"]) .site-footer-capabilities span + span::before {
    margin-right: 0.5rem;
  }
}

/* V4.29 footer polish: restore social weight, fix CTA, make services a whisper line. */
body:not([data-page="/"]) .site-footer-main {
  padding-bottom: clamp(1.15rem, 2.2vw, 1.65rem);
}

body:not([data-page="/"]) .site-footer-group {
  border-left-color: rgba(240, 206, 122, 0.06);
}

body:not([data-page="/"]) .site-footer-group:not(.site-footer-contact) {
  gap: 0.52rem;
}

body:not([data-page="/"]) .site-footer-contact-button {
  justify-content: center;
  width: min(100%, 250px);
  min-height: 50px;
  padding: 0 1.35rem;
  gap: 0.8rem;
  border-color: rgba(240, 198, 107, 0.68);
  border-radius: 6px;
  background:
    linear-gradient(90deg, rgba(240, 198, 107, 0.035), rgba(255, 255, 255, 0.012));
}

body:not([data-page="/"]) .site-footer-contact-button span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  color: currentColor;
  transform: translateY(-0.02em);
}

body:not([data-page="/"]) .site-footer-socials {
  grid-template-columns: repeat(4, 48px);
  gap: 0.9rem;
  margin-top: 1.35rem;
}

body:not([data-page="/"]) .site-footer-social-link {
  width: 48px;
  height: 48px;
  border-color: rgba(246, 239, 228, 0.18);
  background: rgba(255, 255, 255, 0.018);
}

body:not([data-page="/"]) .site-footer-social-link svg {
  width: 22px;
  height: 22px;
}

body:not([data-page="/"]) .site-footer-capabilities {
  width: min(100%, 1320px);
  gap: 0.52rem;
  margin: clamp(1.05rem, 2vw, 1.45rem) auto 0;
  padding: 0.58rem 0 0;
  border-top: 1px solid rgba(240, 206, 122, 0.11);
  border-bottom: 0;
  background: transparent;
}

body:not([data-page="/"]) .site-footer-capabilities::before {
  width: 0.72rem;
  height: 0.72rem;
  margin-right: 0.38rem;
  border-color: rgba(240, 198, 107, 0.42);
  opacity: 0.8;
}

body:not([data-page="/"]) .site-footer-capabilities span {
  color: rgba(246, 239, 228, 0.58);
  font-size: clamp(0.68rem, 0.78vw, 0.78rem);
  font-weight: 800;
  letter-spacing: 0.1em;
}

body:not([data-page="/"]) .site-footer-capabilities span + span::before {
  margin: 0 0.52rem 0 0;
  color: rgba(240, 198, 107, 0.46);
}

body:not([data-page="/"]) .site-footer-bottom {
  margin-top: 0.8rem;
}

@media (min-width: 1181px) {
  body:not([data-page="/"]) .site-footer-main {
    grid-template-columns: minmax(270px, 1.08fr) minmax(130px, 0.46fr) minmax(145px, 0.54fr) minmax(110px, 0.4fr) minmax(260px, 0.9fr);
    gap: clamp(1.25rem, 2.7vw, 3.1rem);
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .site-footer-contact-button {
    width: 100%;
  }

  body:not([data-page="/"]) .site-footer-socials {
    grid-template-columns: repeat(4, 44px);
  }

  body:not([data-page="/"]) .site-footer-social-link {
    width: 44px;
    height: 44px;
  }
}

/* V4.30 footer correction: keep socials and contact CTA from being compressed. */
body:not([data-page="/"]) .site-footer-group {
  border-left: 0;
}

body:not([data-page="/"]) .site-footer-group h3 {
  position: relative;
}

body:not([data-page="/"]) .site-footer-group h3::before {
  content: "";
  display: block;
  width: 1.6rem;
  height: 1px;
  margin-bottom: 0.72rem;
  background: rgba(240, 206, 122, 0.22);
}

body:not([data-page="/"]) .site-footer-contact-button {
  width: min(100%, 250px) !important;
  min-width: min(100%, 220px);
}

body:not([data-page="/"]) .site-footer-contact .site-footer-social-link {
  display: inline-grid !important;
  width: 48px !important;
  min-width: 48px;
  height: 48px !important;
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .site-footer-contact .site-footer-social-link {
    width: 44px !important;
    min-width: 44px;
    height: 44px !important;
  }
}

/* V4.38: promotoras editorial refinement, lighter hierarchy and calmer blocks. */
body[data-page="/promotoras/"] {
  --vertical-page-gold-soft: rgba(240, 198, 107, 0.16);
  --vertical-page-line: rgba(240, 206, 122, 0.13);
}

body[data-page="/promotoras/"] .vertical-premium-hero .hero-copy h1 {
  max-width: 15.2ch;
  font-size: clamp(3.55rem, 4.8vw, 5.35rem);
  line-height: 0.93;
}

body[data-page="/promotoras/"] .vertical-premium-hero .lead,
body[data-page="/promotoras/"] .vertical-premium-hero .hero-note {
  max-width: 64ch;
}

body[data-page="/promotoras/"] .vertical-command-panel {
  border-color: rgba(240, 206, 122, 0.2);
  box-shadow: 0 32px 100px rgba(0, 0, 0, 0.36);
}

body[data-page="/promotoras/"] .vertical-command-panel::after {
  opacity: 0.45;
}

body[data-page="/promotoras/"] .vertical-command-copy h3 {
  max-width: 16ch;
  font-size: clamp(1.85rem, 2.25vw, 2.55rem);
}

body[data-page="/promotoras/"] .vertical-command-modules {
  grid-template-columns: 1fr;
  gap: 0;
  padding-top: 0.75rem;
}

body[data-page="/promotoras/"] .vertical-command-module {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 0.72fr) minmax(0, 1.25fr);
  align-items: center;
  min-height: 0;
  padding: 0.72rem 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body[data-page="/promotoras/"] .vertical-command-module + .vertical-command-module {
  border-top: 1px solid rgba(240, 206, 122, 0.09);
}

body[data-page="/promotoras/"] .vertical-command-module strong {
  font-size: 0.72rem;
}

body[data-page="/promotoras/"] .vertical-command-module small {
  font-size: 0.7rem;
  line-height: 1.4;
}

body[data-page="/promotoras/"] .section-heading h2,
body[data-page="/promotoras/"] .vertical-focus-copy h2,
body[data-page="/promotoras/"] .vertical-process-shell h2,
body[data-page="/promotoras/"] .vertical-decision-copy h2 {
  max-width: 13.8ch;
  font-size: clamp(3.05rem, 4.6vw, 5.15rem);
  line-height: 0.95;
}

body[data-page="/promotoras/"] .section-heading .lead,
body[data-page="/promotoras/"] .vertical-focus-copy .lead,
body[data-page="/promotoras/"] .vertical-process-shell .lead,
body[data-page="/promotoras/"] .vertical-decision-copy .lead {
  max-width: 58ch;
}

body[data-page="/promotoras/"] .vertical-focus-shell {
  align-items: start;
}

body[data-page="/promotoras/"] .vertical-focus-copy .vertical-signal-grid {
  margin-top: 1.45rem;
}

body[data-page="/promotoras/"] .vertical-focus-copy .vertical-signal-card,
body[data-page="/promotoras/"] .vertical-focus-copy .vertical-journey-step {
  min-height: 0;
  background:
    linear-gradient(150deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(5, 8, 7, 0.48);
}

body[data-page="/promotoras/"] .vertical-focus-copy .vertical-signal-card p,
body[data-page="/promotoras/"] .vertical-focus-copy .vertical-journey-step small {
  min-height: 4.4em;
}

body[data-page="/promotoras/"] .vertical-showreel-promotoras .vertical-showreel-screen {
  border-color: rgba(240, 206, 122, 0.16);
  box-shadow: 0 34px 110px rgba(0, 0, 0, 0.34);
}

body[data-page="/promotoras/"] .vertical-showreel-caption {
  max-width: min(82%, 560px);
  background: rgba(5, 8, 7, 0.68);
}

body[data-page="/promotoras/"] .vertical-activation-section .band-shell,
body[data-page="/promotoras/"] .vertical-case-section .band-shell {
  align-items: end;
}

body[data-page="/promotoras/"] .band-aside {
  max-width: 420px;
  border-color: rgba(240, 206, 122, 0.11);
  background:
    linear-gradient(110deg, rgba(240, 198, 107, 0.055), rgba(255, 255, 255, 0.018)),
    rgba(255, 255, 255, 0.012);
}

body[data-page="/promotoras/"] .vertical-activation-showcase {
  grid-template-columns: minmax(0, 1fr) minmax(245px, 0.34fr);
  gap: clamp(0.85rem, 1.7vw, 1.35rem);
}

body[data-page="/promotoras/"] .vertical-activation-stack {
  border-color: rgba(240, 206, 122, 0.1);
  background:
    linear-gradient(180deg, rgba(240, 198, 107, 0.045), transparent),
    rgba(255, 255, 255, 0.012);
}

body[data-page="/promotoras/"] .vertical-action-grid {
  gap: 0.85rem;
}

body[data-page="/promotoras/"] .vertical-action-card,
body[data-page="/promotoras/"] .vertical-action-card.is-featured,
body[data-page="/promotoras/"] .vertical-action-card:nth-child(2),
body[data-page="/promotoras/"] .vertical-action-card:nth-child(3) {
  display: flex;
  flex-direction: column;
  min-height: 248px;
  padding: clamp(1rem, 1.6vw, 1.25rem);
  border-color: rgba(240, 206, 122, 0.14);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
    rgba(5, 8, 7, 0.58);
}

body[data-page="/promotoras/"] .vertical-action-card p {
  min-height: 3.35em;
}

body[data-page="/promotoras/"] .vertical-action-card a {
  margin-top: auto;
}

body[data-page="/promotoras/"] .premium-case-grid {
  width: min(100%, 1180px);
  gap: 0.95rem;
}

body[data-page="/promotoras/"] .premium-case-grid .card {
  border-color: rgba(240, 206, 122, 0.13);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.01)),
    rgba(5, 8, 7, 0.62);
}

body[data-page="/promotoras/"] .premium-case-grid .card:first-child {
  grid-column: span 2;
}

body[data-page="/promotoras/"] .premium-case-grid .card:first-child .card-media {
  aspect-ratio: 16 / 8.2;
}

body[data-page="/promotoras/"] .premium-case-grid .card:not(:first-child) .card-media {
  aspect-ratio: 16 / 9.4;
}

body[data-page="/promotoras/"] .premium-case-grid .card p:not(.card-kicker) {
  min-height: 4.7em;
}

body[data-page="/promotoras/"] .vertical-package-section {
  padding-top: clamp(4.7rem, 7vw, 6.6rem);
  padding-bottom: clamp(4.8rem, 7.5vw, 6.9rem);
}

body[data-page="/promotoras/"] .vertical-package-section .section-heading {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(320px, 0.56fr);
  align-items: end;
  gap: clamp(1.5rem, 3vw, 3rem);
}

body[data-page="/promotoras/"] .vertical-package-section .section-heading::after {
  content: "Tres niveles para ordenar alcance, fase comercial y entregables sin convertir el proyecto en una lista de piezas sueltas.";
  max-width: 44ch;
  color: rgba(246, 239, 228, 0.62);
  font-size: clamp(0.95rem, 1vw, 1.05rem);
  line-height: 1.65;
}

body[data-page="/promotoras/"] .vertical-package-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.9rem;
  width: min(100%, 1180px);
  margin-top: clamp(1.5rem, 3vw, 2.2rem);
}

body[data-page="/promotoras/"] .vertical-package-grid .package-card {
  display: flex;
  flex-direction: column;
  min-height: 440px;
  border-color: rgba(240, 206, 122, 0.14);
  background:
    linear-gradient(180deg, rgba(240, 198, 107, 0.055), rgba(255, 255, 255, 0.012) 34%),
    rgba(6, 9, 8, 0.7);
}

body[data-page="/promotoras/"] .vertical-package-grid .card-media {
  aspect-ratio: 16 / 8.8;
  opacity: 0.86;
}

body[data-page="/promotoras/"] .vertical-package-grid .package-card p:not(.card-kicker) {
  min-height: 4.6em;
}

body[data-page="/promotoras/"] .vertical-decision-board {
  width: min(100%, 1180px);
  border-color: rgba(240, 206, 122, 0.14);
  background:
    radial-gradient(circle at 100% 0%, rgba(240, 198, 107, 0.1), transparent 26rem),
    rgba(255, 255, 255, 0.018);
}

body[data-page="/promotoras/"] .vertical-decision-actions {
  gap: 0.7rem;
}

body[data-page="/promotoras/"] .vertical-decision-card {
  min-height: 172px;
  border-color: rgba(240, 206, 122, 0.13);
  background: rgba(5, 8, 7, 0.48);
}

body[data-page="/promotoras/"] .related-next-section .section-heading {
  margin-bottom: clamp(1.5rem, 3vw, 2.3rem);
}

body[data-page="/promotoras/"] .related-premium-grid .card p:not(.card-kicker) {
  min-height: 4.7em;
}

body[data-page="/promotoras/"] .vertical-faq-shell {
  width: min(100%, 1120px);
  grid-template-columns: minmax(320px, 0.58fr) minmax(0, 1fr);
  gap: clamp(2rem, 4vw, 4.2rem);
  align-items: start;
}

body[data-page="/promotoras/"] .vertical-faq-shell .section-heading h2 {
  max-width: 9.5ch;
}

body[data-page="/promotoras/"] .vertical-faq-section .faq-list {
  border-top: 1px solid rgba(240, 206, 122, 0.13);
}

body[data-page="/promotoras/"] .vertical-faq-section details {
  border-color: rgba(240, 206, 122, 0.11);
  background: transparent;
}

body[data-page="/promotoras/"] .vertical-final-section {
  min-height: clamp(520px, 44vw, 660px);
}

body[data-page="/promotoras/"] .vertical-final-copy h2,
body[data-page="/promotoras/"] .vertical-final-shell h2 {
  max-width: 14ch;
  font-size: clamp(3.25rem, 5.2vw, 5.8rem);
  line-height: 0.92;
}

body[data-page="/promotoras/"] .vertical-final-card {
  min-height: 260px;
  border-color: rgba(240, 206, 122, 0.16);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.015)),
    rgba(5, 8, 7, 0.66);
}

body[data-page="/promotoras/"] .vertical-final-card h3 {
  max-width: 14ch;
  font-size: clamp(2rem, 3vw, 3rem);
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .vertical-command-modules {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body[data-page="/promotoras/"] .vertical-command-module {
    display: block;
    padding: 0.85rem;
    border: 1px solid rgba(240, 206, 122, 0.12);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.022);
  }

  body[data-page="/promotoras/"] .premium-case-grid .card:first-child {
    grid-column: auto;
  }

  body[data-page="/promotoras/"] .vertical-package-section .section-heading {
    grid-template-columns: 1fr;
  }

  body[data-page="/promotoras/"] .vertical-faq-shell {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .vertical-premium-hero .hero-copy h1,
  body[data-page="/promotoras/"] .section-heading h2,
  body[data-page="/promotoras/"] .vertical-focus-copy h2,
  body[data-page="/promotoras/"] .vertical-process-shell h2,
  body[data-page="/promotoras/"] .vertical-decision-copy h2,
  body[data-page="/promotoras/"] .vertical-final-copy h2,
  body[data-page="/promotoras/"] .vertical-final-shell h2 {
    max-width: 100%;
    font-size: clamp(2.45rem, 11.5vw, 3.55rem);
  }

  body[data-page="/promotoras/"] .vertical-command-modules,
  body[data-page="/promotoras/"] .vertical-action-grid,
  body[data-page="/promotoras/"] .vertical-package-grid,
  body[data-page="/promotoras/"] .related-next-section .related-premium-grid,
  body[data-page="/promotoras/"] .related-premium-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/promotoras/"] .vertical-command-module,
  body[data-page="/promotoras/"] .vertical-action-card,
  body[data-page="/promotoras/"] .vertical-action-card.is-featured,
  body[data-page="/promotoras/"] .vertical-package-grid .package-card {
    min-height: 0;
  }

  body[data-page="/promotoras/"] .vertical-focus-copy .vertical-signal-card p,
  body[data-page="/promotoras/"] .vertical-focus-copy .vertical-journey-step small,
  body[data-page="/promotoras/"] .vertical-action-card p,
  body[data-page="/promotoras/"] .premium-case-grid .card p:not(.card-kicker),
  body[data-page="/promotoras/"] .vertical-package-grid .package-card p:not(.card-kicker),
  body[data-page="/promotoras/"] .related-premium-grid .card p:not(.card-kicker) {
    min-height: 0;
  }
}

/* V4.39: keep promotoras cases in balanced portfolio rows. */
body[data-page="/promotoras/"] .vertical-activation-section .section-heading h2,
body[data-page="/promotoras/"] .vertical-package-section .section-heading h2,
body[data-page="/promotoras/"] .vertical-related-section .section-heading h2 {
  max-width: 16.5ch;
}

body[data-page="/promotoras/"] .premium-case-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body[data-page="/promotoras/"] .premium-case-grid .card,
body[data-page="/promotoras/"] .premium-case-grid .card:first-child,
body[data-page="/promotoras/"] .premium-case-grid .card:nth-child(2),
body[data-page="/promotoras/"] .premium-case-grid .card:nth-child(3),
body[data-page="/promotoras/"] .premium-case-grid .card:nth-child(4) {
  grid-column: span 2 !important;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

body[data-page="/promotoras/"] .premium-case-grid .card-media,
body[data-page="/promotoras/"] .premium-case-grid .card:first-child .card-media,
body[data-page="/promotoras/"] .premium-case-grid .card:not(:first-child) .card-media {
  aspect-ratio: 16 / 8.9;
}

body[data-page="/promotoras/"] .premium-case-grid .card h3 {
  min-height: 2.2em;
}

body[data-page="/promotoras/"] .premium-case-grid .card p:not(.card-kicker) {
  display: -webkit-box;
  min-height: 4.65em;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

body[data-page="/promotoras/"] .premium-case-grid .card-link {
  margin-top: auto;
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .premium-case-grid {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .premium-case-grid .card,
  body[data-page="/promotoras/"] .premium-case-grid .card:first-child,
  body[data-page="/promotoras/"] .premium-case-grid .card:nth-child(2),
  body[data-page="/promotoras/"] .premium-case-grid .card:nth-child(3),
  body[data-page="/promotoras/"] .premium-case-grid .card:nth-child(4) {
    grid-column: auto !important;
  }

  body[data-page="/promotoras/"] .premium-case-grid .card h3,
  body[data-page="/promotoras/"] .premium-case-grid .card p:not(.card-kicker) {
    min-height: 0;
  }
}

/* V4.40: more architectural secondary footer, compact nav and subtle capability signature. */
body:not([data-page="/"]) .site-footer {
  padding-top: clamp(4.6rem, 6.2vw, 6rem);
}

body:not([data-page="/"]) .site-footer-intro {
  max-width: 380px;
}

body:not([data-page="/"]) .site-footer-intro p {
  max-width: 27ch;
  margin-top: 1.45rem;
  color: rgba(246, 239, 228, 0.68);
  font-size: clamp(1.02rem, 1.25vw, 1.18rem);
  line-height: 1.62;
}

body:not([data-page="/"]) .site-footer-main {
  width: min(100%, 1280px);
  padding-bottom: clamp(1rem, 1.8vw, 1.35rem);
  border-bottom-color: rgba(240, 206, 122, 0.11);
}

body:not([data-page="/"]) .site-footer-group:not(.site-footer-contact) {
  position: relative;
  padding-top: 0.08rem;
}

body:not([data-page="/"]) .site-footer-group:not(.site-footer-contact)::after {
  content: "";
  display: block;
  width: min(5.6rem, 72%);
  height: 1px;
  margin-top: 1.35rem;
  background: linear-gradient(90deg, rgba(240, 206, 122, 0.18), transparent);
}

body:not([data-page="/"]) .site-footer-group h3 {
  margin-bottom: 0.86rem;
  font-size: 0.68rem;
  letter-spacing: 0.18em;
}

body:not([data-page="/"]) .site-footer-group h3::before {
  width: 1.4rem;
  margin-bottom: 0.7rem;
  background: rgba(240, 206, 122, 0.18);
}

body:not([data-page="/"]) .site-footer-group a {
  color: rgba(246, 239, 228, 0.67) !important;
  font-size: 0.94rem;
  line-height: 1.26;
}

body:not([data-page="/"]) .site-footer-group a:hover,
body:not([data-page="/"]) .site-footer-group a:focus-visible {
  color: #f0c66b !important;
}

body:not([data-page="/"]) .site-footer-contact {
  position: relative;
  padding-left: clamp(1.35rem, 2vw, 1.9rem);
}

body:not([data-page="/"]) .site-footer-contact::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.28rem;
  bottom: 1.8rem;
  width: 1px;
  background: linear-gradient(180deg, rgba(240, 206, 122, 0.2), rgba(240, 206, 122, 0.04));
}

body:not([data-page="/"]) .site-footer-contact p {
  max-width: 31ch;
  margin: 0.76rem 0 1.48rem;
  color: rgba(246, 239, 228, 0.66);
  font-size: 0.94rem;
  line-height: 1.66;
}

body:not([data-page="/"]) .site-footer-contact-button {
  width: min(100%, 248px) !important;
  min-height: 50px;
  border-color: rgba(240, 198, 107, 0.6);
  background:
    linear-gradient(90deg, rgba(240, 198, 107, 0.03), rgba(255, 255, 255, 0.01));
}

body:not([data-page="/"]) .site-footer-socials {
  gap: 0.85rem;
  margin-top: 1.28rem;
}

body:not([data-page="/"]) .site-footer-capabilities {
  width: min(100%, 1280px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.42rem;
  margin-top: 0.72rem;
  padding: 0.58rem 0 0.54rem;
  border-top: 1px solid rgba(240, 206, 122, 0.08);
  border-bottom: 1px solid rgba(240, 206, 122, 0.055);
  background:
    linear-gradient(90deg, transparent, rgba(240, 198, 107, 0.022) 18%, transparent 58%);
}

body:not([data-page="/"]) .site-footer-capabilities::before {
  content: "Especialidad";
  width: auto;
  height: auto;
  margin: 0 0.9rem 0 0;
  border: 0;
  color: rgba(240, 198, 107, 0.75);
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.18em;
  line-height: 1;
  text-transform: uppercase;
  transform: none;
}

body:not([data-page="/"]) .site-footer-capabilities span {
  color: rgba(246, 239, 228, 0.52);
  font-size: clamp(0.64rem, 0.7vw, 0.72rem);
  font-weight: 760;
  letter-spacing: 0.085em;
}

body:not([data-page="/"]) .site-footer-capabilities span + span::before {
  content: "\00B7";
  margin: 0 0.48rem 0 0;
  color: rgba(240, 198, 107, 0.38);
}

body:not([data-page="/"]) .site-footer-bottom {
  width: min(100%, 1280px);
  margin-top: 0.72rem;
  color: rgba(246, 239, 228, 0.48);
}

@media (min-width: 1181px) {
  body:not([data-page="/"]) .site-footer-main {
    grid-template-columns: minmax(295px, 0.95fr) minmax(112px, 0.34fr) minmax(132px, 0.39fr) minmax(100px, 0.3fr) minmax(278px, 0.82fr);
    gap: clamp(1.25rem, 2.15vw, 2.55rem);
  }
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .site-footer-contact::before {
    display: none;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .site-footer {
    padding-top: 3.8rem;
  }

  body:not([data-page="/"]) .site-footer-contact {
    padding-left: 0;
  }

  body:not([data-page="/"]) .site-footer-group:not(.site-footer-contact)::after {
    display: none;
  }

  body:not([data-page="/"]) .site-footer-capabilities {
    gap: 0.36rem;
    padding-bottom: 0.75rem;
  }

  body:not([data-page="/"]) .site-footer-capabilities::before {
    width: 100%;
    margin: 0 0 0.15rem;
  }
}

/* V4.41: intentional footer breathing space with a subtle method signature. */
body:not([data-page="/"]) .site-footer-method {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-self: end;
  align-items: center;
  gap: 0.54rem;
  min-height: 44px;
  padding: 0.68rem 0 0.18rem;
  border-top: 1px solid rgba(240, 206, 122, 0.06);
  color: rgba(246, 239, 228, 0.38);
  font-size: clamp(0.68rem, 0.74vw, 0.76rem);
  font-weight: 780;
  letter-spacing: 0.095em;
  line-height: 1.35;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-method::before {
  content: "";
  width: 0.64rem;
  height: 0.64rem;
  margin-right: 0.18rem;
  border: 1px solid rgba(240, 198, 107, 0.34);
  flex: 0 0 auto;
  transform: rotate(45deg);
}

body:not([data-page="/"]) .site-footer-method span + span::before {
  content: "\00B7";
  margin: 0 0.54rem 0 0;
  color: rgba(240, 198, 107, 0.36);
}

body:not([data-page="/"]) .site-footer-contact p {
  margin-bottom: 1.24rem;
}

body:not([data-page="/"]) .site-footer-socials {
  margin-top: 1.05rem;
}

body:not([data-page="/"]) .site-footer-social-label {
  width: 100%;
  margin-bottom: -0.08rem;
}

@media (min-width: 1181px) {
  body:not([data-page="/"]) .site-footer-intro {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  body:not([data-page="/"]) .site-footer-main > .site-footer-group:nth-of-type(1) {
    grid-column: 2;
    grid-row: 1;
  }

  body:not([data-page="/"]) .site-footer-main > .site-footer-group:nth-of-type(2) {
    grid-column: 3;
    grid-row: 1;
  }

  body:not([data-page="/"]) .site-footer-main > .site-footer-legal {
    grid-column: 4;
    grid-row: 1;
  }

  body:not([data-page="/"]) .site-footer-contact {
    grid-column: 5;
    grid-row: 1 / span 2;
  }

  body:not([data-page="/"]) .site-footer-method {
    grid-column: 2 / 5;
    grid-row: 2;
  }
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .site-footer-method {
    grid-column: 1 / -1;
    order: 8;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .site-footer-method {
    min-height: 0;
    padding-top: 0.8rem;
  }
}

/* V4.42: footer signature corrected, single-line and quieter. */
body:not([data-page="/"]) .site-footer-method {
  display: flex;
  flex-wrap: nowrap;
  align-self: end;
  align-items: center;
  gap: 0.46rem;
  min-height: 0;
  padding: 0.25rem 0 0.18rem;
  border-top: 0;
  color: rgba(246, 239, 228, 0.34);
  font-size: clamp(0.62rem, 0.66vw, 0.68rem);
  font-weight: 760;
  letter-spacing: 0.08em;
  line-height: 1.25;
  text-transform: uppercase;
  white-space: nowrap;
}

body:not([data-page="/"]) .site-footer-method::before {
  content: "Metodo";
  width: auto;
  height: auto;
  margin-right: 0.34rem;
  border: 0;
  color: rgba(240, 198, 107, 0.48);
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  text-transform: uppercase;
  transform: none;
}

body:not([data-page="/"]) .site-footer-method span + span::before {
  margin: 0 0.46rem 0 0;
  color: rgba(240, 198, 107, 0.28);
}

body:not([data-page="/"]) .site-footer-capabilities {
  gap: 0.42rem;
  min-height: 30px;
  padding: 0.52rem 0 0.42rem;
  border-top-color: rgba(240, 206, 122, 0.07);
  border-bottom-color: rgba(240, 206, 122, 0.045);
  background: transparent;
}

body:not([data-page="/"]) .site-footer-capabilities::before {
  content: "Especialidad \00B7";
  margin: 0 0.58rem 0 0;
  color: rgba(246, 239, 228, 0.43);
  font-size: clamp(0.64rem, 0.7vw, 0.72rem);
  font-weight: 760;
  letter-spacing: 0.085em;
  line-height: 1.35;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-capabilities::after {
  content: none;
}

body:not([data-page="/"]) .site-footer-capabilities span {
  color: rgba(246, 239, 228, 0.43);
  font-size: clamp(0.64rem, 0.7vw, 0.72rem);
  font-weight: 760;
  letter-spacing: 0.085em;
  line-height: 1.35;
}

body:not([data-page="/"]) .site-footer-capabilities span + span::before {
  margin: 0 0.46rem 0 0;
  color: rgba(240, 198, 107, 0.3);
}

@media (min-width: 1181px) {
  body:not([data-page="/"]) .site-footer-contact {
    grid-column: 5;
    grid-row: 1 / span 2;
  }

  body:not([data-page="/"]) .site-footer-method {
    grid-column: 2 / 5;
    grid-row: 2;
    justify-self: start;
    width: min(100%, 520px);
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .site-footer-method,
  body:not([data-page="/"]) .site-footer-capabilities {
    white-space: normal;
  }

  body:not([data-page="/"]) .site-footer-capabilities::before {
    width: auto;
    margin-right: 0.48rem;
  }
}

/* V4.40: pricing hub visual decision flow. */
body[data-page="/precios/"] .pricing-hero .hero-copy {
  max-width: 760px;
}

body[data-page="/precios/"] .pricing-hero h1 {
  max-width: 780px;
  font-size: 4.45rem;
  line-height: 0.96;
}

body[data-page="/precios/"] .pricing-hero-signals {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.62rem;
  max-width: 680px;
  margin-top: 1rem;
}

body[data-page="/precios/"] .pricing-hero-signals span {
  display: grid;
  gap: 0.22rem;
  min-height: 62px;
  padding: 0.68rem 0.78rem;
  border: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(7, 11, 11, 0.66), rgba(7, 11, 11, 0.32));
  backdrop-filter: blur(14px);
}

body[data-page="/precios/"] .pricing-hero-signals strong {
  color: var(--inner-text);
  font-size: 0.9rem;
}

body[data-page="/precios/"] .pricing-hero-signals em {
  color: rgba(244, 239, 227, 0.68);
  font-size: 0.78rem;
  font-style: normal;
  line-height: 1.35;
}

body[data-page="/precios/"] .pricing-hero .cta-row {
  margin-top: 1rem;
}

body[data-page="/precios/"] .pricing-range-section {
  background:
    linear-gradient(180deg, rgba(13, 18, 16, 0.98), rgba(5, 7, 7, 1)),
    #060909;
}

body[data-page="/precios/"] .pricing-range-section .section-heading {
  max-width: 900px;
}

body[data-page="/precios/"] .pricing-range-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.85rem;
}

body[data-page="/precios/"] .pricing-range-card {
  display: grid;
  align-content: space-between;
  min-height: 250px;
  padding: 1.22rem;
  border: 1px solid rgba(240, 206, 122, 0.17);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.012)),
    rgba(8, 12, 11, 0.84);
  box-shadow: 0 24px 72px rgba(0, 0, 0, 0.24);
}

body[data-page="/precios/"] .pricing-range-card span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(240, 206, 122, 0.34);
  border-radius: 50%;
  color: var(--inner-gold);
  font-weight: 900;
}

body[data-page="/precios/"] .pricing-range-card h3 {
  margin-top: 1.35rem;
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.72rem;
  line-height: 1;
}

body[data-page="/precios/"] .pricing-range-card p {
  margin-top: 0.78rem;
  line-height: 1.58;
}

body[data-page="/precios/"] .pricing-range-card strong {
  align-self: end;
  width: fit-content;
  margin-top: 1.15rem;
  padding: 0.42rem 0.62rem;
  border: 1px solid rgba(240, 206, 122, 0.22);
  border-radius: 999px;
  color: var(--inner-gold);
  background: rgba(240, 206, 122, 0.08);
  font-size: 0.78rem;
}

body[data-page="/precios/"] .pricing-hub-grid,
body[data-page="/precios/"] .pricing-route-grid {
  gap: 1rem;
}

body[data-page="/precios/"] .pricing-hub-card,
body[data-page="/precios/"] .pricing-route-card {
  min-height: 470px;
}

body[data-page="/precios/"] .pricing-hub-card .card-media,
body[data-page="/precios/"] .pricing-route-card .card-media {
  aspect-ratio: 16 / 8.6;
}

body[data-page="/precios/"] .pricing-hub-card .card-meta,
body[data-page="/precios/"] .pricing-route-card .card-meta {
  margin-top: 0.45rem;
  margin-bottom: 0.25rem;
  color: rgba(240, 206, 122, 0.78);
  font-size: 0.78rem;
  font-weight: 800;
}

body[data-page="/precios/"] .pricing-hub-card p:not(.card-kicker):not(.card-meta),
body[data-page="/precios/"] .pricing-route-card p:not(.card-kicker):not(.card-meta) {
  -webkit-line-clamp: 3;
}

body[data-page="/precios/"] .pricing-compare-section {
  background:
    linear-gradient(180deg, #080c0b 0%, #050707 100%);
}

body[data-page="/precios/"] .pricing-compare-layout {
  display: grid;
  grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
  gap: 2rem;
  align-items: start;
}

body[data-page="/precios/"] .pricing-compare-copy {
  position: sticky;
  top: 110px;
}

body[data-page="/precios/"] .pricing-compare-table {
  overflow: hidden;
  border: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 8px;
  background: rgba(7, 10, 10, 0.72);
  box-shadow: 0 28px 84px rgba(0, 0, 0, 0.28);
}

body[data-page="/precios/"] .pricing-compare-head,
body[data-page="/precios/"] .pricing-compare-row {
  display: grid;
  grid-template-columns: 0.68fr 1fr 1fr;
}

body[data-page="/precios/"] .pricing-compare-head span,
body[data-page="/precios/"] .pricing-compare-row strong,
body[data-page="/precios/"] .pricing-compare-row span {
  padding: 1rem;
  border-bottom: 1px solid rgba(240, 206, 122, 0.12);
  line-height: 1.42;
}

body[data-page="/precios/"] .pricing-compare-head {
  color: var(--inner-gold);
  background: rgba(240, 206, 122, 0.08);
  font-size: 0.82rem;
  font-weight: 900;
}

body[data-page="/precios/"] .pricing-compare-row strong {
  color: var(--inner-text);
}

body[data-page="/precios/"] .pricing-compare-row span {
  color: rgba(244, 239, 227, 0.7);
}

body[data-page="/precios/"] .pricing-compare-row span:last-child {
  color: rgba(244, 239, 227, 0.88);
  background: linear-gradient(90deg, rgba(240, 206, 122, 0.075), rgba(255, 255, 255, 0.018));
}

body[data-page="/precios/"] .pricing-faq-layout {
  display: grid;
  grid-template-columns: minmax(260px, 330px) minmax(0, 1fr);
  gap: 1rem;
  max-width: 1040px;
  margin-inline: auto;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list {
  max-width: none;
  margin: 0;
}

body[data-page="/precios/"] .pricing-faq-aside {
  position: sticky;
  top: 110px;
  align-self: start;
  padding: 1.2rem;
  border: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.012)),
    rgba(7, 10, 10, 0.76);
}

body[data-page="/precios/"] .pricing-faq-aside h3 {
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.82rem;
  line-height: 1;
}

body[data-page="/precios/"] .pricing-faq-aside ul,
body[data-page="/precios/"] .pricing-final-list {
  display: grid;
  gap: 0.55rem;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}

body[data-page="/precios/"] .pricing-faq-aside li,
body[data-page="/precios/"] .pricing-final-list span {
  padding: 0.72rem 0.82rem;
  border: 1px solid rgba(240, 206, 122, 0.13);
  border-radius: 8px;
  color: rgba(244, 239, 227, 0.76);
  background: rgba(5, 7, 7, 0.44);
}

body[data-page="/precios/"] .pricing-final-card h3 {
  margin-bottom: 0.9rem;
}

body[data-page="/precios/"] .pricing-final-list {
  margin-bottom: 1rem;
}

@media (max-width: 1100px) {
  body[data-page="/precios/"] .pricing-hero h1 {
    font-size: 3.75rem;
  }

  body[data-page="/precios/"] .pricing-range-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  body[data-page="/precios/"] .pricing-hero-signals,
  body[data-page="/precios/"] .pricing-compare-layout,
  body[data-page="/precios/"] .pricing-faq-layout {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-compare-copy,
  body[data-page="/precios/"] .pricing-faq-aside {
    position: static;
  }
}

@media (max-width: 760px) {
  body[data-page="/precios/"] .pricing-hero h1 {
    font-size: 3rem;
    line-height: 1;
  }

  body[data-page="/precios/"] .pricing-hero-signals,
  body[data-page="/precios/"] .pricing-range-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-compare-head {
    display: none;
  }

  body[data-page="/precios/"] .pricing-compare-row {
    grid-template-columns: 1fr;
    padding: 0.9rem;
    border-bottom: 1px solid rgba(240, 206, 122, 0.12);
  }

  body[data-page="/precios/"] .pricing-compare-row strong,
  body[data-page="/precios/"] .pricing-compare-row span {
    padding: 0.28rem 0;
    border-bottom: 0;
  }
}

/* V4.42: pricing hub premium pass. */
body[data-page="/precios/"] .pricing-section-heading {
  max-width: 1240px;
  margin-inline: auto;
  text-align: left;
  align-items: flex-start;
}

body[data-page="/precios/"] .pricing-section-heading h2 {
  max-width: 14ch;
}

body[data-page="/precios/"] .pricing-section-heading .lead {
  max-width: 760px;
}

body[data-page="/precios/"] .pricing-command-panel {
  position: relative;
  overflow: hidden;
  box-shadow:
    0 34px 94px rgba(0, 0, 0, 0.48),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body[data-page="/precios/"] .pricing-command-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(130deg, rgba(240, 206, 122, 0.12), transparent 34%),
    radial-gradient(circle at 86% 16%, rgba(240, 206, 122, 0.16), transparent 10rem);
  pointer-events: none;
}

body[data-page="/precios/"] .pricing-command-panel > * {
  position: relative;
  z-index: 1;
}

body[data-page="/precios/"] .pricing-command-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1rem;
  align-items: center;
}

body[data-page="/precios/"] .pricing-command-seal,
body[data-page="/precios/"] .pricing-heading-logo,
body[data-page="/precios/"] .pricing-faq-logo {
  display: grid;
  place-items: center;
  border: 1px solid rgba(240, 206, 122, 0.34);
  border-radius: 10px;
  background:
    linear-gradient(145deg, rgba(240, 206, 122, 0.2), rgba(255, 255, 255, 0.035)),
    rgba(5, 7, 7, 0.72);
  color: var(--inner-gold);
  font-weight: 950;
  letter-spacing: 0;
  box-shadow:
    0 18px 40px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

body[data-page="/precios/"] .pricing-command-seal {
  width: 4.2rem;
  height: 4.2rem;
  font-size: 1rem;
  transform: rotate(-4deg);
}

body[data-page="/precios/"] .pricing-command-list {
  display: grid;
  gap: 0.72rem;
  margin-top: 1.1rem;
}

body[data-page="/precios/"] .pricing-command-list article,
body[data-page="/precios/"] .pricing-rule-list article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.78rem;
  align-items: start;
  border: 1px solid rgba(240, 206, 122, 0.14);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.014)),
    rgba(5, 8, 8, 0.62);
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2);
}

body[data-page="/precios/"] .pricing-command-list article {
  min-height: 78px;
  padding: 0.82rem;
}

body[data-page="/precios/"] .pricing-command-mark,
body[data-page="/precios/"] .pricing-rule-logo,
body[data-page="/precios/"] .pricing-range-mark,
body[data-page="/precios/"] .pricing-compare-icon {
  display: grid;
  place-items: center;
  border: 1px solid rgba(240, 206, 122, 0.28);
  border-radius: 8px;
  background:
    linear-gradient(150deg, rgba(240, 206, 122, 0.14), rgba(255, 255, 255, 0.024)),
    rgba(2, 4, 4, 0.62);
  color: var(--inner-gold);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.04em;
}

body[data-page="/precios/"] .pricing-command-mark,
body[data-page="/precios/"] .pricing-rule-logo {
  width: 2.42rem;
  height: 2.42rem;
}

body[data-page="/precios/"] .pricing-command-list strong {
  display: block;
  color: var(--inner-text);
  font-size: 0.9rem;
}

body[data-page="/precios/"] .pricing-command-list p,
body[data-page="/precios/"] .pricing-rule-list p {
  margin: 0.22rem 0 0;
  color: rgba(244, 239, 227, 0.68);
  font-size: 0.82rem;
  line-height: 1.42;
}

body[data-page="/precios/"] .pricing-rule-list {
  display: grid;
  gap: 0.72rem;
  margin-top: 1.25rem;
  max-width: 700px;
}

body[data-page="/precios/"] .pricing-rule-list article {
  min-height: 82px;
  padding: 0.92rem;
}

body[data-page="/precios/"] .pricing-rule-list p {
  color: rgba(244, 239, 227, 0.78);
  font-size: 0.95rem;
}

body[data-page="/precios/"] .pricing-range-card {
  position: relative;
  overflow: hidden;
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

body[data-page="/precios/"] .pricing-range-card:hover {
  transform: none;
  border-color: rgba(240, 206, 122, 0.32);
  box-shadow:
    0 30px 90px rgba(0, 0, 0, 0.36),
    0 0 28px rgba(240, 206, 122, 0.065);
}

body[data-page="/precios/"] .pricing-range-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
}

body[data-page="/precios/"] .pricing-range-card .pricing-range-mark {
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 10px;
  font-size: 0.78rem;
}

body[data-page="/precios/"] .pricing-range-card small {
  color: rgba(244, 239, 227, 0.34);
  font-size: 0.78rem;
  font-weight: 950;
  letter-spacing: 0.16em;
}

body[data-page="/precios/"] .pricing-hub-card,
body[data-page="/precios/"] .pricing-route-card {
  min-height: 0;
  box-shadow:
    0 24px 72px rgba(0, 0, 0, 0.26),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

body[data-page="/precios/"] .pricing-hub-card:hover,
body[data-page="/precios/"] .pricing-route-card:hover {
  transform: none;
  border-color: rgba(240, 206, 122, 0.3);
  box-shadow:
    0 30px 90px rgba(0, 0, 0, 0.34),
    0 0 30px rgba(240, 206, 122, 0.07);
}

body[data-page="/precios/"] .pricing-hub-card::after,
body[data-page="/precios/"] .pricing-route-card::after {
  content: none;
}

body[data-page="/precios/"] .pricing-hub-card .card-media,
body[data-page="/precios/"] .pricing-route-card .card-media {
  position: relative;
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-hub-card .card-media::after,
body[data-page="/precios/"] .pricing-route-card .card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 45%, rgba(3, 5, 5, 0.5));
  pointer-events: none;
}

body[data-page="/precios/"] .pricing-hub-card .card-media img,
body[data-page="/precios/"] .pricing-route-card .card-media img {
  transform: scale(1.001);
  transition: transform 420ms ease, filter 420ms ease;
}

body[data-page="/precios/"] .pricing-hub-card:hover .card-media img,
body[data-page="/precios/"] .pricing-route-card:hover .card-media img {
  transform: scale(1.045);
  filter: saturate(1.08) contrast(1.04);
}

body[data-page="/precios/"] .pricing-hub-card .card-link,
body[data-page="/precios/"] .pricing-route-card .card-link {
  display: inline-flex;
  width: fit-content;
  max-width: calc(100% - 2px);
  min-height: 38px;
  align-items: center;
  gap: 0.48rem;
  margin-top: auto;
  margin-bottom: clamp(1.1rem, 1.7vw, 1.45rem);
  padding: 0.54rem 0.72rem;
  border: 1px solid rgba(240, 206, 122, 0.24);
  border-radius: 999px;
  background:
    linear-gradient(180deg, rgba(240, 206, 122, 0.12), rgba(240, 206, 122, 0.035)),
    rgba(2, 4, 4, 0.28);
  color: var(--inner-gold);
  font-size: 0.78rem;
  line-height: 1.1;
  text-decoration: none;
  white-space: normal;
}

body[data-page="/precios/"] .pricing-hub-card .card-link::after,
body[data-page="/precios/"] .pricing-route-card .card-link::after {
  content: "";
  width: 0.45rem;
  height: 0.45rem;
  border-top: 1px solid currentColor;
  border-right: 1px solid currentColor;
  transform: rotate(45deg);
  flex: 0 0 auto;
}

body[data-page="/precios/"] .pricing-compare-layout {
  grid-template-columns: minmax(260px, 0.64fr) minmax(0, 1.36fr);
  gap: clamp(1.4rem, 3vw, 3rem);
}

body[data-page="/precios/"] .pricing-compare-table {
  display: grid;
  gap: 0.42rem;
  padding: 0.46rem;
  overflow: visible;
  border-color: rgba(240, 206, 122, 0.24);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.015)),
    rgba(4, 7, 7, 0.78);
}

body[data-page="/precios/"] .pricing-compare-head,
body[data-page="/precios/"] .pricing-compare-row {
  border: 1px solid rgba(240, 206, 122, 0.12);
  border-radius: 8px;
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-compare-head {
  border-color: rgba(240, 206, 122, 0.18);
  background:
    linear-gradient(90deg, rgba(240, 206, 122, 0.12), rgba(255, 255, 255, 0.02));
}

body[data-page="/precios/"] .pricing-compare-row {
  background: rgba(2, 5, 5, 0.52);
}

body[data-page="/precios/"] .pricing-compare-head span,
body[data-page="/precios/"] .pricing-compare-row > strong,
body[data-page="/precios/"] .pricing-compare-row > span {
  padding: 1rem;
  border-bottom: 0;
}

body[data-page="/precios/"] .pricing-compare-row > strong {
  display: flex;
  gap: 0.66rem;
  align-items: center;
}

body[data-page="/precios/"] .pricing-compare-icon {
  width: 2rem;
  height: 2rem;
  flex: 0 0 auto;
}

body[data-page="/precios/"] .pricing-compare-row > span:last-child {
  background:
    linear-gradient(90deg, rgba(240, 206, 122, 0.1), rgba(240, 206, 122, 0.02));
}

body[data-page="/precios/"] .pricing-faq-heading {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 1rem;
}

body[data-page="/precios/"] .pricing-faq-heading .eyebrow,
body[data-page="/precios/"] .pricing-faq-heading h2,
body[data-page="/precios/"] .pricing-faq-heading .lead {
  grid-column: 2;
}

body[data-page="/precios/"] .pricing-heading-logo {
  grid-row: 1 / span 3;
  width: 4rem;
  height: 4rem;
  font-size: 1.35rem;
}

body[data-page="/precios/"] .pricing-faq-layout {
  max-width: 1120px;
  align-items: start;
}

body[data-page="/precios/"] .pricing-faq-logo {
  width: 3.2rem;
  height: 3.2rem;
  margin-bottom: 1rem;
  font-size: 0.78rem;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list details {
  border-color: rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.012)),
    rgba(5, 8, 8, 0.72);
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.18);
}

body[data-page="/precios/"] .pricing-faq-section .faq-list summary {
  padding: 1rem 1.08rem;
}

body[data-page="/precios/"] .pricing-final-cta {
  min-height: clamp(460px, 44vw, 620px);
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media {
  opacity: 0.62;
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media img {
  object-position: 42% center;
  filter: saturate(0.95) contrast(1.03);
}

body[data-page="/precios/"] .pricing-final-cta .split-section {
  grid-template-columns: minmax(0, 0.92fr) minmax(320px, 0.58fr);
  gap: clamp(1.2rem, 4vw, 4.4rem);
  align-items: end;
}

body[data-page="/precios/"] .pricing-final-copy {
  max-width: 680px;
}

body[data-page="/precios/"] .pricing-final-stamp {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 1rem;
  padding: 0.42rem 0.62rem;
  border: 1px solid rgba(240, 206, 122, 0.24);
  border-radius: 999px;
  background: rgba(5, 7, 7, 0.5);
  color: var(--inner-gold);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.08em;
}

body[data-page="/precios/"] .pricing-final-card {
  border-color: rgba(240, 206, 122, 0.24);
  background:
    linear-gradient(160deg, rgba(240, 206, 122, 0.13), rgba(255, 255, 255, 0.035)),
    rgba(5, 8, 8, 0.72);
  box-shadow:
    0 30px 90px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body[data-page="/precios/"] .pricing-final-card:hover {
  transform: none;
}

@media (max-width: 980px) {
  body[data-page="/precios/"] .pricing-command-head,
  body[data-page="/precios/"] .pricing-compare-layout,
  body[data-page="/precios/"] .pricing-faq-heading,
  body[data-page="/precios/"] .pricing-final-cta .split-section {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-compare-copy {
    position: static;
  }

  body[data-page="/precios/"] .pricing-faq-heading .eyebrow,
  body[data-page="/precios/"] .pricing-faq-heading h2,
  body[data-page="/precios/"] .pricing-faq-heading .lead {
    grid-column: auto;
  }

  body[data-page="/precios/"] .pricing-heading-logo {
    grid-row: auto;
  }
}

@media (max-width: 760px) {
  body[data-page="/precios/"] .pricing-section-heading h2 {
    max-width: 100%;
  }

  body[data-page="/precios/"] .pricing-command-list article,
  body[data-page="/precios/"] .pricing-rule-list article {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-compare-table {
    gap: 0.62rem;
  }

  body[data-page="/precios/"] .pricing-compare-row {
    display: grid;
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-compare-row > strong,
  body[data-page="/precios/"] .pricing-compare-row > span {
    padding: 0.42rem 0;
  }
}

/* V4.43: pricing polish, calmer hovers and stronger comparison board. */
body[data-page="/precios/"] .pricing-command-head {
  grid-template-columns: 1fr;
  gap: 0.28rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(240, 206, 122, 0.16);
}

body[data-page="/precios/"] .pricing-command-head h3 {
  max-width: 14ch;
}

body[data-page="/precios/"] .pricing-command-list article {
  grid-template-columns: 3rem minmax(0, 1fr);
  min-height: 84px;
  border-color: rgba(240, 206, 122, 0.18);
  background:
    linear-gradient(105deg, rgba(240, 206, 122, 0.09), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.012)),
    rgba(3, 6, 6, 0.66);
}

body[data-page="/precios/"] .pricing-command-mark {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 10px;
  font-size: 0.64rem;
  letter-spacing: 0;
  box-shadow:
    0 16px 34px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

body[data-page="/precios/"] .pricing-range-card .pricing-range-signal {
  display: block;
  width: 3.4rem;
  height: 1px;
  border: 0;
  border-radius: 0;
  background: linear-gradient(90deg, rgba(240, 206, 122, 0.72), transparent);
  box-shadow: none;
}

body[data-page="/precios/"] .pricing-range-card small {
  display: none;
}

body[data-page="/precios/"] .pricing-range-card .pricing-range-mark {
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

body[data-page="/precios/"] .pricing-hub-card .card-media,
body[data-page="/precios/"] .pricing-route-card .card-media {
  border-color: rgba(240, 206, 122, 0.16);
  transition: border-color 220ms ease, box-shadow 220ms ease, filter 220ms ease;
}

body[data-page="/precios/"] .pricing-hub-card .card-media img,
body[data-page="/precios/"] .pricing-route-card .card-media img {
  transform: none;
  transition: filter 260ms ease, opacity 260ms ease;
}

body[data-page="/precios/"] .pricing-hub-card:hover .card-media,
body[data-page="/precios/"] .pricing-route-card:hover .card-media {
  border-color: rgba(240, 206, 122, 0.35);
  box-shadow:
    0 0 0 1px rgba(240, 206, 122, 0.08),
    0 18px 54px rgba(0, 0, 0, 0.28);
}

body[data-page="/precios/"] .pricing-hub-card:hover .card-media img,
body[data-page="/precios/"] .pricing-route-card:hover .card-media img {
  transform: none;
  filter: brightness(0.92) saturate(1.08) contrast(1.05);
}

body[data-page="/precios/"] .pricing-hub-card .card-link,
body[data-page="/precios/"] .pricing-route-card .card-link {
  min-height: 40px;
  padding: 0.62rem 0.82rem;
  border-color: rgba(240, 206, 122, 0.32);
  background:
    linear-gradient(180deg, rgba(240, 206, 122, 0.18), rgba(240, 206, 122, 0.055)),
    rgba(5, 7, 7, 0.45);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 10px 26px rgba(0, 0, 0, 0.16);
  transition: border-color 180ms ease, background 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

body[data-page="/precios/"] .pricing-hub-card .card-link::before,
body[data-page="/precios/"] .pricing-route-card .card-link::before {
  content: "";
  width: 0.38rem;
  height: 0.38rem;
  border-radius: 999px;
  background: currentColor;
  box-shadow: 0 0 16px rgba(240, 206, 122, 0.34);
  flex: 0 0 auto;
}

body[data-page="/precios/"] .pricing-hub-card .card-link::after,
body[data-page="/precios/"] .pricing-route-card .card-link::after {
  content: none;
}

body[data-page="/precios/"] .pricing-hub-card .card-link:hover,
body[data-page="/precios/"] .pricing-route-card .card-link:hover {
  border-color: rgba(240, 206, 122, 0.54);
  background:
    linear-gradient(180deg, rgba(240, 206, 122, 0.26), rgba(240, 206, 122, 0.08)),
    rgba(5, 7, 7, 0.55);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    0 14px 34px rgba(0, 0, 0, 0.22);
}

body[data-page="/precios/"] .pricing-compare-section {
  background:
    radial-gradient(circle at 70% 18%, rgba(240, 206, 122, 0.11), transparent 22rem),
    radial-gradient(circle at 10% 78%, rgba(88, 104, 96, 0.16), transparent 24rem),
    linear-gradient(180deg, #080c0b 0%, #050707 100%);
}

body[data-page="/precios/"] .pricing-compare-layout {
  grid-template-columns: minmax(280px, 0.58fr) minmax(0, 1.42fr);
  align-items: stretch;
}

body[data-page="/precios/"] .pricing-compare-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

body[data-page="/precios/"] .pricing-compare-badge {
  display: grid;
  place-items: center;
  width: 4rem;
  height: 4rem;
  margin-bottom: 1.15rem;
  border: 1px solid rgba(240, 206, 122, 0.32);
  border-radius: 12px;
  background:
    linear-gradient(145deg, rgba(240, 206, 122, 0.18), rgba(255, 255, 255, 0.035)),
    rgba(4, 7, 7, 0.62);
  color: var(--inner-gold);
  font-size: 0.78rem;
  font-weight: 950;
  letter-spacing: 0.04em;
  box-shadow:
    0 20px 52px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body[data-page="/precios/"] .pricing-compare-proof {
  display: grid;
  gap: 0.62rem;
  margin-top: 1.25rem;
  max-width: 360px;
}

body[data-page="/precios/"] .pricing-compare-proof span {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.78rem 0.9rem;
  border: 1px solid rgba(240, 206, 122, 0.15);
  border-radius: 8px;
  background: rgba(5, 8, 8, 0.58);
  color: rgba(244, 239, 227, 0.72);
  font-size: 0.86rem;
}

body[data-page="/precios/"] .pricing-compare-proof strong {
  color: var(--inner-gold);
  font-size: 1.1rem;
}

body[data-page="/precios/"] .pricing-compare-board {
  position: relative;
  display: grid;
  gap: 0.72rem;
  padding: clamp(0.72rem, 1.3vw, 1rem);
  border: 1px solid rgba(240, 206, 122, 0.26);
  border-radius: 10px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.018)),
    rgba(4, 7, 7, 0.8);
  box-shadow:
    0 34px 98px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body[data-page="/precios/"] .pricing-compare-board::before {
  content: "";
  position: absolute;
  inset: 0.55rem;
  border: 1px solid rgba(240, 206, 122, 0.08);
  border-radius: 8px;
  pointer-events: none;
}

body[data-page="/precios/"] .pricing-compare-board-head {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
  min-height: 62px;
  padding: 0.86rem 1rem;
  border: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(240, 206, 122, 0.14), rgba(255, 255, 255, 0.02));
}

body[data-page="/precios/"] .pricing-compare-board-head span {
  color: var(--inner-gold);
  font-size: 0.76rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-page="/precios/"] .pricing-compare-board-head strong {
  color: rgba(244, 239, 227, 0.9);
  font-size: 0.92rem;
}

body[data-page="/precios/"] .pricing-compare-card {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(145px, 0.48fr) minmax(0, 1fr);
  gap: 0.78rem;
  padding: 0.72rem;
  border: 1px solid rgba(240, 206, 122, 0.13);
  border-radius: 8px;
  background:
    linear-gradient(100deg, rgba(240, 206, 122, 0.06), transparent 34%),
    rgba(2, 5, 5, 0.64);
}

body[data-page="/precios/"] .pricing-compare-card-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.68rem;
  align-items: center;
  min-width: 0;
}

body[data-page="/precios/"] .pricing-compare-card-head span {
  display: block;
  color: rgba(240, 206, 122, 0.72);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-page="/precios/"] .pricing-compare-card h3 {
  margin-top: 0.12rem;
  color: var(--inner-text);
  font-family: Inter, system-ui, sans-serif;
  font-size: 1rem;
  line-height: 1.18;
}

body[data-page="/precios/"] .pricing-compare-lanes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.54rem;
}

body[data-page="/precios/"] .pricing-compare-lane {
  min-height: 94px;
  padding: 0.78rem 0.86rem;
  border: 1px solid rgba(240, 206, 122, 0.1);
  border-radius: 7px;
  background: rgba(2, 4, 4, 0.58);
}

body[data-page="/precios/"] .pricing-compare-lane.is-clear {
  border-color: rgba(240, 206, 122, 0.24);
  background:
    linear-gradient(125deg, rgba(240, 206, 122, 0.11), rgba(255, 255, 255, 0.018)),
    rgba(8, 9, 6, 0.74);
}

body[data-page="/precios/"] .pricing-compare-lane small {
  display: block;
  margin-bottom: 0.42rem;
  color: var(--inner-gold);
  font-size: 0.68rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-page="/precios/"] .pricing-compare-lane p {
  margin: 0;
  color: rgba(244, 239, 227, 0.76);
  font-size: 0.9rem;
  line-height: 1.45;
}

body[data-page="/precios/"] .pricing-compare-lane.is-clear p {
  color: rgba(244, 239, 227, 0.9);
}

@media (max-width: 1100px) {
  body[data-page="/precios/"] .pricing-compare-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  body[data-page="/precios/"] .pricing-compare-layout {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-compare-copy {
    justify-content: start;
  }

  body[data-page="/precios/"] .pricing-compare-proof {
    max-width: none;
  }
}

@media (max-width: 760px) {
  body[data-page="/precios/"] .pricing-command-list article {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-compare-board-head,
  body[data-page="/precios/"] .pricing-compare-lanes {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-compare-board-head {
    display: grid;
  }
}

/* V4.44: open editorial close for pricing page. */
body[data-page="/precios/"] .pricing-final-cta {
  min-height: clamp(560px, 52vw, 720px);
  display: grid;
  align-items: center;
  padding-top: clamp(90px, 10vw, 150px);
  padding-bottom: clamp(72px, 8vw, 118px);
}

body[data-page="/precios/"] .pricing-final-cta::before {
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.92), rgba(5, 7, 6, 0.5) 48%, rgba(5, 7, 6, 0.86)),
    linear-gradient(180deg, rgba(5, 7, 6, 0.08), rgba(5, 7, 6, 0.88));
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media {
  opacity: 0.82;
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media img {
  object-position: 38% center;
  filter: saturate(0.98) contrast(1.04);
}

body[data-page="/precios/"] .pricing-final-shell {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.4rem, 3vw, 2.4rem);
  align-items: center;
  width: var(--secondary-shell);
  max-width: 1240px;
  margin-inline: auto;
}

body[data-page="/precios/"] .pricing-final-copy {
  max-width: 760px;
}

body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 9ch;
}

body[data-page="/precios/"] .pricing-final-copy .lead {
  max-width: 62ch;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.32);
}

body[data-page="/precios/"] .pricing-final-actions {
  margin-top: clamp(1.25rem, 2vw, 1.8rem);
}

body[data-page="/precios/"] .pricing-final-briefing {
  position: relative;
  display: grid;
  gap: 1rem;
  max-width: 980px;
  padding: clamp(1rem, 2vw, 1.35rem) 0 0;
  border-top: 1px solid rgba(240, 206, 122, 0.36);
  border-left: 0;
  background: transparent;
  backdrop-filter: none;
}

body[data-page="/precios/"] .pricing-final-briefing::before {
  content: "";
  position: absolute;
  left: -1px;
  top: -1px;
  width: 4.3rem;
  height: 1px;
  background: var(--inner-gold);
  box-shadow: 0 0 24px rgba(240, 206, 122, 0.34);
}

body[data-page="/precios/"] .pricing-final-briefing-head {
  display: grid;
  gap: 0.36rem;
}

body[data-page="/precios/"] .pricing-final-briefing-head span {
  color: var(--inner-gold);
  font-size: 0.74rem;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body[data-page="/precios/"] .pricing-final-briefing-head strong {
  max-width: 28ch;
  color: rgba(244, 239, 227, 0.92);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.42rem, 2.1vw, 2rem);
  font-weight: 600;
  line-height: 1.04;
}

body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.72rem;
  margin: 0;
}

body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list span {
  display: grid;
  gap: 0.48rem;
  min-height: 104px;
  padding: 0.9rem 0.85rem;
  border: 1px solid rgba(240, 206, 122, 0.15);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.012)),
    rgba(5, 8, 8, 0.34);
  color: rgba(244, 239, 227, 0.82);
  line-height: 1.36;
}

body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list small {
  color: var(--inner-gold);
  font-size: 0.7rem;
  font-weight: 950;
  letter-spacing: 0.1em;
}

body[data-page="/precios/"] .pricing-final-card {
  display: none;
}

@media (max-width: 980px) {
  body[data-page="/precios/"] .pricing-final-shell {
    grid-template-columns: 1fr;
    align-items: start;
  }

  body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  body[data-page="/precios/"] .pricing-final-cta {
    min-height: 0;
    padding-top: 5rem;
  }

  body[data-page="/precios/"] .pricing-final-actions {
    align-items: stretch;
  }
}

/* V4.41: mobile footer guard for narrow secondary pages. */
@media (max-width: 540px) {
  body:not([data-page="/"]) .site-footer {
    overflow: hidden;
  }

  body:not([data-page="/"]) .site-footer-main {
    grid-template-columns: 1fr !important;
    gap: 1.55rem !important;
  }

  body:not([data-page="/"]) .site-footer-group,
  body:not([data-page="/"]) .site-footer-contact {
    min-width: 0;
    grid-column: auto !important;
  }

  body:not([data-page="/"]) .site-footer-group a,
  body:not([data-page="/"]) .site-footer-group p,
  body:not([data-page="/"]) .site-footer-contact p {
    overflow-wrap: anywhere;
  }

  body:not([data-page="/"]) .site-footer-contact-button {
    width: 100% !important;
  }
}

/* V4.42: contacto con consola menos vertical y briefing en mesa horizontal. */
body[data-page="/contacto/"] .contact-command-panel {
  width: min(100%, 760px);
  display: grid;
  grid-template-columns: minmax(220px, 0.75fr) minmax(0, 1fr);
  gap: clamp(0.9rem, 1.55vw, 1.25rem);
  padding: clamp(1.05rem, 1.8vw, 1.45rem);
}

body[data-page="/contacto/"] .contact-command-panel .command-panel-top,
body[data-page="/contacto/"] .contact-command-panel .contact-panel-chips,
body[data-page="/contacto/"] .contact-command-panel .contact-direct-row {
  grid-column: 1 / -1;
}

body[data-page="/contacto/"] .contact-command-panel h3 {
  max-width: 13.5ch;
  margin: 0.35rem 0 0;
  font-size: clamp(2.1rem, 2.8vw, 3.35rem);
  align-self: center;
}

body[data-page="/contacto/"] .contact-command-grid {
  grid-template-columns: 1fr;
  gap: 0.55rem;
  margin-top: 0.2rem;
}

body[data-page="/contacto/"] .contact-command-grid article {
  min-height: 78px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: start;
  gap: 0.72rem;
  padding: 0.72rem 0.78rem;
}

body[data-page="/contacto/"] .contact-command-grid span {
  min-width: 30px;
  min-height: 30px;
  grid-row: 1 / span 2;
}

body[data-page="/contacto/"] .contact-command-grid strong {
  margin-top: 0;
  font-family: var(--font-body);
  font-size: 0.86rem;
  font-weight: 900;
  letter-spacing: 0.02em;
}

body[data-page="/contacto/"] .contact-command-grid small {
  grid-column: 2;
  margin-top: 0;
  font-size: 0.75rem;
  line-height: 1.36;
}

body[data-page="/contacto/"] .contact-panel-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  padding-top: 0.2rem;
}

body[data-page="/contacto/"] .contact-panel-chips span {
  padding: 0.38rem 0.68rem;
  border: 1px solid rgba(240, 206, 122, 0.22);
  border-radius: 999px;
  background: rgba(240, 206, 122, 0.055);
  color: rgba(246, 239, 228, 0.78);
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-direct-row {
  margin-top: 0;
}

body[data-page="/contacto/"] .contact-grid {
  grid-template-columns: 1fr;
  width: min(100%, 1280px);
}

body[data-page="/contacto/"] .contact-form-card {
  display: grid;
  grid-template-columns: minmax(290px, 0.48fr) minmax(0, 1fr);
  gap: clamp(1.15rem, 3vw, 2.65rem);
  align-items: start;
}

body[data-page="/contacto/"] .contact-form-heading {
  position: relative;
}

body[data-page="/contacto/"] .contact-form-card h2 {
  max-width: 8.4ch;
  margin-bottom: 0;
  font-size: clamp(3.1rem, 4.45vw, 4.8rem);
}

body[data-page="/contacto/"] .contact-form-proof {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.5rem;
  max-width: 310px;
  margin-top: clamp(1.25rem, 2.2vw, 1.8rem);
}

body[data-page="/contacto/"] .contact-form-proof span {
  padding: 0.64rem 0.78rem;
  border: 1px solid rgba(240, 206, 122, 0.15);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.024);
  color: rgba(246, 239, 228, 0.72);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-form-card .site-form {
  display: grid;
  gap: 0.82rem;
}

body[data-page="/contacto/"] .contact-form-fields {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body[data-page="/contacto/"] .site-form textarea {
  min-height: 120px;
}

body[data-page="/contacto/"] .contact-form-actions {
  display: grid;
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
  gap: 1rem;
  align-items: center;
}

body[data-page="/contacto/"] .contact-form-actions .button-primary {
  margin-top: 0;
}

body[data-page="/contacto/"] .contact-form-actions .form-note {
  max-width: none;
  margin-top: 0;
}

body[data-page="/contacto/"] .contact-side-stack {
  grid-template-columns: minmax(300px, 0.92fr) minmax(300px, 0.8fr) minmax(320px, 0.84fr);
  gap: clamp(0.85rem, 1.6vw, 1.15rem);
  align-items: stretch;
}

body[data-page="/contacto/"] .contact-visual-card {
  min-height: 310px;
}

body[data-page="/contacto/"] .contact-check-panel,
body[data-page="/contacto/"] .contact-channel-grid {
  min-height: 310px;
}

body[data-page="/contacto/"] .contact-channel-grid {
  grid-template-columns: 1fr;
}

body[data-page="/contacto/"] .contact-channel {
  min-height: 0;
}

body[data-page="/contacto/"] .contact-side-stack > .button-secondary {
  grid-column: 1 / -1;
  width: min(100%, 320px);
  justify-self: end;
}

@media (max-width: 1180px) {
  body[data-page="/contacto/"] .contact-command-panel,
  body[data-page="/contacto/"] .contact-form-card,
  body[data-page="/contacto/"] .contact-side-stack {
    grid-template-columns: 1fr;
  }

  body[data-page="/contacto/"] .contact-command-grid article {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  body[data-page="/contacto/"] .contact-side-stack > .button-secondary {
    justify-self: stretch;
    width: 100%;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] .contact-command-grid article {
    grid-template-columns: 34px 1fr;
    align-items: start;
  }

  body[data-page="/contacto/"] .contact-command-grid small {
    grid-column: 2;
  }

  body[data-page="/contacto/"] .contact-form-fields,
  body[data-page="/contacto/"] .contact-form-actions {
    grid-template-columns: 1fr;
  }

  body[data-page="/contacto/"] .contact-form-proof {
    max-width: none;
  }
}

/* V4.43: move specialty into the footer middle row and remove method line. */
body:not([data-page="/"]) .site-footer-method {
  display: none !important;
}

body:not([data-page="/"]) .site-footer-main > .site-footer-capabilities {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: nowrap;
  align-self: end;
  align-items: center;
  width: auto;
  min-height: 0;
  margin: 0;
  padding: 0.08rem 0 0.08rem;
  border-top: 0;
  border-bottom: 0;
  background: transparent;
  gap: 0.42rem;
  white-space: nowrap;
  transform: translateY(-0.28rem);
}

body:not([data-page="/"]) .site-footer-main > .site-footer-capabilities::before {
  content: "Especialidad \00B7";
  width: auto;
  height: auto;
  margin: 0 0.5rem 0 0;
  border: 0;
  color: rgba(240, 198, 107, 0.7);
  font-size: clamp(0.64rem, 0.7vw, 0.72rem);
  font-weight: 760;
  letter-spacing: 0.085em;
  line-height: 1.35;
  text-transform: uppercase;
  transform: none;
}

body:not([data-page="/"]) .site-footer-main > .site-footer-capabilities::after {
  content: none;
}

body:not([data-page="/"]) .site-footer-main > .site-footer-capabilities span {
  color: rgba(246, 239, 228, 0.42);
  font-size: clamp(0.64rem, 0.7vw, 0.72rem);
  font-weight: 760;
  letter-spacing: 0.085em;
  line-height: 1.35;
  text-transform: uppercase;
}

body:not([data-page="/"]) .site-footer-main > .site-footer-capabilities span + span::before {
  content: "\00B7";
  margin: 0 0.42rem 0 0;
  color: rgba(240, 198, 107, 0.3);
}

body:not([data-page="/"]) .site-footer-main {
  padding-bottom: clamp(1.35rem, 2.5vw, 2rem);
}

body:not([data-page="/"]) .site-footer-bottom {
  margin-top: 0.9rem;
}

@media (min-width: 1181px) {
  body:not([data-page="/"]) .site-footer-main > .site-footer-capabilities {
    grid-column: 1 / 5;
    grid-row: 2;
    justify-self: start;
    width: max-content;
    max-width: 100%;
  }

  body:not([data-page="/"]) .site-footer-contact {
    grid-column: 5;
    grid-row: 1 / span 2;
  }
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .site-footer-main > .site-footer-capabilities {
    grid-column: 1 / -1;
    flex-wrap: wrap;
    white-space: normal;
  }
}

/* V4.44: softer specialty label and restrained footer CTA hover. */
body:not([data-page="/"]) .site-footer-main > .site-footer-capabilities::before {
  color: rgba(240, 198, 107, 0.54);
}

body:not([data-page="/"]) .site-footer-contact-button:hover,
body:not([data-page="/"]) .site-footer-contact-button:focus-visible {
  color: #f0c66b !important;
  border-color: rgba(240, 198, 107, 0.76);
  background:
    linear-gradient(90deg, rgba(240, 198, 107, 0.08), rgba(255, 255, 255, 0.018));
  box-shadow:
    0 0 0 1px rgba(240, 198, 107, 0.08),
    0 16px 34px rgba(0, 0, 0, 0.18);
  transform: translateY(-1px);
}

body:not([data-page="/"]) .site-footer-contact-button:hover span,
body:not([data-page="/"]) .site-footer-contact-button:focus-visible span {
  color: currentColor;
}

/* V4.45 footer glyph normalization: avoid mojibake in generated separators. */
body:not([data-page="/"]) .site-footer-capabilities::before,
body:not([data-page="/"]) .site-footer-main > .site-footer-capabilities::before {
  content: "Especialidad \00B7";
}

body:not([data-page="/"]) .site-footer-capabilities span + span::before,
body:not([data-page="/"]) .site-footer-main > .site-footer-capabilities span + span::before {
  content: "\00B7";
}

/* Portfolio briefing refinement. */
body[data-page="/portfolio/"] .site-header {
  top: 0;
  width: 100%;
  max-width: none;
  border-radius: 0;
}

body[data-page="/portfolio/"] .button-nav::after {
  content: "\2192";
}

body[data-page="/portfolio/"] .portfolio-hero {
  grid-template-columns: minmax(300px, 0.52fr) minmax(0, 1.48fr);
  min-height: clamp(560px, 72svh, 680px);
  padding: 78px 6px 6px;
}

body[data-page="/portfolio/"] .portfolio-hero-copy {
  position: relative;
  z-index: 2;
  min-height: auto;
  padding: clamp(28px, 4vw, 54px);
  border-color: rgba(214, 179, 90, 0.2);
  background:
    radial-gradient(circle at 0% 14%, rgba(214, 179, 90, 0.12), transparent 20rem),
    linear-gradient(180deg, rgba(5, 7, 6, 0.5), rgba(5, 7, 6, 0.92));
}

body[data-page="/portfolio/"] .portfolio-hero-copy .eyebrow::before {
  content: "";
  display: inline-block;
  width: 42px;
  height: 1px;
  margin-right: 0.72rem;
  vertical-align: middle;
  background: rgba(214, 179, 90, 0.74);
}

body[data-page="/portfolio/"] .portfolio-hero h1 {
  max-width: 8ch;
  color: #fff8ea;
  font-size: clamp(4.1rem, 7.4vw, 8.4rem);
  line-height: 0.86;
}

body[data-page="/portfolio/"] .portfolio-hero .lead {
  max-width: 31rem;
  color: rgba(246, 239, 228, 0.8);
}

.portfolio-hero-media {
  position: relative;
  min-height: clamp(500px, 62svh, 610px);
  margin: 0;
  overflow: hidden;
  border-radius: 4px;
  background: #0b0f0e;
}

.portfolio-hero-media::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.36), transparent 42%),
    linear-gradient(180deg, rgba(5, 7, 6, 0.18), rgba(5, 7, 6, 0.28));
  pointer-events: none;
}

.portfolio-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.96) contrast(1.04);
}

body[data-page="/portfolio/"] .portfolio-toolbar {
  top: 72px;
  padding-block: 12px;
}

body[data-page="/portfolio/"] .portfolio-toolbar h2 {
  font-size: clamp(1.1rem, 1.8vw, 1.4rem);
}

body[data-page="/portfolio/"] .portfolio-filter-group {
  gap: 0.38rem;
}

body[data-page="/portfolio/"] .portfolio-filter-group button {
  min-height: 34px;
  padding: 0 0.78rem;
  border-color: rgba(214, 179, 90, 0.22);
  background: rgba(3, 4, 4, 0.28);
  color: rgba(246, 239, 228, 0.72);
  font-size: 0.74rem;
}

body[data-page="/portfolio/"] .portfolio-filter-group button.is-active {
  background: rgba(214, 179, 90, 0.18);
  color: #f3c76a;
}

body[data-page="/portfolio/"] .portfolio-grid {
  grid-auto-rows: minmax(112px, 10.2vw);
}

body[data-page="/portfolio/"] .portfolio-tile span {
  display: flex;
  flex-direction: column;
  gap: 0.28rem;
  left: 14px;
  bottom: 13px;
}

body[data-page="/portfolio/"] .portfolio-tile span strong,
body[data-page="/portfolio/"] .portfolio-tile span em {
  display: block;
  font-style: normal;
  letter-spacing: 0;
}

body[data-page="/portfolio/"] .portfolio-tile span em {
  color: rgba(255, 249, 236, 0.76);
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: none;
}

.portfolio-note-tile {
  display: flex;
  flex-direction: column;
  justify-content: center;
  grid-column: span 4;
  grid-row: span 2;
  min-height: 100%;
  padding: clamp(1.1rem, 2vw, 1.8rem);
  border: 1px solid rgba(214, 179, 90, 0.22);
  border-radius: 4px;
  background:
    radial-gradient(circle at 12% 12%, rgba(214, 179, 90, 0.13), transparent 18rem),
    linear-gradient(135deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012));
}

.portfolio-note-tile.is-wide {
  grid-column: span 6;
}

.portfolio-note-tile p {
  max-width: 19ch;
  margin: 0;
  color: #fff8ea;
  font-family: var(--font-display, "Playfair Display", serif);
  font-size: clamp(1.65rem, 2.3vw, 2.4rem);
  line-height: 1.02;
  letter-spacing: 0;
}

.portfolio-note-tile span {
  max-width: 34ch;
  margin-top: 0.75rem;
  color: rgba(246, 239, 228, 0.62);
  font-size: 0.92rem;
  line-height: 1.5;
}

body[data-page="/portfolio/"] .portfolio-cta {
  align-items: center;
  margin-top: 6px;
  padding: clamp(1.45rem, 3.5vw, 2.5rem);
}

body[data-page="/portfolio/"] .portfolio-cta h2 {
  max-width: 24ch;
  font-size: clamp(2rem, 3.2vw, 3rem);
}

body[data-page="/portfolio/"] .portfolio-cta p:not(.eyebrow) {
  max-width: 38rem;
  margin: 1rem 0 0;
  color: rgba(246, 239, 228, 0.66);
  line-height: 1.6;
}

.portfolio-internal-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 6px;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(214, 179, 90, 0.14);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.018);
}

.portfolio-internal-links a {
  color: rgba(246, 239, 228, 0.62);
  font-size: 0.78rem;
  font-weight: 750;
}

.portfolio-internal-links a:hover,
.portfolio-internal-links a:focus-visible {
  color: #f3c76a;
}

.portfolio-lightbox-counter {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 2;
  min-height: 42px;
  padding: 0.78rem 0.9rem 0;
  border: 1px solid rgba(214, 179, 90, 0.28);
  border-radius: 999px;
  background: rgba(5, 7, 6, 0.74);
  color: rgba(255, 249, 236, 0.82);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0;
  backdrop-filter: blur(14px);
}

@media (max-width: 1180px) {
  body[data-page="/portfolio/"] .portfolio-hero {
    grid-template-columns: 1fr;
  }

  body[data-page="/portfolio/"] .portfolio-hero h1 {
    max-width: 11ch;
  }

  .portfolio-hero-media {
    min-height: 430px;
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-hero {
    padding-top: 84px;
  }

  body[data-page="/portfolio/"] .portfolio-hero h1 {
    max-width: 11ch;
    font-size: clamp(3rem, 15vw, 4.6rem);
  }

  .portfolio-hero-media {
    min-height: 330px;
  }

  body[data-page="/portfolio/"] .portfolio-toolbar {
    overflow: hidden;
  }

  body[data-page="/portfolio/"] .portfolio-filter-group {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 0.15rem;
    scrollbar-width: thin;
  }

  body[data-page="/portfolio/"] .portfolio-filter-group button {
    flex: 0 0 auto;
  }

  .portfolio-note-tile,
  .portfolio-note-tile.is-wide {
    grid-column: span 2;
    grid-row: span 2;
  }

  .portfolio-note-tile p {
    max-width: 16ch;
  }
}

/* V4.46: horizontal premium system for the three secondary verticals. */
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) {
  --vertical-wide-shell: min(100% - clamp(2rem, 7vw, 8rem), 1360px);
  --vertical-compact-border: rgba(240, 206, 122, 0.14);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-frame {
  padding-top: clamp(3.1rem, 4.7vw, 5rem);
  padding-bottom: clamp(3.1rem, 4.7vw, 5rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-heading,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-focus-copy,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-copy {
  text-align: left;
  align-items: start;
  justify-items: start;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-heading h2,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-focus-copy h2,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-process-shell h2,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-copy h2,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-shell h2 {
  max-width: 21ch !important;
  font-size: clamp(2.65rem, 3.55vw, 4.35rem) !important;
  line-height: 0.96;
  text-align: left;
  letter-spacing: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-heading .lead,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-focus-copy .lead,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-process-shell .lead,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-copy .lead,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-copy .lead {
  max-width: 66ch;
  font-size: clamp(0.95rem, 1vw, 1.05rem);
  line-height: 1.6;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-command-panel {
  max-width: min(100%, 720px);
  padding: clamp(1.1rem, 1.9vw, 1.55rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-command-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(0.9rem, 1.6vw, 1.3rem);
  align-items: start;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-command-copy h3 {
  max-width: 19ch;
  font-size: clamp(1.72rem, 2vw, 2.45rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-command-modules {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.65rem !important;
  padding-top: 0.9rem !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-command-module {
  display: block !important;
  min-height: 0;
  padding: 0.78rem !important;
  border: 1px solid var(--vertical-compact-border) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.026) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-command-module small {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-logo-rail {
  justify-content: flex-start;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-logo-rail span {
  min-height: 32px;
  padding: 0.42rem 0.72rem;
  border-radius: 999px;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-focus-shell,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-process-shell {
  grid-template-columns: minmax(340px, 0.7fr) minmax(520px, 1fr) !important;
  gap: clamp(1.5rem, 3.2vw, 3.6rem);
  align-items: center;
  width: var(--vertical-wide-shell);
  max-width: 1360px;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-signal-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.62rem;
  margin-top: 1rem !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-signal-card {
  display: grid;
  grid-template-columns: 2.2rem minmax(0, 1fr);
  grid-template-rows: auto auto;
  min-height: 0;
  padding: 0.78rem;
  gap: 0.16rem 0.7rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-signal-code {
  grid-row: 1 / span 2;
  align-self: start;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-signal-card h3,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-signal-card p {
  margin: 0;
  min-height: 0 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-signal-card p,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-journey-step small {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-journey-strip {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.62rem;
  margin-top: 0.72rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-journey-step {
  min-height: 0;
  padding: 0.78rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-showreel-screen {
  min-height: 0 !important;
  aspect-ratio: 16 / 8.2 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-showreel-rail {
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 0.38rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-showreel-caption {
  max-width: min(74%, 580px);
  padding: 0.75rem 0.85rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-section .band-shell,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-case-section .band-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(300px, 0.42fr);
  width: var(--vertical-wide-shell);
  max-width: 1360px;
  gap: clamp(1rem, 2.4vw, 2.6rem);
  align-items: end;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .band-aside {
  max-width: none;
  text-align: left;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-showcase {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.28fr) !important;
  width: var(--vertical-wide-shell);
  max-width: 1360px;
  gap: 0.75rem;
  margin-top: clamp(1.15rem, 2vw, 1.7rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-media img {
  aspect-ratio: 16 / 6.6;
  object-fit: cover;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-stack {
  align-content: stretch;
  min-height: 0;
  padding: 0.85rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-thumbs {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.42rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  width: var(--vertical-wide-shell);
  max-width: 1360px;
  gap: 0.64rem !important;
  margin-top: 1rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card.is-featured,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card:nth-child(2),
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card:nth-child(3) {
  display: flex;
  flex-direction: column;
  min-height: 186px !important;
  padding: 0.88rem !important;
  border-color: var(--vertical-compact-border);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-icon,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card::after {
  display: none !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-code {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  width: auto;
  min-height: 28px;
  padding: 0.26rem 0.56rem;
  border: 1px solid rgba(240, 206, 122, 0.24);
  border-radius: 999px;
  background: rgba(240, 198, 107, 0.08);
  color: #f0c66b;
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card h3 {
  margin-top: 0.62rem;
  font-size: clamp(1.02rem, 1.12vw, 1.22rem);
  line-height: 1.06;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card p {
  display: -webkit-box;
  min-height: 0 !important;
  margin-top: 0.42rem;
  overflow: hidden;
  font-size: 0.82rem;
  line-height: 1.42;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card a,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 34px;
  margin-top: auto;
  padding: 0.52rem 0.78rem;
  border: 1px solid rgba(240, 206, 122, 0.3);
  border-radius: 999px;
  background: rgba(240, 198, 107, 0.08);
  color: #f0c66b;
  font-size: 0.72rem;
  font-weight: 900;
  text-decoration: none;
  transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card a::after,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-link::after {
  content: "->";
  margin-left: 0.45rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card a:hover,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-link:hover {
  border-color: rgba(240, 206, 122, 0.62);
  background: rgba(240, 198, 107, 0.14);
  transform: translateY(-1px);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-package-grid,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid {
  width: var(--vertical-wide-shell) !important;
  max-width: 1360px;
  gap: 0.72rem !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid.items-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid .card,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid .card:first-child,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid .card:nth-child(2),
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid .card:nth-child(3),
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid .card:nth-child(4) {
  grid-column: auto !important;
  min-height: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid .card-media,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid .card:first-child .card-media,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid .card:not(:first-child) .card-media,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid .card-media,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-package-grid .card-media {
  aspect-ratio: 16 / 7.8 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid .card h3,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid .card h3,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-package-grid .card h3 {
  min-height: 0 !important;
  font-size: clamp(1.08rem, 1.3vw, 1.34rem);
  line-height: 1.08;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid .card p:not(.card-kicker),
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid .card p:not(.card-kicker),
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-package-grid .card p:not(.card-kicker) {
  display: -webkit-box !important;
  min-height: 0 !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-package-grid .package-card {
  min-height: 0 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-package-grid .package-card::before {
  width: 36px;
  height: 36px;
  font-size: 0.78rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-process-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.7rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-process-step {
  min-height: 0;
  padding: 0.86rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-process-step span,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-card span {
  width: 36px;
  height: 36px;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-board {
  grid-template-columns: minmax(320px, 0.58fr) minmax(0, 1fr) !important;
  width: var(--vertical-wide-shell);
  max-width: 1220px;
  gap: clamp(1rem, 2.8vw, 3rem);
  padding: clamp(1rem, 2vw, 1.5rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.7rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-card {
  min-height: 148px !important;
  padding: 0.86rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-card::after {
  display: none;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-faq-shell {
  grid-template-columns: minmax(320px, 0.42fr) minmax(0, 0.8fr);
  width: var(--vertical-wide-shell);
  max-width: 1160px;
  gap: clamp(1.2rem, 3vw, 3.2rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-section {
  min-height: clamp(430px, 34vw, 560px) !important;
  padding-top: clamp(2.4rem, 4vw, 4rem);
  padding-bottom: clamp(2.4rem, 4vw, 4rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-shell {
  grid-template-columns: minmax(0, 0.78fr) minmax(300px, 0.36fr) !important;
  width: var(--vertical-wide-shell);
  max-width: 1220px;
  align-items: center;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-card {
  min-height: 0;
  padding: clamp(1rem, 2vw, 1.45rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-card h3 {
  max-width: 15ch;
  font-size: clamp(1.55rem, 2.3vw, 2.45rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-actions {
  justify-content: flex-start;
}

@media (max-width: 1220px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid.items-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 980px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-focus-shell,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-process-shell,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-section .band-shell,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-case-section .band-shell,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-showcase,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-board,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-faq-shell,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-shell {
    grid-template-columns: 1fr !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-signal-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-process-list,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-actions {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-heading h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-focus-copy h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-process-shell h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-decision-copy h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-shell h2 {
    max-width: 100% !important;
    font-size: clamp(2.35rem, 11vw, 3.4rem) !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-command-body,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-command-modules,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .premium-case-grid.items-4,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-package-grid {
    grid-template-columns: 1fr !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-showreel-rail {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* V4.47: reduce vertical travel and keep every module left-led. */
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-frame {
  padding-top: clamp(2.45rem, 3.9vw, 4.15rem);
  padding-bottom: clamp(2.45rem, 3.9vw, 4.15rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-tech-rail {
  display: none;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-command-body {
  grid-template-columns: 1fr;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-showreel-screen {
  aspect-ratio: 16 / 7.5 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-section .band-shell,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-case-section .band-shell {
  margin-bottom: clamp(0.9rem, 1.5vw, 1.2rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-showcase {
  margin-top: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-media img {
  aspect-ratio: 16 / 5.35;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-stack .vertical-logo-rail {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.42rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-stack .vertical-logo-rail span {
  width: 100%;
  justify-content: center;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card.is-featured,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card:nth-child(2),
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card:nth-child(3) {
  min-height: 164px !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-action-card p {
  -webkit-line-clamp: 2;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-package-section .section-heading {
  display: block !important;
  width: var(--vertical-wide-shell);
  max-width: 1360px;
  margin-inline: auto;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-package-section .section-heading::after {
  display: none !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-package-grid {
  margin-top: clamp(1rem, 1.6vw, 1.4rem) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid .card {
  min-height: 0 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid .card-media {
  aspect-ratio: 16 / 8.8 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid .card h3 {
  display: -webkit-box;
  min-height: 2.18em !important;
  overflow: hidden;
  font-size: clamp(0.9rem, 0.94vw, 1.02rem);
  line-height: 1.04;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid .card p:not(.card-kicker) {
  -webkit-line-clamp: 1 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid .card-kicker {
  min-height: 1.2em;
  font-size: 0.68rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid .card-link {
  min-height: 32px;
  padding: 0.46rem 0.66rem;
  font-size: 0.66rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-copy h2,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-final-shell h2 {
  max-width: 18ch !important;
}

@media (max-width: 1220px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-stack .vertical-logo-rail,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .related-premium-grid {
    grid-template-columns: 1fr !important;
  }
}

/* Portfolio visual: dense editorial gallery for render work. */
body[data-page="/portfolio/"] {
  background:
    radial-gradient(circle at 18% 6%, rgba(214, 179, 90, 0.16), transparent 28rem),
    radial-gradient(circle at 88% 18%, rgba(89, 108, 106, 0.24), transparent 34rem),
    linear-gradient(180deg, #050706 0%, #080b0a 52%, #050706 100%);
  color: #f6efe4;
}

body[data-page="/portfolio/"] .breadcrumbs {
  display: none;
}

.portfolio-page {
  isolation: isolate;
  width: 100%;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.015), transparent 18rem),
    #050706;
}

.portfolio-page *,
.portfolio-page *::before,
.portfolio-page *::after {
  box-sizing: border-box;
}

.portfolio-hero {
  display: grid;
  grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
  gap: 6px;
  min-height: 820px;
  padding: 104px 6px 6px;
}

.portfolio-hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 620px;
  padding: 42px;
  border: 1px solid rgba(214, 179, 90, 0.18);
  background:
    linear-gradient(180deg, rgba(5, 7, 6, 0.34), rgba(5, 7, 6, 0.88)),
    radial-gradient(circle at top left, rgba(214, 179, 90, 0.14), transparent 24rem);
}

.portfolio-hero-copy .eyebrow,
.portfolio-toolbar .eyebrow,
.portfolio-cta .eyebrow {
  margin: 0 0 0.8rem;
  color: #d6b35a;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.portfolio-hero h1 {
  max-width: 12ch;
  margin: 0;
  color: #fff9ec;
  font-family: var(--font-display, "Playfair Display", serif);
  font-size: 4.65rem;
  line-height: 0.94;
  letter-spacing: 0;
}

.portfolio-hero .lead {
  max-width: 42rem;
  margin: 1.35rem 0 0;
  color: rgba(246, 239, 228, 0.72);
  font-size: 1.08rem;
  line-height: 1.65;
}

.portfolio-hero-actions,
.portfolio-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
  margin-top: 2rem;
}

.portfolio-hero-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-template-rows: repeat(6, minmax(94px, 1fr));
  gap: 6px;
  min-height: 720px;
}

.portfolio-hero-tile,
.portfolio-tile {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 4px;
  background: #0b0f0e;
  color: inherit;
  cursor: zoom-in;
}

.portfolio-hero-tile img,
.portfolio-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform 700ms cubic-bezier(0.16, 1, 0.3, 1), filter 260ms ease, opacity 260ms ease;
}

.portfolio-hero-tile::after,
.portfolio-tile::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 58%, rgba(0, 0, 0, 0.46));
  opacity: 0;
  transition: opacity 240ms ease;
}

.portfolio-hero-tile span,
.portfolio-tile span {
  position: absolute;
  left: 10px;
  bottom: 9px;
  z-index: 2;
  color: rgba(255, 249, 236, 0.86);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 220ms ease, transform 220ms ease;
}

.portfolio-hero-tile:hover img,
.portfolio-hero-tile:focus-visible img,
.portfolio-tile:hover img,
.portfolio-tile:focus-visible img {
  filter: saturate(1.08) contrast(1.04);
  transform: scale(1.045);
}

.portfolio-hero-tile:hover::after,
.portfolio-hero-tile:focus-visible::after,
.portfolio-hero-tile:hover span,
.portfolio-hero-tile:focus-visible span,
.portfolio-tile:hover::after,
.portfolio-tile:focus-visible::after,
.portfolio-tile:hover span,
.portfolio-tile:focus-visible span {
  opacity: 1;
  transform: translateY(0);
}

.portfolio-hero-tile:nth-child(1) {
  grid-column: 1 / span 6;
  grid-row: 1 / span 3;
}

.portfolio-hero-tile:nth-child(2) {
  grid-column: 7 / span 3;
  grid-row: 1 / span 2;
}

.portfolio-hero-tile:nth-child(3) {
  grid-column: 10 / span 3;
  grid-row: 1 / span 4;
}

.portfolio-hero-tile:nth-child(4) {
  grid-column: 7 / span 3;
  grid-row: 3 / span 2;
}

.portfolio-hero-tile:nth-child(5) {
  grid-column: 1 / span 3;
  grid-row: 4 / span 3;
}

.portfolio-hero-tile:nth-child(6) {
  grid-column: 4 / span 5;
  grid-row: 4 / span 3;
}

.portfolio-hero-tile:nth-child(7) {
  grid-column: 9 / span 2;
  grid-row: 5 / span 2;
}

.portfolio-hero-tile:nth-child(8) {
  grid-column: 11 / span 2;
  grid-row: 5 / span 2;
}

.portfolio-hero-tile:nth-child(n + 9) {
  display: none;
}

.portfolio-toolbar {
  position: sticky;
  top: 88px;
  z-index: 12;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: 0;
  padding: 18px clamp(18px, 4vw, 54px);
  border-top: 1px solid rgba(214, 179, 90, 0.12);
  border-bottom: 1px solid rgba(214, 179, 90, 0.14);
  background: rgba(5, 7, 6, 0.86);
  backdrop-filter: blur(18px);
}

.portfolio-toolbar h2 {
  margin: 0;
  color: #fff9ec;
  font-size: 1.55rem;
  line-height: 1.1;
  letter-spacing: 0;
}

.portfolio-filter-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.45rem;
}

.portfolio-filter-group button {
  min-height: 40px;
  padding: 0 0.9rem;
  border: 1px solid rgba(214, 179, 90, 0.22);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.035);
  color: rgba(246, 239, 228, 0.78);
  font-size: 0.82rem;
  font-weight: 760;
  letter-spacing: 0;
  cursor: pointer;
}

.portfolio-filter-group button span {
  margin-left: 0.4rem;
  color: rgba(214, 179, 90, 0.72);
}

.portfolio-filter-group button:hover,
.portfolio-filter-group button:focus-visible,
.portfolio-filter-group button.is-active {
  border-color: rgba(214, 179, 90, 0.7);
  background: rgba(214, 179, 90, 0.14);
  color: #fff9ec;
}

.portfolio-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-flow: dense;
  grid-auto-rows: 132px;
  gap: 6px;
  padding: 6px;
}

.portfolio-tile {
  grid-column: span 3;
  grid-row: span 2;
  aspect-ratio: auto;
}

.portfolio-tile.is-medium {
  grid-column: span 4;
  grid-row: span 2;
}

.portfolio-tile.is-wide {
  grid-column: span 6;
  grid-row: span 2;
}

.portfolio-tile.is-large {
  grid-column: span 6;
  grid-row: span 4;
}

.portfolio-tile.is-tall {
  grid-column: span 3;
  grid-row: span 4;
}

.portfolio-tile.is-square {
  grid-column: span 3;
  grid-row: span 3;
}

.portfolio-tile.is-hidden,
.portfolio-hero-tile.is-hidden {
  display: none;
}

.portfolio-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 2rem;
  margin: 6px;
  padding: 54px;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-radius: 4px;
  background:
    radial-gradient(circle at 8% 10%, rgba(214, 179, 90, 0.18), transparent 28rem),
    linear-gradient(135deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.015));
}

.portfolio-cta h2 {
  max-width: 22ch;
  margin: 0;
  color: #fff9ec;
  font-family: var(--font-display, "Playfair Display", serif);
  font-size: 3.2rem;
  line-height: 0.98;
  letter-spacing: 0;
}

.portfolio-lightbox {
  width: min(94vw, 1360px);
  height: min(92svh, 900px);
  max-width: none;
  max-height: none;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(214, 179, 90, 0.28);
  border-radius: 8px;
  background: #050706;
  color: #fff9ec;
}

.portfolio-lightbox::backdrop {
  background: rgba(0, 0, 0, 0.78);
  backdrop-filter: blur(10px);
}

.portfolio-lightbox figure {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  width: 100%;
  height: 100%;
  margin: 0;
}

.portfolio-lightbox img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #030404;
}

.portfolio-lightbox figcaption {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.6rem;
  min-height: 56px;
  padding: 0.9rem 1.1rem;
  border-top: 1px solid rgba(214, 179, 90, 0.16);
  background: rgba(5, 7, 6, 0.96);
}

.portfolio-lightbox figcaption span {
  color: #d6b35a;
  font-size: 0.75rem;
  font-weight: 850;
  letter-spacing: 0;
  text-transform: uppercase;
}

.portfolio-lightbox figcaption strong {
  color: rgba(255, 249, 236, 0.86);
  font-size: 0.9rem;
  letter-spacing: 0;
}

.portfolio-lightbox-close,
.portfolio-lightbox-nav {
  position: absolute;
  z-index: 2;
  border: 1px solid rgba(214, 179, 90, 0.28);
  background: rgba(5, 7, 6, 0.74);
  color: #fff9ec;
  cursor: pointer;
  backdrop-filter: blur(14px);
}

.portfolio-lightbox-close {
  top: 14px;
  right: 14px;
  min-height: 42px;
  padding: 0 0.9rem;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.portfolio-lightbox-nav {
  top: 50%;
  width: 52px;
  height: 70px;
  border-radius: 6px;
  font-size: 2.8rem;
  line-height: 1;
  transform: translateY(-50%);
}

.portfolio-lightbox-nav.is-prev {
  left: 14px;
}

.portfolio-lightbox-nav.is-next {
  right: 14px;
}

@media (max-width: 1180px) {
  .portfolio-hero {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .portfolio-hero-copy {
    min-height: 520px;
  }

  .portfolio-hero h1 {
    max-width: 14ch;
    font-size: 3.6rem;
  }

  .portfolio-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    grid-auto-rows: 118px;
  }

  .portfolio-tile,
  .portfolio-tile.is-square,
  .portfolio-tile.is-tall {
    grid-column: span 4;
    grid-row: span 3;
  }

  .portfolio-tile.is-medium,
  .portfolio-tile.is-wide,
  .portfolio-tile.is-large {
    grid-column: span 8;
    grid-row: span 3;
  }
}

@media (max-width: 760px) {
  .portfolio-hero {
    padding-top: 92px;
  }

  .portfolio-hero-copy {
    min-height: auto;
    padding: 34px 22px;
  }

  .portfolio-hero h1,
  .portfolio-cta h2 {
    font-size: 2.55rem;
  }

  .portfolio-hero-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: none;
    grid-auto-rows: 170px;
    min-height: 0;
  }

  .portfolio-hero-tile,
  .portfolio-hero-tile:nth-child(n) {
    display: block;
    grid-column: span 1;
    grid-row: span 1;
  }

  .portfolio-hero-tile:nth-child(1),
  .portfolio-hero-tile:nth-child(6) {
    grid-column: span 2;
    grid-row: span 2;
  }

  .portfolio-toolbar {
    position: relative;
    top: auto;
    display: block;
    padding: 20px 16px;
  }

  .portfolio-filter-group {
    justify-content: flex-start;
    margin-top: 1rem;
  }

  .portfolio-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 154px;
  }

  .portfolio-tile,
  .portfolio-tile.is-medium,
  .portfolio-tile.is-wide,
  .portfolio-tile.is-large,
  .portfolio-tile.is-tall,
  .portfolio-tile.is-square {
    grid-column: span 1;
    grid-row: span 1;
  }

  .portfolio-tile.is-large,
  .portfolio-tile.is-wide {
    grid-column: span 2;
    grid-row: span 2;
  }

  .portfolio-cta {
    grid-template-columns: 1fr;
    padding: 34px 22px;
  }

  .portfolio-lightbox {
    width: 100vw;
    height: 100svh;
    border-radius: 0;
  }

  .portfolio-lightbox-nav {
    top: auto;
    bottom: 72px;
    width: 48px;
    height: 48px;
    font-size: 2rem;
    transform: none;
  }
}

/* V4.46: final pricing CTA, open cinematic lock. */
body[data-page="/precios/"] .pricing-final-cta {
  min-height: clamp(620px, 56vw, 780px);
  display: grid;
  align-items: center;
  padding-top: clamp(96px, 10vw, 152px);
  padding-bottom: clamp(82px, 8vw, 124px);
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-final-cta::before {
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.98) 0%, rgba(5, 7, 6, 0.9) 38%, rgba(5, 7, 6, 0.48) 66%, rgba(5, 7, 6, 0.8) 100%),
    linear-gradient(180deg, rgba(5, 7, 6, 0.16) 0%, rgba(5, 7, 6, 0.54) 56%, rgba(5, 7, 6, 0.94) 100%);
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media {
  opacity: 0.7;
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media img {
  object-position: 42% center;
  transform: scale(1.03);
  filter: brightness(0.84) saturate(0.94) contrast(1.08);
}

body[data-page="/precios/"] .pricing-final-shell {
  position: relative;
  z-index: 1;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 860px);
  gap: clamp(1.35rem, 2.5vw, 2.15rem);
  align-items: start;
  width: min(1180px, calc(100% - 44px));
  max-width: 1180px;
  margin-inline: auto;
}

body[data-page="/precios/"] .pricing-final-shell::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -2.2rem auto -1.7rem -2.4rem;
  width: min(820px, calc(100% + 4.8rem));
  background: linear-gradient(90deg, rgba(5, 7, 6, 0.46), rgba(5, 7, 6, 0.18) 68%, transparent);
  filter: blur(18px);
}

body[data-page="/precios/"] .pricing-final-copy {
  max-width: 820px;
}

body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 8.6ch;
  margin-bottom: 0.75rem;
  text-shadow: 0 3px 28px rgba(0, 0, 0, 0.56);
}

body[data-page="/precios/"] .pricing-final-copy .lead {
  max-width: 65ch;
  color: rgba(244, 239, 227, 0.82);
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.36);
}

body[data-page="/precios/"] .pricing-final-actions {
  margin-top: clamp(1.25rem, 2vw, 1.85rem);
}

body[data-page="/precios/"] .pricing-final-briefing {
  position: relative;
  display: grid;
  gap: 0.95rem;
  max-width: 980px;
  padding: 1.1rem 0 0;
  border: 0;
  border-top: 1px solid rgba(240, 206, 122, 0.34);
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

body[data-page="/precios/"] .pricing-final-briefing::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  width: 4.8rem;
  height: 1px;
  background: var(--inner-gold);
  box-shadow: 0 0 28px rgba(240, 206, 122, 0.34);
}

body[data-page="/precios/"] .pricing-final-briefing-head {
  display: grid;
  gap: 0.36rem;
}

body[data-page="/precios/"] .pricing-final-briefing-head span {
  color: var(--inner-gold);
  font-size: 0.74rem;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body[data-page="/precios/"] .pricing-final-briefing-head strong {
  max-width: 33ch;
  color: rgba(244, 239, 227, 0.93);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.36rem, 1.8vw, 1.88rem);
  font-weight: 600;
  line-height: 1.06;
}

body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
  margin: 0;
}

body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list span {
  display: grid;
  gap: 0.5rem;
  min-height: 94px;
  padding: 0.82rem 0 0;
  border: 0;
  border-top: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 0;
  background: transparent;
  color: rgba(244, 239, 227, 0.82);
  line-height: 1.34;
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.42);
}

body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list small {
  display: inline-grid;
  width: fit-content;
  min-width: 2.25rem;
  min-height: 1.55rem;
  place-items: center;
  padding: 0 0.46rem;
  border: 1px solid rgba(240, 206, 122, 0.28);
  border-radius: 999px;
  background: rgba(240, 206, 122, 0.08);
  color: var(--inner-gold);
  font-size: 0.68rem;
  font-weight: 950;
  letter-spacing: 0.08em;
}

body[data-page="/precios/"] .pricing-final-card {
  display: none;
}

@media (max-width: 760px) {
  body[data-page="/precios/"] .pricing-final-cta {
    min-height: 0;
    padding-top: 5.4rem;
    padding-bottom: 4.5rem;
  }

  body[data-page="/precios/"] .pricing-final-cta::before {
    background:
      linear-gradient(180deg, rgba(5, 7, 6, 0.32), rgba(5, 7, 6, 0.92)),
      linear-gradient(90deg, rgba(5, 7, 6, 0.94), rgba(5, 7, 6, 0.62));
  }

  body[data-page="/precios/"] .pricing-final-shell {
    width: min(100% - 32px, 680px);
    gap: 1.35rem;
  }

  body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list {
    grid-template-columns: 1fr;
    gap: 0.7rem;
  }

  body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list span {
    min-height: 0;
    padding-top: 0.72rem;
  }
}

/* V4.47: pricing page branded marks, steadier buttons and premium comparison board. */
body[data-page="/precios/"] .button,
body[data-page="/precios/"] .card-link {
  transform: none;
}

body[data-page="/precios/"] .button:hover,
body[data-page="/precios/"] .button:focus-visible,
body[data-page="/precios/"] .card-link:hover,
body[data-page="/precios/"] .card-link:focus-visible {
  transform: none;
}

body[data-page="/precios/"] .button-primary,
body[data-page="/precios/"] .button-secondary {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  letter-spacing: 0;
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease, color 180ms ease, filter 180ms ease;
}

body[data-page="/precios/"] .button-primary::before,
body[data-page="/precios/"] .button-secondary::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.22), transparent 38%, rgba(255, 255, 255, 0.12));
  opacity: 0;
  transition: opacity 180ms ease;
}

body[data-page="/precios/"] .button-primary:hover,
body[data-page="/precios/"] .button-primary:focus-visible {
  border-color: rgba(240, 206, 122, 0.62);
  box-shadow:
    0 18px 42px rgba(200, 169, 107, 0.2),
    0 0 0 1px rgba(240, 206, 122, 0.1);
}

body[data-page="/precios/"] .button-secondary:hover,
body[data-page="/precios/"] .button-secondary:focus-visible {
  border-color: rgba(240, 206, 122, 0.48);
  background: rgba(5, 7, 7, 0.62);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 14px 34px rgba(0, 0, 0, 0.22);
}

body[data-page="/precios/"] .button-primary:hover::before,
body[data-page="/precios/"] .button-secondary:hover::before,
body[data-page="/precios/"] .button-primary:focus-visible::before,
body[data-page="/precios/"] .button-secondary:focus-visible::before {
  opacity: 1;
}

body[data-page="/precios/"] .pricing-command-mark,
body[data-page="/precios/"] .pricing-rule-logo,
body[data-page="/precios/"] .pricing-range-mark,
body[data-page="/precios/"] .pricing-compare-icon,
body[data-page="/precios/"] .pricing-compare-badge,
body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list small {
  position: relative;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(240, 206, 122, 0.36);
  background:
    linear-gradient(145deg, rgba(240, 206, 122, 0.19), rgba(255, 255, 255, 0.035)),
    rgba(4, 7, 7, 0.64);
  color: var(--inner-gold);
  font-family: Inter, system-ui, sans-serif;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
  box-shadow:
    0 16px 38px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

body[data-page="/precios/"] .pricing-command-mark::after,
body[data-page="/precios/"] .pricing-rule-logo::after,
body[data-page="/precios/"] .pricing-range-mark::after,
body[data-page="/precios/"] .pricing-compare-icon::after,
body[data-page="/precios/"] .pricing-compare-badge::after,
body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list small::after {
  content: "";
  position: absolute;
  right: -0.3rem;
  bottom: -0.3rem;
  width: 0.54rem;
  height: 0.54rem;
  border-radius: 999px;
  background: var(--inner-gold);
  box-shadow: 0 0 18px rgba(240, 206, 122, 0.34);
}

body[data-page="/precios/"] .pricing-command-mark,
body[data-page="/precios/"] .pricing-range-mark,
body[data-page="/precios/"] .pricing-compare-icon {
  width: 3.05rem;
  height: 3.05rem;
  border-radius: 12px;
  font-size: 0.76rem;
}

body[data-page="/precios/"] .pricing-rule-logo,
body[data-page="/precios/"] .pricing-final-briefing .pricing-final-list small {
  width: fit-content;
  min-width: 2.7rem;
  min-height: 1.75rem;
  padding: 0 0.58rem;
  border-radius: 999px;
  font-size: 0.7rem;
}

body[data-page="/precios/"] .pricing-compare-badge {
  width: 4.15rem;
  height: 4.15rem;
  border-radius: 14px;
  font-size: 0.82rem;
}

body[data-page="/precios/"] .pricing-rule-list article {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
}

body[data-page="/precios/"] .pricing-hub-card:hover,
body[data-page="/precios/"] .pricing-route-card:hover,
body[data-page="/precios/"] .pricing-range-card:hover {
  transform: none;
}

body[data-page="/precios/"] .pricing-hub-card .card-media img,
body[data-page="/precios/"] .pricing-route-card .card-media img,
body[data-page="/precios/"] .pricing-hub-card:hover .card-media img,
body[data-page="/precios/"] .pricing-route-card:hover .card-media img {
  transform: none;
}

body[data-page="/precios/"] .pricing-hub-card .card-link,
body[data-page="/precios/"] .pricing-route-card .card-link {
  min-height: 39px;
  padding: 0.58rem 0.8rem;
  border-radius: 999px;
  transition: border-color 180ms ease, background 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

body[data-page="/precios/"] .pricing-hub-card .card-link::after,
body[data-page="/precios/"] .pricing-route-card .card-link::after {
  content: none;
}

body[data-page="/precios/"] .pricing-hub-card .card-link::before,
body[data-page="/precios/"] .pricing-route-card .card-link::before {
  content: "";
  width: 0.44rem;
  height: 0.44rem;
  border-radius: 999px;
  background: currentColor;
  box-shadow: 0 0 16px rgba(240, 206, 122, 0.35);
}

body[data-page="/precios/"] .pricing-hub-card .card-link:hover,
body[data-page="/precios/"] .pricing-route-card .card-link:hover {
  color: #f7d98a;
  border-color: rgba(240, 206, 122, 0.54);
  background:
    linear-gradient(180deg, rgba(240, 206, 122, 0.22), rgba(240, 206, 122, 0.07)),
    rgba(5, 7, 7, 0.62);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    0 12px 28px rgba(0, 0, 0, 0.22);
}

body[data-page="/precios/"] .pricing-compare-section {
  background:
    radial-gradient(circle at 74% 16%, rgba(240, 206, 122, 0.13), transparent 24rem),
    linear-gradient(180deg, #080c0b 0%, #050707 100%);
}

body[data-page="/precios/"] .pricing-compare-layout {
  grid-template-columns: minmax(300px, 0.5fr) minmax(0, 1.5fr);
  align-items: center;
  gap: clamp(1.8rem, 4vw, 4rem);
}

body[data-page="/precios/"] .pricing-compare-copy {
  justify-content: center;
}

body[data-page="/precios/"] .pricing-compare-copy h2 {
  max-width: 9.5ch;
}

body[data-page="/precios/"] .pricing-compare-board {
  gap: 0.84rem;
  padding: clamp(0.9rem, 1.6vw, 1.18rem);
  border-color: rgba(240, 206, 122, 0.32);
  border-radius: 12px;
  background:
    radial-gradient(circle at 50% 0%, rgba(240, 206, 122, 0.1), transparent 18rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.018)),
    rgba(4, 7, 7, 0.88);
  box-shadow:
    0 38px 110px rgba(0, 0, 0, 0.46),
    inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

body[data-page="/precios/"] .pricing-compare-board::before {
  inset: 0.7rem;
  border-color: rgba(240, 206, 122, 0.1);
  border-radius: 10px;
}

body[data-page="/precios/"] .pricing-compare-board-head {
  min-height: 70px;
  padding: 0.95rem 1.05rem;
  border-color: rgba(240, 206, 122, 0.22);
  background:
    linear-gradient(90deg, rgba(240, 206, 122, 0.16), rgba(255, 255, 255, 0.025)),
    rgba(5, 8, 8, 0.72);
}

body[data-page="/precios/"] .pricing-compare-system {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.52rem;
}

body[data-page="/precios/"] .pricing-compare-system span {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 44px;
  padding: 0.48rem 0.58rem;
  border: 1px solid rgba(240, 206, 122, 0.14);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.012)),
    rgba(2, 5, 5, 0.52);
  color: rgba(244, 239, 227, 0.76);
  font-size: 0.74rem;
  font-weight: 800;
}

body[data-page="/precios/"] .pricing-compare-system i {
  display: inline-grid;
  min-width: 2rem;
  min-height: 1.42rem;
  place-items: center;
  border: 1px solid rgba(240, 206, 122, 0.28);
  border-radius: 999px;
  color: var(--inner-gold);
  font-style: normal;
  font-size: 0.62rem;
  font-weight: 950;
}

body[data-page="/precios/"] .pricing-compare-card {
  grid-template-columns: minmax(170px, 0.42fr) minmax(0, 1fr);
  gap: 0.9rem;
  padding: 0.86rem;
  border-color: rgba(240, 206, 122, 0.16);
  background:
    linear-gradient(90deg, rgba(240, 206, 122, 0.075), transparent 32%),
    rgba(2, 5, 5, 0.72);
}

body[data-page="/precios/"] .pricing-compare-card-head {
  align-self: stretch;
  padding-right: 0.82rem;
  border-right: 1px solid rgba(240, 206, 122, 0.12);
}

body[data-page="/precios/"] .pricing-compare-lanes {
  gap: 0.64rem;
}

body[data-page="/precios/"] .pricing-compare-lane {
  min-height: 112px;
  padding: 0.86rem 0.92rem;
  border-radius: 8px;
}

body[data-page="/precios/"] .pricing-compare-lane.is-clear {
  border-color: rgba(240, 206, 122, 0.32);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

@media (max-width: 980px) {
  body[data-page="/precios/"] .pricing-compare-layout,
  body[data-page="/precios/"] .pricing-compare-card {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-compare-card-head {
    padding-right: 0;
    padding-bottom: 0.72rem;
    border-right: 0;
    border-bottom: 1px solid rgba(240, 206, 122, 0.12);
  }
}

@media (max-width: 760px) {
  body[data-page="/precios/"] .pricing-compare-system,
  body[data-page="/precios/"] .pricing-compare-lanes {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-command-list article {
    grid-template-columns: auto minmax(0, 1fr);
  }
}

/* V4.53: pricing page hierarchy, conversion routes and cinematic CTA. */
body[data-page="/precios/"] .pricing-hero {
  min-height: clamp(620px, 72vh, 760px);
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.68fr);
  align-items: center;
}

body[data-page="/precios/"] .pricing-hero .hero-copy {
  max-width: 760px;
}

body[data-page="/precios/"] .pricing-hero h1 {
  max-width: 12ch;
  font-size: clamp(3.8rem, 6vw, 6.2rem);
  line-height: 0.92;
}

body[data-page="/precios/"] .pricing-hero .lead {
  max-width: 62ch;
  margin-top: 1rem;
}

body[data-page="/precios/"] .pricing-hero .cta-row {
  max-width: 820px;
  gap: 0.72rem;
}

body[data-page="/precios/"] .pricing-command-panel {
  max-width: 520px;
  padding: clamp(1.15rem, 2vw, 1.5rem);
}

body[data-page="/precios/"] .pricing-command-head {
  display: block;
}

body[data-page="/precios/"] .pricing-command-head h3 {
  max-width: 18ch;
  margin-top: 0.4rem;
}

body[data-page="/precios/"] .pricing-command-list {
  gap: 0.7rem;
}

body[data-page="/precios/"] .pricing-command-list article {
  min-height: 0;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  padding: 0.82rem;
}

body[data-page="/precios/"] .pricing-icon-badge,
body[data-page="/precios/"] .pricing-command-mark,
body[data-page="/precios/"] .pricing-rule-logo,
body[data-page="/precios/"] .pricing-range-mark,
body[data-page="/precios/"] .pricing-compare-icon,
body[data-page="/precios/"] .pricing-compare-badge,
body[data-page="/precios/"] .pricing-faq-logo {
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(240, 206, 122, 0.32);
  border-radius: 999px;
  background:
    radial-gradient(circle at 35% 20%, rgba(240, 206, 122, 0.24), transparent 48%),
    rgba(240, 206, 122, 0.07);
  color: var(--inner-gold);
  box-shadow: inset 0 0 18px rgba(240, 206, 122, 0.055);
}

body[data-page="/precios/"] .pricing-icon-badge svg,
body[data-page="/precios/"] .pricing-command-mark svg,
body[data-page="/precios/"] .pricing-rule-logo svg,
body[data-page="/precios/"] .pricing-range-mark svg,
body[data-page="/precios/"] .pricing-compare-icon svg,
body[data-page="/precios/"] .pricing-compare-badge svg,
body[data-page="/precios/"] .pricing-faq-logo svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body[data-page="/precios/"] .pricing-icon-badge::after,
body[data-page="/precios/"] .pricing-command-mark::after,
body[data-page="/precios/"] .pricing-rule-logo::after,
body[data-page="/precios/"] .pricing-range-mark::after,
body[data-page="/precios/"] .pricing-compare-icon::after,
body[data-page="/precios/"] .pricing-compare-badge::after,
body[data-page="/precios/"] .pricing-faq-logo::after {
  content: none;
}

body[data-page="/precios/"] .pricing-editorial-section {
  background:
    radial-gradient(circle at 12% 20%, rgba(240, 206, 122, 0.08), transparent 22rem),
    linear-gradient(180deg, #101611 0%, #070a08 100%);
}

body[data-page="/precios/"] .pricing-editorial-grid {
  width: var(--secondary-shell);
  max-width: 1240px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 0.86fr) minmax(340px, 0.62fr);
  gap: clamp(1.4rem, 4vw, 4.2rem);
  align-items: center;
}

body[data-page="/precios/"] .pricing-editorial-grid h2 {
  max-width: 11ch;
}

body[data-page="/precios/"] .pricing-rule-list {
  display: grid;
  gap: 0.72rem;
  margin-top: clamp(1.2rem, 2vw, 1.65rem);
}

body[data-page="/precios/"] .pricing-rule-list article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.78rem;
  align-items: center;
  padding: 0.82rem;
  border: 1px solid rgba(240, 206, 122, 0.14);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.012)),
    rgba(5, 8, 8, 0.58);
}

body[data-page="/precios/"] .pricing-rule-list p {
  margin: 0;
}

body[data-page="/precios/"] .pricing-proposal-card {
  padding: clamp(1.1rem, 2vw, 1.55rem);
  border: 1px solid rgba(240, 206, 122, 0.2);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(240, 206, 122, 0.11), transparent 48%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.015)),
    rgba(5, 8, 8, 0.76);
  box-shadow: 0 32px 92px rgba(0, 0, 0, 0.34);
}

body[data-page="/precios/"] .pricing-proposal-card h3 {
  max-width: 14ch;
  margin: 0.45rem 0 1rem;
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.7rem, 2.3vw, 2.7rem);
  line-height: 0.98;
}

body[data-page="/precios/"] .pricing-proposal-card > div {
  display: grid;
  gap: 0.72rem;
}

body[data-page="/precios/"] .pricing-proposal-card article {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 0.78rem;
  padding: 0.85rem 0 0;
  border-top: 1px solid rgba(240, 206, 122, 0.15);
}

body[data-page="/precios/"] .pricing-proposal-card article span {
  color: var(--inner-gold);
  font-weight: 950;
  grid-row: 1 / span 2;
}

body[data-page="/precios/"] .pricing-proposal-card article strong {
  color: var(--inner-text);
  font-size: 1rem;
}

body[data-page="/precios/"] .pricing-proposal-card article p {
  grid-column: 2;
  margin: 0.26rem 0 0;
  line-height: 1.5;
}

body[data-page="/precios/"] .pricing-process-track {
  position: relative;
  width: var(--secondary-shell);
  max-width: 1240px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.86rem;
}

body[data-page="/precios/"] .pricing-process-track::before {
  content: "";
  position: absolute;
  top: 3.25rem;
  left: 7%;
  right: 7%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(240, 206, 122, 0.55), transparent);
}

body[data-page="/precios/"] .pricing-process-step {
  position: relative;
  z-index: 1;
  min-height: 225px;
  padding: clamp(1rem, 1.7vw, 1.28rem);
  border: 1px solid rgba(240, 206, 122, 0.17);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.058), rgba(255, 255, 255, 0.012)),
    rgba(7, 10, 9, 0.82);
  box-shadow: 0 24px 72px rgba(0, 0, 0, 0.22);
}

body[data-page="/precios/"] .pricing-process-step small {
  display: block;
  margin-top: 0.85rem;
  color: var(--inner-gold);
  font-weight: 950;
}

body[data-page="/precios/"] .pricing-process-step h3 {
  margin-top: 0.35rem;
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.4rem, 1.7vw, 2rem);
  line-height: 1;
}

body[data-page="/precios/"] .pricing-process-step p {
  margin-top: 0.72rem;
  line-height: 1.55;
}

body[data-page="/precios/"] .pricing-service-index {
  width: var(--secondary-shell);
  max-width: 1240px;
  margin-inline: auto;
}

body[data-page="/precios/"] .pricing-service-main {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

body[data-page="/precios/"] .pricing-service-secondary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.82rem;
  margin-top: 0.9rem;
}

body[data-page="/precios/"] .pricing-service-card {
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.056), rgba(255, 255, 255, 0.012)),
    rgba(6, 9, 8, 0.78);
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-service-card.is-primary {
  display: grid;
  min-height: 500px;
}

body[data-page="/precios/"] .pricing-service-card.is-primary figure {
  height: 210px;
  margin: 0;
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-service-card figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.78) contrast(1.08) saturate(0.94);
}

body[data-page="/precios/"] .pricing-service-body,
body[data-page="/precios/"] .pricing-service-card.is-secondary {
  padding: clamp(1rem, 1.5vw, 1.18rem);
}

body[data-page="/precios/"] .pricing-service-card h3 {
  margin: 0.35rem 0 0;
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.35rem, 1.7vw, 2rem);
  line-height: 1;
}

body[data-page="/precios/"] .pricing-service-card p:not(.card-kicker) {
  margin-top: 0.62rem;
  line-height: 1.55;
}

body[data-page="/precios/"] .pricing-service-card.is-secondary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.78rem;
  min-height: 220px;
}

body[data-page="/precios/"] .pricing-service-card.is-secondary h3 {
  font-size: clamp(1.08rem, 1.25vw, 1.38rem);
}

body[data-page="/precios/"] .pricing-service-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-top: 1rem;
}

body[data-page="/precios/"] .pricing-service-actions .card-link,
body[data-page="/precios/"] .pricing-service-link,
body[data-page="/precios/"] .pricing-route-card-v2 .card-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 92px;
  min-height: 38px;
  padding: 0.58rem 0.86rem;
  border: 1px solid rgba(240, 206, 122, 0.24);
  border-radius: 999px;
  color: var(--inner-gold);
  background: rgba(240, 206, 122, 0.08);
  font-size: 0.8rem;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
}

body[data-page="/precios/"] .pricing-service-actions .card-link::before,
body[data-page="/precios/"] .pricing-service-actions .card-link::after,
body[data-page="/precios/"] .pricing-service-link::before,
body[data-page="/precios/"] .pricing-service-link::after,
body[data-page="/precios/"] .pricing-route-card-v2 .card-link::before,
body[data-page="/precios/"] .pricing-route-card-v2 .card-link::after {
  content: none;
}

body[data-page="/precios/"] .button:hover,
body[data-page="/precios/"] .button:focus-visible,
body[data-page="/precios/"] .pricing-service-actions .card-link:hover,
body[data-page="/precios/"] .pricing-service-link:hover,
body[data-page="/precios/"] .pricing-route-card-v2 .card-link:hover,
body[data-page="/precios/"] .pricing-service-card:hover,
body[data-page="/precios/"] .pricing-route-card-v2:hover {
  transform: none;
}

body[data-page="/precios/"] .pricing-service-link {
  color: rgba(244, 239, 227, 0.74);
  background: rgba(255, 255, 255, 0.035);
}

body[data-page="/precios/"] .pricing-compare-board {
  display: grid;
  gap: 0.84rem;
}

body[data-page="/precios/"] .pricing-compare-card {
  display: grid;
  grid-template-columns: minmax(180px, 0.42fr) minmax(0, 1fr);
}

body[data-page="/precios/"] .pricing-compare-lanes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body[data-page="/precios/"] .pricing-route-grid-v2 {
  width: var(--secondary-shell);
  max-width: 1240px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

body[data-page="/precios/"] .pricing-route-card-v2 {
  display: grid;
  min-height: 480px;
  overflow: hidden;
  border: 1px solid rgba(240, 206, 122, 0.18);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.014)),
    rgba(6, 9, 8, 0.78);
}

body[data-page="/precios/"] .pricing-route-card-v2 figure {
  height: 230px;
  margin: 0;
}

body[data-page="/precios/"] .pricing-route-card-v2 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.78) contrast(1.08) saturate(0.94);
}

body[data-page="/precios/"] .pricing-route-card-v2 > div {
  padding: clamp(1rem, 1.6vw, 1.25rem);
}

body[data-page="/precios/"] .pricing-route-card-v2 h3 {
  margin-top: 0.4rem;
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.4rem, 1.8vw, 2.1rem);
  line-height: 1;
}

body[data-page="/precios/"] .pricing-faq-layout {
  width: var(--secondary-shell);
  max-width: 1080px;
  grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
  align-items: start;
}

body[data-page="/precios/"] .pricing-faq-aside h2 {
  max-width: 10ch;
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.6rem, 2.4vw, 2.6rem);
  line-height: 0.98;
}

body[data-page="/precios/"] .pricing-faq-heading {
  margin-bottom: 1rem;
}

body[data-page="/precios/"] .pricing-final-cta {
  position: relative;
  isolation: isolate;
  width: min(100% - 48px, 1240px);
  min-height: clamp(520px, 54vw, 680px);
  margin: 0 auto clamp(3rem, 6vw, 5rem);
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(240, 206, 122, 0.14);
  border-radius: 8px;
  background: #050707;
}

body[data-page="/precios/"] .pricing-final-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.88), rgba(5, 7, 6, 0.48) 58%, rgba(5, 7, 6, 0.78)),
    linear-gradient(180deg, rgba(5, 7, 6, 0.16), rgba(5, 7, 6, 0.78));
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  margin: 0;
  z-index: 0;
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.82) contrast(1.08) saturate(0.96);
}

body[data-page="/precios/"] .pricing-final-shell {
  position: relative;
  z-index: 2;
  width: min(100% - 56px, 1120px);
  min-height: inherit;
  margin-inline: auto;
  display: grid;
  align-items: center;
}

body[data-page="/precios/"] .pricing-final-copy {
  max-width: 620px;
}

body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 11ch;
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2.6rem, 5vw, 5.8rem);
  line-height: 0.92;
}

body[data-page="/precios/"] .pricing-final-copy .lead {
  max-width: 54ch;
}

body[data-page="/precios/"] .pricing-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.72rem;
  margin-top: 1.35rem;
}

@media (max-width: 1120px) {
  body[data-page="/precios/"] .pricing-hero,
  body[data-page="/precios/"] .pricing-editorial-grid,
  body[data-page="/precios/"] .pricing-compare-layout,
  body[data-page="/precios/"] .pricing-faq-layout {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-command-panel {
    max-width: 100%;
  }

  body[data-page="/precios/"] .pricing-service-main,
  body[data-page="/precios/"] .pricing-route-grid-v2 {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-service-secondary,
  body[data-page="/precios/"] .pricing-process-track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  body[data-page="/precios/"] .pricing-hero {
    min-height: auto;
    padding-top: 5.8rem;
    padding-bottom: 3.4rem;
  }

  body[data-page="/precios/"] .pricing-hero h1 {
    max-width: 100%;
    font-size: clamp(2.1rem, 8vw, 2.35rem);
    overflow-wrap: normal;
    word-break: keep-all;
    hyphens: manual;
  }

  body[data-page="/precios/"] .pricing-hero .cta-row .button {
    width: 100%;
  }

  body[data-page="/precios/"] .pricing-process-track,
  body[data-page="/precios/"] .pricing-service-secondary,
  body[data-page="/precios/"] .pricing-compare-card,
  body[data-page="/precios/"] .pricing-compare-lanes {
    grid-template-columns: 1fr;
  }

  body[data-page="/precios/"] .pricing-process-track::before {
    display: none;
  }

  body[data-page="/precios/"] .pricing-service-card.is-primary,
  body[data-page="/precios/"] .pricing-route-card-v2 {
    min-height: 0;
  }

  body[data-page="/precios/"] .pricing-final-cta {
    width: min(100% - 24px, 680px);
    min-height: 520px;
  }

  body[data-page="/precios/"] .pricing-final-shell {
    width: min(100% - 32px, 620px);
  }

  body[data-page="/precios/"] .pricing-final-actions .button {
    width: 100%;
  }
}

/* Portfolio final briefing overrides: premium visual gallery. */
body[data-page="/portfolio/"] {
  overflow-x: hidden;
  background:
    radial-gradient(circle at 16% 8%, rgba(214, 179, 90, 0.13), transparent 26rem),
    radial-gradient(circle at 84% 14%, rgba(74, 91, 88, 0.2), transparent 30rem),
    linear-gradient(180deg, #050706 0%, #070a09 48%, #050706 100%);
}

body[data-page="/portfolio/"] .site-header {
  top: 0;
  width: 100%;
  max-width: none;
  border-radius: 0;
}

body[data-page="/portfolio/"] .button-nav::after {
  content: "\2192";
}

body[data-page="/portfolio/"] .portfolio-page {
  overflow: hidden;
  background: #050706;
}

body[data-page="/portfolio/"] .portfolio-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(320px, 0.43fr) minmax(0, 0.57fr);
  gap: 6px;
  min-height: 640px;
  padding: 86px 6px 6px;
  overflow: hidden;
}

body[data-page="/portfolio/"] .portfolio-hero-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 0;
  padding: 54px;
  border: 0;
  background:
    radial-gradient(circle at 8% 18%, rgba(214, 179, 90, 0.12), transparent 20rem),
    linear-gradient(90deg, rgba(5, 7, 6, 0.98), rgba(5, 7, 6, 0.82) 66%, rgba(5, 7, 6, 0.34));
}

body[data-page="/portfolio/"] .portfolio-hero-copy .eyebrow,
body[data-page="/portfolio/"] .portfolio-toolbar .eyebrow,
body[data-page="/portfolio/"] .portfolio-cta .eyebrow {
  margin: 0 0 0.72rem;
  color: #d6b35a;
  font-size: 0.76rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-page="/portfolio/"] .portfolio-hero-copy .eyebrow::before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 1px;
  margin-right: 0.7rem;
  vertical-align: middle;
  background: rgba(214, 179, 90, 0.72);
}

body[data-page="/portfolio/"] .portfolio-hero h1 {
  max-width: 9ch;
  margin: 0;
  color: #fff8ea;
  font-family: var(--font-display, "Playfair Display", Georgia, serif);
  font-size: 5.35rem;
  line-height: 0.88;
  letter-spacing: 0;
}

body[data-page="/portfolio/"] .portfolio-hero .lead {
  max-width: 34rem;
  margin: 1.25rem 0 0;
  color: rgba(246, 239, 228, 0.8);
  font-size: 1.02rem;
  line-height: 1.62;
}

body[data-page="/portfolio/"] .portfolio-hero-media {
  position: relative;
  min-height: 548px;
  height: 100%;
  margin: 0;
  overflow: hidden;
  border-radius: 4px;
  background:
    linear-gradient(180deg, rgba(5, 7, 6, 0.08), rgba(5, 7, 6, 0.2)),
    url("img/portfolio/promotoras/promotoras-016.webp") center / cover no-repeat,
    #0b0f0e;
}

body[data-page="/portfolio/"] .portfolio-hero-media::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(5, 7, 6, 0.34), rgba(5, 7, 6, 0.02) 42%),
    linear-gradient(180deg, rgba(5, 7, 6, 0.1), rgba(5, 7, 6, 0.3));
  pointer-events: none;
}

body[data-page="/portfolio/"] .portfolio-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.96) contrast(1.05) brightness(0.86);
}

body[data-page="/portfolio/"] .portfolio-hero-actions,
body[data-page="/portfolio/"] .portfolio-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.68rem;
  margin-top: 1.75rem;
}

body[data-page="/portfolio/"] .portfolio-toolbar {
  position: sticky;
  top: 72px;
  z-index: 12;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 12px 18px;
  border-top: 1px solid rgba(214, 179, 90, 0.13);
  border-bottom: 1px solid rgba(214, 179, 90, 0.16);
  background: rgba(5, 7, 6, 0.9);
  backdrop-filter: blur(18px);
}

body[data-page="/portfolio/"] .portfolio-toolbar h2 {
  margin: 0;
  color: #fff8ea;
  font-size: 1.18rem;
  line-height: 1.1;
  letter-spacing: 0;
}

body[data-page="/portfolio/"] .portfolio-filter-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.38rem;
}

body[data-page="/portfolio/"] .portfolio-filter-group button {
  min-height: 34px;
  padding: 0 0.78rem;
  border: 1px solid rgba(214, 179, 90, 0.24);
  border-radius: 999px;
  background: rgba(3, 4, 4, 0.32);
  color: rgba(246, 239, 228, 0.72);
  font-size: 0.74rem;
  font-weight: 780;
  letter-spacing: 0;
}

body[data-page="/portfolio/"] .portfolio-filter-group button:hover,
body[data-page="/portfolio/"] .portfolio-filter-group button:focus-visible,
body[data-page="/portfolio/"] .portfolio-filter-group button.is-active {
  border-color: rgba(214, 179, 90, 0.76);
  background: rgba(214, 179, 90, 0.17);
  color: #f3c76a;
}

body[data-page="/portfolio/"] .portfolio-grid {
  display: grid;
  grid-template-columns: repeat(15, minmax(0, 1fr));
  grid-auto-flow: dense;
  grid-auto-rows: 112px;
  gap: 6px;
  padding: 6px;
}

body[data-page="/portfolio/"] .portfolio-tile {
  position: relative;
  display: block;
  grid-column: span 3;
  grid-row: span 2;
  width: 100%;
  min-width: 0;
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 4px;
  background: #0b0f0e;
  color: inherit;
  cursor: zoom-in;
}

body[data-page="/portfolio/"] .portfolio-tile.is-medium {
  grid-column: span 4;
  grid-row: span 2;
}

body[data-page="/portfolio/"] .portfolio-tile.is-wide {
  grid-column: span 6;
  grid-row: span 2;
}

body[data-page="/portfolio/"] .portfolio-tile.is-large {
  grid-column: span 6;
  grid-row: span 4;
}

body[data-page="/portfolio/"] .portfolio-tile.is-tall {
  grid-column: span 3;
  grid-row: span 4;
}

body[data-page="/portfolio/"] .portfolio-tile.is-square {
  grid-column: span 3;
  grid-row: span 3;
}

body[data-page="/portfolio/"] .portfolio-tile.is-hidden {
  display: none !important;
}

body[data-page="/portfolio/"] .portfolio-tile img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform 680ms cubic-bezier(0.16, 1, 0.3, 1), filter 240ms ease;
}

body[data-page="/portfolio/"] .portfolio-tile::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.02) 34%, rgba(0, 0, 0, 0.52));
  opacity: 0;
  transition: opacity 220ms ease;
}

body[data-page="/portfolio/"] .portfolio-tile span {
  position: absolute;
  left: 14px;
  bottom: 13px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 0.28rem;
  color: rgba(255, 249, 236, 0.86);
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 220ms ease, transform 220ms ease;
}

body[data-page="/portfolio/"] .portfolio-tile span strong,
body[data-page="/portfolio/"] .portfolio-tile span em {
  display: block;
  font-style: normal;
  letter-spacing: 0;
}

body[data-page="/portfolio/"] .portfolio-tile span strong {
  color: #f3c76a;
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body[data-page="/portfolio/"] .portfolio-tile span em {
  color: rgba(255, 249, 236, 0.78);
  font-size: 0.74rem;
  font-weight: 700;
}

body[data-page="/portfolio/"] .portfolio-tile:hover img,
body[data-page="/portfolio/"] .portfolio-tile:focus-visible img {
  filter: saturate(1.08) contrast(1.05);
  transform: scale(1.045);
}

body[data-page="/portfolio/"] .portfolio-tile:hover::after,
body[data-page="/portfolio/"] .portfolio-tile:focus-visible::after,
body[data-page="/portfolio/"] .portfolio-tile:hover span,
body[data-page="/portfolio/"] .portfolio-tile:focus-visible span {
  opacity: 1;
  transform: translateY(0);
}

body[data-page="/portfolio/"] .portfolio-note-tile {
  display: flex;
  flex-direction: column;
  justify-content: center;
  grid-column: span 6;
  grid-row: span 2;
  min-height: 100%;
  padding: 1.35rem;
  border: 1px solid rgba(214, 179, 90, 0.22);
  border-radius: 4px;
  background:
    radial-gradient(circle at 12% 12%, rgba(214, 179, 90, 0.12), transparent 18rem),
    linear-gradient(135deg, rgba(255, 255, 255, 0.044), rgba(255, 255, 255, 0.012));
}

body[data-page="/portfolio/"] .portfolio-note-tile.is-wide {
  grid-column: span 9;
}

body[data-page="/portfolio/"] .portfolio-note-tile p {
  max-width: 34ch;
  margin: 0;
  color: #fff8ea;
  font-family: var(--font-display, "Playfair Display", Georgia, serif);
  font-size: 1.7rem;
  line-height: 1.08;
  letter-spacing: 0;
}

body[data-page="/portfolio/"] .portfolio-note-tile span {
  max-width: 36ch;
  margin-top: 0.7rem;
  color: rgba(246, 239, 228, 0.62);
  font-size: 0.88rem;
  line-height: 1.48;
}

body[data-page="/portfolio/"] .portfolio-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1.6rem;
  margin: 6px;
  padding: 2rem;
  border: 1px solid rgba(214, 179, 90, 0.2);
  border-radius: 4px;
  background:
    radial-gradient(circle at 8% 12%, rgba(214, 179, 90, 0.16), transparent 26rem),
    linear-gradient(135deg, rgba(255, 255, 255, 0.044), rgba(255, 255, 255, 0.014));
}

body[data-page="/portfolio/"] .portfolio-cta h2 {
  max-width: 25ch;
  margin: 0;
  color: #fff8ea;
  font-family: var(--font-display, "Playfair Display", Georgia, serif);
  font-size: 2.35rem;
  line-height: 1;
  letter-spacing: 0;
}

body[data-page="/portfolio/"] .portfolio-cta p:not(.eyebrow) {
  max-width: 40rem;
  margin: 0.9rem 0 0;
  color: rgba(246, 239, 228, 0.68);
  line-height: 1.58;
}

body[data-page="/portfolio/"] .portfolio-internal-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 6px;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(214, 179, 90, 0.14);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.018);
}

body[data-page="/portfolio/"] .portfolio-internal-links a {
  color: rgba(246, 239, 228, 0.62);
  font-size: 0.78rem;
  font-weight: 760;
}

body[data-page="/portfolio/"] .portfolio-internal-links a:hover,
body[data-page="/portfolio/"] .portfolio-internal-links a:focus-visible {
  color: #f3c76a;
}

body[data-page="/portfolio/"] .portfolio-lightbox {
  width: 100vw;
  height: 100svh;
  max-width: none;
  max-height: none;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #000;
  color: #fff9ec;
}

body[data-page="/portfolio/"] .portfolio-lightbox::backdrop {
  background: rgba(0, 0, 0, 0.94);
  backdrop-filter: blur(8px);
}

body[data-page="/portfolio/"] .portfolio-lightbox figure {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  width: 100%;
  height: 100%;
  margin: 0;
}

body[data-page="/portfolio/"] .portfolio-lightbox img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000;
}

body[data-page="/portfolio/"] .portfolio-lightbox figcaption {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.6rem;
  min-height: 56px;
  padding: 0.9rem 1.1rem;
  border-top: 1px solid rgba(214, 179, 90, 0.16);
  background: rgba(0, 0, 0, 0.82);
}

body[data-page="/portfolio/"] .portfolio-lightbox figcaption span {
  color: #d6b35a;
  font-size: 0.75rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body[data-page="/portfolio/"] .portfolio-lightbox figcaption strong {
  color: rgba(255, 249, 236, 0.86);
  font-size: 0.9rem;
  letter-spacing: 0;
}

body[data-page="/portfolio/"] .portfolio-lightbox-close,
body[data-page="/portfolio/"] .portfolio-lightbox-nav,
body[data-page="/portfolio/"] .portfolio-lightbox-counter {
  position: absolute;
  z-index: 2;
  border: 1px solid rgba(214, 179, 90, 0.28);
  background: rgba(5, 7, 6, 0.74);
  color: #fff9ec;
  backdrop-filter: blur(14px);
}

body[data-page="/portfolio/"] .portfolio-lightbox-close {
  top: 14px;
  right: 14px;
  min-height: 42px;
  padding: 0 0.9rem;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

body[data-page="/portfolio/"] .portfolio-lightbox-counter {
  top: 14px;
  left: 14px;
  min-height: 42px;
  padding: 0.78rem 0.9rem 0;
  border-radius: 999px;
  color: rgba(255, 249, 236, 0.82);
  font-size: 0.78rem;
  font-weight: 800;
}

body[data-page="/portfolio/"] .portfolio-lightbox-nav {
  top: 50%;
  width: 52px;
  height: 70px;
  border-radius: 6px;
  font-size: 2.8rem;
  line-height: 1;
  transform: translateY(-50%);
}

body[data-page="/portfolio/"] .portfolio-lightbox-nav.is-prev {
  left: 14px;
}

body[data-page="/portfolio/"] .portfolio-lightbox-nav.is-next {
  right: 14px;
}

@media (min-width: 1600px) {
  body[data-page="/portfolio/"] .portfolio-grid {
    grid-auto-rows: 126px;
  }
}

@media (max-width: 1180px) {
  body[data-page="/portfolio/"] .portfolio-hero {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  body[data-page="/portfolio/"] .portfolio-hero-copy {
    min-height: 390px;
    padding: 42px;
  }

  body[data-page="/portfolio/"] .portfolio-hero h1 {
    max-width: 11ch;
    font-size: 4rem;
  }

  body[data-page="/portfolio/"] .portfolio-hero-media {
    min-height: 430px;
  }

  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: repeat(9, minmax(0, 1fr));
    grid-auto-rows: 112px;
  }

  body[data-page="/portfolio/"] .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-tile.is-square {
    grid-column: span 3;
    grid-row: span 2;
  }

  body[data-page="/portfolio/"] .portfolio-tile.is-medium,
  body[data-page="/portfolio/"] .portfolio-tile.is-wide,
  body[data-page="/portfolio/"] .portfolio-tile.is-large {
    grid-column: span 6;
    grid-row: span 3;
  }

  body[data-page="/portfolio/"] .portfolio-tile.is-tall {
    grid-column: span 3;
    grid-row: span 3;
  }

  body[data-page="/portfolio/"] .portfolio-note-tile,
  body[data-page="/portfolio/"] .portfolio-note-tile.is-wide {
    grid-column: span 6;
    grid-row: span 2;
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-hero {
    padding-top: 84px;
  }

  body[data-page="/portfolio/"] .portfolio-hero-copy {
    min-width: 0;
    overflow: hidden;
    padding: 34px 22px;
  }

  body[data-page="/portfolio/"] .portfolio-hero h1 {
    max-width: 8.4ch;
    overflow-wrap: normal;
    font-size: 2.55rem;
    line-height: 0.94;
  }

  body[data-page="/portfolio/"] .portfolio-hero .lead {
    max-width: 31ch;
    font-size: 0.98rem;
  }

  body[data-page="/portfolio/"] .portfolio-hero-media {
    min-height: 318px;
  }

  body[data-page="/portfolio/"] .portfolio-hero-media img {
    color: transparent;
    font-size: 0;
    opacity: 0;
  }

  body[data-page="/portfolio/"] .portfolio-hero-actions .button {
    width: 100%;
    min-width: 0;
    justify-content: center;
  }

  body[data-page="/portfolio/"] .portfolio-hero-actions {
    width: min(100%, 320px);
  }

  body[data-page="/portfolio/"] .portfolio-toolbar {
    position: relative;
    top: auto;
    display: block;
    padding: 16px;
  }

  body[data-page="/portfolio/"] .portfolio-filter-group {
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: 0.42rem;
    margin-top: 0.9rem;
    overflow-x: auto;
    padding-bottom: 0.2rem;
    scrollbar-width: thin;
  }

  body[data-page="/portfolio/"] .portfolio-filter-group button {
    flex: 0 0 auto;
  }

  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
  }

  body[data-page="/portfolio/"] .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-tile.is-medium,
  body[data-page="/portfolio/"] .portfolio-tile.is-wide,
  body[data-page="/portfolio/"] .portfolio-tile.is-large,
  body[data-page="/portfolio/"] .portfolio-tile.is-tall,
  body[data-page="/portfolio/"] .portfolio-tile.is-square {
    grid-column: 1;
    grid-row: auto;
    aspect-ratio: 16 / 10;
  }

  body[data-page="/portfolio/"] .portfolio-tile.is-wide {
    aspect-ratio: 16 / 8;
  }

  body[data-page="/portfolio/"] .portfolio-tile.is-tall {
    aspect-ratio: 4 / 5;
  }

  body[data-page="/portfolio/"] .portfolio-tile.is-square {
    aspect-ratio: 1 / 1;
  }

  body[data-page="/portfolio/"] .portfolio-note-tile,
  body[data-page="/portfolio/"] .portfolio-note-tile.is-wide {
    grid-column: 1;
    grid-row: auto;
    min-height: 190px;
  }

  body[data-page="/portfolio/"] .portfolio-note-tile p {
    font-size: 1.45rem;
  }

  body[data-page="/portfolio/"] .portfolio-cta {
    grid-template-columns: 1fr;
    padding: 1.45rem;
  }

  body[data-page="/portfolio/"] .portfolio-cta h2 {
    font-size: 2rem;
  }

  body[data-page="/portfolio/"] .portfolio-lightbox-close {
    right: 10px;
  }

  body[data-page="/portfolio/"] .portfolio-lightbox-counter {
    left: 10px;
  }

  body[data-page="/portfolio/"] .portfolio-lightbox-nav {
    top: auto;
    bottom: 72px;
    width: 48px;
    height: 48px;
    font-size: 2rem;
    transform: none;
  }
}

/* Portfolio editorial v2: curated first impression and progressive archive. */
body[data-page="/portfolio/"] .portfolio-hero {
  min-height: 650px;
  padding: 82px 20px 12px;
  border-bottom: 1px solid rgba(214, 179, 90, 0.12);
}

body[data-page="/portfolio/"] .portfolio-hero-copy {
  padding: 56px;
  border-left: 1px solid rgba(214, 179, 90, 0.18);
}

body[data-page="/portfolio/"] .portfolio-hero h1 {
  max-width: 10ch;
  font-size: 4.8rem;
  line-height: 0.92;
}

body[data-page="/portfolio/"] .portfolio-hero h1 span {
  display: block;
  color: #f1c463;
}

body[data-page="/portfolio/"] .portfolio-hero .lead {
  max-width: 38rem;
}

body[data-page="/portfolio/"] .portfolio-hero-proof {
  max-width: 36rem;
  margin: 1.45rem 0 0;
  padding-top: 1.05rem;
  border-top: 1px solid rgba(214, 179, 90, 0.18);
  color: rgba(246, 239, 228, 0.64);
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.5;
}

body[data-page="/portfolio/"] .portfolio-hero-media {
  min-height: 548px;
  box-shadow: inset 0 0 0 1px rgba(214, 179, 90, 0.08);
}

body[data-page="/portfolio/"] .portfolio-toolbar,
body[data-page="/portfolio/"] .portfolio-grid,
body[data-page="/portfolio/"] .portfolio-load-panel,
body[data-page="/portfolio/"] .portfolio-cta,
body[data-page="/portfolio/"] .portfolio-internal-links {
  width: min(100% - 40px, 1380px);
  margin-right: auto;
  margin-left: auto;
}

body[data-page="/portfolio/"] .portfolio-toolbar {
  top: 72px;
  margin-top: 12px;
  padding: 14px 18px;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
}

body[data-page="/portfolio/"] .portfolio-toolbar h2 {
  max-width: 30ch;
  font-size: 1.1rem;
}

body[data-page="/portfolio/"] .portfolio-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: 112px;
  gap: 8px;
  padding: 8px;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-top: 0;
  border-radius: 0 0 8px 8px;
  background: rgba(255, 255, 255, 0.018);
}

body[data-page="/portfolio/"] .portfolio-tile {
  grid-column: span 3;
  grid-row: span 2;
  border-radius: 5px;
}

body[data-page="/portfolio/"] .portfolio-tile.is-cover {
  grid-column: span 5;
  grid-row: span 4;
}

body[data-page="/portfolio/"] .portfolio-tile.is-vertical-feature {
  grid-column: span 4;
  grid-row: span 4;
}

body[data-page="/portfolio/"] .portfolio-tile.is-detail {
  grid-column: span 3;
  grid-row: span 2;
}

body[data-page="/portfolio/"] .portfolio-tile.is-panorama {
  grid-column: span 8;
  grid-row: span 2;
}

body[data-page="/portfolio/"] .portfolio-tile.is-large {
  grid-column: span 6;
  grid-row: span 3;
}

body[data-page="/portfolio/"] .portfolio-tile.is-wide {
  grid-column: span 5;
  grid-row: span 2;
}

body[data-page="/portfolio/"] .portfolio-tile.is-medium {
  grid-column: span 4;
  grid-row: span 2;
}

body[data-page="/portfolio/"] .portfolio-tile.is-tall {
  grid-column: span 3;
  grid-row: span 3;
}

body[data-page="/portfolio/"] .portfolio-tile.is-square {
  grid-column: span 3;
  grid-row: span 3;
}

body[data-page="/portfolio/"] .portfolio-tile:hover img,
body[data-page="/portfolio/"] .portfolio-tile:focus-visible img {
  transform: scale(1.035);
}

body[data-page="/portfolio/"] .portfolio-note-tile {
  grid-column: span 4;
  grid-row: span 2;
  border-radius: 5px;
}

body[data-page="/portfolio/"] .portfolio-note-tile.is-wide {
  grid-column: span 6;
}

body[data-page="/portfolio/"] .portfolio-note-tile p {
  font-size: 1.55rem;
}

body[data-page="/portfolio/"] .portfolio-load-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 8px;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.018);
}

body[data-page="/portfolio/"] .portfolio-load-panel p {
  margin: 0;
  color: rgba(246, 239, 228, 0.68);
  font-size: 0.86rem;
  line-height: 1.45;
}

body[data-page="/portfolio/"] .portfolio-load-panel strong,
body[data-page="/portfolio/"] .portfolio-load-panel span {
  color: #f1c463;
}

body[data-page="/portfolio/"] .portfolio-load-panel .button {
  min-height: 40px;
  padding: 0 1.2rem;
  white-space: nowrap;
}

body[data-page="/portfolio/"] .portfolio-load-panel .button[hidden] {
  display: none;
}

body[data-page="/portfolio/"] .portfolio-cta {
  margin-top: 8px;
  width: min(100% - 40px, 1380px);
}

@media (max-width: 1180px) {
  body[data-page="/portfolio/"] .portfolio-hero h1 {
    font-size: 4rem;
  }

  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  body[data-page="/portfolio/"] .portfolio-tile.is-cover,
  body[data-page="/portfolio/"] .portfolio-tile.is-vertical-feature,
  body[data-page="/portfolio/"] .portfolio-tile.is-panorama,
  body[data-page="/portfolio/"] .portfolio-tile.is-large,
  body[data-page="/portfolio/"] .portfolio-tile.is-wide {
    grid-column: span 4;
    grid-row: span 3;
  }

  body[data-page="/portfolio/"] .portfolio-note-tile,
  body[data-page="/portfolio/"] .portfolio-note-tile.is-wide {
    grid-column: span 4;
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-hero {
    padding: 84px 6px 6px;
  }

  body[data-page="/portfolio/"] .portfolio-hero-copy {
    padding: 34px 22px;
  }

  body[data-page="/portfolio/"] .portfolio-hero h1 {
    max-width: 8.6ch;
    font-size: 2.7rem;
  }

  body[data-page="/portfolio/"] .portfolio-hero-media {
    min-height: 318px;
  }

  body[data-page="/portfolio/"] .portfolio-toolbar,
  body[data-page="/portfolio/"] .portfolio-grid,
  body[data-page="/portfolio/"] .portfolio-load-panel,
  body[data-page="/portfolio/"] .portfolio-cta,
  body[data-page="/portfolio/"] .portfolio-internal-links {
    width: calc(100% - 12px);
  }

  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
    gap: 8px;
  }

  body[data-page="/portfolio/"] .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-tile.is-cover,
  body[data-page="/portfolio/"] .portfolio-tile.is-vertical-feature,
  body[data-page="/portfolio/"] .portfolio-tile.is-detail,
  body[data-page="/portfolio/"] .portfolio-tile.is-panorama,
  body[data-page="/portfolio/"] .portfolio-tile.is-medium,
  body[data-page="/portfolio/"] .portfolio-tile.is-wide,
  body[data-page="/portfolio/"] .portfolio-tile.is-large,
  body[data-page="/portfolio/"] .portfolio-tile.is-tall,
  body[data-page="/portfolio/"] .portfolio-tile.is-square {
    grid-column: 1;
    grid-row: auto;
    aspect-ratio: 16 / 10;
  }

  body[data-page="/portfolio/"] .portfolio-tile.is-cover,
  body[data-page="/portfolio/"] .portfolio-tile.is-large,
  body[data-page="/portfolio/"] .portfolio-tile.is-tall {
    aspect-ratio: 4 / 5;
  }

  body[data-page="/portfolio/"] .portfolio-note-tile,
  body[data-page="/portfolio/"] .portfolio-note-tile.is-wide {
    grid-column: 1;
    grid-row: auto;
  }

  body[data-page="/portfolio/"] .portfolio-load-panel {
    display: grid;
    gap: 0.8rem;
  }

  body[data-page="/portfolio/"] .portfolio-load-panel .button {
    width: 100%;
    justify-content: center;
  }
}

/* V4.50 contact refresh: cleaner briefing panel, premium form, and stronger configurator CTA. */
body[data-page="/contacto/"] .contact-command-panel {
  width: min(100%, 520px);
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(0.95rem, 1.7vw, 1.25rem);
  padding: clamp(1.35rem, 2.4vw, 2rem);
  border-color: rgba(240, 206, 122, 0.24);
  background:
    radial-gradient(circle at 100% 0%, rgba(240, 206, 122, 0.13), transparent 16rem),
    linear-gradient(145deg, rgba(18, 22, 21, 0.82), rgba(5, 8, 7, 0.72));
}

body[data-page="/contacto/"] .contact-command-panel::before {
  opacity: 0.34;
}

body[data-page="/contacto/"] .contact-command-panel .command-panel-top {
  grid-column: auto;
}

body[data-page="/contacto/"] .contact-command-panel h3 {
  max-width: 11.5ch;
  margin: 0.2rem 0 0;
  font-size: clamp(2.55rem, 3.25vw, 4rem);
  line-height: 0.93;
}

body[data-page="/contacto/"] .contact-command-lead {
  max-width: 34ch;
  margin: 0;
  color: rgba(246, 239, 228, 0.74);
  font-size: clamp(0.96rem, 1vw, 1.08rem);
  line-height: 1.55;
}

body[data-page="/contacto/"] .contact-command-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.65rem;
  margin-top: 0.15rem;
}

body[data-page="/contacto/"] .contact-command-actions .button {
  min-height: 48px;
  justify-content: center;
  border-radius: 8px;
  font-size: 0.78rem;
  white-space: nowrap;
}

body[data-page="/contacto/"] .contact-command-actions .button-primary {
  color: #070907;
  background: linear-gradient(135deg, #f4c96d, #c6903e);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.26),
    0 0 24px rgba(240, 206, 122, 0.1);
}

body[data-page="/contacto/"] .contact-command-actions .button-secondary {
  color: rgba(246, 239, 228, 0.88);
  border-color: rgba(240, 206, 122, 0.28);
  background: rgba(5, 8, 7, 0.42);
}

body[data-page="/contacto/"] .contact-command-note {
  margin: 0;
  padding-top: 0.9rem;
  border-top: 1px solid rgba(240, 206, 122, 0.13);
  color: rgba(246, 239, 228, 0.52);
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-form-card {
  grid-template-columns: minmax(270px, 0.36fr) minmax(0, 1fr);
  gap: clamp(1.35rem, 3vw, 3rem);
  padding: clamp(1.6rem, 3.2vw, 2.7rem);
  border-color: rgba(240, 206, 122, 0.22);
  background:
    radial-gradient(circle at 100% 0%, rgba(240, 206, 122, 0.13), transparent 19rem),
    radial-gradient(circle at 0% 100%, rgba(255, 255, 255, 0.045), transparent 18rem),
    linear-gradient(145deg, rgba(16, 20, 19, 0.88), rgba(5, 8, 7, 0.76));
  box-shadow:
    0 30px 90px rgba(0, 0, 0, 0.26),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

body[data-page="/contacto/"] .contact-form-card h2 {
  max-width: 10.8ch;
  font-size: clamp(2.65rem, 3.75vw, 4.4rem);
}

body[data-page="/contacto/"] .contact-form-intro {
  max-width: 28ch;
  margin: clamp(0.9rem, 1.6vw, 1.25rem) 0 0;
  color: rgba(246, 239, 228, 0.7);
  line-height: 1.58;
}

body[data-page="/contacto/"] .contact-form-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 0.48rem;
  max-width: 330px;
}

body[data-page="/contacto/"] .contact-form-proof span {
  min-height: 32px;
  padding: 0.42rem 0.62rem;
  border-color: rgba(240, 206, 122, 0.18);
  border-radius: 999px;
  background: rgba(240, 206, 122, 0.055);
  color: rgba(240, 206, 122, 0.78);
  font-size: 0.62rem;
}

body[data-page="/contacto/"] .contact-form-card .site-form {
  gap: 1rem;
}

body[data-page="/contacto/"] .site-form label {
  gap: 0.5rem;
}

body[data-page="/contacto/"] .site-form label > span {
  color: rgba(246, 239, 228, 0.74);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.045em;
}

body[data-page="/contacto/"] .site-form input,
body[data-page="/contacto/"] .site-form select,
body[data-page="/contacto/"] .site-form textarea {
  min-height: 54px;
  padding: 0.95rem 1rem;
  border-color: rgba(240, 206, 122, 0.17);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.01)),
    rgba(3, 5, 5, 0.66);
  color: #fff8ea;
  font-weight: 650;
  transition: border-color 170ms ease, box-shadow 170ms ease, background 170ms ease;
}

body[data-page="/contacto/"] .site-form input::placeholder,
body[data-page="/contacto/"] .site-form textarea::placeholder {
  color: rgba(246, 239, 228, 0.34);
}

body[data-page="/contacto/"] .site-form input:focus,
body[data-page="/contacto/"] .site-form select:focus,
body[data-page="/contacto/"] .site-form textarea:focus {
  outline: 0;
  border-color: rgba(240, 206, 122, 0.62);
  background:
    linear-gradient(180deg, rgba(240, 206, 122, 0.055), rgba(255, 255, 255, 0.012)),
    rgba(3, 5, 5, 0.76);
  box-shadow:
    0 0 0 3px rgba(240, 206, 122, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

body[data-page="/contacto/"] .site-form textarea {
  min-height: 150px;
  resize: vertical;
}

body[data-page="/contacto/"] .contact-form-actions .button-primary {
  min-height: 54px;
  color: #070907;
  background: linear-gradient(135deg, #f5ca70, #c78f39);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.24),
    0 0 28px rgba(240, 206, 122, 0.12);
}

body[data-page="/contacto/"] .contact-form-actions .button-primary:hover,
body[data-page="/contacto/"] .contact-form-actions .button-primary:focus-visible {
  box-shadow:
    0 22px 54px rgba(0, 0, 0, 0.3),
    0 0 34px rgba(240, 206, 122, 0.18);
  transform: translateY(-1px);
}

body[data-page="/contacto/"] .contact-form-actions .form-note {
  color: rgba(246, 239, 228, 0.62);
  font-size: 0.95rem;
  line-height: 1.55;
}

body[data-page="/contacto/"] .contact-side-stack {
  grid-template-columns: minmax(330px, 1fr) minmax(280px, 0.72fr) minmax(290px, 0.82fr);
  gap: clamp(0.9rem, 1.6vw, 1.25rem);
}

body[data-page="/contacto/"] .contact-visual-card,
body[data-page="/contacto/"] .contact-check-panel,
body[data-page="/contacto/"] .contact-channel-grid {
  min-height: 320px;
}

body[data-page="/contacto/"] .contact-visual-card {
  border-color: rgba(240, 206, 122, 0.2);
  background: rgba(255, 255, 255, 0.02);
}

body[data-page="/contacto/"] .contact-visual-card figcaption {
  background: rgba(5, 7, 6, 0.66);
}

body[data-page="/contacto/"] .contact-visual-card strong {
  max-width: 18ch;
  font-size: clamp(1.35rem, 1.9vw, 2rem);
}

body[data-page="/contacto/"] .contact-check-panel {
  display: grid;
  align-content: start;
  gap: 1rem;
  padding: clamp(1rem, 1.8vw, 1.35rem);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(5, 8, 7, 0.58);
}

body[data-page="/contacto/"] .contact-brief-grid {
  display: grid;
  gap: 0.7rem;
}

body[data-page="/contacto/"] .contact-brief-grid article {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 0.55rem 0.72rem;
  padding: 0.78rem;
  border: 1px solid rgba(240, 206, 122, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.022);
}

body[data-page="/contacto/"] .contact-brief-grid span {
  grid-row: 1 / span 2;
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border: 1px solid rgba(240, 206, 122, 0.32);
  border-radius: 50%;
  color: #f0ce7a;
  font-size: 0.62rem;
  font-weight: 950;
}

body[data-page="/contacto/"] .contact-brief-grid strong {
  color: #fff8ea;
  font-size: 0.95rem;
}

body[data-page="/contacto/"] .contact-brief-grid small {
  color: rgba(246, 239, 228, 0.62);
  font-size: 0.8rem;
  line-height: 1.38;
}

body[data-page="/contacto/"] .contact-channel-grid {
  grid-template-columns: 1fr;
  align-content: stretch;
}

body[data-page="/contacto/"] .contact-channel {
  min-height: 0;
  align-content: center;
  padding: 0.92rem 1rem;
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(240, 206, 122, 0.055), rgba(255, 255, 255, 0.014)),
    rgba(255, 255, 255, 0.022);
}

body[data-page="/contacto/"] .contact-channel:hover,
body[data-page="/contacto/"] .contact-channel:focus-visible {
  border-color: rgba(240, 206, 122, 0.36);
  background:
    linear-gradient(145deg, rgba(240, 206, 122, 0.09), rgba(255, 255, 255, 0.02)),
    rgba(255, 255, 255, 0.028);
}

body[data-page="/contacto/"] .contact-configurator-cta {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 0.35fr) minmax(0, 1fr) auto;
  gap: 0.6rem 1rem;
  align-items: center;
  padding: clamp(1rem, 1.8vw, 1.35rem);
  border: 1px solid rgba(240, 206, 122, 0.34);
  border-radius: 8px;
  background:
    radial-gradient(circle at 100% 0%, rgba(240, 206, 122, 0.18), transparent 16rem),
    linear-gradient(135deg, rgba(240, 206, 122, 0.11), rgba(255, 255, 255, 0.018)),
    rgba(5, 8, 7, 0.62);
  color: inherit;
  text-decoration: none;
  box-shadow:
    0 20px 54px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
  transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body[data-page="/contacto/"] .contact-configurator-cta span {
  color: rgba(240, 206, 122, 0.76);
  font-size: 0.68rem;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-configurator-cta strong {
  color: #fff8ea;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.35rem, 1.8vw, 1.8rem);
  line-height: 1.05;
}

body[data-page="/contacto/"] .contact-configurator-cta em {
  color: rgba(246, 239, 228, 0.64);
  font-style: normal;
  line-height: 1.45;
}

body[data-page="/contacto/"] .contact-configurator-cta i {
  justify-self: end;
  min-width: 150px;
  padding: 0.78rem 1rem;
  border-radius: 8px;
  background: linear-gradient(135deg, #f5ca70, #c78f39);
  color: #070907;
  font-size: 0.74rem;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-align: center;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-configurator-cta:hover,
body[data-page="/contacto/"] .contact-configurator-cta:focus-visible {
  border-color: rgba(240, 206, 122, 0.58);
  box-shadow:
    0 26px 70px rgba(0, 0, 0, 0.3),
    0 0 30px rgba(240, 206, 122, 0.12);
  transform: translateY(-2px);
}

@media (max-width: 1180px) {
  body[data-page="/contacto/"] .contact-command-actions,
  body[data-page="/contacto/"] .contact-form-card,
  body[data-page="/contacto/"] .contact-side-stack,
  body[data-page="/contacto/"] .contact-configurator-cta {
    grid-template-columns: 1fr;
  }

  body[data-page="/contacto/"] .contact-configurator-cta i {
    width: 100%;
    justify-self: stretch;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] .contact-command-panel h3 {
    max-width: 10.5ch;
  }

  body[data-page="/contacto/"] .contact-form-card h2 {
    max-width: 9.8ch;
  }

  body[data-page="/contacto/"] .contact-side-stack {
    gap: 0.85rem;
  }
}

/* V4.51 contact refinement: no duplicated hero CTAs and a structured premium briefing form. */
body[data-page="/contacto/"] .contact-command-panel {
  width: min(100%, 500px);
}

body[data-page="/contacto/"] .contact-command-panel h3 {
  max-width: 12ch;
}

body[data-page="/contacto/"] .contact-command-actions .button-primary {
  color: #070907;
}

body[data-page="/contacto/"] .contact-command-note {
  max-width: 34ch;
  padding-top: 0.95rem;
  color: rgba(246, 239, 228, 0.62);
  font-size: 0.88rem;
  font-weight: 650;
  letter-spacing: 0;
  line-height: 1.5;
  text-transform: none;
}

body[data-page="/contacto/"] .contact-intro-rail {
  gap: 0.7rem;
  margin-bottom: clamp(1.15rem, 2.5vw, 1.9rem);
}

body[data-page="/contacto/"] .contact-intro-rail article {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 0.2rem 0.82rem;
  min-height: 104px;
  padding: 1rem 1.05rem;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
    rgba(5, 8, 7, 0.5);
}

body[data-page="/contacto/"] .contact-intro-rail span {
  grid-row: 1 / span 2;
  align-self: start;
}

body[data-page="/contacto/"] .contact-intro-rail strong {
  margin-top: 0.1rem;
  font-size: clamp(1.02rem, 1.15vw, 1.2rem);
}

body[data-page="/contacto/"] .contact-intro-rail small {
  margin-top: 0.2rem;
  max-width: 30ch;
}

body[data-page="/contacto/"] .contact-form-card {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.05rem, 1.9vw, 1.45rem);
  padding: clamp(1.45rem, 2.7vw, 2.35rem);
  overflow: hidden;
}

body[data-page="/contacto/"] .contact-form-heading {
  display: grid;
  grid-template-columns: minmax(260px, 0.46fr) minmax(280px, 0.44fr) auto;
  gap: clamp(1rem, 2.5vw, 2rem);
  align-items: end;
  padding-bottom: clamp(1rem, 2vw, 1.35rem);
  border-bottom: 1px solid rgba(240, 206, 122, 0.16);
}

body[data-page="/contacto/"] .contact-form-heading > div {
  min-width: 0;
}

body[data-page="/contacto/"] .contact-form-card h2 {
  max-width: 12ch;
  margin: 0;
  font-size: clamp(2.75rem, 3.7vw, 4.25rem);
  line-height: 0.96;
}

body[data-page="/contacto/"] .contact-form-intro {
  max-width: 42ch;
  margin: 0;
  align-self: end;
  color: rgba(246, 239, 228, 0.72);
  font-size: clamp(0.95rem, 1vw, 1.05rem);
}

body[data-page="/contacto/"] .contact-form-proof {
  justify-self: end;
  align-self: end;
  justify-content: flex-end;
  max-width: 280px;
}

body[data-page="/contacto/"] .contact-form-card .site-form {
  display: grid;
  gap: 0.85rem;
}

body[data-page="/contacto/"] .contact-form-section {
  position: relative;
  display: grid;
  gap: 0.82rem;
  padding: clamp(0.95rem, 1.7vw, 1.15rem);
  border: 1px solid rgba(240, 206, 122, 0.14);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.01)),
    rgba(2, 5, 5, 0.34);
}

body[data-page="/contacto/"] .contact-form-section-label {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  min-height: 28px;
  padding: 0.28rem 0.58rem;
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 999px;
  color: rgba(240, 206, 122, 0.76);
  font-size: 0.62rem;
  font-weight: 950;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-form-fields {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.82rem;
}

body[data-page="/contacto/"] .contact-form-section.is-message textarea {
  min-height: 142px;
}

body[data-page="/contacto/"] .contact-form-actions {
  display: grid;
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
  gap: clamp(0.9rem, 1.8vw, 1.25rem);
  align-items: center;
  padding-top: 0.2rem;
}

body[data-page="/contacto/"] .contact-form-actions .button-primary {
  width: 100%;
}

body[data-page="/contacto/"] .contact-check-panel {
  gap: 0.92rem;
}

body[data-page="/contacto/"] .contact-check-panel .panel-label {
  margin-bottom: 0;
}

body[data-page="/contacto/"] .contact-brief-grid {
  gap: 0.72rem;
}

body[data-page="/contacto/"] .contact-brief-grid article {
  min-height: 0;
  padding: 0.82rem;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)),
    rgba(3, 6, 6, 0.44);
}

body[data-page="/contacto/"] .contact-brief-grid strong {
  font-size: 0.9rem;
}

body[data-page="/contacto/"] .contact-brief-grid small {
  font-size: 0.76rem;
}

body[data-page="/contacto/"] .contact-configurator-cta {
  grid-template-columns: minmax(170px, 0.24fr) minmax(0, 1fr) minmax(170px, auto);
  gap: 0.25rem 1.1rem;
}

body[data-page="/contacto/"] .contact-configurator-cta span {
  grid-column: 1;
  grid-row: 1;
}

body[data-page="/contacto/"] .contact-configurator-cta strong {
  grid-column: 2;
  grid-row: 1;
}

body[data-page="/contacto/"] .contact-configurator-cta em {
  grid-column: 2;
  grid-row: 2;
}

body[data-page="/contacto/"] .contact-configurator-cta i {
  grid-column: 3;
  grid-row: 1 / span 2;
  align-self: center;
  min-width: 172px;
}

@media (max-width: 1180px) {
  body[data-page="/contacto/"] .contact-form-heading,
  body[data-page="/contacto/"] .contact-form-actions,
  body[data-page="/contacto/"] .contact-configurator-cta {
    grid-template-columns: 1fr;
  }

  body[data-page="/contacto/"] .contact-form-proof,
  body[data-page="/contacto/"] .contact-configurator-cta i {
    justify-self: stretch;
  }

  body[data-page="/contacto/"] .contact-configurator-cta span,
  body[data-page="/contacto/"] .contact-configurator-cta strong,
  body[data-page="/contacto/"] .contact-configurator-cta em,
  body[data-page="/contacto/"] .contact-configurator-cta i {
    grid-column: auto;
    grid-row: auto;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] .contact-intro-rail,
  body[data-page="/contacto/"] .contact-form-fields {
    grid-template-columns: 1fr;
  }

  body[data-page="/contacto/"] .contact-form-card h2 {
    font-size: clamp(2.6rem, 11vw, 3.45rem);
  }
}

/* V4.52 contact form table: compact horizontal briefing surface. */
body[data-page="/contacto/"] .contact-form-card {
  grid-template-columns: minmax(245px, 0.26fr) minmax(0, 0.74fr);
  gap: clamp(1.1rem, 2vw, 1.65rem);
  align-items: stretch;
  padding: clamp(1.15rem, 2vw, 1.75rem);
}

body[data-page="/contacto/"] .contact-form-heading {
  grid-template-columns: 1fr;
  gap: 0.95rem;
  align-content: center;
  align-items: start;
  padding: 0 clamp(1rem, 1.8vw, 1.35rem) 0 0;
  border-right: 1px solid rgba(240, 206, 122, 0.14);
  border-bottom: 0;
}

body[data-page="/contacto/"] .contact-form-card h2 {
  max-width: 8.8ch;
  font-size: clamp(2.35rem, 3.05vw, 3.55rem);
  line-height: 0.97;
}

body[data-page="/contacto/"] .contact-form-intro {
  max-width: 25ch;
  font-size: 0.94rem;
  line-height: 1.5;
}

body[data-page="/contacto/"] .contact-form-proof {
  justify-self: start;
  justify-content: flex-start;
  max-width: 240px;
  margin-top: 0;
}

body[data-page="/contacto/"] .contact-form-card .site-form {
  grid-template-columns: minmax(0, 1.08fr) minmax(310px, 0.92fr);
  grid-template-areas:
    "data message"
    "data actions";
  gap: 0.78rem;
  align-items: stretch;
}

body[data-page="/contacto/"] .contact-form-section {
  padding: 0.82rem;
}

body[data-page="/contacto/"] .contact-form-section:not(.is-message) {
  grid-area: data;
}

body[data-page="/contacto/"] .contact-form-section.is-message {
  grid-area: message;
}

body[data-page="/contacto/"] .contact-form-section-label {
  min-height: 25px;
  padding: 0.22rem 0.52rem;
}

body[data-page="/contacto/"] .contact-form-fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.68rem;
}

body[data-page="/contacto/"] .site-form label {
  gap: 0.36rem;
}

body[data-page="/contacto/"] .site-form input,
body[data-page="/contacto/"] .site-form select,
body[data-page="/contacto/"] .site-form textarea {
  min-height: 48px;
  padding: 0.78rem 0.88rem;
}

body[data-page="/contacto/"] .contact-form-section.is-message textarea {
  min-height: 150px;
}

body[data-page="/contacto/"] .contact-form-actions {
  grid-area: actions;
  grid-template-columns: minmax(190px, 240px) minmax(0, 1fr);
  gap: 0.78rem;
  align-self: end;
  padding-top: 0;
}

body[data-page="/contacto/"] .contact-form-actions .button-primary {
  min-height: 50px;
}

body[data-page="/contacto/"] .contact-form-actions .form-note {
  font-size: 0.84rem;
  line-height: 1.42;
}

@media (max-width: 1180px) {
  body[data-page="/contacto/"] .contact-form-card,
  body[data-page="/contacto/"] .contact-form-card .site-form,
  body[data-page="/contacto/"] .contact-form-actions {
    grid-template-columns: 1fr;
    grid-template-areas: none;
  }

  body[data-page="/contacto/"] .contact-form-heading {
    padding: 0 0 1rem;
    border-right: 0;
    border-bottom: 1px solid rgba(240, 206, 122, 0.14);
  }

  body[data-page="/contacto/"] .contact-form-section,
  body[data-page="/contacto/"] .contact-form-section:not(.is-message),
  body[data-page="/contacto/"] .contact-form-section.is-message,
  body[data-page="/contacto/"] .contact-form-actions {
    grid-area: auto;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] .contact-form-fields {
    grid-template-columns: 1fr;
  }
}

/* Portfolio masonry reset: three visual columns, uneven heights, no large holes. */
body[data-page="/portfolio/"] .portfolio-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  gap: 8px;
  padding: 8px;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-top: 0;
  border-radius: 0 0 8px 8px;
  background: #020403;
}

body[data-page="/portfolio/"] .portfolio-column {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 8px;
}

body[data-page="/portfolio/"] .portfolio-tile,
body[data-page="/portfolio/"] .portfolio-note-tile,
body[data-page="/portfolio/"] .portfolio-note-tile.is-wide {
  display: block !important;
  width: 100%;
  min-height: 0 !important;
  margin: 0;
  grid-column: auto !important;
  grid-row: auto !important;
}

body[data-page="/portfolio/"] .portfolio-tile {
  border-radius: 4px;
  background: #080b0a;
}

body[data-page="/portfolio/"] .portfolio-tile.is-cover {
  aspect-ratio: 1 / 0.78;
}

body[data-page="/portfolio/"] .portfolio-tile.is-vertical-feature {
  aspect-ratio: 1 / 1.36;
}

body[data-page="/portfolio/"] .portfolio-tile.is-detail {
  aspect-ratio: 1 / 0.62;
}

body[data-page="/portfolio/"] .portfolio-tile.is-panorama {
  aspect-ratio: 1 / 0.52;
}

body[data-page="/portfolio/"] .portfolio-tile.is-large {
  aspect-ratio: 1 / 0.86;
}

body[data-page="/portfolio/"] .portfolio-tile.is-wide {
  aspect-ratio: 1 / 0.66;
}

body[data-page="/portfolio/"] .portfolio-tile.is-medium {
  aspect-ratio: 1 / 1.02;
}

body[data-page="/portfolio/"] .portfolio-tile.is-tall {
  aspect-ratio: 1 / 1.48;
}

body[data-page="/portfolio/"] .portfolio-tile.is-square {
  aspect-ratio: 1 / 1;
}

body[data-page="/portfolio/"] .portfolio-tile:nth-of-type(6n + 2) {
  aspect-ratio: 1 / 1.22;
}

body[data-page="/portfolio/"] .portfolio-tile:nth-of-type(7n + 4) {
  aspect-ratio: 1 / 0.58;
}

body[data-page="/portfolio/"] .portfolio-tile:nth-of-type(9n + 5) {
  aspect-ratio: 1 / 1.42;
}

body[data-page="/portfolio/"] .portfolio-tile img {
  height: 100%;
  object-fit: cover;
}

body[data-page="/portfolio/"] .portfolio-note-tile {
  padding: 1.35rem;
  border-radius: 4px;
  background:
    linear-gradient(135deg, rgba(214, 179, 90, 0.11), transparent 54%),
    #060806;
}

body[data-page="/portfolio/"] .portfolio-note-tile p {
  max-width: 16ch;
  font-size: clamp(1.28rem, 2vw, 1.8rem);
}

@media (max-width: 1100px) {
  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 680px) {
  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: 1fr !important;
    padding: 6px;
  }

  body[data-page="/portfolio/"] .portfolio-column {
    gap: 6px;
  }
}

/* Portfolio reference direction: compact editorial collage plus horizontal category strips. */
body[data-page="/portfolio/"] .portfolio-hero {
  position: relative;
  display: block;
  width: 100%;
  min-height: clamp(430px, 44vw, 620px);
  margin: 0;
  padding: 0;
  overflow: hidden;
  border-bottom: 1px solid rgba(214, 179, 90, 0.12);
  background: #020403;
}

body[data-page="/portfolio/"] .portfolio-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(2, 4, 3, 0.94) 0%, rgba(2, 4, 3, 0.72) 34%, rgba(2, 4, 3, 0.15) 68%, rgba(2, 4, 3, 0.5) 100%),
    linear-gradient(180deg, rgba(2, 4, 3, 0.06), rgba(2, 4, 3, 0.72));
  pointer-events: none;
}

body[data-page="/portfolio/"] .portfolio-hero-copy {
  position: relative;
  z-index: 2;
  width: min(100% - 70px, 1380px);
  min-height: clamp(430px, 44vw, 620px);
  margin: 0 auto;
  padding: clamp(5.6rem, 9vw, 9rem) 0 clamp(3rem, 5vw, 5rem);
}

body[data-page="/portfolio/"] .portfolio-hero h1 {
  max-width: 12ch;
  font-size: clamp(3.3rem, 6.5vw, 6.8rem);
  line-height: 0.92;
}

body[data-page="/portfolio/"] .portfolio-hero h1 span {
  color: #f1c463;
}

body[data-page="/portfolio/"] .portfolio-hero .lead {
  max-width: 35rem;
  margin-top: 1.25rem;
}

body[data-page="/portfolio/"] .portfolio-hero-media {
  position: absolute;
  inset: 0;
  min-height: 0;
  height: 100%;
  border-radius: 0;
  box-shadow: none;
  background:
    linear-gradient(90deg, rgba(2, 4, 3, 0.5), rgba(2, 4, 3, 0.1)),
    url("img/portfolio/promotoras/promotoras-036.webp") center / cover no-repeat,
    #050706;
}

body[data-page="/portfolio/"] .portfolio-hero-media::before {
  content: none;
}

body[data-page="/portfolio/"] .portfolio-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 1;
  filter: saturate(0.98) contrast(1.05) brightness(0.76);
}

body[data-page="/portfolio/"] .portfolio-toolbar,
body[data-page="/portfolio/"] .portfolio-gallery-shell,
body[data-page="/portfolio/"] .portfolio-load-panel,
body[data-page="/portfolio/"] .portfolio-cta,
body[data-page="/portfolio/"] .portfolio-internal-links {
  width: min(100% - 64px, 1380px);
  margin-right: auto;
  margin-left: auto;
}

body[data-page="/portfolio/"] .portfolio-toolbar {
  position: relative;
  top: auto;
  z-index: 5;
  margin-top: 18px;
  padding: 14px 18px;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  background: rgba(3, 5, 4, 0.94);
}

body[data-page="/portfolio/"] .portfolio-filter-group {
  gap: 0.44rem;
}

body[data-page="/portfolio/"] .portfolio-filter-group button {
  min-height: 34px;
  padding: 0 0.85rem;
  border-radius: 4px;
  font-size: 0.68rem;
}

body[data-page="/portfolio/"] .portfolio-gallery-shell {
  padding: 8px;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-top: 0;
  border-radius: 0 0 8px 8px;
  background: #020403;
}

body[data-page="/portfolio/"] .portfolio-grid {
  display: grid !important;
  width: 100%;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  grid-auto-flow: dense;
  grid-auto-rows: clamp(66px, 6.2vw, 92px);
  gap: 6px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body[data-page="/portfolio/"] .portfolio-tile,
body[data-page="/portfolio/"] .portfolio-strip-tile {
  position: relative;
  display: block !important;
  width: 100%;
  min-height: 0 !important;
  margin: 0;
  overflow: hidden;
  border: 0;
  border-radius: 4px;
  background: #070a09;
  cursor: pointer;
}

body[data-page="/portfolio/"] .portfolio-tile.is-cover,
body[data-page="/portfolio/"] .portfolio-tile.is-vertical-feature {
  grid-column: span 4 !important;
  grid-row: span 4 !important;
}

body[data-page="/portfolio/"] .portfolio-tile.is-wide,
body[data-page="/portfolio/"] .portfolio-tile.is-detail {
  grid-column: span 4 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-tile.is-panorama,
body[data-page="/portfolio/"] .portfolio-tile.is-large {
  grid-column: span 6 !important;
  grid-row: span 3 !important;
}

body[data-page="/portfolio/"] .portfolio-tile.is-medium {
  grid-column: span 3 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-tile.is-tall {
  grid-column: span 3 !important;
  grid-row: span 4 !important;
}

body[data-page="/portfolio/"] .portfolio-tile.is-square {
  grid-column: span 3 !important;
  grid-row: span 3 !important;
}

body[data-page="/portfolio/"] .portfolio-tile img,
body[data-page="/portfolio/"] .portfolio-strip-tile img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.96) contrast(1.04) brightness(0.86);
  transition: transform 0.35s ease, filter 0.35s ease;
}

body[data-page="/portfolio/"] .portfolio-tile::after,
body[data-page="/portfolio/"] .portfolio-strip-tile::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 44%, rgba(0, 0, 0, 0.55));
  opacity: 0;
  transition: opacity 0.24s ease;
}

body[data-page="/portfolio/"] .portfolio-tile span,
body[data-page="/portfolio/"] .portfolio-strip-tile span {
  position: absolute;
  right: 0.6rem;
  bottom: 0.5rem;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 0.45rem;
  opacity: 0;
  color: #f2c86d;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  transform: translateY(6px);
  transition: opacity 0.24s ease, transform 0.24s ease;
}

body[data-page="/portfolio/"] .portfolio-tile span strong,
body[data-page="/portfolio/"] .portfolio-strip-tile span strong {
  color: rgba(255, 248, 234, 0.72);
}

body[data-page="/portfolio/"] .portfolio-tile span em,
body[data-page="/portfolio/"] .portfolio-strip-tile span em {
  font-style: normal;
}

body[data-page="/portfolio/"] .portfolio-tile:hover img,
body[data-page="/portfolio/"] .portfolio-tile:focus-visible img,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover img,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible img {
  transform: scale(1.035);
  filter: saturate(1.03) contrast(1.07) brightness(0.94);
}

body[data-page="/portfolio/"] .portfolio-tile:hover::after,
body[data-page="/portfolio/"] .portfolio-tile:focus-visible::after,
body[data-page="/portfolio/"] .portfolio-tile:hover span,
body[data-page="/portfolio/"] .portfolio-tile:focus-visible span,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover::after,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible::after,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover span,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible span {
  opacity: 1;
  transform: translateY(0);
}

body[data-page="/portfolio/"] [data-portfolio-item].is-hidden {
  display: none !important;
}

body[data-page="/portfolio/"] .portfolio-strip {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(214, 179, 90, 0.18);
}

body[data-page="/portfolio/"] .portfolio-strip-head {
  margin-bottom: 8px;
}

body[data-page="/portfolio/"] .portfolio-strip h2 {
  margin: 0;
  color: #f1c463;
  font-family: var(--font-body, Inter, Arial, sans-serif);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body[data-page="/portfolio/"] .portfolio-strip-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
}

body[data-page="/portfolio/"] .portfolio-strip-tile {
  aspect-ratio: 16 / 5.2;
}

body[data-page="/portfolio/"] .portfolio-load-panel {
  margin-top: 8px;
  border-radius: 0;
}

@media (max-width: 1180px) {
  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  }

  body[data-page="/portfolio/"] .portfolio-tile.is-cover,
  body[data-page="/portfolio/"] .portfolio-tile.is-vertical-feature,
  body[data-page="/portfolio/"] .portfolio-tile.is-panorama,
  body[data-page="/portfolio/"] .portfolio-tile.is-large,
  body[data-page="/portfolio/"] .portfolio-tile.is-wide,
  body[data-page="/portfolio/"] .portfolio-tile.is-detail {
    grid-column: span 4 !important;
    grid-row: span 3 !important;
  }

  body[data-page="/portfolio/"] .portfolio-strip-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-hero {
    min-height: auto;
    padding: 0;
  }

  body[data-page="/portfolio/"] .portfolio-hero-copy {
    width: calc(100% - 12px);
    min-height: 0;
    padding: 76px 22px 34px;
  }

  body[data-page="/portfolio/"] .portfolio-hero h1 {
    max-width: 10ch;
    font-size: 2.65rem;
  }

  body[data-page="/portfolio/"] .portfolio-hero-media {
    position: relative;
    display: block;
    min-height: 320px;
  }

  body[data-page="/portfolio/"] .portfolio-hero-media img {
    opacity: 1;
  }

  body[data-page="/portfolio/"] .portfolio-toolbar,
  body[data-page="/portfolio/"] .portfolio-gallery-shell,
  body[data-page="/portfolio/"] .portfolio-load-panel,
  body[data-page="/portfolio/"] .portfolio-cta,
  body[data-page="/portfolio/"] .portfolio-internal-links {
    width: calc(100% - 12px);
  }

  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: 1fr !important;
    grid-auto-rows: auto;
    gap: 6px;
  }

  body[data-page="/portfolio/"] .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-tile.is-cover,
  body[data-page="/portfolio/"] .portfolio-tile.is-vertical-feature,
  body[data-page="/portfolio/"] .portfolio-tile.is-detail,
  body[data-page="/portfolio/"] .portfolio-tile.is-panorama,
  body[data-page="/portfolio/"] .portfolio-tile.is-medium,
  body[data-page="/portfolio/"] .portfolio-tile.is-wide,
  body[data-page="/portfolio/"] .portfolio-tile.is-large,
  body[data-page="/portfolio/"] .portfolio-tile.is-tall,
  body[data-page="/portfolio/"] .portfolio-tile.is-square {
    grid-column: 1 !important;
    grid-row: auto !important;
    aspect-ratio: 16 / 10;
  }

  body[data-page="/portfolio/"] .portfolio-tile.is-cover,
  body[data-page="/portfolio/"] .portfolio-tile.is-large,
  body[data-page="/portfolio/"] .portfolio-tile.is-tall {
    aspect-ratio: 4 / 5;
  }

  body[data-page="/portfolio/"] .portfolio-strip-grid {
    grid-template-columns: 1fr;
  }

body[data-page="/portfolio/"] .portfolio-strip-tile {
    aspect-ratio: 16 / 7;
  }
}

/* V4.53 contact form: wider briefing desk with no tall data column. */
body[data-page="/contacto/"] .contact-form-card {
  grid-template-columns: minmax(225px, 0.22fr) minmax(0, 0.78fr);
  gap: clamp(1rem, 1.8vw, 1.5rem);
}

body[data-page="/contacto/"] .contact-form-card h2 {
  max-width: 12ch;
  font-size: clamp(2.1rem, 2.55vw, 3.05rem);
}

body[data-page="/contacto/"] .contact-form-intro {
  max-width: 28ch;
  font-size: 0.9rem;
}

body[data-page="/contacto/"] .contact-form-card .site-form {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.43fr);
  grid-template-areas:
    "data data"
    "message actions";
  gap: 0.72rem;
}

body[data-page="/contacto/"] .contact-form-section:not(.is-message) {
  grid-area: data;
}

body[data-page="/contacto/"] .contact-form-fields {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.62rem;
}

body[data-page="/contacto/"] .contact-form-section.is-message {
  grid-area: message;
}

body[data-page="/contacto/"] .contact-form-section.is-message textarea {
  min-height: 132px;
}

body[data-page="/contacto/"] .contact-form-actions {
  grid-area: actions;
  grid-template-columns: 1fr;
  align-content: end;
}

body[data-page="/contacto/"] .contact-form-actions .button-primary {
  min-height: 48px;
}

body[data-page="/contacto/"] .contact-form-actions .button-primary:hover,
body[data-page="/contacto/"] .contact-form-actions .button-primary:focus-visible {
  color: #070907;
  background: linear-gradient(135deg, #f7d17f, #c99038);
}

@media (max-width: 1180px) {
  body[data-page="/contacto/"] .contact-form-card .site-form {
    grid-template-columns: 1fr;
    grid-template-areas: none;
  }

  body[data-page="/contacto/"] .contact-form-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* V4.61 portfolio: ratio-preserving editorial masonry. */
body[data-page="/portfolio/"] .portfolio-hero {
  min-height: clamp(300px, 30vw, 440px);
}

body[data-page="/portfolio/"] .portfolio-hero-copy,
body[data-page="/portfolio/"] .portfolio-toolbar,
body[data-page="/portfolio/"] .portfolio-gallery-shell,
body[data-page="/portfolio/"] .portfolio-load-panel,
body[data-page="/portfolio/"] .portfolio-cta,
body[data-page="/portfolio/"] .portfolio-internal-links {
  width: calc(100% - clamp(24px, 4vw, 76px));
  max-width: none;
}

body[data-page="/portfolio/"] .portfolio-toolbar {
  position: sticky;
  top: 72px;
  z-index: 20;
  align-items: center;
  justify-content: flex-start;
  gap: 0.65rem;
  margin-top: 10px;
  padding: 8px 10px;
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-radius: 6px 6px 0 0;
  background: rgba(3, 5, 4, 0.84);
  backdrop-filter: blur(18px);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.24);
}

body[data-page="/portfolio/"] .portfolio-toolbar > div:first-child {
  display: none;
}

body[data-page="/portfolio/"] .portfolio-filter-group {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 0.38rem;
  overflow-x: auto;
  scrollbar-width: thin;
}

body[data-page="/portfolio/"] .portfolio-filter-group button {
  flex: 0 0 auto;
  min-height: 30px;
  padding: 0 0.72rem;
  border-radius: 4px;
  border-color: rgba(214, 179, 90, 0.15);
  font-size: 0.63rem;
  letter-spacing: 0;
  background: rgba(255, 255, 255, 0.018);
}

body[data-page="/portfolio/"] .portfolio-filter-group button.is-active {
  color: #080907;
  border-color: rgba(236, 195, 105, 0.85);
  background: #ecc369;
}

body[data-page="/portfolio/"] .portfolio-gallery-shell {
  padding: 8px;
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-top: 0;
  border-radius: 0 0 6px 6px;
  background:
    radial-gradient(circle at 12% 8%, rgba(214, 179, 90, 0.055), transparent 22rem),
    #020403;
}

body[data-page="/portfolio/"] .portfolio-grid {
  display: block !important;
  column-count: 3;
  column-gap: 8px;
  grid-template-columns: none !important;
  grid-auto-rows: auto !important;
  grid-auto-flow: row !important;
  gap: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n),
body[data-page="/portfolio/"] .portfolio-strip-tile {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  grid-column: auto !important;
  grid-row: auto !important;
  aspect-ratio: auto !important;
  overflow: hidden;
  border: 1px solid rgba(214, 179, 90, 0);
  border-radius: 4px;
  background: #070908;
  box-shadow: none;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile.item-large {
  column-span: all;
  -webkit-column-span: all;
  margin-top: 10px !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile.item-large:first-child {
  margin-top: 0 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile.is-hidden,
body[data-page="/portfolio/"] .portfolio-strip-tile.is-hidden {
  display: none !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile img,
body[data-page="/portfolio/"] .portfolio-strip-tile img {
  display: block;
  width: 100% !important;
  max-width: 100%;
  height: auto !important;
  object-fit: contain !important;
  filter: saturate(0.98) contrast(1.03) brightness(0.94);
  transition: transform 0.6s ease, filter 0.6s ease;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile::after,
body[data-page="/portfolio/"] .portfolio-strip-tile::after {
  background: rgba(0, 0, 0, 0.22);
  opacity: 0;
  transition: opacity 0.6s ease;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile span,
body[data-page="/portfolio/"] .portfolio-strip-tile span {
  right: 8px;
  bottom: 8px;
  left: auto;
  padding: 0.34rem 0.46rem;
  border-radius: 3px;
  background: rgba(2, 3, 3, 0.7);
  opacity: 0;
  transform: translateY(4px);
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:hover,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:focus-visible,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible {
  border-color: rgba(214, 179, 90, 0.32);
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:hover img,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:focus-visible img,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover img,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible img {
  transform: scale(1.015);
  filter: brightness(0.82) saturate(1.02) contrast(1.04);
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:hover::after,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:focus-visible::after,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:hover span,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:focus-visible span,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover::after,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible::after,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover span,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible span {
  opacity: 1;
  transform: translateY(0);
}

body[data-page="/portfolio/"] .portfolio-strip {
  margin-top: 14px;
  padding: 10px 0 0;
  border-top: 1px solid rgba(214, 179, 90, 0.13);
}

body[data-page="/portfolio/"] .portfolio-strip-head {
  margin: 0 0 8px;
}

body[data-page="/portfolio/"] .portfolio-strip h2 {
  font-size: 0.72rem;
  letter-spacing: 0.13em;
  color: #d6b35a;
}

body[data-page="/portfolio/"] .portfolio-strip-grid {
  display: block !important;
  column-count: 3;
  column-gap: 8px;
  grid-template-columns: none !important;
  gap: 0 !important;
}

body[data-page="/portfolio/"] .portfolio-load-panel {
  margin-top: 8px;
  padding: 0.95rem 1rem;
  border-color: rgba(214, 179, 90, 0.14);
  background: rgba(3, 5, 4, 0.82);
}

body[data-page="/portfolio/"] .portfolio-cta {
  margin-top: 12px;
  min-height: 0;
  padding: clamp(1.25rem, 2.4vw, 2.4rem);
  border-color: rgba(214, 179, 90, 0.2);
}

body[data-page="/portfolio/"] .portfolio-lightbox figure {
  width: min(95vw, 1520px);
  height: 90vh;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  place-items: center;
  gap: 0.8rem;
}

body[data-page="/portfolio/"] .portfolio-lightbox img {
  width: auto !important;
  height: auto !important;
  max-width: 95vw !important;
  max-height: 84vh !important;
  object-fit: contain !important;
}

@media (max-width: 1100px) {
  body[data-page="/portfolio/"] .portfolio-grid,
  body[data-page="/portfolio/"] .portfolio-strip-grid {
    column-count: 2;
    column-gap: 6px;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n),
  body[data-page="/portfolio/"] .portfolio-strip-tile {
    margin-bottom: 6px !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-hero {
    min-height: 430px;
  }

  body[data-page="/portfolio/"] .portfolio-hero-copy,
  body[data-page="/portfolio/"] .portfolio-toolbar,
  body[data-page="/portfolio/"] .portfolio-gallery-shell,
  body[data-page="/portfolio/"] .portfolio-load-panel,
  body[data-page="/portfolio/"] .portfolio-cta,
  body[data-page="/portfolio/"] .portfolio-internal-links {
    width: calc(100% - 10px);
  }

  body[data-page="/portfolio/"] .portfolio-toolbar {
    top: 62px;
    padding: 6px;
  }

  body[data-page="/portfolio/"] .portfolio-gallery-shell {
    padding: 4px;
  }

  body[data-page="/portfolio/"] .portfolio-grid,
  body[data-page="/portfolio/"] .portfolio-strip-grid {
    column-count: 1;
    column-gap: 4px;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n),
  body[data-page="/portfolio/"] .portfolio-strip-tile {
    margin-bottom: 4px !important;
    border-radius: 3px;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile.item-large {
    margin-top: 4px !important;
  }

body[data-page="/portfolio/"] .portfolio-lightbox img {
    max-width: 94vw !important;
    max-height: 78vh !important;
  }
}

/* V4.62: move the shared vertical hero briefing to the right and make it useful. */
@media (min-width: 1181px) {
  body:not([data-page="/"]) .hero.hero-page.internal-hero.vertical-premium-hero,
  body:not([data-page="/"]) .hero.hero-immersive.internal-hero.vertical-premium-hero,
  body:not([data-page="/"]) .vertical-premium-hero {
    grid-template-columns: minmax(0, 650px) minmax(420px, 480px) !important;
    justify-content: space-between !important;
    column-gap: clamp(2.2rem, 5.5vw, 7rem) !important;
    padding-right: clamp(2rem, 5.6vw, 6.4rem) !important;
    padding-left: clamp(2rem, 5.2vw, 5.8rem) !important;
  }

  body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered {
    justify-self: end !important;
    justify-items: end !important;
  }
}

body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered,
body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered > .vertical-hero-brief {
  width: min(100%, 480px) !important;
  max-width: 480px !important;
}

body:not([data-page="/"]) .vertical-hero-brief {
  display: grid !important;
  gap: clamp(0.95rem, 1.45vw, 1.25rem) !important;
  padding: clamp(1.15rem, 1.8vw, 1.65rem) !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.018)),
    rgba(7, 9, 8, 0.82) !important;
}

body:not([data-page="/"]) .vertical-hero-brief .command-panel-top {
  margin: 0 !important;
  align-items: flex-start !important;
}

body:not([data-page="/"]) .vertical-brief-copy {
  display: grid;
  gap: 0.82rem;
  padding-bottom: clamp(0.95rem, 1.2vw, 1.15rem);
  border-bottom: 1px solid rgba(240, 206, 122, 0.12);
}

body:not([data-page="/"]) .vertical-brief-copy h3 {
  max-width: 17ch !important;
  color: var(--secondary-text);
  font-size: clamp(1.95rem, 2.35vw, 2.75rem) !important;
  line-height: 1 !important;
  letter-spacing: -0.035em;
}

body:not([data-page="/"]) .vertical-brief-copy p {
  max-width: 40ch;
  margin: 0;
  color: rgba(245, 239, 228, 0.72);
  font-size: clamp(0.96rem, 1vw, 1.08rem);
  line-height: 1.62;
}

body:not([data-page="/"]) .vertical-brief-list {
  display: grid;
  gap: 0;
}

body:not([data-page="/"]) .vertical-brief-row {
  display: grid;
  grid-template-columns: 2.4rem minmax(0, 0.68fr) minmax(0, 1.18fr);
  gap: 0.72rem;
  align-items: center;
  padding: 0.72rem 0;
  border-bottom: 1px solid rgba(240, 206, 122, 0.09);
}

body:not([data-page="/"]) .vertical-brief-row:first-child {
  padding-top: 0;
}

body:not([data-page="/"]) .vertical-brief-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

body:not([data-page="/"]) .vertical-brief-code {
  display: inline-grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border: 1px solid rgba(240, 206, 122, 0.38);
  border-radius: 999px;
  color: var(--secondary-gold);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.08em;
}

body:not([data-page="/"]) .vertical-brief-row strong {
  color: var(--secondary-text);
  font-size: 0.82rem;
  line-height: 1.16;
}

body:not([data-page="/"]) .vertical-brief-row small {
  display: -webkit-box;
  overflow: hidden;
  color: rgba(245, 239, 228, 0.61);
  font-size: 0.72rem;
  line-height: 1.42;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:not([data-page="/"]) .vertical-brief-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.44rem;
  padding-top: 0.1rem;
}

body:not([data-page="/"]) .vertical-brief-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 1.82rem;
  padding: 0.34rem 0.6rem;
  border: 1px solid rgba(240, 206, 122, 0.22);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.025);
  color: rgba(245, 239, 228, 0.72);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .vertical-brief-row {
    grid-template-columns: 2.3rem minmax(0, 1fr);
  }

  body:not([data-page="/"]) .vertical-brief-row small {
    grid-column: 2;
  }
}

/* V4.60 contacto final override: keep the briefing desk horizontal and visual. */
body[data-page="/contacto/"] .contact-form-card {
  display: grid !important;
  grid-template-columns: minmax(230px, 0.38fr) minmax(0, 1fr) !important;
  gap: clamp(1.1rem, 2vw, 1.55rem) !important;
  padding: clamp(1.25rem, 2.2vw, 1.85rem) !important;
}

body[data-page="/contacto/"] .contact-form-left {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  padding-right: clamp(0.9rem, 1.6vw, 1.35rem) !important;
  border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
}

body[data-page="/contacto/"] .contact-form-card .site-form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-areas: none !important;
  gap: 0.84rem !important;
}

body[data-page="/contacto/"] .contact-form-section,
body[data-page="/contacto/"] .contact-form-section:not(.is-message),
body[data-page="/contacto/"] .contact-form-section.is-message,
body[data-page="/contacto/"] .contact-form-actions {
  grid-area: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body[data-page="/contacto/"] .contact-form-fields {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.66rem !important;
}

body[data-page="/contacto/"] .contact-form-fields label:nth-child(9) {
  grid-column: 1 / -1 !important;
}

body[data-page="/contacto/"] .site-form input,
body[data-page="/contacto/"] .site-form select,
body[data-page="/contacto/"] .site-form textarea {
  min-height: 48px !important;
  padding: 0.72rem 0.82rem !important;
}

body[data-page="/contacto/"] .contact-form-section.is-message textarea {
  min-height: 128px !important;
}

body[data-page="/contacto/"] .contact-form-actions {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.38fr) minmax(0, 1fr) !important;
  gap: 1rem !important;
  align-items: center !important;
}

body[data-page="/contacto/"] .contact-visual-card {
  display: block !important;
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] .contact-form-card,
  body[data-page="/contacto/"] .contact-form-fields,
  body[data-page="/contacto/"] .contact-form-actions {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/contacto/"] .contact-form-left {
    padding-right: 0 !important;
    padding-bottom: 1.1rem !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  }

  body[data-page="/contacto/"] .contact-form-fields label:nth-child(9) {
    grid-column: auto !important;
  }
}

/* V4.69: align the three vertical hubs with the current home direction. */
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) {
  --vertical-home-shell: min(1280px, calc(100% - clamp(2rem, 7vw, 7.5rem)));
  --vertical-home-gold: #f0c66b;
  --vertical-home-gold-deep: #c99a45;
  --vertical-home-text: #fff8ee;
  --vertical-home-muted: rgba(255, 248, 238, 0.68);
  --vertical-home-line: rgba(240, 198, 107, 0.16);
  --vertical-home-panel: rgba(8, 10, 9, 0.78);
  background:
    radial-gradient(circle at 10% 7%, rgba(240, 198, 107, 0.1), transparent 26rem),
    radial-gradient(circle at 88% 18%, rgba(52, 76, 72, 0.18), transparent 34rem),
    linear-gradient(180deg, #020303 0%, #050807 48%, #020303 100%) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .page-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .site-header {
  min-height: 72px !important;
  padding-inline: clamp(1.25rem, 4vw, 4.5rem) !important;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12) !important;
  background:
    linear-gradient(180deg, rgba(2, 3, 3, 0.96), rgba(2, 3, 3, 0.82)),
    radial-gradient(circle at 100% 0%, rgba(240, 198, 107, 0.12), transparent 26rem) !important;
  backdrop-filter: blur(20px);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .site-nav a:not(.button) {
  color: rgba(255, 248, 238, 0.72) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .button,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .button-nav,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-link {
  min-height: 44px;
  border-radius: 999px !important;
  padding-inline: 1.18rem;
  font-family: Inter, system-ui, sans-serif;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  transition: transform 0.22s ease, border-color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .button-primary,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .button-nav {
  color: #0d0b06 !important;
  border-color: rgba(240, 198, 107, 0.72) !important;
  background:
    linear-gradient(135deg, #f4c964, #d8a04d 58%, #f0c66b) !important;
  box-shadow: 0 18px 48px rgba(216, 160, 77, 0.18) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .button-secondary {
  color: var(--vertical-home-text) !important;
  border-color: rgba(240, 198, 107, 0.34) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.012)),
    rgba(0, 0, 0, 0.32) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .button:hover,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-link:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 58px rgba(0, 0, 0, 0.34), 0 0 34px rgba(240, 198, 107, 0.1);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero {
  position: relative;
  display: grid !important;
  grid-template-columns: minmax(0, 0.97fr) minmax(430px, 0.58fr) !important;
  align-items: center !important;
  gap: clamp(2rem, 5vw, 5.8rem) !important;
  width: 100% !important;
  max-width: none !important;
  min-height: clamp(660px, calc(100svh - 72px), 860px) !important;
  margin: 0 !important;
  padding: clamp(5.5rem, 7.6vh, 7.5rem) clamp(2rem, 6.8vw, 6.5rem) clamp(2.2rem, 4.6vh, 4.4rem) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden;
  isolation: isolate;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(118deg, transparent 0 39%, rgba(240, 198, 107, 0.14) 39.08%, transparent 39.32% 100%),
    linear-gradient(126deg, transparent 0 70%, rgba(240, 198, 107, 0.08) 70.06%, transparent 70.28% 100%),
    linear-gradient(rgba(255, 255, 255, 0.026) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.016) 1px, transparent 1px);
  background-size: 100% 100%, 100% 100%, 100% 92px, 92px 100%;
  opacity: 0.52;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: -1;
  height: 34%;
  pointer-events: none;
  background: linear-gradient(180deg, transparent, #050807 84%);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero-media {
  position: absolute;
  inset: 0;
  z-index: -3;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 80% 18%, rgba(240, 198, 107, 0.08), transparent 24rem),
    linear-gradient(90deg, rgba(2, 3, 3, 0.9) 0%, rgba(2, 3, 3, 0.62) 42%, rgba(2, 3, 3, 0.86) 100%),
    linear-gradient(180deg, rgba(2, 3, 3, 0.14), rgba(2, 3, 3, 0.72) 86%);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.72) contrast(1.08) saturate(0.88) !important;
  transform: scale(1.02);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .hero-copy {
  position: relative;
  z-index: 1;
  width: 100% !important;
  max-width: 720px !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.78rem;
  margin: 0 0 1.1rem;
  color: var(--vertical-home-gold) !important;
  font-size: 0.74rem;
  font-weight: 900;
  letter-spacing: 0.16em;
  line-height: 1.2;
  text-transform: uppercase;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .eyebrow::before {
  content: "";
  width: 38px;
  height: 1px;
  background: currentColor;
  opacity: 0.72;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero h1 {
  max-width: 15ch !important;
  margin: 0 0 1.05rem !important;
  color: var(--vertical-home-text) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(3.75rem, 5.72vw, 6.15rem) !important;
  font-weight: 600 !important;
  line-height: 0.9 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero .lead {
  max-width: 58ch !important;
  color: rgba(255, 248, 238, 0.82) !important;
  font-size: clamp(0.98rem, 1.02vw, 1.1rem) !important;
  line-height: 1.58 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero .hero-note {
  max-width: 54ch !important;
  margin-top: 0.75rem !important;
  color: rgba(255, 248, 238, 0.68) !important;
  line-height: 1.46 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero .cta-row {
  margin-top: 1.15rem !important;
  gap: 0.78rem !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .meta-strip {
  display: flex !important;
  flex-wrap: wrap;
  gap: 0.65rem !important;
  margin-top: 0.9rem !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .meta-strip span {
  min-height: 34px !important;
  padding: 0.5rem 0.82rem !important;
  border: 1px solid rgba(240, 198, 107, 0.22) !important;
  border-radius: 999px !important;
  color: rgba(255, 248, 238, 0.82) !important;
  background: rgba(0, 0, 0, 0.32) !important;
  box-shadow: none !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .hero-panel-layered {
  position: relative;
  z-index: 1;
  justify-self: end !important;
  width: min(100%, 500px) !important;
  display: block !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .hero-panel-layered > .visual-frame,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .hero-panel-brand {
  display: none !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel {
  display: block !important;
  width: 100% !important;
  max-height: none !important;
  padding: clamp(1.05rem, 1.85vw, 1.55rem) !important;
  border: 1px solid rgba(240, 198, 107, 0.26) !important;
  border-radius: 8px !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(240, 198, 107, 0.12), transparent 18rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.066), rgba(255, 255, 255, 0.02)),
    rgba(6, 8, 7, 0.86) !important;
  box-shadow:
    0 34px 110px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
  backdrop-filter: blur(20px);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel .panel-label {
  margin-bottom: 0.72rem !important;
  color: rgba(255, 248, 238, 0.72) !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel h3 {
  max-width: 17ch !important;
  margin: 0 !important;
  color: var(--vertical-home-text) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(1.45rem, 2.02vw, 2.18rem) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel > p:not(.panel-label) {
  max-width: 45ch !important;
  margin: 0.76rem 0 0.9rem !important;
  color: var(--vertical-home-muted) !important;
  line-height: 1.46 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel .stat-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  border-top: 1px solid rgba(240, 198, 107, 0.18);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel .stat-pill,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel .stat-pill:nth-child(3) {
  display: grid !important;
  grid-template-columns: 2.7rem minmax(0, 1fr) !important;
  gap: 0.82rem !important;
  align-items: start !important;
  min-height: 0 !important;
  padding: 0.72rem 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel .stat-pill::before {
  content: "";
  grid-row: 1 / span 2;
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid rgba(240, 198, 107, 0.38);
  border-radius: 8px;
  background:
    radial-gradient(circle at 42% 38%, rgba(240, 198, 107, 0.34), transparent 36%),
    rgba(240, 198, 107, 0.07);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel .stat-pill strong {
  margin: 0 !important;
  color: var(--vertical-home-text) !important;
  font-size: 0.84rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.03em !important;
  text-transform: none !important;
  opacity: 1 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel .stat-pill span {
  display: block !important;
  margin: 0.18rem 0 0 !important;
  overflow: visible !important;
  color: rgba(255, 248, 238, 0.62) !important;
  font-size: 0.78rem !important;
  line-height: 1.36 !important;
  -webkit-line-clamp: initial !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-section,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-frame {
  position: relative;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(4.2rem, 7.2vw, 7rem) 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(240, 198, 107, 0.08) !important;
  border-radius: 0 !important;
  background:
    radial-gradient(circle at 82% 6%, rgba(240, 198, 107, 0.11), transparent 28rem),
    radial-gradient(circle at 10% 82%, rgba(55, 88, 78, 0.18), transparent 32rem),
    linear-gradient(180deg, #07100c 0%, #030504 100%) !important;
  box-shadow: none !important;
  overflow: hidden;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-section:nth-of-type(even),
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band:nth-of-type(even) {
  background:
    radial-gradient(circle at 12% 12%, rgba(240, 198, 107, 0.08), transparent 24rem),
    linear-gradient(180deg, #030504 0%, #07100c 100%) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-section::before,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band::before,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-frame::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.014) 1px, transparent 1px);
  background-size: 100% 88px, 88px 100%;
  opacity: 0.2;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-section > *,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band > *,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-frame > * {
  position: relative;
  z-index: 1;
  width: var(--vertical-home-shell) !important;
  max-width: 1280px !important;
  margin-inline: auto !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .dual-column,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-story-grid,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .split-section {
  display: grid !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(420px, 0.72fr) !important;
  gap: clamp(1.6rem, 4vw, 4.8rem) !important;
  align-items: center !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-heading,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .centered-heading {
  max-width: 900px !important;
  margin: 0 0 clamp(1.35rem, 2.4vw, 2.3rem) !important;
  text-align: left !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-heading h2,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-section h2,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band h2,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .split-section h2 {
  max-width: 18ch !important;
  margin-inline: 0 !important;
  color: var(--vertical-home-text) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(3.15rem, 4.8vw, 5.6rem) !important;
  font-weight: 600 !important;
  line-height: 0.92 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  text-wrap: balance;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .lead,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .case-richtext,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) p,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) li {
  color: var(--vertical-home-muted) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .case-richtext {
  max-width: none !important;
  padding: clamp(1rem, 1.8vw, 1.35rem) !important;
  border: 1px solid var(--vertical-home-line) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.016)),
    rgba(0, 0, 0, 0.26) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

@media (min-width: 981px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .editorial-visual-section .case-richtext {
    columns: 2 18rem;
    column-gap: clamp(1.2rem, 2vw, 2rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .editorial-visual-section .case-richtext p {
    break-inside: avoid;
  }
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .feature-list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.72rem !important;
  margin-top: 1.25rem !important;
  padding: 0 !important;
  list-style: none !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .feature-list li,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .compact-card,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .interface-panel,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) details,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .tool-card {
  border: 1px solid var(--vertical-home-line) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.015)),
    var(--vertical-home-panel) !important;
  box-shadow:
    0 24px 72px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
  backdrop-filter: blur(16px);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .feature-list li {
  min-height: 104px !important;
  padding: 1rem 1rem 1rem 2.75rem !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .feature-list li::before {
  left: 1rem !important;
  top: 1.22rem !important;
  border-color: rgba(240, 198, 107, 0.62) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-grid {
  gap: clamp(0.84rem, 1.4vw, 1.1rem) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .grid-3.items-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .grid-3.items-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card {
  min-height: 0 !important;
  padding: clamp(1rem, 1.5vw, 1.25rem) !important;
  transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card:hover {
  transform: translateY(-5px);
  border-color: rgba(240, 198, 107, 0.34) !important;
  box-shadow: 0 34px 92px rgba(0, 0, 0, 0.42), 0 0 34px rgba(240, 198, 107, 0.08) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-media {
  overflow: hidden;
  margin: calc(clamp(1rem, 1.5vw, 1.25rem) * -1) calc(clamp(1rem, 1.5vw, 1.25rem) * -1) 1rem !important;
  border-radius: 8px 8px 0 0 !important;
  border: 0 !important;
  aspect-ratio: 16 / 8.5 !important;
  background: #050807 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-media img,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .visual-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.78) contrast(1.08) saturate(0.94) !important;
  transition: transform 0.38s ease, filter 0.38s ease;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card:hover .card-media img,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .visual-frame:hover img {
  transform: scale(1.035);
  filter: brightness(0.9) contrast(1.1) saturate(1) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-kicker {
  color: rgba(255, 248, 238, 0.7) !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card h3 {
  color: var(--vertical-home-text) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.34rem, 1.65vw, 1.82rem) !important;
  font-weight: 600 !important;
  line-height: 1.02 !important;
  letter-spacing: 0 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card p:not(.card-kicker) {
  display: -webkit-box !important;
  min-height: 0 !important;
  overflow: hidden !important;
  color: rgba(255, 248, 238, 0.64) !important;
  font-size: 0.88rem !important;
  line-height: 1.5 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-link {
  width: fit-content !important;
  min-height: 34px !important;
  margin-top: auto !important;
  padding: 0.48rem 0.72rem !important;
  border: 1px solid rgba(240, 198, 107, 0.32) !important;
  background: rgba(240, 198, 107, 0.08) !important;
  color: var(--vertical-home-gold) !important;
  text-decoration: none !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-story-grid > .visual-frame,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-section-visual {
  min-height: clamp(310px, 32vw, 460px) !important;
  border: 1px solid rgba(240, 198, 107, 0.18) !important;
  border-radius: 8px !important;
  background: #050807 !important;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.34) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .visual-frame::after,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.02), rgba(0, 0, 0, 0.42)),
    radial-gradient(circle at 0% 0%, rgba(240, 198, 107, 0.12), transparent 36%);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band .dual-panel,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-brief-section .interface-panel {
  padding: clamp(1rem, 1.8vw, 1.45rem) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-brief-section .grid-1 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.7rem !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band:not(.vertical-brief-section) .dual-column {
  grid-template-columns: minmax(0, 0.82fr) minmax(460px, 0.86fr) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band:not(.vertical-brief-section) .dual-panel .grid-1 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.72rem !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band:not(.vertical-brief-section) .dual-panel .compact-card {
  min-height: 190px !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .faq-section > .section-heading,
body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .faq-section > .faq-list {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .faq-section {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.42fr) minmax(0, 0.78fr) !important;
  gap: clamp(1.5rem, 4vw, 4rem) !important;
  padding-inline: max((100vw - 1280px) / 2, clamp(2rem, 7vw, 7.5rem)) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .faq-section .faq-list {
  display: grid !important;
  gap: 0.72rem !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) details {
  padding: 0 !important;
  overflow: hidden !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) summary {
  min-height: 52px;
  padding: 0.9rem 1rem !important;
  color: var(--vertical-home-text) !important;
  font-weight: 900 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) details p {
  padding: 0 1rem 1rem !important;
  color: rgba(255, 248, 238, 0.64) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-final-cta {
  min-height: clamp(520px, 48vw, 680px) !important;
  display: grid !important;
  align-items: center !important;
  background: #050807 !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-final-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(90deg, rgba(2, 3, 3, 0.9) 0%, rgba(2, 3, 3, 0.62) 52%, rgba(2, 3, 3, 0.88) 100%),
    linear-gradient(180deg, rgba(2, 3, 3, 0.1), rgba(2, 3, 3, 0.86));
  pointer-events: none;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-final-media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-final-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.7) contrast(1.08) saturate(0.9) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-final-cta .split-section {
  position: relative;
  z-index: 1;
  grid-template-columns: minmax(0, 0.88fr) minmax(360px, 0.56fr) !important;
  align-items: end !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-final-cta h2 {
  max-width: 12ch !important;
  font-size: clamp(3.6rem, 6vw, 6.4rem) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-final-cta .lead {
  max-width: 58ch !important;
  color: rgba(255, 248, 238, 0.76) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-final-cta .tool-card {
  padding: clamp(1.1rem, 2vw, 1.55rem) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(240, 198, 107, 0.12), transparent 18rem),
    rgba(8, 10, 9, 0.86) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-final-cta .tool-card h3 {
  color: var(--vertical-home-text) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.55rem, 2.5vw, 2.6rem) !important;
  line-height: 0.98 !important;
}

@media (max-width: 1180px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .dual-column,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-story-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .split-section,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band:not(.vertical-brief-section) .dual-column,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .faq-section,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-final-cta .split-section {
    grid-template-columns: 1fr !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .hero-panel-layered {
    justify-self: start !important;
    max-width: 680px !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .grid-3.items-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero {
    min-height: auto !important;
    padding: 6.25rem 1rem 3rem !important;
    gap: 1.3rem !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .internal-hero h1,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-heading h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-section h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .split-section h2 {
    max-width: 100% !important;
    font-size: clamp(2.65rem, 12vw, 4rem) !important;
    line-height: 0.96 !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-section,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-frame {
    padding: 3.25rem 0 !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-section > *,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band > *,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .section-frame > * {
    width: min(100% - 1.25rem, 1280px) !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .feature-list,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .card-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .grid-3.items-4,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .grid-3.items-3,
  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .content-band:not(.vertical-brief-section) .dual-panel .grid-1 {
    grid-template-columns: 1fr !important;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"], [data-page="/arquitectura/"]) .editorial-visual-section .case-richtext {
    columns: auto;
  }
}

/* V4.69 global chrome parity: home header and footer CTA everywhere except portfolio. */
body:not([data-page="/portfolio/"]) .site-header {
  min-height: 70px !important;
  padding-inline: clamp(22px, 5vw, 64px) !important;
  background: rgba(4, 7, 8, 0.9) !important;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body:not([data-page="/portfolio/"]).is-scrolled .site-header {
  border-bottom-color: rgba(240, 198, 107, 0.22) !important;
  background: rgba(4, 7, 8, 0.94) !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.26) !important;
}

body:not([data-page="/portfolio/"]) .button-nav {
  min-height: 44px !important;
  padding: 0 1.45rem !important;
  border-color: rgba(117, 78, 20, 0.35) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%) !important;
  color: #0c0d0c !important;
  box-shadow:
    0 18px 42px rgba(190, 136, 46, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.48) !important;
}

body:not([data-page="/portfolio/"]) .button-nav::after {
  content: "\2192" !important;
  color: #0c0d0c !important;
}

body:not([data-page="/portfolio/"]) .site-footer-main,
body:not([data-page="/portfolio/"]) .site-footer-bottom {
  width: min(100%, 1320px) !important;
  max-width: 1320px !important;
}

body:not([data-page="/portfolio/"]) .site-footer-contact-button {
  width: min(100%, 250px) !important;
  min-width: min(100%, 220px) !important;
  min-height: 50px !important;
  padding: 0 1.35rem !important;
  justify-content: center !important;
  gap: 0.8rem !important;
  border-color: rgba(240, 198, 107, 0.68) !important;
  border-radius: 6px !important;
  color: #f0c66b !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  background: linear-gradient(90deg, rgba(240, 198, 107, 0.035), rgba(255, 255, 255, 0.012)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
}

body:not([data-page="/portfolio/"]) .site-footer-contact-button span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1rem !important;
  height: auto !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: currentColor !important;
  transform: translateY(-0.02em) !important;
}

body:not([data-page="/portfolio/"]) .site-footer-contact-button:hover,
body:not([data-page="/portfolio/"]) .site-footer-contact-button:focus-visible {
  color: #f0c66b !important;
  border-color: rgba(240, 198, 107, 0.76) !important;
  background: linear-gradient(90deg, rgba(240, 198, 107, 0.08), rgba(255, 255, 255, 0.018)) !important;
  box-shadow:
    0 0 0 1px rgba(240, 198, 107, 0.08),
    0 16px 34px rgba(0, 0, 0, 0.18) !important;
  transform: translateY(-1px) !important;
}

@media (max-width: 760px) {
  body:not([data-page="/portfolio/"]) .site-footer-contact-button {
    width: 100% !important;
  }
}

/* V4.69 global chrome parity: home header/footer language everywhere except portfolio. */
body:not([data-page="/portfolio/"]) .site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 80;
  width: 100%;
  max-width: none;
  min-height: 70px;
  margin: 0;
  padding: 0 clamp(22px, 5vw, 64px);
  border: 0;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12);
  border-radius: 0;
  background: rgba(4, 7, 8, 0.9);
  box-shadow: none;
  backdrop-filter: blur(18px);
}

body:not([data-page="/portfolio/"]).is-scrolled .site-header {
  border-bottom-color: rgba(240, 198, 107, 0.22);
  background: rgba(4, 7, 8, 0.94);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.26);
}

body:not([data-page="/portfolio/"]) .button-nav {
  min-height: 44px;
  padding: 0 1.45rem;
  border: 1px solid rgba(117, 78, 20, 0.35);
  border-radius: 999px;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%);
  color: #0c0d0c !important;
  font-size: 0.78rem;
  font-weight: 900;
  box-shadow:
    0 18px 42px rgba(190, 136, 46, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.48);
}

body:not([data-page="/portfolio/"]) .button-nav::after {
  content: "\2192";
  margin-left: 0.55rem;
  color: #0c0d0c;
  font-weight: 900;
}

body:not([data-page="/portfolio/"]) .button-nav:hover,
body:not([data-page="/portfolio/"]) .button-nav:focus-visible {
  border-color: rgba(117, 78, 20, 0.44);
  box-shadow:
    0 24px 52px rgba(190, 136, 46, 0.4),
    inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

body:not([data-page="/portfolio/"]) .site-footer {
  position: relative;
  overflow: hidden;
  padding: clamp(4.2rem, 7vw, 6.8rem) clamp(1.15rem, 5vw, 4rem) 2rem;
  background:
    radial-gradient(circle at 16% 18%, rgba(240, 198, 107, 0.13), transparent 28rem),
    radial-gradient(circle at 88% 0%, rgba(90, 111, 108, 0.16), transparent 30rem),
    linear-gradient(180deg, rgba(4, 7, 7, 0.98), rgba(6, 10, 10, 0.98));
}

body:not([data-page="/portfolio/"]) .site-footer::before {
  content: "";
  position: absolute;
  left: -5rem;
  bottom: 10.6rem;
  width: min(34rem, 38vw);
  height: min(14rem, 17vw);
  border: 1px solid rgba(240, 198, 107, 0.13);
  border-left: 0;
  opacity: 0.34;
  transform: skewY(-18deg);
  pointer-events: none;
}

body:not([data-page="/portfolio/"]) .site-footer::after {
  content: "";
  position: absolute;
  left: clamp(1.5rem, 4vw, 4.5rem);
  top: 0;
  bottom: 14rem;
  width: 1px;
  background: linear-gradient(180deg, rgba(240, 198, 107, 0.68), rgba(240, 198, 107, 0.04));
  box-shadow: 0 0 24px rgba(240, 198, 107, 0.26);
  pointer-events: none;
}

body:not([data-page="/portfolio/"]) .site-footer-main {
  position: relative;
  z-index: 1;
  width: min(100%, 1320px);
  max-width: 1320px;
  display: grid;
  grid-template-columns: minmax(250px, 1.18fr) minmax(130px, 0.55fr) minmax(150px, 0.6fr) minmax(120px, 0.45fr) minmax(250px, 0.92fr);
  gap: clamp(1.5rem, 3.3vw, 3.8rem);
  align-items: start;
  margin: 0 auto;
  padding-bottom: clamp(2.2rem, 4vw, 3.4rem);
  border-bottom: 1px solid rgba(240, 206, 122, 0.16);
}

body:not([data-page="/portfolio/"]) .site-footer-group {
  border-left: 0;
}

body:not([data-page="/portfolio/"]) .site-footer-group h3 {
  position: relative;
}

body:not([data-page="/portfolio/"]) .site-footer-group h3::before {
  content: "";
  display: block;
  width: 1.6rem;
  height: 1px;
  margin-bottom: 0.72rem;
  background: rgba(240, 206, 122, 0.22);
}

body:not([data-page="/portfolio/"]) .site-footer-intro {
  max-width: 360px;
}

body:not([data-page="/portfolio/"]) .site-footer-intro p {
  max-width: 25ch;
  margin-top: 1.35rem;
  font-size: clamp(1.02rem, 1.35vw, 1.22rem);
  line-height: 1.55;
}

body:not([data-page="/portfolio/"]) .site-footer-contact p {
  max-width: 28ch;
  margin: 0.65rem 0 1.8rem;
  color: rgba(246, 239, 228, 0.7);
  font-size: 0.96rem;
  line-height: 1.62;
}

body:not([data-page="/portfolio/"]) .site-footer-contact-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: min(100%, 250px) !important;
  min-width: min(100%, 220px);
  min-height: 50px;
  padding: 0 1.35rem;
  gap: 0.8rem;
  border: 1px solid rgba(240, 198, 107, 0.68);
  border-radius: 6px;
  color: #f0c66b !important;
  font-size: 0.78rem;
  font-weight: 900 !important;
  letter-spacing: 0.18em;
  line-height: 1;
  text-transform: uppercase;
  background: linear-gradient(90deg, rgba(240, 198, 107, 0.035), rgba(255, 255, 255, 0.012));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body:not([data-page="/portfolio/"]) .site-footer-contact-button span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: auto;
  margin: 0;
  border: 0;
  background: transparent;
  color: currentColor;
  transform: translateY(-0.02em);
}

body:not([data-page="/portfolio/"]) .site-footer-contact-button:hover,
body:not([data-page="/portfolio/"]) .site-footer-contact-button:focus-visible {
  color: #f0c66b !important;
  border-color: rgba(240, 198, 107, 0.76);
  background: linear-gradient(90deg, rgba(240, 198, 107, 0.08), rgba(255, 255, 255, 0.018));
  box-shadow:
    0 0 0 1px rgba(240, 198, 107, 0.08),
    0 16px 34px rgba(0, 0, 0, 0.18);
  transform: translateY(-1px);
}

body:not([data-page="/portfolio/"]) .site-footer-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  margin-top: 1.35rem;
}

body:not([data-page="/portfolio/"]) .site-footer-contact .site-footer-social-link {
  display: inline-grid !important;
  place-items: center;
  width: 48px !important;
  min-width: 48px;
  height: 48px !important;
  border-radius: 5px;
}

body:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-capabilities {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: nowrap;
  align-self: end;
  align-items: center;
  width: max-content;
  max-width: 100%;
  min-height: 0;
  margin: 0;
  padding: 0.08rem 0;
  border: 0;
  background: transparent;
  gap: 0.42rem;
  white-space: nowrap;
  transform: translateY(-0.28rem);
}

body:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-capabilities::before {
  content: "Especialidad \00B7";
  width: auto;
  height: auto;
  margin: 0 0.5rem 0 0;
  border: 0;
  color: rgba(240, 198, 107, 0.54);
  font-size: clamp(0.64rem, 0.7vw, 0.72rem);
  font-weight: 760;
  letter-spacing: 0.085em;
  line-height: 1.35;
  text-transform: uppercase;
  transform: none;
}

body:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-capabilities::after {
  content: none;
}

body:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-capabilities span {
  color: rgba(246, 239, 228, 0.42);
  font-size: clamp(0.64rem, 0.7vw, 0.72rem);
  font-weight: 760;
  letter-spacing: 0.085em;
  line-height: 1.35;
  text-transform: uppercase;
}

body:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-capabilities span + span::before {
  content: "\00B7";
  margin: 0 0.42rem 0 0;
  color: rgba(240, 198, 107, 0.3);
}

body:not([data-page="/portfolio/"]) .site-footer-bottom {
  position: relative;
  z-index: 1;
  width: min(100%, 1320px);
  max-width: 1320px;
  margin: 1rem auto 0;
}

@media (min-width: 1181px) {
  body:not([data-page="/portfolio/"]) .site-footer-intro {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  body:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-group:nth-of-type(1) {
    grid-column: 2;
    grid-row: 1;
  }

  body:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-group:nth-of-type(2) {
    grid-column: 3;
    grid-row: 1;
  }

  body:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-legal {
    grid-column: 4;
    grid-row: 1;
  }

  body:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-capabilities {
    grid-column: 1 / 5;
    grid-row: 2;
  }

  body:not([data-page="/portfolio/"]) .site-footer-contact {
    grid-column: 5;
    grid-row: 1 / span 2;
  }
}

@media (max-width: 1180px) {
  body:not([data-page="/portfolio/"]) .site-footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-capabilities {
    grid-column: 1 / -1;
    flex-wrap: wrap;
    white-space: normal;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/portfolio/"]) .site-footer {
    padding: 3.2rem 1rem 1.5rem;
  }

  body:not([data-page="/portfolio/"]) .site-footer::after {
    bottom: 5rem;
  }

  body:not([data-page="/portfolio/"]) .site-footer-main {
    grid-template-columns: 1fr;
  }

  body:not([data-page="/portfolio/"]) .site-footer-contact-button {
    width: 100% !important;
  }

  body:not([data-page="/portfolio/"]) .site-footer-contact .site-footer-social-link {
    width: 44px !important;
    min-width: 44px;
    height: 44px !important;
  }
}

/* V4.68 calculator page: retire duplicate calculator and route to the main configurator. */
body[data-page="/calculadora-render-3d/"] .calculator-configurator-bridge {
  width: min(1180px, calc(100vw - 48px));
  margin: 2.2rem auto 2.6rem;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 1rem;
  align-items: stretch;
  padding: clamp(1.25rem, 2.4vw, 2rem);
  border-radius: 14px;
  border: 1px solid rgba(227, 196, 119, 0.18);
  background:
    radial-gradient(circle at 12% 12%, rgba(212, 173, 94, 0.13), transparent 28rem),
    linear-gradient(135deg, rgba(12, 14, 14, 0.96), rgba(5, 7, 7, 0.98));
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.34);
}

body[data-page="/calculadora-render-3d/"] .calculator-bridge-copy {
  display: grid;
  align-content: center;
  gap: 0.95rem;
  max-width: 560px;
}

body[data-page="/calculadora-render-3d/"] .calculator-bridge-copy h2 {
  max-width: 11ch;
  margin: 0;
  color: #fff8ed;
  font-size: clamp(2rem, 4vw, 3.35rem);
  line-height: 0.96;
}

body[data-page="/calculadora-render-3d/"] .calculator-bridge-copy p {
  margin: 0;
  color: rgba(247, 242, 232, 0.72);
  font-size: 1rem;
  line-height: 1.68;
}

body[data-page="/calculadora-render-3d/"] .calculator-bridge-panel {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
}

body[data-page="/calculadora-render-3d/"] .calculator-bridge-panel article {
  display: grid;
  align-content: end;
  min-height: 310px;
  padding: 1rem;
  border-radius: 8px;
  border: 1px solid rgba(227, 196, 119, 0.13);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.025)),
    rgba(10, 11, 10, 0.76);
}

body[data-page="/calculadora-render-3d/"] .calculator-bridge-panel span {
  width: max-content;
  margin-bottom: 0.9rem;
  color: var(--inner-gold-strong);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body[data-page="/calculadora-render-3d/"] .calculator-bridge-panel strong {
  display: block;
  color: #fff8ed;
  font-size: 1.05rem;
  line-height: 1.15;
}

body[data-page="/calculadora-render-3d/"] .calculator-bridge-panel p {
  margin: 0.55rem 0 0;
  color: rgba(247, 242, 232, 0.64);
  font-size: 0.88rem;
  line-height: 1.52;
}

body[data-page="/calculadora-render-3d/"] #calculator-app {
  display: none !important;
}

body[data-page="/calculadora-render-3d/"] .hero-panel-layered > .stacked-stat {
  display: none !important;
}

@media (max-width: 920px) {
  body[data-page="/calculadora-render-3d/"] .calculator-configurator-bridge {
    width: min(100% - 28px, 760px);
    grid-template-columns: 1fr;
  }

  body[data-page="/calculadora-render-3d/"] .calculator-bridge-copy h2 {
    max-width: 15ch;
  }

  body[data-page="/calculadora-render-3d/"] .calculator-bridge-panel {
    grid-template-columns: 1fr;
  }

  body[data-page="/calculadora-render-3d/"] .calculator-bridge-panel article {
    min-height: auto;
  }
}

/* V4.67 contacto final-final: form block fits in a horizontal desktop viewport. */
@media (min-width: 1081px) {
  body[data-page="/contacto/"] .contact-main-section {
    padding-top: clamp(1.7rem, 3vw, 2.6rem) !important;
    padding-bottom: clamp(2.8rem, 4vw, 4.5rem) !important;
  }

  body[data-page="/contacto/"] .contact-grid {
    width: min(1360px, calc(100% - clamp(2rem, 5vw, 5rem))) !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  body[data-page="/contacto/"] .contact-side-stack {
    display: none !important;
  }

  body[data-page="/contacto/"] .contact-form-card {
    display: grid !important;
    min-height: 0 !important;
    grid-template-columns: minmax(230px, 0.25fr) minmax(0, 1fr) !important;
    gap: clamp(1rem, 1.5vw, 1.3rem) !important;
    padding: clamp(1rem, 1.65vw, 1.4rem) !important;
  }

  body[data-page="/contacto/"] .contact-form-left {
    gap: 0.75rem !important;
    padding-right: 1.05rem !important;
    border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
  }

  body[data-page="/contacto/"] .contact-form-left h2 {
    max-width: 11ch !important;
    font-size: clamp(2.1rem, 2.65vw, 3.05rem) !important;
    line-height: 0.96 !important;
  }

  body[data-page="/contacto/"] .contact-form-left .contact-form-intro {
    max-width: 28ch !important;
    margin-top: 0.62rem !important;
    font-size: 0.86rem !important;
    line-height: 1.42 !important;
  }

  body[data-page="/contacto/"] .contact-form-helper {
    margin-top: 0.78rem !important;
    gap: 0.42rem !important;
  }

  body[data-page="/contacto/"] .contact-form-helper article {
    min-height: 0 !important;
    padding: 0.52rem 0.62rem !important;
  }

  body[data-page="/contacto/"] .contact-form-helper strong {
    font-size: 0.76rem !important;
  }

  body[data-page="/contacto/"] .contact-form-card .site-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.82fr) minmax(210px, 0.58fr) !important;
    grid-template-areas: "data message actions" !important;
    gap: 0.72rem !important;
    align-items: stretch !important;
  }

  body[data-page="/contacto/"] .contact-form-section:not(.is-message) {
    grid-area: data !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message {
    grid-area: message !important;
  }

  body[data-page="/contacto/"] .contact-form-actions {
    grid-area: actions !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: center !important;
    gap: 0.72rem !important;
  }

  body[data-page="/contacto/"] .contact-form-fields {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0.5rem !important;
  }

  body[data-page="/contacto/"] .contact-form-fields label:nth-child(9) {
    grid-column: auto !important;
  }

  body[data-page="/contacto/"] .site-form label {
    gap: 0.28rem !important;
    font-size: 0.7rem !important;
  }

  body[data-page="/contacto/"] .site-form input,
  body[data-page="/contacto/"] .site-form select,
  body[data-page="/contacto/"] .site-form textarea {
    min-height: 40px !important;
    padding: 0.58rem 0.68rem !important;
    border-radius: 8px !important;
    font-size: 0.82rem !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message label,
  body[data-page="/contacto/"] .contact-form-section.is-message textarea {
    height: 100% !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message textarea {
    min-height: 196px !important;
  }

  body[data-page="/contacto/"] .contact-form-actions .button-primary {
    min-height: 48px !important;
  }

  body[data-page="/contacto/"] .contact-form-actions .form-note {
    max-width: 22ch !important;
    font-size: 0.82rem !important;
    line-height: 1.38 !important;
  }

  body[data-page="/contacto/"] #contact-form {
    scroll-margin-top: 92px;
  }
}

/* V4.66 contacto final: form block as one horizontal desktop window. */
@media (min-width: 1081px) {
  body[data-page="/contacto/"] .contact-main-section {
    padding-top: clamp(1.7rem, 3vw, 2.6rem) !important;
    padding-bottom: clamp(2.8rem, 4vw, 4.5rem) !important;
  }

  body[data-page="/contacto/"] .contact-grid {
    width: min(1360px, calc(100% - clamp(2rem, 5vw, 5rem))) !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  body[data-page="/contacto/"] .contact-side-stack {
    display: none !important;
  }

  body[data-page="/contacto/"] .contact-form-card {
    display: grid !important;
    min-height: 0 !important;
    grid-template-columns: minmax(230px, 0.25fr) minmax(0, 1fr) !important;
    gap: clamp(1rem, 1.5vw, 1.3rem) !important;
    padding: clamp(1rem, 1.65vw, 1.4rem) !important;
  }

  body[data-page="/contacto/"] .contact-form-left {
    gap: 0.75rem !important;
    padding-right: 1.05rem !important;
    border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
  }

  body[data-page="/contacto/"] .contact-form-left h2 {
    max-width: 11ch !important;
    font-size: clamp(2.1rem, 2.65vw, 3.05rem) !important;
    line-height: 0.96 !important;
  }

  body[data-page="/contacto/"] .contact-form-left .contact-form-intro {
    max-width: 28ch !important;
    margin-top: 0.62rem !important;
    font-size: 0.86rem !important;
    line-height: 1.42 !important;
  }

  body[data-page="/contacto/"] .contact-form-helper {
    margin-top: 0.78rem !important;
    gap: 0.42rem !important;
  }

  body[data-page="/contacto/"] .contact-form-helper article {
    min-height: 0 !important;
    padding: 0.52rem 0.62rem !important;
  }

  body[data-page="/contacto/"] .contact-form-helper strong {
    font-size: 0.76rem !important;
  }

  body[data-page="/contacto/"] .contact-form-card .site-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.82fr) minmax(210px, 0.58fr) !important;
    grid-template-areas: "data message actions" !important;
    gap: 0.72rem !important;
    align-items: stretch !important;
  }

  body[data-page="/contacto/"] .contact-form-section:not(.is-message) {
    grid-area: data !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message {
    grid-area: message !important;
  }

  body[data-page="/contacto/"] .contact-form-actions {
    grid-area: actions !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: center !important;
    gap: 0.72rem !important;
  }

  body[data-page="/contacto/"] .contact-form-fields {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0.5rem !important;
  }

  body[data-page="/contacto/"] .contact-form-fields label:nth-child(9) {
    grid-column: auto !important;
  }

  body[data-page="/contacto/"] .site-form label {
    gap: 0.28rem !important;
    font-size: 0.7rem !important;
  }

  body[data-page="/contacto/"] .site-form input,
  body[data-page="/contacto/"] .site-form select,
  body[data-page="/contacto/"] .site-form textarea {
    min-height: 40px !important;
    padding: 0.58rem 0.68rem !important;
    border-radius: 8px !important;
    font-size: 0.82rem !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message label,
  body[data-page="/contacto/"] .contact-form-section.is-message textarea {
    height: 100% !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message textarea {
    min-height: 196px !important;
  }

  body[data-page="/contacto/"] .contact-form-actions .button-primary {
    min-height: 48px !important;
  }

  body[data-page="/contacto/"] .contact-form-actions .form-note {
    max-width: 22ch !important;
    font-size: 0.82rem !important;
    line-height: 1.38 !important;
  }

  body[data-page="/contacto/"] #contact-form {
    scroll-margin-top: 92px;
  }
}

/* V4.59 casos hub: clearer commercial structure, premium modules and stable actions. */
body[data-page="/casos/"] {
  background:
    radial-gradient(circle at 14% 10%, rgba(214, 179, 90, 0.11), transparent 28rem),
    radial-gradient(circle at 86% 18%, rgba(70, 91, 82, 0.18), transparent 34rem),
    linear-gradient(180deg, #050706 0%, #111812 46%, #050706 100%);
}

body[data-page="/casos/"] .cases-hub-shell {
  width: min(1240px, calc(100% - clamp(2rem, 8vw, 7rem)));
  margin-inline: auto;
}

body[data-page="/casos/"] .cases-hub-hero {
  min-height: clamp(680px, 74vh, 820px);
}

body[data-page="/casos/"] .cases-hub-hero h1 {
  max-width: 13ch;
  font-size: clamp(4rem, 6.4vw, 5.85rem);
  line-height: 0.9;
}

body[data-page="/casos/"] .cases-hub-hero .lead {
  max-width: 66ch;
}

body[data-page="/casos/"] .cases-reading-panel {
  max-width: 520px;
  padding: clamp(1.15rem, 2vw, 1.6rem);
  background:
    linear-gradient(135deg, rgba(240, 206, 122, 0.1), transparent 54%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.015)),
    rgba(8, 11, 9, 0.82);
}

body[data-page="/casos/"] .cases-reading-panel h3 {
  max-width: 15ch;
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.9rem, 2.5vw, 3rem);
  line-height: 0.98;
}

body[data-page="/casos/"] .cases-panel-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.62rem;
  margin-top: 1.1rem;
}

body[data-page="/casos/"] .cases-panel-grid span,
body[data-page="/casos/"] .cases-workflow-step,
body[data-page="/casos/"] .cases-module-card,
body[data-page="/casos/"] .cases-reference-card,
body[data-page="/casos/"] .cases-route-card,
body[data-page="/casos/"] .cases-faq-aside {
  border: 1px solid rgba(240, 206, 122, 0.14);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.012)),
    rgba(5, 8, 8, 0.64);
}

body[data-page="/casos/"] .cases-panel-grid span {
  padding: 0.72rem 0.78rem;
  color: rgba(244, 239, 227, 0.82);
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

body[data-page="/casos/"] .cases-section-heading {
  max-width: 760px;
  margin-bottom: clamp(1.8rem, 4vw, 3.2rem);
}

body[data-page="/casos/"] .cases-section-heading h2,
body[data-page="/casos/"] .cases-workflow-copy h2,
body[data-page="/casos/"] .cases-faq-aside h2,
body[data-page="/casos/"] .cases-final-shell h2 {
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  line-height: 0.96;
  text-wrap: balance;
}

body[data-page="/casos/"] .cases-section-heading h2,
body[data-page="/casos/"] .cases-workflow-copy h2 {
  max-width: 13ch;
  font-size: clamp(2.7rem, 4.8vw, 5.6rem);
}

body[data-page="/casos/"] .cases-workflow-section {
  background:
    radial-gradient(circle at 85% 18%, rgba(240, 206, 122, 0.08), transparent 24rem),
    linear-gradient(180deg, #121912 0%, #060907 100%);
}

body[data-page="/casos/"] .cases-workflow-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(420px, 1fr);
  gap: clamp(1.6rem, 5vw, 5rem);
  align-items: center;
}

body[data-page="/casos/"] .cases-workflow-copy .lead {
  max-width: 62ch;
}

body[data-page="/casos/"] .cases-workflow-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.78rem;
  margin-top: clamp(1.35rem, 2.6vw, 2rem);
}

body[data-page="/casos/"] .cases-workflow-step {
  display: grid;
  grid-template-columns: auto minmax(32px, auto) minmax(0, 1fr);
  gap: 0.78rem;
  align-items: start;
  padding: 1rem;
}

body[data-page="/casos/"] .cases-workflow-step > div {
  grid-column: 1 / -1;
}

body[data-page="/casos/"] .cases-workflow-step > span {
  color: var(--inner-gold);
  font-size: 0.84rem;
  font-weight: 950;
  line-height: 38px;
}

body[data-page="/casos/"] .cases-workflow-step > span:not(.cases-hub-icon) {
  align-self: center;
  line-height: 1;
}

body[data-page="/casos/"] .cases-workflow-step h3,
body[data-page="/casos/"] .cases-module-card h3,
body[data-page="/casos/"] .cases-module-feature h3,
body[data-page="/casos/"] .cases-reference-card h3,
body[data-page="/casos/"] .cases-route-card h3 {
  margin: 0;
  color: var(--inner-text);
  font-family: "Playfair Display", Georgia, serif;
  line-height: 1;
}

body[data-page="/casos/"] .cases-workflow-step p {
  margin: 0.38rem 0 0;
  color: rgba(244, 239, 227, 0.72);
  line-height: 1.48;
}

body[data-page="/casos/"] .cases-hub-icon {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(240, 206, 122, 0.24);
  border-radius: 999px;
  color: var(--inner-gold);
  background:
    radial-gradient(circle at 38% 30%, rgba(255, 206, 105, 0.28), transparent 58%),
    rgba(240, 206, 122, 0.08);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
}

body[data-page="/casos/"] .cases-hub-icon svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body[data-page="/casos/"] .cases-workflow-visual,
body[data-page="/casos/"] .cases-module-feature,
body[data-page="/casos/"] .cases-final-cta {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(240, 206, 122, 0.16);
  border-radius: 8px;
  background: #060807;
  box-shadow: 0 34px 90px rgba(0, 0, 0, 0.38);
}

body[data-page="/casos/"] .cases-workflow-visual img {
  width: 100%;
  min-height: 520px;
  object-fit: cover;
  filter: brightness(0.82) contrast(1.08) saturate(0.96);
}

body[data-page="/casos/"] .cases-workflow-visual::after,
body[data-page="/casos/"] .cases-module-feature::after,
body[data-page="/casos/"] .cases-final-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 34%, rgba(5, 7, 6, 0.88));
}

body[data-page="/casos/"] .cases-workflow-visual figcaption {
  position: absolute;
  left: 1.2rem;
  right: 1.2rem;
  bottom: 1.2rem;
  z-index: 1;
  padding: 1rem;
  border: 1px solid rgba(240, 206, 122, 0.15);
  border-radius: 8px;
  background: rgba(5, 8, 8, 0.72);
  backdrop-filter: blur(14px);
}

body[data-page="/casos/"] .cases-workflow-visual figcaption span,
body[data-page="/casos/"] .cases-module-card span,
body[data-page="/casos/"] .cases-module-feature span,
body[data-page="/casos/"] .cases-reference-card span {
  color: var(--inner-gold);
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body[data-page="/casos/"] .cases-workflow-visual figcaption strong {
  display: block;
  max-width: 24ch;
  margin-top: 0.28rem;
  color: var(--inner-text);
  font-size: 1.08rem;
  line-height: 1.18;
}

body[data-page="/casos/"] .cases-module-section,
body[data-page="/casos/"] .cases-routes-section {
  background:
    radial-gradient(circle at 20% 18%, rgba(240, 206, 122, 0.06), transparent 24rem),
    linear-gradient(180deg, #060907 0%, #101711 100%);
}

body[data-page="/casos/"] .cases-module-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
  gap: 1rem;
}

body[data-page="/casos/"] .cases-module-feature {
  min-height: 560px;
  color: inherit;
  text-decoration: none;
}

body[data-page="/casos/"] .cases-module-feature figure,
body[data-page="/casos/"] .cases-module-feature img {
  width: 100%;
  height: 100%;
}

body[data-page="/casos/"] .cases-module-feature img {
  object-fit: cover;
  filter: brightness(0.8) contrast(1.08);
  transition: transform 0.45s ease, filter 0.45s ease;
}

body[data-page="/casos/"] .cases-module-feature > div {
  position: absolute;
  left: 1.3rem;
  right: 1.3rem;
  bottom: 1.3rem;
  z-index: 1;
  max-width: 520px;
}

body[data-page="/casos/"] .cases-module-feature h3 {
  margin-top: 0.6rem;
  font-size: clamp(2rem, 3.4vw, 3.8rem);
}

body[data-page="/casos/"] .cases-module-feature p,
body[data-page="/casos/"] .cases-route-card p,
body[data-page="/casos/"] .cases-reference-card p,
body[data-page="/casos/"] .cases-module-card p {
  color: rgba(244, 239, 227, 0.74);
  line-height: 1.5;
}

body[data-page="/casos/"] .cases-module-secondary {
  display: grid;
  gap: 1rem;
}

body[data-page="/casos/"] .cases-module-card {
  display: grid;
  grid-template-columns: 156px minmax(0, 1fr);
  gap: 1rem;
  min-height: 176px;
  overflow: hidden;
  color: inherit;
  text-decoration: none;
}

body[data-page="/casos/"] .cases-module-card figure {
  height: 100%;
  min-height: 176px;
}

body[data-page="/casos/"] .cases-module-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.84) contrast(1.06);
  transition: transform 0.45s ease, filter 0.45s ease;
}

body[data-page="/casos/"] .cases-module-card > div {
  min-width: 0;
  padding: 1rem 1rem 1rem 0;
}

body[data-page="/casos/"] .cases-module-card h3 {
  margin-top: 0.44rem;
  font-size: clamp(1.35rem, 1.8vw, 2rem);
}

body[data-page="/casos/"] .cases-module-card p {
  margin: 0.55rem 0 0.75rem;
}

body[data-page="/casos/"] .cases-module-card strong,
body[data-page="/casos/"] .cases-module-feature strong,
body[data-page="/casos/"] .cases-reference-card strong,
body[data-page="/casos/"] .cases-route-card strong {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 112px;
  min-height: 38px;
  padding: 0.62rem 0.92rem;
  border: 1px solid rgba(240, 206, 122, 0.25);
  border-radius: 999px;
  color: var(--inner-gold);
  background: rgba(240, 206, 122, 0.08);
  font-size: 0.78rem;
  font-weight: 950;
  line-height: 1;
  white-space: nowrap;
}

body[data-page="/casos/"] .cases-reference-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

body[data-page="/casos/"] .cases-reference-card {
  display: grid;
  overflow: hidden;
  min-height: 430px;
  color: inherit;
  text-decoration: none;
}

body[data-page="/casos/"] .cases-reference-card figure {
  aspect-ratio: 1.24;
  overflow: hidden;
}

body[data-page="/casos/"] .cases-reference-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.86) contrast(1.08);
  transition: transform 0.45s ease, filter 0.45s ease;
}

body[data-page="/casos/"] .cases-reference-card > div,
body[data-page="/casos/"] .cases-route-card > div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 1rem;
}

body[data-page="/casos/"] .cases-reference-card h3 {
  margin-top: 0.42rem;
  font-size: clamp(1.3rem, 1.55vw, 1.8rem);
}

body[data-page="/casos/"] .cases-reference-card strong,
body[data-page="/casos/"] .cases-route-card strong {
  margin-top: auto;
}

body[data-page="/casos/"] .cases-route-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

body[data-page="/casos/"] .cases-route-card {
  display: grid;
  min-height: 500px;
  overflow: hidden;
  color: inherit;
  text-decoration: none;
}

body[data-page="/casos/"] .cases-route-card figure {
  aspect-ratio: 1.28;
  overflow: hidden;
}

body[data-page="/casos/"] .cases-route-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.86) contrast(1.06);
  transition: transform 0.45s ease, filter 0.45s ease;
}

body[data-page="/casos/"] .cases-route-card h3 {
  margin-top: 0.8rem;
  font-size: clamp(1.55rem, 2vw, 2.25rem);
}

body[data-page="/casos/"] .cases-faq-layout {
  display: grid;
  grid-template-columns: minmax(280px, 0.45fr) minmax(0, 1fr);
  gap: 1rem;
}

body[data-page="/casos/"] .cases-faq-aside {
  padding: clamp(1rem, 2vw, 1.35rem);
}

body[data-page="/casos/"] .cases-faq-aside h2 {
  max-width: 12ch;
  font-size: clamp(1.9rem, 2.6vw, 3rem);
}

body[data-page="/casos/"] .cases-faq-aside ul {
  display: grid;
  gap: 0.6rem;
  margin: 1.2rem 0 0;
  padding: 0;
  list-style: none;
}

body[data-page="/casos/"] .cases-faq-aside li {
  padding: 0.76rem 0.82rem;
  border: 1px solid rgba(240, 206, 122, 0.12);
  border-radius: 8px;
  color: rgba(244, 239, 227, 0.76);
  background: rgba(255, 255, 255, 0.025);
}

body[data-page="/casos/"] .cases-final-cta {
  position: relative;
  isolation: isolate;
  width: min(1240px, calc(100% - 48px));
  min-height: clamp(520px, 50vw, 650px);
  margin: 0 auto clamp(3rem, 6vw, 5rem);
  padding: 0;
}

body[data-page="/casos/"] .cases-final-cta .internal-final-media {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  margin: 0;
  z-index: 0;
}

body[data-page="/casos/"] .cases-final-cta .internal-final-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.72) contrast(1.08) saturate(0.95);
}

body[data-page="/casos/"] .cases-final-shell {
  position: relative;
  z-index: 2;
  width: min(100% - 56px, 1120px);
  min-height: inherit;
  margin-inline: auto;
  display: grid;
  align-content: center;
}

body[data-page="/casos/"] .cases-final-shell h2 {
  max-width: 12ch;
  font-size: clamp(2.7rem, 5.2vw, 5.8rem);
}

body[data-page="/casos/"] .cases-final-shell .lead {
  max-width: 58ch;
}

body[data-page="/casos/"] .cases-module-card:hover img,
body[data-page="/casos/"] .cases-module-feature:hover img,
body[data-page="/casos/"] .cases-reference-card:hover img,
body[data-page="/casos/"] .cases-route-card:hover img {
  transform: scale(1.035);
  filter: brightness(0.92) contrast(1.08);
}

body[data-page="/casos/"] .button:hover,
body[data-page="/casos/"] .button:focus-visible,
body[data-page="/casos/"] .cases-module-card:hover,
body[data-page="/casos/"] .cases-module-feature:hover,
body[data-page="/casos/"] .cases-reference-card:hover,
body[data-page="/casos/"] .cases-route-card:hover {
  transform: none;
}

@media (max-width: 1120px) {
  body[data-page="/casos/"] .cases-workflow-layout,
  body[data-page="/casos/"] .cases-module-layout,
  body[data-page="/casos/"] .cases-faq-layout {
    grid-template-columns: 1fr;
  }

  body[data-page="/casos/"] .cases-reference-grid,
  body[data-page="/casos/"] .cases-route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  body[data-page="/casos/"] .cases-hub-shell {
    width: min(100% - 2rem, 680px);
  }

  body[data-page="/casos/"] .cases-hub-hero {
    min-height: auto;
    padding-top: 6rem;
  }

  body[data-page="/casos/"] .cases-hub-hero h1,
  body[data-page="/casos/"] .cases-section-heading h2,
  body[data-page="/casos/"] .cases-workflow-copy h2,
  body[data-page="/casos/"] .cases-final-shell h2 {
    max-width: 100%;
    font-size: clamp(2.25rem, 9.5vw, 3.15rem);
  }

  body[data-page="/casos/"] .cases-panel-grid,
  body[data-page="/casos/"] .cases-workflow-grid,
  body[data-page="/casos/"] .cases-reference-grid,
  body[data-page="/casos/"] .cases-route-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/casos/"] .cases-workflow-step,
  body[data-page="/casos/"] .cases-module-card {
    grid-template-columns: 1fr;
  }

  body[data-page="/casos/"] .cases-module-card figure {
    min-height: 220px;
  }

  body[data-page="/casos/"] .cases-module-card > div {
    padding: 1rem;
  }

  body[data-page="/casos/"] .cases-workflow-visual img {
    min-height: 360px;
  }

  body[data-page="/casos/"] .cases-module-feature {
    min-height: 460px;
  }

  body[data-page="/casos/"] .cases-reference-card,
  body[data-page="/casos/"] .cases-route-card {
    min-height: 0;
  }

  body[data-page="/casos/"] .cases-final-cta {
    width: min(100% - 24px, 680px);
    min-height: 560px;
  }

  body[data-page="/casos/"] .cases-final-shell {
    width: min(100% - 32px, 620px);
  }

  body[data-page="/casos/"] .cases-final-shell .button,
  body[data-page="/casos/"] .cases-hub-hero .button {
    width: 100%;
  }
}

/* V4.62 contacto: desktop briefing desk fits in one horizontal viewport. */
@media (min-width: 1081px) {
  body[data-page="/contacto/"] .contact-main-section {
    padding-top: clamp(1.7rem, 3vw, 2.6rem) !important;
    padding-bottom: clamp(2.8rem, 4vw, 4.5rem) !important;
  }

  body[data-page="/contacto/"] .contact-grid {
    width: min(1360px, calc(100% - clamp(2rem, 5vw, 5rem))) !important;
    grid-template-columns: 1fr !important;
    gap: clamp(1rem, 1.6vw, 1.35rem) !important;
  }

  body[data-page="/contacto/"] .contact-form-card {
    min-height: 0 !important;
    grid-template-columns: minmax(230px, 0.25fr) minmax(0, 1fr) !important;
    gap: clamp(1rem, 1.5vw, 1.3rem) !important;
    padding: clamp(1rem, 1.65vw, 1.4rem) !important;
  }

  body[data-page="/contacto/"] .contact-form-left {
    gap: 0.75rem !important;
    padding-right: 1.05rem !important;
  }

  body[data-page="/contacto/"] .contact-form-left h2 {
    max-width: 11ch !important;
    font-size: clamp(2.1rem, 2.65vw, 3.05rem) !important;
    line-height: 0.96 !important;
  }

  body[data-page="/contacto/"] .contact-form-left .contact-form-intro {
    max-width: 28ch !important;
    margin-top: 0.62rem !important;
    font-size: 0.86rem !important;
    line-height: 1.42 !important;
  }

  body[data-page="/contacto/"] .contact-form-helper {
    margin-top: 0.78rem !important;
    gap: 0.42rem !important;
  }

  body[data-page="/contacto/"] .contact-form-helper article {
    min-height: 0 !important;
    padding: 0.52rem 0.62rem !important;
  }

  body[data-page="/contacto/"] .contact-form-helper strong {
    font-size: 0.76rem !important;
  }

  body[data-page="/contacto/"] .contact-form-card .site-form {
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.82fr) minmax(210px, 0.58fr) !important;
    grid-template-areas: "data message actions" !important;
    gap: 0.72rem !important;
    align-items: stretch !important;
  }

  body[data-page="/contacto/"] .contact-form-section:not(.is-message) {
    grid-area: data !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message {
    grid-area: message !important;
  }

  body[data-page="/contacto/"] .contact-form-actions {
    grid-area: actions !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: center !important;
    gap: 0.72rem !important;
  }

  body[data-page="/contacto/"] .contact-form-fields {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0.5rem !important;
  }

  body[data-page="/contacto/"] .contact-form-fields label:nth-child(9) {
    grid-column: auto !important;
  }

  body[data-page="/contacto/"] .site-form label {
    gap: 0.28rem !important;
    font-size: 0.7rem !important;
  }

  body[data-page="/contacto/"] .site-form input,
  body[data-page="/contacto/"] .site-form select,
  body[data-page="/contacto/"] .site-form textarea {
    min-height: 40px !important;
    padding: 0.58rem 0.68rem !important;
    border-radius: 8px !important;
    font-size: 0.82rem !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message label,
  body[data-page="/contacto/"] .contact-form-section.is-message textarea {
    height: 100% !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message textarea {
    min-height: 196px !important;
  }

  body[data-page="/contacto/"] .contact-form-actions .button-primary {
    min-height: 48px !important;
  }

  body[data-page="/contacto/"] .contact-form-actions .form-note {
    max-width: 22ch !important;
    font-size: 0.82rem !important;
    line-height: 1.38 !important;
  }

  body[data-page="/contacto/"] .contact-side-stack {
    display: none !important;
  }

  body[data-page="/contacto/"] .contact-visual-card {
    min-height: 150px !important;
  }

  body[data-page="/contacto/"] .contact-visual-card img {
    min-height: 150px !important;
  }

  body[data-page="/contacto/"] .contact-visual-card figcaption {
    padding: 0.68rem !important;
  }

  body[data-page="/contacto/"] .contact-visual-card strong {
    font-size: 1.02rem !important;
  }

  body[data-page="/contacto/"] .contact-direct-card,
  body[data-page="/contacto/"] .contact-check-panel {
    padding: 0.95rem !important;
  }

  body[data-page="/contacto/"] .contact-direct-card h2 {
    margin: 0.55rem 0 0.72rem !important;
    font-size: clamp(1.35rem, 1.45vw, 1.72rem) !important;
  }

  body[data-page="/contacto/"] .contact-direct-lines {
    gap: 0.34rem !important;
    margin-bottom: 0.7rem !important;
  }

  body[data-page="/contacto/"] .contact-direct-card .button {
    min-height: 42px !important;
  }

  body[data-page="/contacto/"] .contact-check-panel {
    display: none !important;
  }

  body[data-page="/contacto/"] #contact-form {
    scroll-margin-top: 110px;
  }
}

/* V4.59 contacto: mesa de briefing premium, clara y sin artificios. */
body[data-page="/contacto/"] {
  background:
    radial-gradient(circle at 82% 24%, rgba(201, 164, 92, 0.09), transparent 34rem),
    linear-gradient(180deg, #050807 0%, #0a120e 48%, #050807 100%);
}

body[data-page="/contacto/"] .internal-hero-contacto {
  min-height: clamp(560px, 72vh, 720px) !important;
  padding-block: clamp(6.8rem, 9vw, 8rem) clamp(3.4rem, 6vw, 5rem) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.95fr) minmax(360px, 0.55fr) !important;
  gap: clamp(2rem, 5vw, 5rem) !important;
  align-items: center !important;
}

body[data-page="/contacto/"] .internal-hero-contacto .internal-hero-media img {
  opacity: 0.72 !important;
  filter: saturate(0.85) contrast(1.08) brightness(0.76) !important;
}

body[data-page="/contacto/"] .internal-hero-contacto::after {
  opacity: 0.88;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.76), rgba(0, 0, 0, 0.42) 52%, rgba(0, 0, 0, 0.72)),
    linear-gradient(180deg, rgba(5, 8, 7, 0.2), #050807 98%);
}

body[data-page="/contacto/"] .internal-hero-contacto .hero-copy {
  max-width: 760px !important;
}

body[data-page="/contacto/"] .internal-hero-contacto h1 {
  max-width: 9.6ch;
  font-size: clamp(4.2rem, 7.2vw, 7.8rem) !important;
  line-height: 0.88 !important;
}

body[data-page="/contacto/"] .internal-hero-contacto .lead {
  max-width: 58ch !important;
  color: rgba(243, 239, 229, 0.86) !important;
  font-size: clamp(1.02rem, 1.25vw, 1.28rem) !important;
  line-height: 1.55 !important;
}

body[data-page="/contacto/"] .internal-hero-contacto .hero-note {
  max-width: 52ch !important;
  margin-top: 1rem !important;
  color: rgba(243, 239, 229, 0.62) !important;
}

body[data-page="/contacto/"] .internal-hero-contacto .cta-row {
  margin-top: 1.4rem !important;
}

body[data-page="/contacto/"] .internal-hero-contacto .hero-panel {
  width: 100% !important;
  min-width: 0 !important;
}

body[data-page="/contacto/"] .contact-command-panel {
  padding: clamp(1.35rem, 2.4vw, 2rem) !important;
  border: 1px solid rgba(201, 164, 92, 0.26) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.025)),
    rgba(7, 10, 8, 0.82) !important;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.42) !important;
  backdrop-filter: blur(18px);
}

body[data-page="/contacto/"] .contact-command-panel h3 {
  max-width: 12ch !important;
  margin: clamp(1.7rem, 4vw, 3.2rem) 0 0.8rem !important;
  font-family: var(--font-display);
  color: #f3efe5;
  font-size: clamp(2.45rem, 4.2vw, 4.4rem) !important;
  line-height: 0.92 !important;
}

body[data-page="/contacto/"] .contact-command-lead {
  max-width: 34ch;
  color: rgba(243, 239, 229, 0.68);
  font-size: 1rem;
  line-height: 1.55;
}

body[data-page="/contacto/"] .contact-command-actions {
  display: flex !important;
  flex-wrap: wrap;
  gap: 0.75rem !important;
  margin-top: 1.4rem !important;
}

body[data-page="/contacto/"] .contact-command-actions .button {
  min-width: 160px;
}

body[data-page="/contacto/"] .contact-trust-strip {
  position: relative;
  z-index: 5;
  width: min(1180px, calc(100% - clamp(2rem, 6vw, 6rem)));
  margin: clamp(-2.1rem, -2vw, -1.2rem) auto 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
}

body[data-page="/contacto/"] .contact-trust-strip article {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 0.9rem;
  row-gap: 0.18rem;
  align-items: start;
  min-height: 112px;
  padding: 1.1rem 1.2rem;
  border: 1px solid rgba(201, 164, 92, 0.2);
  border-radius: 16px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.02)),
    rgba(7, 10, 8, 0.76);
  backdrop-filter: blur(14px);
}

body[data-page="/contacto/"] .contact-trust-strip span {
  display: grid;
  place-items: center;
  width: 2.35rem;
  height: 2.35rem;
  border: 1px solid rgba(201, 164, 92, 0.45);
  border-radius: 999px;
  color: #f6c65d;
  font-size: 0.72rem;
  font-weight: 900;
}

body[data-page="/contacto/"] .contact-trust-strip strong {
  color: #f3efe5;
  font-family: var(--font-display);
  font-size: 1.32rem;
  line-height: 1.05;
}

body[data-page="/contacto/"] .contact-trust-strip p {
  grid-column: 2;
  margin: 0;
  color: rgba(243, 239, 229, 0.64);
  line-height: 1.45;
}

body[data-page="/contacto/"] .contact-main-section {
  margin-top: 0 !important;
  padding-top: clamp(2.3rem, 5vw, 4rem) !important;
  padding-bottom: clamp(4rem, 7vw, 6rem) !important;
}

body[data-page="/contacto/"] .contact-intro-rail,
body[data-page="/contacto/"] .contact-channel-grid,
body[data-page="/contacto/"] .contact-configurator-cta {
  display: none !important;
}

body[data-page="/contacto/"] .contact-grid {
  width: min(1180px, calc(100% - clamp(2rem, 6vw, 6rem))) !important;
  margin-inline: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.55fr) !important;
  gap: clamp(1rem, 2.2vw, 1.6rem) !important;
  align-items: start !important;
}

body[data-page="/contacto/"] .contact-form-card {
  display: grid !important;
  grid-template-columns: minmax(230px, 0.38fr) minmax(0, 1fr) !important;
  gap: clamp(1.1rem, 2vw, 1.55rem) !important;
  padding: clamp(1.25rem, 2.2vw, 1.85rem) !important;
  border: 1px solid rgba(201, 164, 92, 0.24) !important;
  border-radius: 20px !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(201, 164, 92, 0.08), transparent 18rem),
    linear-gradient(135deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.018)),
    rgba(7, 10, 8, 0.9) !important;
  box-shadow: 0 32px 95px rgba(0, 0, 0, 0.35) !important;
}

body[data-page="/contacto/"] .contact-form-left {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
  padding-right: clamp(0.9rem, 1.6vw, 1.35rem);
  border-right: 1px solid rgba(255, 255, 255, 0.1);
}

body[data-page="/contacto/"] .contact-form-left h2 {
  max-width: 11ch !important;
  margin: 0 !important;
  color: #f3efe5;
  font-size: clamp(2.6rem, 3.6vw, 4rem) !important;
  line-height: 0.94 !important;
}

body[data-page="/contacto/"] .contact-form-intro {
  max-width: 36ch !important;
  margin: 0.8rem 0 0 !important;
  color: rgba(243, 239, 229, 0.68) !important;
  font-size: 0.94rem !important;
  line-height: 1.52 !important;
}

body[data-page="/contacto/"] .contact-form-helper {
  display: grid;
  gap: 0.52rem;
}

body[data-page="/contacto/"] .contact-form-helper article {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.68rem;
  align-items: center;
  padding: 0.66rem 0.74rem;
  border: 1px solid rgba(201, 164, 92, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.03);
}

body[data-page="/contacto/"] .contact-form-helper span {
  color: #f6c65d;
  font-size: 0.72rem;
  font-weight: 900;
}

body[data-page="/contacto/"] .contact-form-helper strong {
  color: rgba(243, 239, 229, 0.82);
  font-size: 0.82rem;
}

body[data-page="/contacto/"] .contact-form-card .site-form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-areas: none !important;
  gap: 0.84rem !important;
}

body[data-page="/contacto/"] .contact-form-section,
body[data-page="/contacto/"] .contact-form-section:not(.is-message),
body[data-page="/contacto/"] .contact-form-section.is-message,
body[data-page="/contacto/"] .contact-form-actions {
  grid-area: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body[data-page="/contacto/"] .contact-form-section-label,
body[data-page="/contacto/"] .contact-form-proof {
  display: none !important;
}

body[data-page="/contacto/"] .contact-form-fields {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.66rem !important;
}

body[data-page="/contacto/"] .contact-form-fields label:nth-child(9) {
  grid-column: 1 / -1;
}

body[data-page="/contacto/"] .site-form label {
  display: grid !important;
  gap: 0.38rem !important;
  color: rgba(243, 239, 229, 0.72) !important;
  font-size: 0.78rem !important;
  font-weight: 850 !important;
}

body[data-page="/contacto/"] .site-form input,
body[data-page="/contacto/"] .site-form select,
body[data-page="/contacto/"] .site-form textarea {
  width: 100%;
  min-height: 48px !important;
  padding: 0.72rem 0.82rem !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 10px !important;
  background: rgba(0, 0, 0, 0.28) !important;
  color: #f3efe5 !important;
}

body[data-page="/contacto/"] .site-form input:focus,
body[data-page="/contacto/"] .site-form select:focus,
body[data-page="/contacto/"] .site-form textarea:focus {
  border-color: rgba(201, 164, 92, 0.68) !important;
  outline: 0;
  box-shadow: 0 0 0 3px rgba(201, 164, 92, 0.12);
}

body[data-page="/contacto/"] .contact-form-section.is-message textarea {
  min-height: 128px !important;
  resize: vertical;
}

body[data-page="/contacto/"] .contact-form-actions {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.38fr) minmax(0, 1fr) !important;
  gap: 1rem !important;
  align-items: center !important;
}

body[data-page="/contacto/"] .contact-form-actions .button-primary {
  width: 100% !important;
  min-height: 50px !important;
  border-radius: 999px !important;
}

body[data-page="/contacto/"] .contact-form-actions .form-note {
  max-width: 48ch !important;
  margin: 0 !important;
  color: rgba(243, 239, 229, 0.62) !important;
  font-size: 0.9rem !important;
  line-height: 1.48 !important;
}

body[data-page="/contacto/"] .contact-side-stack {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.9rem !important;
}

body[data-page="/contacto/"] .contact-visual-card {
  display: block !important;
  position: relative;
  min-height: 220px;
  margin: 0 !important;
  overflow: hidden;
  border: 1px solid rgba(201, 164, 92, 0.18);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.035);
}

body[data-page="/contacto/"] .contact-visual-card img {
  width: 100%;
  height: 100%;
  min-height: 220px;
  object-fit: cover;
  filter: saturate(0.88) contrast(1.08) brightness(0.82);
}

body[data-page="/contacto/"] .contact-visual-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 42%, rgba(0, 0, 0, 0.82));
}

body[data-page="/contacto/"] .contact-visual-card figcaption {
  position: absolute;
  z-index: 1;
  right: 0.85rem;
  bottom: 0.85rem;
  left: 0.85rem;
  padding: 0.85rem;
  border: 1px solid rgba(201, 164, 92, 0.22);
  border-radius: 13px;
  background: rgba(7, 10, 8, 0.78);
  backdrop-filter: blur(12px);
}

body[data-page="/contacto/"] .contact-visual-card span,
body[data-page="/contacto/"] .contact-direct-card .panel-label,
body[data-page="/contacto/"] .contact-check-panel .panel-label {
  color: #d8b45d !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-visual-card strong {
  display: block;
  margin-top: 0.28rem;
  color: #f3efe5;
  font-family: var(--font-display);
  font-size: 1.35rem;
  line-height: 1.04;
}

body[data-page="/contacto/"] .contact-direct-card,
body[data-page="/contacto/"] .contact-check-panel {
  padding: 1.2rem !important;
  border: 1px solid rgba(201, 164, 92, 0.2) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
    rgba(7, 10, 8, 0.84) !important;
}

body[data-page="/contacto/"] .contact-direct-card h2 {
  margin: 0.9rem 0 1rem !important;
  color: #f3efe5;
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 2.2vw, 2.35rem);
  line-height: 1;
}

body[data-page="/contacto/"] .contact-direct-lines {
  display: grid;
  gap: 0.55rem;
  margin-bottom: 1rem;
}

body[data-page="/contacto/"] .contact-direct-lines a,
body[data-page="/contacto/"] .contact-direct-lines span {
  color: rgba(243, 239, 229, 0.78);
  font-weight: 750;
  text-decoration: none;
}

body[data-page="/contacto/"] .contact-direct-card .button {
  width: 100%;
  min-height: 48px;
}

body[data-page="/contacto/"] .contact-brief-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.7rem !important;
  margin-top: 0.9rem;
}

body[data-page="/contacto/"] .contact-brief-grid article {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  gap: 0.72rem !important;
  align-items: start !important;
  min-height: 0 !important;
  padding: 0.82rem !important;
  border: 1px solid rgba(201, 164, 92, 0.14) !important;
  border-radius: 13px !important;
  background: rgba(255, 255, 255, 0.028) !important;
}

body[data-page="/contacto/"] .contact-brief-grid span {
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  margin: 0 !important;
  border: 1px solid rgba(201, 164, 92, 0.42);
  border-radius: 999px;
  color: #f6c65d;
  font-size: 0.68rem;
  font-weight: 900;
}

body[data-page="/contacto/"] .contact-brief-grid strong {
  display: block;
  margin: 0 !important;
  color: #f3efe5;
  line-height: 1.15;
}

body[data-page="/contacto/"] .contact-brief-grid small {
  display: block;
  margin-top: 0.28rem;
  color: rgba(243, 239, 229, 0.58);
  line-height: 1.35;
}

@media (max-width: 1120px) {
  body[data-page="/contacto/"] .internal-hero-contacto,
  body[data-page="/contacto/"] .contact-grid {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/contacto/"] .contact-command-panel {
    max-width: 620px;
  }

  body[data-page="/contacto/"] .contact-side-stack {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/contacto/"] .contact-visual-card {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] .internal-hero-contacto {
    min-height: auto !important;
    padding: 6.2rem 1rem 3.2rem !important;
  }

  body[data-page="/contacto/"] .internal-hero-contacto h1 {
    max-width: 9ch;
    font-size: clamp(3.5rem, 15vw, 5rem) !important;
  }

  body[data-page="/contacto/"] .internal-hero-contacto .cta-row,
  body[data-page="/contacto/"] .contact-command-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  body[data-page="/contacto/"] .contact-command-panel h3 {
    max-width: 100% !important;
    font-size: clamp(2.5rem, 12vw, 3.5rem) !important;
  }

  body[data-page="/contacto/"] .contact-trust-strip,
  body[data-page="/contacto/"] .contact-grid {
    width: min(100% - 1.25rem, 1180px) !important;
    grid-template-columns: 1fr !important;
  }

  body[data-page="/contacto/"] .contact-trust-strip {
    margin-top: -1rem;
  }

  body[data-page="/contacto/"] .contact-trust-strip article {
    min-height: 0;
  }

  body[data-page="/contacto/"] .contact-form-card,
  body[data-page="/contacto/"] .contact-form-fields,
  body[data-page="/contacto/"] .contact-form-actions,
  body[data-page="/contacto/"] .contact-side-stack {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/contacto/"] .contact-form-left {
    padding-right: 0;
    padding-bottom: 1.1rem;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  body[data-page="/contacto/"] .contact-form-left h2 {
    max-width: 100% !important;
    font-size: clamp(2.8rem, 13vw, 4.2rem) !important;
  }

  body[data-page="/contacto/"] .contact-form-fields label:nth-child(9) {
    grid-column: auto;
  }
}

/* V4.61: one real composition for all Promotoras-base vertical pages. */
body:not([data-page="/"]) .hero.hero-page.internal-hero.vertical-premium-hero,
body:not([data-page="/"]) .hero.hero-immersive.internal-hero.vertical-premium-hero,
body:not([data-page="/"]) .vertical-premium-hero {
  grid-template-columns: minmax(0, 620px) minmax(0, 460px) !important;
  gap: clamp(1.45rem, 3vw, 3.2rem) !important;
  align-items: center !important;
  min-height: clamp(690px, 84vh, 820px) !important;
  padding-top: clamp(6.4rem, 9vh, 8.4rem) !important;
  padding-right: clamp(2rem, 6vw, 5rem) !important;
  padding-left: clamp(2rem, 6vw, 5rem) !important;
}

body:not([data-page="/"]) .vertical-premium-hero .hero-copy {
  width: 100% !important;
  max-width: 660px !important;
}

body:not([data-page="/"]) .vertical-premium-hero .hero-copy h1 {
  max-width: 17.8ch !important;
  font-size: clamp(3.2rem, 4.2vw, 4.9rem) !important;
  line-height: 0.93 !important;
}

body:not([data-page="/"]) .vertical-premium-hero .lead,
body:not([data-page="/"]) .vertical-premium-hero .hero-note {
  max-width: 64ch !important;
}

body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered,
body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered > .vertical-command-panel {
  width: min(100%, 460px) !important;
  max-width: 460px !important;
}

body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered {
  justify-self: end !important;
}

body:not([data-page="/"]) .vertical-command-copy h3 {
  max-width: 16ch !important;
  font-size: clamp(1.62rem, 2vw, 2.35rem) !important;
  line-height: 1 !important;
}

body:not([data-page="/"]) .vertical-command-modules {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  padding-top: 0.75rem !important;
}

body:not([data-page="/"]) .vertical-command-module {
  display: grid !important;
  grid-template-columns: 2.25rem minmax(0, 0.72fr) minmax(0, 1.25fr) !important;
  align-items: center !important;
  min-height: 0 !important;
  padding: 0.68rem 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body:not([data-page="/"]) .vertical-command-module + .vertical-command-module {
  border-top: 1px solid rgba(240, 206, 122, 0.09) !important;
}

body:not([data-page="/"]) .vertical-command-module strong {
  font-size: 0.72rem !important;
  line-height: 1.1 !important;
}

body:not([data-page="/"]) .vertical-command-module small {
  display: -webkit-box;
  overflow: hidden;
  font-size: 0.7rem !important;
  line-height: 1.4 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:not([data-page="/"]) .section-heading h2,
body:not([data-page="/"]) .vertical-focus-copy h2,
body:not([data-page="/"]) .vertical-process-shell h2,
body:not([data-page="/"]) .vertical-decision-copy h2,
body:not([data-page="/"]) .vertical-final-shell h2 {
  max-width: 16.5ch !important;
  font-size: clamp(2.75rem, 4.1vw, 4.85rem) !important;
  line-height: 0.95 !important;
}

body:not([data-page="/"]) .vertical-focus-shell,
body:not([data-page="/"]) .vertical-process-shell {
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr) !important;
  width: min(100% - clamp(2rem, 7vw, 8rem), 1360px) !important;
  max-width: 1360px !important;
  gap: clamp(1.5rem, 3.2vw, 3.6rem) !important;
  align-items: center !important;
}

body:not([data-page="/"]) .vertical-focus-copy .vertical-signal-grid,
body:not([data-page="/"]) .vertical-signal-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.62rem !important;
  margin-top: 1rem !important;
}

body:not([data-page="/"]) .vertical-signal-card {
  display: grid !important;
  grid-template-columns: 2.2rem minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  min-height: 0 !important;
  padding: 0.78rem !important;
  gap: 0.16rem 0.7rem !important;
}

body:not([data-page="/"]) .vertical-signal-code {
  grid-row: 1 / span 2;
}

body:not([data-page="/"]) .vertical-signal-card h3,
body:not([data-page="/"]) .vertical-signal-card p {
  min-height: 0 !important;
  margin: 0 !important;
}

body:not([data-page="/"]) .vertical-signal-card p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:not([data-page="/"]) .vertical-activation-section .band-shell,
body:not([data-page="/"]) .vertical-case-section .band-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 0.82fr) minmax(300px, 0.42fr) !important;
  width: min(100% - clamp(2rem, 7vw, 8rem), 1360px) !important;
  max-width: 1360px !important;
  gap: clamp(1rem, 2.4vw, 2.6rem) !important;
  align-items: end !important;
}

body:not([data-page="/"]) .vertical-action-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  width: min(100% - clamp(2rem, 7vw, 8rem), 1360px) !important;
  max-width: 1360px !important;
  gap: 0.64rem !important;
}

body:not([data-page="/"]) .vertical-action-card,
body:not([data-page="/"]) .vertical-action-card.is-featured,
body:not([data-page="/"]) .vertical-action-card:nth-child(2),
body:not([data-page="/"]) .vertical-action-card:nth-child(3) {
  grid-column: auto !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 164px !important;
  padding: 0.88rem !important;
}

body:not([data-page="/"]) .vertical-action-card:nth-child(n) {
  grid-column: auto !important;
}

body:not([data-page="/"]) .vertical-action-card p {
  display: -webkit-box !important;
  min-height: 0 !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:not([data-page="/"]) .vertical-action-card a {
  margin-top: auto !important;
}

body:not([data-page="/"]) .premium-case-grid,
body:not([data-page="/"]) .vertical-package-grid,
body:not([data-page="/"]) .related-premium-grid {
  width: min(100% - clamp(2rem, 7vw, 8rem), 1360px) !important;
  max-width: 1360px !important;
  gap: 0.72rem !important;
}

body:not([data-page="/"]) .premium-case-grid .card,
body:not([data-page="/"]) .vertical-package-grid .card,
body:not([data-page="/"]) .related-premium-grid .card {
  grid-column: auto !important;
}

body:not([data-page="/"]) .premium-case-grid .card-media,
body:not([data-page="/"]) .vertical-package-grid .card-media,
body:not([data-page="/"]) .related-premium-grid .card-media {
  aspect-ratio: 16 / 7.8 !important;
}

body:not([data-page="/"]) .premium-case-grid .card p:not(.card-kicker),
body:not([data-page="/"]) .vertical-package-grid .card p:not(.card-kicker),
body:not([data-page="/"]) .related-premium-grid .card p:not(.card-kicker) {
  display: -webkit-box !important;
  min-height: 0 !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2 !important;
}

@media (max-width: 1180px) {
  body:not([data-page="/"]) .hero.hero-page.internal-hero.vertical-premium-hero,
  body:not([data-page="/"]) .hero.hero-immersive.internal-hero.vertical-premium-hero,
  body:not([data-page="/"]) .vertical-premium-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: auto !important;
  }

  body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered,
  body:not([data-page="/"]) .vertical-premium-hero .hero-panel-layered > .vertical-command-panel {
    justify-self: start !important;
    width: min(100%, 720px) !important;
    max-width: 720px !important;
  }

  body:not([data-page="/"]) .vertical-command-modules,
  body:not([data-page="/"]) .vertical-action-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .vertical-premium-hero .hero-copy h1,
  body:not([data-page="/"]) .section-heading h2,
  body:not([data-page="/"]) .vertical-focus-copy h2,
  body:not([data-page="/"]) .vertical-process-shell h2,
  body:not([data-page="/"]) .vertical-decision-copy h2,
  body:not([data-page="/"]) .vertical-final-shell h2 {
    max-width: 100% !important;
    font-size: clamp(2.35rem, 11vw, 3.4rem) !important;
  }

  body:not([data-page="/"]) .vertical-focus-shell,
  body:not([data-page="/"]) .vertical-process-shell,
  body:not([data-page="/"]) .vertical-activation-section .band-shell,
  body:not([data-page="/"]) .vertical-case-section .band-shell,
  body:not([data-page="/"]) .vertical-command-modules,
  body:not([data-page="/"]) .vertical-action-grid,
  body:not([data-page="/"]) .vertical-focus-copy .vertical-signal-grid,
  body:not([data-page="/"]) .vertical-signal-grid {
    grid-template-columns: 1fr !important;
  }
}

/* V4.58 contacto final: override after legacy single-row rules. */
body[data-page="/contacto/"] .contact-intro-rail,
body[data-page="/contacto/"] .contact-visual-card,
body[data-page="/contacto/"] .contact-configurator-cta {
  display: none !important;
}

body[data-page="/contacto/"] .contact-grid {
  width: min(1180px, calc(100% - clamp(2rem, 6vw, 6rem))) !important;
  margin-inline: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 390px) !important;
  gap: clamp(1.2rem, 2.4vw, 2rem) !important;
  align-items: start !important;
}

body[data-page="/contacto/"] .contact-form-card {
  display: block !important;
  min-width: 0 !important;
  padding: clamp(1.35rem, 2.6vw, 2.2rem) !important;
}

body[data-page="/contacto/"] .contact-form-heading {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(260px, 1fr) !important;
  gap: clamp(1rem, 2.4vw, 2rem) !important;
  align-items: end !important;
  margin: 0 0 1.35rem !important;
  padding: 0 0 1.25rem !important;
  border-right: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

body[data-page="/contacto/"] .contact-form-card h2 {
  max-width: 12ch !important;
  margin: 0 !important;
  font-size: clamp(2.9rem, 4.6vw, 5rem) !important;
  line-height: 0.94 !important;
}

body[data-page="/contacto/"] .contact-form-intro {
  max-width: 48ch !important;
  margin: 0 !important;
  font-size: 1rem !important;
  line-height: 1.62 !important;
}

body[data-page="/contacto/"] .contact-form-proof,
body[data-page="/contacto/"] .contact-form-section-label {
  display: none !important;
}

body[data-page="/contacto/"] .contact-form-card .site-form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-areas: none !important;
  gap: 1rem !important;
}

body[data-page="/contacto/"] .contact-form-section,
body[data-page="/contacto/"] .contact-form-section:not(.is-message),
body[data-page="/contacto/"] .contact-form-section.is-message,
body[data-page="/contacto/"] .contact-form-actions {
  grid-area: auto !important;
}

body[data-page="/contacto/"] .contact-form-section {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body[data-page="/contacto/"] .contact-form-fields {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.9rem !important;
}

body[data-page="/contacto/"] .site-form input,
body[data-page="/contacto/"] .site-form select,
body[data-page="/contacto/"] .site-form textarea {
  min-height: 54px !important;
  padding: 0.92rem 1rem !important;
  border-radius: 10px !important;
}

body[data-page="/contacto/"] .contact-form-section.is-message textarea {
  min-height: 180px !important;
}

body[data-page="/contacto/"] .contact-form-actions {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr) !important;
  gap: 1rem !important;
  align-items: center !important;
}

body[data-page="/contacto/"] .contact-form-actions .button-primary {
  width: 100% !important;
  min-height: 54px !important;
  border-radius: 999px !important;
}

body[data-page="/contacto/"] .contact-form-actions .form-note {
  max-width: 52ch !important;
  margin: 0 !important;
  font-size: 0.88rem !important;
  line-height: 1.5 !important;
}

body[data-page="/contacto/"] .contact-side-stack,
body[data-page="/contacto/"] .contact-channel-grid,
body[data-page="/contacto/"] .contact-channel {
  min-width: 0 !important;
  max-width: 100% !important;
}

body[data-page="/contacto/"] .contact-side-stack {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1rem !important;
}

body[data-page="/contacto/"] .contact-channel-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.8rem !important;
}

body[data-page="/contacto/"] .contact-brief-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.8rem !important;
}

body[data-page="/contacto/"] .contact-brief-grid article {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  min-height: 0 !important;
  gap: 0.8rem !important;
}

@media (max-width: 1080px) {
  body[data-page="/contacto/"] .contact-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 720px) {
  body[data-page="/contacto/"] .contact-grid {
    width: min(100% - 1.25rem, 1180px) !important;
  }

  body[data-page="/contacto/"] .contact-form-heading,
  body[data-page="/contacto/"] .contact-form-fields,
  body[data-page="/contacto/"] .contact-form-actions {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/contacto/"] .contact-form-card h2 {
    max-width: 100% !important;
    font-size: clamp(2.55rem, 12vw, 3.7rem) !important;
  }
}

/* V4.57 contacto: formulario normal, claro y usable. */
body[data-page="/contacto/"] .contact-main-section {
  padding-top: clamp(4.5rem, 7vw, 6.5rem);
}

body[data-page="/contacto/"] .contact-intro-rail {
  display: none !important;
}

body[data-page="/contacto/"] .contact-grid {
  width: min(1180px, calc(100% - clamp(2rem, 6vw, 6rem)));
  margin-inline: auto;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.44fr);
  gap: clamp(1.2rem, 2.4vw, 2rem);
  align-items: start;
}

body[data-page="/contacto/"] .contact-form-card {
  display: block !important;
  min-height: 0 !important;
  padding: clamp(1.35rem, 2.6vw, 2.2rem) !important;
  border: 1px solid rgba(201, 164, 92, 0.22);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
    rgba(7, 10, 8, 0.86);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.34);
}

body[data-page="/contacto/"] .contact-form-heading {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(260px, 1fr);
  gap: clamp(1rem, 2.4vw, 2rem);
  align-items: end;
  margin: 0 0 1.35rem !important;
  padding: 0 0 1.25rem !important;
  border-right: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

body[data-page="/contacto/"] .contact-form-heading > div {
  min-width: 0;
}

body[data-page="/contacto/"] .contact-form-card h2 {
  max-width: 12ch !important;
  margin: 0 !important;
  font-size: clamp(2.9rem, 4.6vw, 5rem) !important;
  line-height: 0.94 !important;
}

body[data-page="/contacto/"] .contact-form-intro {
  max-width: 48ch !important;
  margin: 0 !important;
  color: rgba(243, 239, 229, 0.7);
  font-size: 1rem !important;
  line-height: 1.62;
}

body[data-page="/contacto/"] .contact-form-proof {
  display: none !important;
}

body[data-page="/contacto/"] .contact-form-card .site-form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-areas: none !important;
  gap: 1rem !important;
  align-items: stretch !important;
}

body[data-page="/contacto/"] .contact-form-section,
body[data-page="/contacto/"] .contact-form-section:not(.is-message),
body[data-page="/contacto/"] .contact-form-section.is-message {
  grid-area: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body[data-page="/contacto/"] .contact-form-section-label {
  display: none !important;
}

body[data-page="/contacto/"] .contact-form-fields {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.9rem !important;
}

body[data-page="/contacto/"] .site-form label {
  gap: 0.45rem !important;
  color: rgba(243, 239, 229, 0.72);
  font-size: 0.82rem;
  font-weight: 800;
}

body[data-page="/contacto/"] .site-form input,
body[data-page="/contacto/"] .site-form select,
body[data-page="/contacto/"] .site-form textarea {
  min-height: 54px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 10px !important;
  padding: 0.92rem 1rem !important;
  background: rgba(0, 0, 0, 0.3) !important;
  color: #f3efe5 !important;
}

body[data-page="/contacto/"] .site-form input:focus,
body[data-page="/contacto/"] .site-form select:focus,
body[data-page="/contacto/"] .site-form textarea:focus {
  border-color: rgba(201, 164, 92, 0.66) !important;
  outline: 0;
  box-shadow: 0 0 0 3px rgba(201, 164, 92, 0.12);
}

body[data-page="/contacto/"] .contact-form-section.is-message textarea {
  min-height: 180px !important;
  resize: vertical;
}

body[data-page="/contacto/"] .contact-form-actions {
  grid-area: auto !important;
  display: grid !important;
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr);
  gap: 1rem !important;
  align-items: center !important;
  margin-top: 0.25rem;
}

body[data-page="/contacto/"] .contact-form-actions .button-primary {
  width: 100%;
  min-height: 54px !important;
  border-radius: 999px;
}

body[data-page="/contacto/"] .contact-form-actions .form-note {
  max-width: 52ch;
  margin: 0 !important;
  color: rgba(243, 239, 229, 0.58);
  font-size: 0.88rem !important;
  line-height: 1.5 !important;
}

body[data-page="/contacto/"] .contact-side-stack {
  display: grid;
  gap: 1rem;
}

body[data-page="/contacto/"] .contact-visual-card {
  display: none !important;
}

body[data-page="/contacto/"] .contact-check-panel {
  padding: 1.25rem !important;
  border-radius: 16px !important;
}

body[data-page="/contacto/"] .contact-check-panel .panel-label {
  margin-bottom: 1rem;
}

body[data-page="/contacto/"] .contact-brief-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.8rem !important;
}

body[data-page="/contacto/"] .contact-brief-grid article {
  min-height: 0 !important;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.8rem;
  align-items: start;
  padding: 0.9rem !important;
  border-radius: 12px !important;
}

body[data-page="/contacto/"] .contact-brief-grid span {
  margin: 0 !important;
}

body[data-page="/contacto/"] .contact-brief-grid strong {
  margin: 0 !important;
}

body[data-page="/contacto/"] .contact-brief-grid small {
  display: block;
  margin-top: 0.25rem;
}

body[data-page="/contacto/"] .contact-channel-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.8rem !important;
}

body[data-page="/contacto/"] .contact-channel,
body[data-page="/contacto/"] .contact-configurator-cta {
  border-radius: 14px !important;
}

body[data-page="/contacto/"] .contact-configurator-cta {
  padding: 1.15rem !important;
}

@media (max-width: 1080px) {
  body[data-page="/contacto/"] .contact-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/contacto/"] .contact-side-stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-page="/contacto/"] .contact-check-panel {
    grid-column: 1 / -1;
  }
}

@media (max-width: 720px) {
  body[data-page="/contacto/"] .contact-grid {
    width: min(100% - 1.25rem, 1180px);
  }

  body[data-page="/contacto/"] .contact-form-heading,
  body[data-page="/contacto/"] .contact-form-fields,
  body[data-page="/contacto/"] .contact-form-actions,
  body[data-page="/contacto/"] .contact-side-stack {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/contacto/"] .contact-form-card h2 {
    max-width: 100% !important;
    font-size: clamp(2.55rem, 12vw, 3.7rem) !important;
  }
}

/* V4.52: arquitectura renderer propio, editorial y premium. */
body[data-page="/arquitectura/"] {
  --arch-bg: #050807;
  --arch-bg-2: #08110d;
  --arch-panel: rgba(255, 255, 255, 0.045);
  --arch-panel-strong: rgba(255, 255, 255, 0.075);
  --arch-border: rgba(255, 255, 255, 0.1);
  --arch-border-gold: rgba(201, 164, 92, 0.45);
  --arch-gold: #c9a45c;
  --arch-ink: #f3efe5;
  --arch-muted: rgba(243, 239, 229, 0.66);
  background: var(--arch-bg);
  color: var(--arch-ink);
}

body[data-page="/arquitectura/"] .page-shell {
  max-width: none;
  padding: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 8%, rgba(201, 164, 92, 0.1), transparent 30rem),
    radial-gradient(circle at 80% 18%, rgba(45, 74, 58, 0.2), transparent 34rem),
    var(--arch-bg);
}

body[data-page="/arquitectura/"] .breadcrumbs,
body[data-page="/arquitectura/"] .breadcrumb {
  display: none;
}

body[data-page="/arquitectura/"] .site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 50;
  min-height: 68px;
  padding: 0 clamp(1.25rem, 4vw, 4rem);
  background: rgba(5, 8, 7, 0.76);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 18px 55px rgba(0, 0, 0, 0.28);
  backdrop-filter: blur(18px);
}

body[data-page="/arquitectura/"] .site-nav .button-nav {
  min-height: 40px;
  padding-inline: 1.25rem;
  color: #080907;
  background: linear-gradient(135deg, #f5c461, #d79e3f);
  border-color: rgba(201, 164, 92, 0.65);
  border-radius: 999px;
}

body[data-page="/arquitectura/"] .arch-shell {
  width: min(1280px, calc(100% - clamp(2rem, 6vw, 6rem)));
  margin-inline: auto;
}

body[data-page="/arquitectura/"] .arch-hero {
  position: relative;
  min-height: 100vh;
  display: grid;
  align-items: center;
  padding: clamp(7rem, 11vw, 9.5rem) 0 clamp(5rem, 8vw, 7rem);
  isolation: isolate;
}

body[data-page="/arquitectura/"] .arch-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: -1;
  height: 30%;
  background: linear-gradient(180deg, transparent, var(--arch-bg));
}

body[data-page="/arquitectura/"] .arch-hero-media,
body[data-page="/arquitectura/"] .arch-final > img {
  position: absolute;
  inset: 0;
  z-index: -2;
}

body[data-page="/arquitectura/"] .arch-hero-media img,
body[data-page="/arquitectura/"] .arch-final > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.88) contrast(1.04);
}

body[data-page="/arquitectura/"] .arch-hero-media::after,
body[data-page="/arquitectura/"] .arch-final::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5, 8, 7, 0.92), rgba(5, 8, 7, 0.64) 45%, rgba(5, 8, 7, 0.86)),
    linear-gradient(180deg, rgba(5, 8, 7, 0.36), rgba(5, 8, 7, 0.86));
}

body[data-page="/arquitectura/"] .arch-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.94fr) minmax(430px, 0.78fr);
  gap: clamp(3rem, 6vw, 6rem);
  align-items: center;
}

body[data-page="/arquitectura/"] .arch-hero-copy {
  max-width: 690px;
}

body[data-page="/arquitectura/"] .arch-eyebrow {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0 0 1rem;
  color: var(--arch-gold);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body[data-page="/arquitectura/"] .arch-eyebrow::before {
  content: "";
  width: 2.2rem;
  height: 1px;
  background: currentColor;
  opacity: 0.72;
}

body[data-page="/arquitectura/"] .arch-hero h1,
body[data-page="/arquitectura/"] .arch-section h2,
body[data-page="/arquitectura/"] .arch-final h2 {
  margin: 0;
  color: var(--arch-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  line-height: 0.93;
  letter-spacing: 0;
}

body[data-page="/arquitectura/"] .arch-hero h1 {
  max-width: 690px;
  font-size: clamp(3.85rem, 5.45vw, 5.95rem);
}

body[data-page="/arquitectura/"] .arch-section h2,
body[data-page="/arquitectura/"] .arch-final h2 {
  max-width: 11.6ch;
  font-size: clamp(3rem, 5vw, 5.7rem);
}

body[data-page="/arquitectura/"] .arch-lead,
body[data-page="/arquitectura/"] .arch-section-head p,
body[data-page="/arquitectura/"] .arch-row-head p,
body[data-page="/arquitectura/"] .arch-final p {
  max-width: 720px;
  margin: 1.2rem 0 0;
  color: var(--arch-muted);
  font-size: clamp(1rem, 1.25vw, 1.18rem);
  line-height: 1.62;
}

body[data-page="/arquitectura/"] .arch-note {
  max-width: 610px;
  margin: 1rem 0 0;
  color: rgba(243, 239, 229, 0.76);
  line-height: 1.65;
}

body[data-page="/arquitectura/"] .arch-cta-row,
body[data-page="/arquitectura/"] .arch-trust-rail,
body[data-page="/arquitectura/"] .arch-advantage-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
  margin-top: 1.55rem;
}

body[data-page="/arquitectura/"] .arch-cta-row .button {
  min-height: 48px;
  padding-inline: 1.35rem;
  border-radius: 999px;
}

body[data-page="/arquitectura/"] .arch-trust-rail span,
body[data-page="/arquitectura/"] .arch-advantage-row span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  border: 1px solid rgba(201, 164, 92, 0.28);
  border-radius: 999px;
  padding: 0.45rem 0.75rem;
  color: rgba(243, 239, 229, 0.8);
  background: rgba(5, 8, 7, 0.54);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

body[data-page="/arquitectura/"] .arch-hero-card,
body[data-page="/arquitectura/"] .arch-deliverable-panel,
body[data-page="/arquitectura/"] .arch-final-card {
  border: 1px solid var(--arch-border);
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.025)), rgba(9, 14, 12, 0.78);
  box-shadow: 0 34px 90px rgba(0, 0, 0, 0.42);
  backdrop-filter: blur(16px);
}

body[data-page="/arquitectura/"] .arch-hero-card {
  justify-self: end;
  width: min(100%, 560px);
  padding: clamp(1.15rem, 2.5vw, 1.85rem);
}

body[data-page="/arquitectura/"] .arch-card-top {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
  margin-bottom: 1.35rem;
}

body[data-page="/arquitectura/"] .arch-card-top span,
body[data-page="/arquitectura/"] .arch-card-top em,
body[data-page="/arquitectura/"] .arch-final-card > span,
body[data-page="/arquitectura/"] .arch-service-card span,
body[data-page="/arquitectura/"] .arch-project-card span,
body[data-page="/arquitectura/"] .arch-package-card span,
body[data-page="/arquitectura/"] .arch-route-card span {
  color: var(--arch-gold);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body[data-page="/arquitectura/"] .arch-card-top em {
  border: 1px solid rgba(201, 164, 92, 0.32);
  border-radius: 999px;
  padding: 0.45rem 0.7rem;
  background: rgba(201, 164, 92, 0.08);
}

body[data-page="/arquitectura/"] .arch-hero-card h2 {
  margin: 0;
  color: var(--arch-ink);
  font-size: clamp(2rem, 3vw, 3.15rem);
  line-height: 1.02;
}

body[data-page="/arquitectura/"] .arch-hero-card > p {
  margin: 1rem 0 0;
  color: var(--arch-muted);
  font-size: 1rem;
  line-height: 1.58;
}

body[data-page="/arquitectura/"] .arch-benefit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
  margin-top: 1.35rem;
}

body[data-page="/arquitectura/"] .arch-benefit-grid article,
body[data-page="/arquitectura/"] .arch-focus-list article,
body[data-page="/arquitectura/"] .arch-deliverable-card,
body[data-page="/arquitectura/"] .arch-scope-card,
body[data-page="/arquitectura/"] .arch-timeline article {
  border: 1px solid var(--arch-border);
  border-radius: 0.85rem;
  background: var(--arch-panel);
}

body[data-page="/arquitectura/"] .arch-benefit-grid article {
  min-height: 136px;
  padding: 0.95rem;
}

body[data-page="/arquitectura/"] .arch-benefit-grid span,
body[data-page="/arquitectura/"] .arch-focus-list span,
body[data-page="/arquitectura/"] .arch-deliverable-card > span,
body[data-page="/arquitectura/"] .arch-scope-card > span,
body[data-page="/arquitectura/"] .arch-timeline span {
  display: inline-grid;
  min-width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid rgba(201, 164, 92, 0.36);
  border-radius: 999px;
  padding: 0 0.55rem;
  color: var(--arch-gold);
  font-size: 0.68rem;
  font-weight: 900;
}

body[data-page="/arquitectura/"] .arch-benefit-grid strong,
body[data-page="/arquitectura/"] .arch-focus-list strong,
body[data-page="/arquitectura/"] .arch-deliverable-card strong,
body[data-page="/arquitectura/"] .arch-scope-card strong,
body[data-page="/arquitectura/"] .arch-timeline strong {
  display: block;
  margin-top: 0.75rem;
  color: var(--arch-ink);
  font-size: 1rem;
}

body[data-page="/arquitectura/"] .arch-benefit-grid p,
body[data-page="/arquitectura/"] .arch-focus-list p,
body[data-page="/arquitectura/"] .arch-deliverable-card p,
body[data-page="/arquitectura/"] .arch-scope-card p,
body[data-page="/arquitectura/"] .arch-timeline p {
  margin: 0.35rem 0 0;
  color: var(--arch-muted);
  line-height: 1.45;
}

body[data-page="/arquitectura/"] .arch-card-line {
  margin-top: 1.15rem;
  border-top: 1px solid rgba(201, 164, 92, 0.22);
  padding-top: 0.9rem;
  color: rgba(243, 239, 229, 0.82);
  font-size: 0.88rem;
}

body[data-page="/arquitectura/"] .arch-section {
  padding: clamp(4.8rem, 7.5vw, 7rem) 0;
  background: radial-gradient(circle at 15% 4%, rgba(201, 164, 92, 0.06), transparent 26rem), linear-gradient(180deg, rgba(13, 23, 18, 0.84), rgba(5, 8, 7, 0.98));
}

body[data-page="/arquitectura/"] .arch-feature-grid,
body[data-page="/arquitectura/"] .arch-delivery-grid,
body[data-page="/arquitectura/"] .arch-process-grid,
body[data-page="/arquitectura/"] .arch-faq-grid,
body[data-page="/arquitectura/"] .arch-final-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(460px, 1.08fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}

body[data-page="/arquitectura/"] .arch-focus-list {
  display: grid;
  gap: 0.8rem;
  margin-top: 1.8rem;
}

body[data-page="/arquitectura/"] .arch-focus-list article,
body[data-page="/arquitectura/"] .arch-deliverable-card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  align-items: start;
  padding: 1rem;
}

body[data-page="/arquitectura/"] .arch-focus-list article strong,
body[data-page="/arquitectura/"] .arch-deliverable-card strong {
  margin: 0;
}

body[data-page="/arquitectura/"] .arch-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
  margin-top: 1rem;
}

body[data-page="/arquitectura/"] .arch-metrics article {
  border-top: 1px solid rgba(201, 164, 92, 0.42);
  padding-top: 1rem;
}

body[data-page="/arquitectura/"] .arch-metrics strong {
  display: block;
  color: var(--arch-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2rem, 3.7vw, 3rem);
  line-height: 1;
}

body[data-page="/arquitectura/"] .arch-metrics span {
  display: block;
  margin-top: 0.25rem;
  color: var(--arch-muted);
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-page="/arquitectura/"] .arch-image-feature,
body[data-page="/arquitectura/"] .arch-overlay-image,
body[data-page="/arquitectura/"] .arch-service-card,
body[data-page="/arquitectura/"] .arch-project-card,
body[data-page="/arquitectura/"] .arch-package-card,
body[data-page="/arquitectura/"] .arch-route-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--arch-border);
  border-radius: 1rem;
  background: var(--arch-panel);
  box-shadow: 0 26px 80px rgba(0, 0, 0, 0.3);
}

body[data-page="/arquitectura/"] .arch-image-feature {
  min-height: 560px;
}

body[data-page="/arquitectura/"] .arch-overlay-image {
  min-height: 610px;
}

body[data-page="/arquitectura/"] .arch-image-feature > img,
body[data-page="/arquitectura/"] .arch-overlay-image > img,
body[data-page="/arquitectura/"] .arch-service-card img,
body[data-page="/arquitectura/"] .arch-project-card img,
body[data-page="/arquitectura/"] .arch-package-card img,
body[data-page="/arquitectura/"] .arch-route-card > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease, filter 0.45s ease;
}

body[data-page="/arquitectura/"] .arch-image-feature > img {
  position: absolute;
  inset: 0;
}

body[data-page="/arquitectura/"] .arch-image-feature::after,
body[data-page="/arquitectura/"] .arch-overlay-image::after,
body[data-page="/arquitectura/"] .arch-route-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 42%, rgba(5, 8, 7, 0.86));
  pointer-events: none;
}

body[data-page="/arquitectura/"] .arch-image-feature figcaption,
body[data-page="/arquitectura/"] .arch-overlay-image figcaption {
  position: absolute;
  left: 1rem;
  right: 1rem;
  bottom: 1rem;
  z-index: 2;
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 0.85rem;
  padding: 1rem;
  background: rgba(5, 8, 7, 0.72);
  backdrop-filter: blur(14px);
}

body[data-page="/arquitectura/"] .arch-image-feature figcaption span,
body[data-page="/arquitectura/"] .arch-overlay-image figcaption span {
  color: var(--arch-gold);
  font-size: 0.7rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body[data-page="/arquitectura/"] .arch-image-feature figcaption strong,
body[data-page="/arquitectura/"] .arch-overlay-image figcaption strong {
  display: block;
  margin-top: 0.35rem;
  color: var(--arch-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.45rem, 2.1vw, 2.05rem);
  line-height: 1.05;
}

body[data-page="/arquitectura/"] .arch-overlay-image figcaption p {
  margin: 0.7rem 0 0;
  color: var(--arch-muted);
  line-height: 1.55;
}

body[data-page="/arquitectura/"] .arch-thumb-rail {
  position: absolute;
  z-index: 3;
  left: 1rem;
  right: 1rem;
  bottom: 7.6rem;
  display: flex;
  gap: 0.45rem;
  overflow-x: auto;
  padding-bottom: 0.2rem;
}

body[data-page="/arquitectura/"] .arch-thumb-rail img {
  flex: 0 0 70px;
  width: 70px;
  height: 48px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 0.35rem;
  object-fit: cover;
}

body[data-page="/arquitectura/"] .arch-deliverable-panel {
  padding: clamp(1.3rem, 3vw, 2.1rem);
}

body[data-page="/arquitectura/"] .arch-deliverable-panel h2 {
  font-size: clamp(2.6rem, 4.6vw, 4.7rem);
}

body[data-page="/arquitectura/"] .arch-deliverable-list {
  display: grid;
  gap: 0.75rem;
  margin-top: 1.35rem;
}

body[data-page="/arquitectura/"] .arch-deliverable-card {
  min-height: 98px;
  color: inherit;
  text-decoration: none;
}

body[data-page="/arquitectura/"] .arch-section-head,
body[data-page="/arquitectura/"] .arch-row-head {
  margin-bottom: clamp(1.8rem, 4vw, 3rem);
}

body[data-page="/arquitectura/"] .arch-section-head {
  max-width: 860px;
}

body[data-page="/arquitectura/"] .arch-row-head {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  align-items: end;
}

body[data-page="/arquitectura/"] .arch-service-grid,
body[data-page="/arquitectura/"] .arch-project-grid,
body[data-page="/arquitectura/"] .arch-package-grid,
body[data-page="/arquitectura/"] .arch-route-grid,
body[data-page="/arquitectura/"] .arch-scope-grid {
  display: grid;
  gap: clamp(1rem, 2vw, 1.4rem);
}

body[data-page="/arquitectura/"] .arch-service-grid,
body[data-page="/arquitectura/"] .arch-project-grid,
body[data-page="/arquitectura/"] .arch-package-grid,
body[data-page="/arquitectura/"] .arch-route-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body[data-page="/arquitectura/"] .arch-service-card,
body[data-page="/arquitectura/"] .arch-project-card,
body[data-page="/arquitectura/"] .arch-package-card,
body[data-page="/arquitectura/"] .arch-route-card,
body[data-page="/arquitectura/"] .arch-scope-card {
  color: inherit;
  text-decoration: none;
  transition: border-color 0.24s ease, background 0.24s ease, transform 0.24s ease;
}

body[data-page="/arquitectura/"] .arch-service-card figure,
body[data-page="/arquitectura/"] .arch-project-card figure,
body[data-page="/arquitectura/"] .arch-package-card figure {
  height: 210px;
  margin: 0;
}

body[data-page="/arquitectura/"] .arch-service-card div,
body[data-page="/arquitectura/"] .arch-project-card div,
body[data-page="/arquitectura/"] .arch-package-card div {
  padding: 1.1rem;
}

body[data-page="/arquitectura/"] .arch-service-card h3,
body[data-page="/arquitectura/"] .arch-project-card h3,
body[data-page="/arquitectura/"] .arch-package-card h3,
body[data-page="/arquitectura/"] .arch-route-card h3,
body[data-page="/arquitectura/"] .arch-final-card h3 {
  margin: 0.45rem 0 0;
  color: var(--arch-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.45rem, 2.15vw, 2.1rem);
  line-height: 1.04;
}

body[data-page="/arquitectura/"] .arch-service-card p,
body[data-page="/arquitectura/"] .arch-project-card p,
body[data-page="/arquitectura/"] .arch-package-card p,
body[data-page="/arquitectura/"] .arch-route-card p,
body[data-page="/arquitectura/"] .arch-final-card p {
  margin: 0.7rem 0 0;
  color: var(--arch-muted);
  line-height: 1.55;
}

body[data-page="/arquitectura/"] .arch-project-card {
  min-height: 500px;
}

body[data-page="/arquitectura/"] .arch-project-card figure {
  height: 260px;
}

body[data-page="/arquitectura/"] .arch-project-card small {
  display: inline-flex;
  margin: 1rem 0.35rem 0 0;
  border: 1px solid rgba(201, 164, 92, 0.22);
  border-radius: 999px;
  padding: 0.35rem 0.55rem;
  color: rgba(243, 239, 229, 0.72);
  font-size: 0.7rem;
}

body[data-page="/arquitectura/"] .arch-package-card figure {
  height: 250px;
}

body[data-page="/arquitectura/"] .arch-process-grid {
  align-items: center;
  margin-bottom: clamp(2rem, 4vw, 3.2rem);
}

body[data-page="/arquitectura/"] .arch-process-image {
  min-height: 500px;
}

body[data-page="/arquitectura/"] .arch-timeline {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid var(--arch-border);
  border-radius: 1rem;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.04);
}

body[data-page="/arquitectura/"] .arch-timeline article {
  min-height: 210px;
  border: 0;
  border-radius: 0;
  padding: 1.1rem;
  background: rgba(5, 8, 7, 0.56);
}

body[data-page="/arquitectura/"] .arch-timeline article + article {
  border-left: 1px solid rgba(255, 255, 255, 0.08);
}

body[data-page="/arquitectura/"] .arch-scope-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body[data-page="/arquitectura/"] .arch-scope-card {
  min-height: 220px;
  padding: 1.1rem;
}

body[data-page="/arquitectura/"] .arch-route-card {
  min-height: 500px;
}

body[data-page="/arquitectura/"] .arch-route-card > img {
  position: absolute;
  inset: 0;
}

body[data-page="/arquitectura/"] .arch-route-card > div {
  position: absolute;
  inset: auto 1rem 1rem;
  z-index: 2;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.9rem;
  padding: 1rem;
  background: rgba(5, 8, 7, 0.78);
  backdrop-filter: blur(14px);
}

body[data-page="/arquitectura/"] .arch-route-card ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}

body[data-page="/arquitectura/"] .arch-route-card li {
  border: 1px solid rgba(201, 164, 92, 0.25);
  border-radius: 999px;
  padding: 0.35rem 0.55rem;
  color: rgba(243, 239, 229, 0.78);
  font-size: 0.74rem;
}

body[data-page="/arquitectura/"] .arch-faq-grid {
  align-items: start;
}

body[data-page="/arquitectura/"] .arch-faq .faq-list {
  display: grid;
  gap: 0.75rem;
}

body[data-page="/arquitectura/"] .arch-faq details {
  border: 1px solid var(--arch-border);
  border-radius: 0.9rem;
  padding: 1rem 1.1rem;
  background: var(--arch-panel);
}

body[data-page="/arquitectura/"] .arch-faq summary {
  color: var(--arch-ink);
  font-weight: 800;
  cursor: pointer;
}

body[data-page="/arquitectura/"] .arch-faq details p {
  margin: 0.75rem 0 0;
  color: var(--arch-muted);
  line-height: 1.6;
}

body[data-page="/arquitectura/"] .arch-final {
  position: relative;
  min-height: 720px;
  display: grid;
  align-items: center;
  padding: clamp(5rem, 9vw, 8rem) 0;
  isolation: isolate;
  overflow: hidden;
}

body[data-page="/arquitectura/"] .arch-final::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(5, 8, 7, 0.12), rgba(5, 8, 7, 0.86));
}

body[data-page="/arquitectura/"] .arch-final-grid {
  grid-template-columns: minmax(0, 1fr) minmax(380px, 0.58fr);
}

body[data-page="/arquitectura/"] .arch-final-card {
  padding: clamp(1.25rem, 3vw, 2rem);
}

body[data-page="/arquitectura/"] .arch-service-card:hover,
body[data-page="/arquitectura/"] .arch-project-card:hover,
body[data-page="/arquitectura/"] .arch-package-card:hover,
body[data-page="/arquitectura/"] .arch-route-card:hover,
body[data-page="/arquitectura/"] .arch-deliverable-card:hover,
body[data-page="/arquitectura/"] .arch-scope-card:hover {
  border-color: var(--arch-border-gold);
  background: var(--arch-panel-strong);
  transform: translateY(-4px);
}

body[data-page="/arquitectura/"] .arch-service-card:hover img,
body[data-page="/arquitectura/"] .arch-project-card:hover img,
body[data-page="/arquitectura/"] .arch-package-card:hover img,
body[data-page="/arquitectura/"] .arch-route-card:hover img,
body[data-page="/arquitectura/"] .arch-image-feature:hover > img,
body[data-page="/arquitectura/"] .arch-overlay-image:hover > img {
  transform: scale(1.035);
  filter: saturate(1.02) contrast(1.06);
}

@media (max-width: 1160px) {
  body[data-page="/arquitectura/"] .arch-hero-grid,
  body[data-page="/arquitectura/"] .arch-feature-grid,
  body[data-page="/arquitectura/"] .arch-delivery-grid,
  body[data-page="/arquitectura/"] .arch-process-grid,
  body[data-page="/arquitectura/"] .arch-faq-grid,
  body[data-page="/arquitectura/"] .arch-final-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/arquitectura/"] .arch-service-grid,
  body[data-page="/arquitectura/"] .arch-project-grid,
  body[data-page="/arquitectura/"] .arch-package-grid,
  body[data-page="/arquitectura/"] .arch-route-grid,
  body[data-page="/arquitectura/"] .arch-scope-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-page="/arquitectura/"] .arch-hero-card {
    justify-self: stretch;
    width: auto;
  }

  body[data-page="/arquitectura/"] .arch-timeline {
    grid-template-columns: 1fr;
  }

  body[data-page="/arquitectura/"] .arch-timeline article + article {
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
  }
}

@media (max-width: 760px) {
  body[data-page="/arquitectura/"] .arch-shell {
    width: min(100% - 1.5rem, 1280px);
  }

  body[data-page="/arquitectura/"] .arch-hero {
    min-height: auto;
    padding: 7rem 0 4.5rem;
  }

  body[data-page="/arquitectura/"] .arch-hero h1 {
    max-width: 100%;
    font-size: clamp(3.05rem, 14vw, 4.35rem);
  }

  body[data-page="/arquitectura/"] .arch-section h2,
  body[data-page="/arquitectura/"] .arch-final h2 {
    font-size: clamp(2.65rem, 12vw, 4.1rem);
  }

  body[data-page="/arquitectura/"] .arch-benefit-grid,
  body[data-page="/arquitectura/"] .arch-metrics,
  body[data-page="/arquitectura/"] .arch-service-grid,
  body[data-page="/arquitectura/"] .arch-project-grid,
  body[data-page="/arquitectura/"] .arch-package-grid,
  body[data-page="/arquitectura/"] .arch-route-grid,
  body[data-page="/arquitectura/"] .arch-scope-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/arquitectura/"] .arch-image-feature,
  body[data-page="/arquitectura/"] .arch-overlay-image,
  body[data-page="/arquitectura/"] .arch-process-image {
    min-height: 440px;
  }

  body[data-page="/arquitectura/"] .arch-row-head {
    display: grid;
    align-items: start;
  }

  body[data-page="/arquitectura/"] .arch-project-card,
  body[data-page="/arquitectura/"] .arch-route-card {
    min-height: 450px;
  }

  body[data-page="/arquitectura/"] .arch-final {
    min-height: auto;
  }
}

/* V4.55 portfolio: true three-column editorial masonry, closer to the reference. */
body[data-page="/portfolio/"] .portfolio-hero {
  min-height: clamp(360px, 34vw, 520px);
}

body[data-page="/portfolio/"] .portfolio-hero::after {
  background:
    linear-gradient(90deg, rgba(2, 4, 3, 0.95) 0%, rgba(2, 4, 3, 0.76) 32%, rgba(2, 4, 3, 0.18) 64%, rgba(2, 4, 3, 0.34) 100%),
    linear-gradient(180deg, rgba(2, 4, 3, 0.02), rgba(2, 4, 3, 0.52));
}

body[data-page="/portfolio/"] .portfolio-hero-copy {
  min-height: clamp(360px, 34vw, 520px);
  padding-top: clamp(4.8rem, 7vw, 7rem);
  padding-bottom: clamp(2.1rem, 4vw, 3.5rem);
}

body[data-page="/portfolio/"] .portfolio-hero h1 {
  max-width: 11.2ch;
  font-size: clamp(3.05rem, 4.9vw, 5.45rem);
  line-height: 0.95;
}

body[data-page="/portfolio/"] .portfolio-hero .lead {
  max-width: 31rem;
  font-size: clamp(0.95rem, 1.05vw, 1.05rem);
}

body[data-page="/portfolio/"] .portfolio-hero-proof {
  margin-top: 1rem;
  padding-top: 0.85rem;
}

body[data-page="/portfolio/"] .portfolio-hero-media {
  background:
    linear-gradient(90deg, rgba(2, 4, 3, 0.5), rgba(2, 4, 3, 0.06)),
    url("img/portfolio/promotoras/promotoras-016.webp") center 58% / cover no-repeat,
    #050706;
}

body[data-page="/portfolio/"] .portfolio-hero-media img {
  object-position: center 58%;
  filter: saturate(0.98) contrast(1.04) brightness(0.88);
}

body[data-page="/portfolio/"] .portfolio-toolbar,
body[data-page="/portfolio/"] .portfolio-gallery-shell,
body[data-page="/portfolio/"] .portfolio-load-panel,
body[data-page="/portfolio/"] .portfolio-cta,
body[data-page="/portfolio/"] .portfolio-internal-links {
  width: min(100% - 42px, 1440px);
}

body[data-page="/portfolio/"] .portfolio-toolbar {
  display: flex;
  align-items: center;
  margin-top: 14px;
  padding: 10px;
  border-radius: 8px 8px 0 0;
}

body[data-page="/portfolio/"] .portfolio-toolbar > div:first-child {
  display: none;
}

body[data-page="/portfolio/"] .portfolio-filter-group {
  width: 100%;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 0.42rem;
  overflow-x: auto;
  scrollbar-width: thin;
}

body[data-page="/portfolio/"] .portfolio-filter-group button {
  flex: 0 0 auto;
  min-height: 32px;
  padding: 0 0.78rem;
  border-radius: 4px;
  font-size: 0.64rem;
}

body[data-page="/portfolio/"] .portfolio-gallery-shell {
  padding: 6px;
  background: #020403;
}

body[data-page="/portfolio/"] .portfolio-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  grid-auto-rows: auto !important;
  gap: 6px;
  padding: 0;
  border: 0;
  background: transparent;
}

body[data-page="/portfolio/"] .portfolio-column {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 6px;
}

body[data-page="/portfolio/"] .portfolio-tile {
  display: block !important;
  width: 100%;
  min-height: 0 !important;
  grid-column: auto !important;
  grid-row: auto !important;
  border: 0;
  border-radius: 4px;
  background: #070908;
}

body[data-page="/portfolio/"] .portfolio-tile.is-cover {
  aspect-ratio: 16 / 10.6;
}

body[data-page="/portfolio/"] .portfolio-tile.is-vertical-feature {
  aspect-ratio: 4 / 5.2;
}

body[data-page="/portfolio/"] .portfolio-tile.is-wide {
  aspect-ratio: 16 / 8.5;
}

body[data-page="/portfolio/"] .portfolio-tile.is-detail {
  aspect-ratio: 16 / 8.1;
}

body[data-page="/portfolio/"] .portfolio-tile.is-panorama {
  aspect-ratio: 16 / 6.7;
}

body[data-page="/portfolio/"] .portfolio-tile.is-large {
  aspect-ratio: 16 / 9.8;
}

body[data-page="/portfolio/"] .portfolio-tile.is-medium {
  aspect-ratio: 4 / 4.7;
}

body[data-page="/portfolio/"] .portfolio-tile.is-tall {
  aspect-ratio: 3 / 4.5;
}

body[data-page="/portfolio/"] .portfolio-tile.is-square {
  aspect-ratio: 1 / 1;
}

body[data-page="/portfolio/"] .portfolio-column:nth-child(1) .portfolio-tile:nth-child(2),
body[data-page="/portfolio/"] .portfolio-column:nth-child(3) .portfolio-tile:nth-child(4) {
  aspect-ratio: 16 / 7.2;
}

body[data-page="/portfolio/"] .portfolio-column:nth-child(2) .portfolio-tile:nth-child(3),
body[data-page="/portfolio/"] .portfolio-column:nth-child(1) .portfolio-tile:nth-child(5) {
  aspect-ratio: 4 / 5.6;
}

body[data-page="/portfolio/"] .portfolio-tile img {
  height: 100%;
  object-fit: cover;
  filter: saturate(0.98) contrast(1.04) brightness(0.9);
}

body[data-page="/portfolio/"] .portfolio-strip {
  margin-top: 12px;
  padding-top: 10px;
}

body[data-page="/portfolio/"] .portfolio-strip-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}

body[data-page="/portfolio/"] .portfolio-strip-tile {
  aspect-ratio: 16 / 5.6;
}

@media (max-width: 1100px) {
  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/portfolio/"] .portfolio-strip-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-hero {
    min-height: auto;
  }

  body[data-page="/portfolio/"] .portfolio-hero-copy {
    min-height: 0;
    width: calc(100% - 12px);
    padding: 78px 22px 30px;
  }

  body[data-page="/portfolio/"] .portfolio-hero h1 {
    max-width: 10.5ch;
    font-size: 2.62rem;
  }

  body[data-page="/portfolio/"] .portfolio-hero-media {
    min-height: 265px;
  }

  body[data-page="/portfolio/"] .portfolio-toolbar,
  body[data-page="/portfolio/"] .portfolio-gallery-shell,
  body[data-page="/portfolio/"] .portfolio-load-panel,
  body[data-page="/portfolio/"] .portfolio-cta,
  body[data-page="/portfolio/"] .portfolio-internal-links {
    width: calc(100% - 12px);
  }

  body[data-page="/portfolio/"] .portfolio-grid,
  body[data-page="/portfolio/"] .portfolio-strip-grid {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/portfolio/"] .portfolio-column {
    gap: 6px;
  }

  body[data-page="/portfolio/"] .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-tile.is-cover,
  body[data-page="/portfolio/"] .portfolio-tile.is-vertical-feature,
  body[data-page="/portfolio/"] .portfolio-tile.is-detail,
  body[data-page="/portfolio/"] .portfolio-tile.is-panorama,
  body[data-page="/portfolio/"] .portfolio-tile.is-medium,
  body[data-page="/portfolio/"] .portfolio-tile.is-wide,
  body[data-page="/portfolio/"] .portfolio-tile.is-large,
  body[data-page="/portfolio/"] .portfolio-tile.is-tall,
  body[data-page="/portfolio/"] .portfolio-tile.is-square {
    aspect-ratio: 16 / 10.5;
  }

  body[data-page="/portfolio/"] .portfolio-column:nth-child(2) .portfolio-tile:first-child,
  body[data-page="/portfolio/"] .portfolio-tile.is-tall {
    aspect-ratio: 4 / 5;
  }

  body[data-page="/portfolio/"] .portfolio-strip-tile {
    aspect-ratio: 16 / 7;
  }
}

/* V4.56 portfolio: bring the gallery higher into the first viewport. */
body[data-page="/portfolio/"] .portfolio-hero {
  min-height: clamp(320px, 30vw, 460px);
}

body[data-page="/portfolio/"] .portfolio-hero::after {
  background:
    linear-gradient(90deg, rgba(2, 4, 3, 0.95) 0%, rgba(2, 4, 3, 0.72) 31%, rgba(2, 4, 3, 0.1) 66%, rgba(2, 4, 3, 0.28) 100%),
    linear-gradient(180deg, rgba(2, 4, 3, 0), rgba(2, 4, 3, 0.45));
}

body[data-page="/portfolio/"] .portfolio-hero-copy {
  min-height: clamp(320px, 30vw, 460px);
  padding-top: clamp(4rem, 5.8vw, 5.4rem);
  padding-bottom: clamp(1.8rem, 3vw, 2.4rem);
}

body[data-page="/portfolio/"] .portfolio-hero h1 {
  max-width: 12.2ch;
  font-size: clamp(2.75rem, 4.35vw, 4.7rem);
  line-height: 0.96;
}

body[data-page="/portfolio/"] .portfolio-hero .lead {
  margin-top: 0.9rem;
}

body[data-page="/portfolio/"] .portfolio-hero-proof {
  display: none;
}

body[data-page="/portfolio/"] .portfolio-hero-actions {
  margin-top: 1.05rem;
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-hero-copy {
    padding-top: 76px;
  }

  body[data-page="/portfolio/"] .portfolio-hero h1 {
    font-size: 2.48rem;
  }
}

/* V4.60 portfolio: full-width editorial grid matching the provided reference. */
body[data-page="/portfolio/"] .portfolio-hero-copy,
body[data-page="/portfolio/"] .portfolio-toolbar,
body[data-page="/portfolio/"] .portfolio-gallery-shell,
body[data-page="/portfolio/"] .portfolio-load-panel,
body[data-page="/portfolio/"] .portfolio-cta,
body[data-page="/portfolio/"] .portfolio-internal-links {
  width: calc(100% - clamp(28px, 4.6vw, 88px));
  max-width: none;
}

body[data-page="/portfolio/"] .portfolio-hero-copy {
  margin-right: auto;
  margin-left: auto;
}

body[data-page="/portfolio/"] .portfolio-toolbar {
  justify-content: space-between;
  margin-top: 14px;
  padding: 10px 12px;
}

body[data-page="/portfolio/"] .portfolio-gallery-shell {
  padding: 8px;
}

body[data-page="/portfolio/"] .portfolio-grid {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  grid-auto-rows: clamp(58px, 4.8vw, 96px) !important;
  grid-auto-flow: dense;
  gap: 6px;
  padding: 0;
  border: 0;
  background: transparent;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile {
  display: block !important;
  width: 100%;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  grid-column: span 3 !important;
  grid-row: span 2 !important;
  border-radius: 4px;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(1) {
  grid-column: 1 / span 4 !important;
  grid-row: span 4 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(2) {
  grid-column: 5 / span 4 !important;
  grid-row: span 4 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(3) {
  grid-column: 9 / span 4 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(4) {
  grid-column: 9 / span 4 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(5) {
  grid-column: 1 / span 3 !important;
  grid-row: span 4 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(6) {
  grid-column: 4 / span 6 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(7) {
  grid-column: 10 / span 3 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(8) {
  grid-column: 4 / span 4 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(9) {
  grid-column: 8 / span 5 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(10) {
  grid-column: 1 / span 4 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(11) {
  grid-column: 5 / span 4 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(12) {
  grid-column: 9 / span 4 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(13) {
  grid-column: 1 / span 4 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(14) {
  grid-column: 5 / span 4 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(15) {
  grid-column: 9 / span 4 !important;
  grid-row: span 2 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body[data-page="/portfolio/"] .portfolio-strip {
  margin-top: 12px;
  padding: 12px 0 0;
}

body[data-page="/portfolio/"] .portfolio-strip-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}

body[data-page="/portfolio/"] .portfolio-strip-tile {
  aspect-ratio: 16 / 5.15;
  border-radius: 4px;
}

body[data-page="/portfolio/"] .portfolio-load-panel {
  margin-top: 8px;
}

@media (max-width: 1100px) {
  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
    grid-auto-rows: clamp(60px, 8vw, 92px) !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n) {
    grid-column: span 4 !important;
    grid-row: span 2 !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(1),
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(4),
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(8) {
    grid-row: span 3 !important;
  }

  body[data-page="/portfolio/"] .portfolio-strip-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-hero-copy,
  body[data-page="/portfolio/"] .portfolio-toolbar,
  body[data-page="/portfolio/"] .portfolio-gallery-shell,
  body[data-page="/portfolio/"] .portfolio-load-panel,
  body[data-page="/portfolio/"] .portfolio-cta,
  body[data-page="/portfolio/"] .portfolio-internal-links {
    width: calc(100% - 12px);
  }

  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: 1fr !important;
    grid-auto-rows: auto !important;
    gap: 6px;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n) {
    grid-column: 1 !important;
    grid-row: auto !important;
    aspect-ratio: 16 / 10.5 !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(2),
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(5) {
    aspect-ratio: 4 / 5 !important;
  }

  body[data-page="/portfolio/"] .portfolio-strip-grid {
    grid-template-columns: 1fr;
  }
}

/* V4.54 contact form: single-row desktop layout. */
body[data-page="/contacto/"] .contact-form-card .site-form {
  grid-template-columns: minmax(420px, 1.55fr) minmax(240px, 0.9fr) minmax(210px, 0.72fr);
  grid-template-areas: "data message actions";
  align-items: stretch;
}

body[data-page="/contacto/"] .contact-form-section {
  padding: 0.72rem;
}

body[data-page="/contacto/"] .contact-form-fields {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.56rem;
}

body[data-page="/contacto/"] .site-form label {
  gap: 0.3rem;
}

body[data-page="/contacto/"] .site-form input,
body[data-page="/contacto/"] .site-form select,
body[data-page="/contacto/"] .site-form textarea {
  min-height: 44px;
  padding: 0.68rem 0.78rem;
}

body[data-page="/contacto/"] .contact-form-section.is-message textarea {
  min-height: 118px;
}

body[data-page="/contacto/"] .contact-form-actions {
  grid-template-columns: 1fr;
  align-content: center;
  gap: 0.68rem;
}

body[data-page="/contacto/"] .contact-form-actions .form-note {
  font-size: 0.8rem;
  line-height: 1.38;
}

@media (max-width: 1180px) {
  body[data-page="/contacto/"] .contact-form-card .site-form {
    grid-template-columns: 1fr;
    grid-template-areas: none;
  }

  body[data-page="/contacto/"] .contact-form-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* V4.62 portfolio: final ratio-safe masonry override. */
body[data-page="/portfolio/"] .portfolio-hero {
  min-height: clamp(300px, 30vw, 440px);
}

body[data-page="/portfolio/"] .portfolio-hero-copy,
body[data-page="/portfolio/"] .portfolio-toolbar,
body[data-page="/portfolio/"] .portfolio-gallery-shell,
body[data-page="/portfolio/"] .portfolio-load-panel,
body[data-page="/portfolio/"] .portfolio-cta,
body[data-page="/portfolio/"] .portfolio-internal-links {
  width: calc(100% - clamp(24px, 4vw, 76px));
  max-width: none;
}

body[data-page="/portfolio/"] .portfolio-toolbar {
  position: sticky;
  top: 72px;
  z-index: 20;
  align-items: center;
  justify-content: flex-start;
  gap: 0.65rem;
  margin-top: 10px;
  padding: 8px 10px;
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-radius: 6px 6px 0 0;
  background: rgba(3, 5, 4, 0.84);
  backdrop-filter: blur(18px);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.24);
}

body[data-page="/portfolio/"] .portfolio-toolbar > div:first-child {
  display: none;
}

body[data-page="/portfolio/"] .portfolio-filter-group {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 0.38rem;
  overflow-x: auto;
  scrollbar-width: thin;
}

body[data-page="/portfolio/"] .portfolio-filter-group button {
  flex: 0 0 auto;
  min-height: 30px;
  padding: 0 0.72rem;
  border-radius: 4px;
  border-color: rgba(214, 179, 90, 0.15);
  font-size: 0.63rem;
  letter-spacing: 0;
  background: rgba(255, 255, 255, 0.018);
}

body[data-page="/portfolio/"] .portfolio-filter-group button.is-active {
  color: #080907;
  border-color: rgba(236, 195, 105, 0.85);
  background: #ecc369;
}

body[data-page="/portfolio/"] .portfolio-gallery-shell {
  padding: 8px;
  border: 1px solid rgba(214, 179, 90, 0.16);
  border-top: 0;
  border-radius: 0 0 6px 6px;
  background:
    radial-gradient(circle at 12% 8%, rgba(214, 179, 90, 0.055), transparent 22rem),
    #020403;
}

body[data-page="/portfolio/"] .portfolio-grid {
  display: block !important;
  column-count: 3;
  column-gap: 8px !important;
  grid-template-columns: none !important;
  grid-auto-rows: auto !important;
  grid-auto-flow: row !important;
  gap: 8px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n),
body[data-page="/portfolio/"] .portfolio-strip-tile {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  grid-column: auto !important;
  grid-row: auto !important;
  aspect-ratio: auto !important;
  overflow: hidden;
  border: 1px solid rgba(214, 179, 90, 0);
  border-radius: 4px;
  background: #070908;
  box-shadow: none;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile.item-large {
  column-span: all;
  -webkit-column-span: all;
  margin-top: 10px !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile.item-large:first-child {
  margin-top: 0 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile.is-hidden,
body[data-page="/portfolio/"] .portfolio-strip-tile.is-hidden {
  display: none !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile img,
body[data-page="/portfolio/"] .portfolio-strip-tile img {
  display: block;
  width: 100% !important;
  max-width: 100%;
  height: auto !important;
  object-fit: contain !important;
  filter: saturate(0.98) contrast(1.03) brightness(0.94);
  transition: transform 0.6s ease, filter 0.6s ease;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile::after,
body[data-page="/portfolio/"] .portfolio-strip-tile::after {
  background: rgba(0, 0, 0, 0.22);
  opacity: 0;
  transition: opacity 0.6s ease;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile span,
body[data-page="/portfolio/"] .portfolio-strip-tile span {
  right: 8px;
  bottom: 8px;
  left: auto;
  padding: 0.34rem 0.46rem;
  border-radius: 3px;
  background: rgba(2, 3, 3, 0.7);
  opacity: 0;
  transform: translateY(4px);
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:hover,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:focus-visible,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible {
  border-color: rgba(214, 179, 90, 0.32);
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:hover img,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:focus-visible img,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover img,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible img {
  transform: scale(1.015);
  filter: brightness(0.82) saturate(1.02) contrast(1.04);
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:hover::after,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:focus-visible::after,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:hover span,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:focus-visible span,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover::after,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible::after,
body[data-page="/portfolio/"] .portfolio-strip-tile:hover span,
body[data-page="/portfolio/"] .portfolio-strip-tile:focus-visible span {
  opacity: 1;
  transform: translateY(0);
}

body[data-page="/portfolio/"] .portfolio-strip {
  margin-top: 14px;
  padding: 10px 0 0;
  border-top: 1px solid rgba(214, 179, 90, 0.13);
}

body[data-page="/portfolio/"] .portfolio-strip-head {
  margin: 0 0 8px;
}

body[data-page="/portfolio/"] .portfolio-strip h2 {
  font-size: 0.72rem;
  letter-spacing: 0.13em;
  color: #d6b35a;
}

body[data-page="/portfolio/"] .portfolio-strip-grid {
  display: block !important;
  column-count: 3;
  column-gap: 8px !important;
  grid-template-columns: none !important;
  gap: 8px !important;
}

body[data-page="/portfolio/"] .portfolio-load-panel {
  margin-top: 8px;
  padding: 0.95rem 1rem;
  border-color: rgba(214, 179, 90, 0.14);
  background: rgba(3, 5, 4, 0.82);
}

body[data-page="/portfolio/"] .portfolio-cta {
  margin-top: 12px;
  min-height: 0;
  padding: clamp(1.25rem, 2.4vw, 2.4rem);
  border-color: rgba(214, 179, 90, 0.2);
}

body[data-page="/portfolio/"] .portfolio-lightbox figure {
  width: min(95vw, 1520px);
  height: 90vh;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  place-items: center;
  gap: 0.8rem;
}

body[data-page="/portfolio/"] .portfolio-lightbox img {
  width: auto !important;
  height: auto !important;
  max-width: 95vw !important;
  max-height: 84vh !important;
  object-fit: contain !important;
}

@media (max-width: 1100px) {
  body[data-page="/portfolio/"] .portfolio-grid,
  body[data-page="/portfolio/"] .portfolio-strip-grid {
    column-count: 2;
    column-gap: 6px !important;
    gap: 6px !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n),
  body[data-page="/portfolio/"] .portfolio-strip-tile {
    margin-bottom: 6px !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-hero {
    min-height: 430px;
  }

  body[data-page="/portfolio/"] .portfolio-hero-copy,
  body[data-page="/portfolio/"] .portfolio-toolbar,
  body[data-page="/portfolio/"] .portfolio-gallery-shell,
  body[data-page="/portfolio/"] .portfolio-load-panel,
  body[data-page="/portfolio/"] .portfolio-cta,
  body[data-page="/portfolio/"] .portfolio-internal-links {
    width: calc(100% - 10px);
  }

  body[data-page="/portfolio/"] .portfolio-toolbar {
    top: 62px;
    padding: 6px;
  }

  body[data-page="/portfolio/"] .portfolio-gallery-shell {
    padding: 4px;
  }

  body[data-page="/portfolio/"] .portfolio-grid,
  body[data-page="/portfolio/"] .portfolio-strip-grid {
    column-count: 1;
    column-gap: 4px !important;
    gap: 4px !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n),
  body[data-page="/portfolio/"] .portfolio-strip-tile {
    margin-bottom: 4px !important;
    border-radius: 3px;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile.item-large {
    margin-top: 4px !important;
  }

  body[data-page="/portfolio/"] .portfolio-lightbox img {
    max-width: 94vw !important;
    max-height: 78vh !important;
  }
}

/* V4.63 portfolio: balanced real columns, no visual holes. */
body[data-page="/portfolio/"] .portfolio-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  column-count: auto;
  column-gap: 0 !important;
  gap: 8px !important;
}

body[data-page="/portfolio/"] .portfolio-column {
  display: flex !important;
  min-width: 0;
  flex-direction: column;
  gap: 8px;
}

body[data-page="/portfolio/"] .portfolio-column > .portfolio-tile,
body[data-page="/portfolio/"] .portfolio-column > .portfolio-tile:nth-child(n) {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  grid-column: auto !important;
  grid-row: auto !important;
  column-span: none;
  -webkit-column-span: none;
  aspect-ratio: auto !important;
  overflow: hidden;
  border: 1px solid rgba(214, 179, 90, 0);
  border-radius: 4px;
  background: #070908;
  box-shadow: none;
}

body[data-page="/portfolio/"] .portfolio-column > .portfolio-tile img {
  display: block;
  width: 100% !important;
  max-width: 100%;
  height: auto !important;
  object-fit: contain !important;
}

body[data-page="/portfolio/"] .portfolio-column > .portfolio-tile.is-hidden {
  display: none !important;
}

body[data-page="/portfolio/"] .portfolio-column > .portfolio-tile:hover,
body[data-page="/portfolio/"] .portfolio-column > .portfolio-tile:focus-visible {
  border-color: rgba(214, 179, 90, 0.32);
}

@media (max-width: 1100px) {
  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body[data-page="/portfolio/"] .portfolio-column {
    gap: 6px;
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-grid {
    grid-template-columns: 1fr !important;
    gap: 4px !important;
  }

  body[data-page="/portfolio/"] .portfolio-column {
    gap: 4px;
  }

  body[data-page="/portfolio/"] .portfolio-column > .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-column > .portfolio-tile:nth-child(n) {
    border-radius: 3px;
  }
}

/* V4.64 portfolio: compact balanced masonry with half spacing. */
body[data-page="/portfolio/"] .portfolio-gallery-shell {
  padding: 4px;
}

body[data-page="/portfolio/"] .portfolio-grid {
  display: block !important;
  column-count: 3;
  column-gap: 4px !important;
  grid-template-columns: none !important;
  grid-auto-rows: auto !important;
  grid-auto-flow: row !important;
  gap: 4px !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n) {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 4px !important;
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  grid-column: auto !important;
  grid-row: auto !important;
  column-span: none !important;
  -webkit-column-span: none !important;
  aspect-ratio: auto !important;
  border-radius: 3px;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile.item-large {
  column-span: none !important;
  -webkit-column-span: none !important;
  margin-top: 0 !important;
}

body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body[data-page="/portfolio/"] .portfolio-strip {
  margin-top: 8px;
  padding-top: 8px;
}

body[data-page="/portfolio/"] .portfolio-strip-grid {
  column-count: 3;
  column-gap: 4px !important;
  gap: 4px !important;
}

body[data-page="/portfolio/"] .portfolio-strip-tile {
  margin-bottom: 4px !important;
  border-radius: 3px;
}

/* V7.20 portfolio: real balanced columns from folder-synced manifest. */
body[data-page="/portfolio/"] .portfolio-grid:has(.portfolio-column) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  column-count: auto !important;
  column-gap: 0 !important;
  gap: 4px !important;
}

body[data-page="/portfolio/"] .portfolio-grid:has(.portfolio-column) .portfolio-column {
  display: flex !important;
  min-width: 0;
  flex-direction: column;
  gap: 4px;
}

body[data-page="/portfolio/"] .portfolio-grid:has(.portfolio-column) .portfolio-column > .portfolio-tile,
body[data-page="/portfolio/"] .portfolio-grid:has(.portfolio-column) .portfolio-column > .portfolio-tile:nth-child(n) {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  break-inside: auto;
  -webkit-column-break-inside: auto;
  grid-column: auto !important;
  grid-row: auto !important;
  aspect-ratio: auto !important;
  border-radius: 3px;
}

body[data-page="/portfolio/"] .portfolio-grid:has(.portfolio-column) .portfolio-column > .portfolio-tile.is-hidden {
  display: none !important;
}

body[data-page="/portfolio/"] .portfolio-grid:has(.portfolio-column) .portfolio-column > .portfolio-tile img {
  display: block;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

@media (max-width: 1100px) {
  body[data-page="/portfolio/"] .portfolio-grid,
  body[data-page="/portfolio/"] .portfolio-strip-grid {
    column-count: 2;
    column-gap: 3px !important;
    gap: 3px !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n),
  body[data-page="/portfolio/"] .portfolio-strip-tile {
    margin-bottom: 3px !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid:has(.portfolio-column) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 3px !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid:has(.portfolio-column) .portfolio-column {
    gap: 3px;
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-gallery-shell {
    padding: 2px;
  }

  body[data-page="/portfolio/"] .portfolio-grid,
  body[data-page="/portfolio/"] .portfolio-strip-grid {
    column-count: 1;
    column-gap: 2px !important;
    gap: 2px !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile,
  body[data-page="/portfolio/"] .portfolio-grid > .portfolio-tile:nth-child(n),
  body[data-page="/portfolio/"] .portfolio-strip-tile {
    margin-bottom: 2px !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid:has(.portfolio-column) {
    grid-template-columns: 1fr !important;
    gap: 2px !important;
  }

  body[data-page="/portfolio/"] .portfolio-grid:has(.portfolio-column) .portfolio-column {
    gap: 2px;
  }
}

/* V4.65 portfolio: centered premium lightbox viewer. */
html:has(body[data-page="/portfolio/"] .portfolio-lightbox[open]),
body[data-page="/portfolio/"]:has(.portfolio-lightbox[open]) {
  overflow: hidden;
}

body[data-page="/portfolio/"] .portfolio-lightbox {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100dvh;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  background:
    radial-gradient(circle at 50% 44%, rgba(214, 179, 90, 0.055), transparent 34rem),
    rgba(0, 0, 0, 0.96);
  overflow: hidden;
}

body[data-page="/portfolio/"] .portfolio-lightbox[open] {
  display: grid;
  place-items: center;
}

body[data-page="/portfolio/"] .portfolio-lightbox::backdrop {
  background: rgba(0, 0, 0, 0.96);
}

body[data-page="/portfolio/"] .portfolio-lightbox figure {
  position: relative;
  width: 100vw;
  height: 100dvh;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: clamp(58px, 7vh, 82px) clamp(72px, 6vw, 118px);
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

body[data-page="/portfolio/"] .portfolio-lightbox img {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: calc(100vw - clamp(144px, 12vw, 236px)) !important;
  max-height: calc(100dvh - clamp(126px, 16vh, 172px)) !important;
  object-fit: contain !important;
}

body[data-page="/portfolio/"] .portfolio-lightbox figcaption {
  position: fixed;
  left: 50%;
  bottom: clamp(18px, 3vh, 32px);
  z-index: 4;
  width: min(760px, calc(100vw - 2rem));
  margin: 0;
  padding: 0.62rem 0.9rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  border: 1px solid rgba(214, 179, 90, 0.18);
  border-radius: 999px;
  background: rgba(4, 5, 4, 0.74);
  backdrop-filter: blur(16px);
  transform: translateX(-50%);
  pointer-events: none;
}

body[data-page="/portfolio/"] .portfolio-lightbox figcaption span,
body[data-page="/portfolio/"] .portfolio-lightbox figcaption strong {
  margin: 0;
  line-height: 1.1;
  white-space: nowrap;
}

body[data-page="/portfolio/"] .portfolio-lightbox-close,
body[data-page="/portfolio/"] .portfolio-lightbox-counter {
  position: fixed;
  top: clamp(14px, 2.4vh, 24px);
  z-index: 5;
}

body[data-page="/portfolio/"] .portfolio-lightbox-close {
  right: clamp(14px, 2.4vw, 28px);
}

body[data-page="/portfolio/"] .portfolio-lightbox-counter {
  left: clamp(14px, 2.4vw, 28px);
}

body[data-page="/portfolio/"] .portfolio-lightbox-nav {
  position: fixed;
  top: 50%;
  z-index: 5;
  transform: translateY(-50%);
}

body[data-page="/portfolio/"] .portfolio-lightbox-nav.is-prev {
  left: clamp(10px, 2vw, 26px);
}

body[data-page="/portfolio/"] .portfolio-lightbox-nav.is-next {
  right: clamp(10px, 2vw, 26px);
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-lightbox figure {
    padding: 58px 12px 86px;
  }

  body[data-page="/portfolio/"] .portfolio-lightbox img {
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100dvh - 158px) !important;
  }

  body[data-page="/portfolio/"] .portfolio-lightbox figcaption {
    bottom: 18px;
    width: calc(100vw - 24px);
    padding: 0.58rem 0.72rem;
    border-radius: 10px;
    flex-wrap: wrap;
  }
}

/* V4.66 footer configurator CTA: compact premium button. */
body:not([data-page="/"]) .site-footer-contact-button {
  width: fit-content !important;
  min-width: 0;
  max-width: 100%;
  min-height: 42px;
  padding: 0 1.05rem;
  gap: 0.58rem;
  border-radius: 999px;
  border-color: rgba(240, 198, 107, 0.52);
  color: #f0c66b !important;
  font-size: 0.72rem;
  line-height: 1;
  letter-spacing: 0.08em;
  background:
    linear-gradient(180deg, rgba(240, 198, 107, 0.08), rgba(255, 255, 255, 0.012)),
    rgba(4, 6, 5, 0.56);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 10px 26px rgba(0, 0, 0, 0.16);
}

body:not([data-page="/"]) .site-footer-contact-button span {
  display: inline-grid;
  place-items: center;
  width: 1.35rem;
  height: 1.35rem;
  margin-right: -0.28rem;
  border: 1px solid rgba(240, 198, 107, 0.26);
  border-radius: 999px;
  background: rgba(240, 198, 107, 0.08);
  color: currentColor;
  font-size: 0.78rem;
  line-height: 1;
}

body:not([data-page="/"]) .site-footer-contact-button:hover,
body:not([data-page="/"]) .site-footer-contact-button:focus-visible {
  color: #0f0d08 !important;
  border-color: rgba(240, 198, 107, 0.88);
  background: linear-gradient(180deg, #f3c86f, #d8a04d);
  box-shadow:
    0 0 0 1px rgba(240, 198, 107, 0.12),
    0 16px 34px rgba(216, 160, 77, 0.16);
  transform: translateY(-1px);
}

body:not([data-page="/"]) .site-footer-contact-button:hover span,
body:not([data-page="/"]) .site-footer-contact-button:focus-visible span {
  border-color: rgba(15, 13, 8, 0.22);
  background: rgba(15, 13, 8, 0.08);
  color: currentColor;
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .site-footer-contact-button {
    width: 100% !important;
    justify-content: space-between;
    min-height: 46px;
  }
}

/* V4.67 footer CTA: return to the site's sharper button language. */
body:not([data-page="/"]) .site-footer-contact-button {
  width: min(100%, 236px) !important;
  min-height: 46px;
  padding: 0 1.15rem;
  justify-content: center;
  gap: 0.72rem;
  border-radius: 6px;
  border-color: rgba(240, 198, 107, 0.58);
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  background:
    linear-gradient(90deg, rgba(240, 198, 107, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(4, 6, 5, 0.5);
}

body:not([data-page="/"]) .site-footer-contact-button span {
  display: inline;
  width: auto;
  height: auto;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  font-size: 0.86rem;
}

@media (max-width: 760px) {
  body:not([data-page="/"]) .site-footer-contact-button {
    width: 100% !important;
    justify-content: center;
  }
}

/* V4.68 contacto final: compact horizontal briefing desk. */
@media (min-width: 1081px) {
  body[data-page="/contacto/"] .contact-main-section {
    padding-top: clamp(1.7rem, 3vw, 2.6rem) !important;
    padding-bottom: clamp(2.8rem, 4vw, 4.5rem) !important;
  }

  body[data-page="/contacto/"] .contact-grid {
    width: min(1360px, calc(100% - clamp(2rem, 5vw, 5rem))) !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  body[data-page="/contacto/"] .contact-side-stack {
    display: none !important;
  }

  body[data-page="/contacto/"] .contact-form-card {
    display: grid !important;
    min-height: 0 !important;
    grid-template-columns: minmax(230px, 0.25fr) minmax(0, 1fr) !important;
    gap: clamp(1rem, 1.5vw, 1.3rem) !important;
    padding: clamp(1rem, 1.65vw, 1.4rem) !important;
  }

  body[data-page="/contacto/"] .contact-form-left {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 0.75rem !important;
    padding-right: 1.05rem !important;
    border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
  }

  body[data-page="/contacto/"] .contact-form-left h2 {
    max-width: 11ch !important;
    font-size: clamp(2.1rem, 2.65vw, 3.05rem) !important;
    line-height: 0.96 !important;
  }

  body[data-page="/contacto/"] .contact-form-left .contact-form-intro {
    max-width: 28ch !important;
    margin-top: 0.62rem !important;
    font-size: 0.86rem !important;
    line-height: 1.42 !important;
  }

  body[data-page="/contacto/"] .contact-form-helper {
    margin-top: 0.78rem !important;
    gap: 0.42rem !important;
  }

  body[data-page="/contacto/"] .contact-form-helper article {
    min-height: 0 !important;
    padding: 0.52rem 0.62rem !important;
  }

  body[data-page="/contacto/"] .contact-form-helper strong {
    font-size: 0.76rem !important;
  }

  body[data-page="/contacto/"] .contact-form-card .site-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.82fr) minmax(210px, 0.58fr) !important;
    grid-template-areas: "data message actions" !important;
    gap: 0.72rem !important;
    align-items: stretch !important;
  }

  body[data-page="/contacto/"] .contact-form-section:not(.is-message) {
    grid-area: data !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message {
    grid-area: message !important;
  }

  body[data-page="/contacto/"] .contact-form-actions {
    grid-area: actions !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: center !important;
    gap: 0.72rem !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body[data-page="/contacto/"] .contact-form-section,
  body[data-page="/contacto/"] .contact-form-section:not(.is-message),
  body[data-page="/contacto/"] .contact-form-section.is-message {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body[data-page="/contacto/"] .contact-form-fields {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0.5rem !important;
  }

  body[data-page="/contacto/"] .contact-form-fields label:nth-child(9) {
    grid-column: auto !important;
  }

  body[data-page="/contacto/"] .site-form label {
    gap: 0.28rem !important;
    font-size: 0.7rem !important;
  }

  body[data-page="/contacto/"] .site-form input,
  body[data-page="/contacto/"] .site-form select,
  body[data-page="/contacto/"] .site-form textarea {
    min-height: 40px !important;
    padding: 0.58rem 0.68rem !important;
    border-radius: 8px !important;
    font-size: 0.82rem !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message label,
  body[data-page="/contacto/"] .contact-form-section.is-message textarea {
    height: 100% !important;
  }

  body[data-page="/contacto/"] .contact-form-section.is-message textarea {
    min-height: 196px !important;
  }

  body[data-page="/contacto/"] .contact-form-actions .button-primary {
    min-height: 48px !important;
  }

  body[data-page="/contacto/"] .contact-form-actions .form-note {
    max-width: 22ch !important;
    font-size: 0.82rem !important;
    line-height: 1.38 !important;
  }

  body[data-page="/contacto/"] #contact-form {
    scroll-margin-top: 92px;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] .contact-form-card,
  body[data-page="/contacto/"] .contact-form-fields,
  body[data-page="/contacto/"] .contact-form-actions {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/contacto/"] .contact-form-left {
    padding-right: 0 !important;
    padding-bottom: 1.1rem !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  }

  body[data-page="/contacto/"] .contact-form-fields label:nth-child(9) {
    grid-column: auto !important;
  }
}

/* V4.70 final chrome lock: home header and footer CTA everywhere except portfolio. */
body:not([data-page="/portfolio/"]) .site-header {
  min-height: 70px !important;
  padding-inline: clamp(22px, 5vw, 64px) !important;
  background: rgba(4, 7, 8, 0.9) !important;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body:not([data-page="/portfolio/"]).is-scrolled .site-header {
  border-bottom-color: rgba(240, 198, 107, 0.22) !important;
  background: rgba(4, 7, 8, 0.94) !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.26) !important;
}

body:not([data-page="/portfolio/"]) .button-nav {
  min-height: 44px !important;
  padding: 0 1.45rem !important;
  border-color: rgba(117, 78, 20, 0.35) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%) !important;
  color: #0c0d0c !important;
  box-shadow:
    0 18px 42px rgba(190, 136, 46, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.48) !important;
}

body:not([data-page="/portfolio/"]) .button-nav::after {
  content: "\2192" !important;
  color: #0c0d0c !important;
}

body:not([data-page="/portfolio/"]) .site-footer-main,
body:not([data-page="/portfolio/"]) .site-footer-bottom {
  width: min(100%, 1320px) !important;
  max-width: 1320px !important;
}

body:not([data-page="/portfolio/"]) .site-footer-contact-button {
  width: min(100%, 250px) !important;
  min-width: min(100%, 220px) !important;
  min-height: 50px !important;
  padding: 0 1.35rem !important;
  justify-content: center !important;
  gap: 0.8rem !important;
  border-color: rgba(240, 198, 107, 0.68) !important;
  border-radius: 6px !important;
  color: #f0c66b !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  background: linear-gradient(90deg, rgba(240, 198, 107, 0.035), rgba(255, 255, 255, 0.012)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
}

body:not([data-page="/portfolio/"]) .site-footer-contact-button span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1rem !important;
  height: auto !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: currentColor !important;
  transform: translateY(-0.02em) !important;
}

body:not([data-page="/portfolio/"]) .site-footer-contact-button:hover,
body:not([data-page="/portfolio/"]) .site-footer-contact-button:focus-visible {
  color: #f0c66b !important;
  border-color: rgba(240, 198, 107, 0.76) !important;
  background: linear-gradient(90deg, rgba(240, 198, 107, 0.08), rgba(255, 255, 255, 0.018)) !important;
  box-shadow:
    0 0 0 1px rgba(240, 198, 107, 0.08),
    0 16px 34px rgba(0, 0, 0, 0.18) !important;
  transform: translateY(-1px) !important;
}

@media (max-width: 760px) {
  body:not([data-page="/portfolio/"]) .site-footer-contact-button {
    width: 100% !important;
  }
}

/* V4.71 footer CTA color parity with the home specificity. */
body:not([data-page="/portfolio/"]) .site-footer-group .site-footer-contact-button {
  color: #f0c66b !important;
}

body:not([data-page="/portfolio/"]) .site-footer-group .site-footer-contact-button span {
  color: currentColor !important;
}

/* V4.72 promotoras: premium screen rhythm while preserving source copy. */
body[data-page="/promotoras/"] {
  --promotoras-shell: min(1380px, calc(100% - clamp(2rem, 6.4vw, 7rem)));
  --promotoras-gold-soft: rgba(240, 198, 107, 0.18);
  --promotoras-panel: rgba(8, 10, 9, 0.76);
}

body[data-page="/promotoras/"] .breadcrumbs {
  display: none !important;
}

body[data-page="/promotoras/"] .page-shell {
  background:
    radial-gradient(circle at 92% 8%, rgba(240, 198, 107, 0.12), transparent 30rem),
    radial-gradient(circle at 5% 46%, rgba(68, 92, 82, 0.18), transparent 38rem),
    linear-gradient(180deg, #030504 0%, #07100c 34%, #030504 100%) !important;
}

body[data-page="/promotoras/"] .site-header {
  min-height: 70px !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras {
  grid-template-columns: minmax(620px, 1fr) minmax(330px, 380px) !important;
  min-height: calc(100vh - 70px) !important;
  min-height: calc(100svh - 70px) !important;
  max-height: none !important;
  padding: clamp(4rem, 6vh, 5rem) max((100vw - 1380px) / 2, clamp(1.5rem, 4.8vw, 5rem)) clamp(2rem, 4.2vh, 3.4rem) !important;
  gap: clamp(2rem, 3.6vw, 3.8rem) !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .internal-hero-media::after {
  background:
    radial-gradient(circle at 78% 18%, rgba(240, 198, 107, 0.1), transparent 28rem),
    linear-gradient(90deg, rgba(2, 3, 3, 0.95) 0%, rgba(2, 3, 3, 0.74) 33%, rgba(2, 3, 3, 0.42) 58%, rgba(2, 3, 3, 0.78) 100%),
    linear-gradient(180deg, rgba(2, 3, 3, 0.08), rgba(2, 3, 3, 0.76) 92%) !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .internal-hero-media img {
  object-position: 58% 48% !important;
  filter: brightness(0.82) contrast(1.08) saturate(0.92) !important;
  transform: scale(1.01) !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .hero-copy {
  max-width: 760px !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras h1 {
  max-width: 21ch !important;
  margin-bottom: 0.9rem !important;
  font-size: clamp(3rem, 4.1vw, 4.7rem) !important;
  line-height: 0.91 !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .lead {
  max-width: 66ch !important;
  font-size: clamp(0.98rem, 1vw, 1.08rem) !important;
  line-height: 1.52 !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .hero-note {
  max-width: 48ch !important;
  margin-top: 0.78rem !important;
  font-size: 0.93rem !important;
  line-height: 1.46 !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .meta-strip span {
  background: rgba(7, 10, 9, 0.54) !important;
  border-color: rgba(240, 198, 107, 0.26) !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .hero-panel-layered {
  width: min(100%, 430px) !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .vertical-hero-panel {
  min-height: 0 !important;
  padding: clamp(1.15rem, 1.9vw, 1.55rem) !important;
  border-color: rgba(240, 198, 107, 0.3) !important;
  background:
    linear-gradient(132deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.014) 44%),
    radial-gradient(circle at 100% 0%, rgba(240, 198, 107, 0.14), transparent 18rem),
    rgba(5, 8, 7, 0.84) !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .vertical-hero-panel .panel-label {
  display: flex !important;
  justify-content: space-between;
  gap: 1rem;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .vertical-hero-panel .panel-label::after {
  content: "Campa\00F1a 3D";
  color: #f0c66b;
  letter-spacing: 0.1em;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .vertical-hero-panel h3 {
  max-width: 14ch !important;
  font-size: clamp(1.55rem, 2.05vw, 2.35rem) !important;
  line-height: 0.98 !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .vertical-hero-panel .stat-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  margin-top: 1.1rem !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .vertical-hero-panel .stat-pill {
  display: grid !important;
  grid-template-columns: 2.55rem minmax(0, 1fr) !important;
  gap: 0.76rem !important;
  padding: 0.68rem 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .vertical-hero-panel .stat-pill::before {
  border-radius: 999px !important;
}

body[data-page="/promotoras/"] .internal-hero-promotoras .vertical-hero-panel .stat-pill span {
  font-size: 0.78rem !important;
  line-height: 1.35 !important;
}

@media (min-width: 981px) {
  body[data-page="/promotoras/"] .page-shell > section:not(.faq-section) {
    min-height: calc(100vh - 70px);
    min-height: calc(100svh - 70px);
    display: grid !important;
    align-items: center !important;
    padding-top: clamp(2.6rem, 4vw, 4.2rem) !important;
    padding-bottom: clamp(2.6rem, 4vw, 4.2rem) !important;
  }

  body[data-page="/promotoras/"] .page-shell > .internal-hero-promotoras {
    padding-top: clamp(4rem, 6vh, 5rem) !important;
    padding-bottom: clamp(2rem, 4.2vh, 3.4rem) !important;
  }

  body[data-page="/promotoras/"] .page-shell > section:not(.internal-hero-promotoras):not(.faq-section) > * {
    width: var(--promotoras-shell) !important;
    max-width: 1380px !important;
  }

  body[data-page="/promotoras/"] .vertical-brief-section .dual-column {
    grid-template-columns: minmax(0, 0.88fr) minmax(460px, 0.72fr) !important;
  }

  body[data-page="/promotoras/"] .editorial-visual-section .internal-story-grid {
    grid-template-columns: minmax(0, 0.46fr) minmax(540px, 0.58fr) !important;
    gap: clamp(2rem, 5vw, 6rem) !important;
  }

  body[data-page="/promotoras/"] .editorial-visual-section:nth-of-type(even) .internal-story-grid {
    grid-template-columns: minmax(540px, 0.58fr) minmax(0, 0.46fr) !important;
  }

  body[data-page="/promotoras/"] .editorial-visual-section:nth-of-type(even) .internal-story-grid > div:first-child {
    order: 2;
  }

  body[data-page="/promotoras/"] .editorial-visual-section:nth-of-type(even) .internal-story-grid > .visual-frame {
    order: 1;
  }
}

body[data-page="/promotoras/"] .content-section h2,
body[data-page="/promotoras/"] .content-band h2,
body[data-page="/promotoras/"] .split-section h2 {
  max-width: 16ch !important;
  font-size: clamp(2.5rem, 3.6vw, 4.25rem) !important;
  line-height: 0.94 !important;
}

body[data-page="/promotoras/"] .case-richtext {
  padding: clamp(1rem, 1.4vw, 1.25rem) !important;
}

body[data-page="/promotoras/"] .editorial-visual-section .case-richtext {
  columns: auto !important;
  max-width: 58ch !important;
  border-left: 1px solid rgba(240, 198, 107, 0.2) !important;
  border-radius: 0 !important;
  background: linear-gradient(90deg, rgba(240, 198, 107, 0.045), transparent 70%) !important;
}

body[data-page="/promotoras/"] .editorial-visual-section .case-richtext p {
  margin-bottom: 0.82rem !important;
  font-size: 0.95rem !important;
  line-height: 1.56 !important;
}

body[data-page="/promotoras/"] .internal-section-visual {
  min-height: clamp(390px, 47vh, 560px) !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .feature-list {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.8rem !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .feature-list li {
  min-height: 118px !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .interface-panel h3 {
  max-width: 22ch;
  color: #fff8ee !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.7rem, 2.05vw, 2.35rem);
  line-height: 1;
}

body[data-page="/promotoras/"] .vertical-brief-section .compact-card {
  min-height: 0 !important;
  padding: 0.78rem 0.9rem !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .compact-card h3 {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 0.92rem !important;
  line-height: 1.16 !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .compact-card p:not(.card-kicker) {
  font-size: 0.82rem !important;
  line-height: 1.38 !important;
  -webkit-line-clamp: 2 !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .interface-panel {
  padding: clamp(0.95rem, 1.45vw, 1.2rem) !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  align-items: stretch !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:first-child {
  grid-column: span 3 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:not(:first-child) {
  grid-column: span 1 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:first-child .card-media {
  aspect-ratio: 16 / 6.05 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:not(:first-child) .card-media {
  aspect-ratio: 4 / 2.42 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card {
  padding: 0.78rem !important;
}

body[data-page="/promotoras/"] .section-frame-dark .section-heading {
  margin-bottom: 1rem !important;
}

body[data-page="/promotoras/"] .section-frame-dark h2 {
  max-width: 16ch !important;
  font-size: clamp(2.2rem, 2.9vw, 3.4rem) !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:not(:first-child) h3 {
  font-size: clamp(1.08rem, 1.28vw, 1.35rem) !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:not(:first-child) p:not(.card-kicker) {
  -webkit-line-clamp: 1 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:first-child p:not(.card-kicker) {
  -webkit-line-clamp: 2 !important;
}

body[data-page="/promotoras/"] .content-section:not(.editorial-visual-section):not(.related-next-section) .card-grid.items-3 .card-media {
  aspect-ratio: 16 / 9.4 !important;
}

body[data-page="/promotoras/"] .content-section:not(.editorial-visual-section):not(.related-next-section) .card-grid.items-3 .card {
  min-height: clamp(360px, 38vh, 440px) !important;
}

body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-column {
  grid-template-columns: minmax(0, 0.5fr) minmax(520px, 0.55fr) !important;
}

body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-panel .grid-1 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-panel .compact-card {
  min-height: 210px !important;
}

body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-panel .compact-card .card-link {
  margin-top: 1rem !important;
}

body[data-page="/promotoras/"] .related-next-section .card-grid.items-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body[data-page="/promotoras/"] .related-next-section .card {
  min-height: 360px !important;
}

body[data-page="/promotoras/"] .related-next-section .card-media {
  aspect-ratio: 16 / 8.7 !important;
}

body[data-page="/promotoras/"] .faq-section {
  min-height: auto !important;
  padding-top: clamp(3rem, 5vw, 4.5rem) !important;
  padding-bottom: clamp(3rem, 5vw, 4.5rem) !important;
}

body[data-page="/promotoras/"] .internal-final-cta {
  min-height: calc(100vh - 70px) !important;
  min-height: calc(100svh - 70px) !important;
}

body[data-page="/promotoras/"] .internal-final-cta .split-section {
  grid-template-columns: minmax(0, 0.55fr) minmax(380px, 0.36fr) !important;
  align-items: end !important;
}

body[data-page="/promotoras/"] .internal-final-cta h2 {
  max-width: 12ch !important;
  font-size: clamp(3.4rem, 5.4vw, 6rem) !important;
}

body[data-page="/promotoras/"] .internal-final-cta .tool-card {
  max-width: 460px !important;
  justify-self: end !important;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .internal-hero-promotoras,
  body[data-page="/promotoras/"] .editorial-visual-section .internal-story-grid,
  body[data-page="/promotoras/"] .editorial-visual-section:nth-of-type(even) .internal-story-grid,
  body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-column,
  body[data-page="/promotoras/"] .internal-final-cta .split-section {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .editorial-visual-section:nth-of-type(even) .internal-story-grid > div:first-child,
  body[data-page="/promotoras/"] .editorial-visual-section:nth-of-type(even) .internal-story-grid > .visual-frame {
    order: initial;
  }

  body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:first-child,
  body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:not(:first-child) {
    grid-column: auto !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .internal-hero-promotoras {
    min-height: auto !important;
    padding: 6.2rem 1rem 3rem !important;
  }

  body[data-page="/promotoras/"] .internal-hero-promotoras h1 {
    max-width: 100% !important;
    font-size: clamp(3rem, 13vw, 4.25rem) !important;
  }

  body[data-page="/promotoras/"] .page-shell > section:not(.faq-section) {
    min-height: auto !important;
  }

  body[data-page="/promotoras/"] .vertical-brief-section .feature-list,
  body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-panel .grid-1 {
    grid-template-columns: 1fr !important;
  }

body[data-page="/promotoras/"] .internal-section-visual {
    min-height: 260px !important;
  }
}

/* V4.74 - pricing page mockup lock */
body[data-page="/precios/"] {
  --pricing-max: min(100% - clamp(36px, 7.5vw, 132px), 1480px);
  --pricing-gold: #f0bd55;
  --pricing-gold-2: #d49a35;
  --pricing-ivory: #fff7eb;
  --pricing-muted: rgba(255, 247, 235, 0.72);
  --pricing-muted-soft: rgba(255, 247, 235, 0.56);
  --pricing-line: rgba(240, 189, 85, 0.22);
  --pricing-line-strong: rgba(240, 189, 85, 0.48);
  --pricing-panel: rgba(7, 10, 9, 0.78);
  --pricing-panel-solid: #080b0a;
  --pricing-radius: 8px;
  --pricing-radius-sm: 7px;
  background:
    linear-gradient(180deg, #030504 0%, #08100d 34%, #030504 100%) !important;
  color: var(--pricing-ivory);
}

body[data-page="/precios/"] .page-shell {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body[data-page="/precios/"] .breadcrumbs {
  display: none !important;
}

body[data-page="/precios/"] .pricing-editorial-section,
body[data-page="/precios/"] .pricing-range-section,
body[data-page="/precios/"] .pricing-index-section,
body[data-page="/precios/"] .pricing-compare-section,
body[data-page="/precios/"] .pricing-route-section,
body[data-page="/precios/"] .pricing-faq-section,
body[data-page="/precios/"] .pricing-final-cta {
  width: var(--pricing-max) !important;
  max-width: var(--pricing-max) !important;
}

body[data-page="/precios/"] .pricing-editorial-section,
body[data-page="/precios/"] .pricing-range-section,
body[data-page="/precios/"] .pricing-index-section,
body[data-page="/precios/"] .pricing-compare-section,
body[data-page="/precios/"] .pricing-route-section,
body[data-page="/precios/"] .pricing-faq-section {
  position: relative !important;
  padding-top: clamp(5.5rem, 8vw, 8.5rem) !important;
  padding-bottom: clamp(5.5rem, 8vw, 8.5rem) !important;
}

body[data-page="/precios/"] .pricing-hero {
  position: relative !important;
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(420px, 0.58fr) !important;
  align-items: center !important;
  gap: clamp(2.5rem, 6vw, 6rem) !important;
  padding: clamp(7.5rem, 9vw, 9rem) max(32px, calc((100vw - 1480px) / 2)) clamp(4rem, 7vw, 6.5rem) !important;
  border: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body[data-page="/precios/"] .pricing-hero::before {
  background:
    linear-gradient(90deg, rgba(0, 2, 2, 0.97) 0%, rgba(2, 4, 4, 0.86) 38%, rgba(2, 4, 4, 0.32) 68%, rgba(2, 4, 4, 0.78) 100%),
    linear-gradient(180deg, rgba(2, 4, 4, 0.2), rgba(2, 4, 4, 0.78)) !important;
}

body[data-page="/precios/"] .pricing-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 1;
  height: 44%;
  background: linear-gradient(180deg, rgba(3, 5, 4, 0), #030504 90%);
  pointer-events: none;
}

body[data-page="/precios/"] .pricing-hero .internal-hero-media img {
  object-position: center center;
  filter: saturate(0.9) brightness(0.66) contrast(1.08) !important;
}

body[data-page="/precios/"] .pricing-hero .internal-hero-media {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
}

body[data-page="/precios/"] .pricing-hero .hero-copy,
body[data-page="/precios/"] .pricing-hero .hero-panel {
  position: relative !important;
  z-index: 2 !important;
}

body[data-page="/precios/"] .pricing-compare-layout {
  grid-template-columns: minmax(280px, 0.74fr) minmax(0, 1.18fr) !important;
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-compare-board {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

body[data-page="/precios/"] .pricing-compare-table-head,
body[data-page="/precios/"] .pricing-compare-table-row,
body[data-page="/precios/"] .pricing-compare-footer {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

body[data-page="/precios/"] .pricing-compare-table-head,
body[data-page="/precios/"] .pricing-compare-table-row {
  grid-template-columns: minmax(210px, 0.92fr) minmax(190px, 0.9fr) minmax(210px, 0.94fr) !important;
}

body[data-page="/precios/"] .site-footer-socials,
body[data-page="/precios/"] .site-footer-social-label {
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

body[data-page="/precios/"] .site-footer-contact,
body[data-page="/precios/"] .site-footer-contact > * {
  min-width: 0;
  max-width: 100%;
}

body[data-page="/precios/"] .site-footer-socials {
  width: 100% !important;
  flex-wrap: wrap;
}

body[data-page="/precios/"] .site-footer-social-label {
  flex: 1 1 100%;
}

body[data-page="/precios/"] .pricing-command-head h3,
body[data-page="/precios/"] .pricing-proposal-card h3 {
  max-width: 17ch !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

@media (max-width: 640px) {
  body[data-page="/precios/"] .pricing-hero {
    padding-inline: clamp(0.85rem, 4vw, 1.25rem) !important;
  }

  body[data-page="/precios/"] .pricing-hero h1 {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(3rem, 13vw, 3.85rem) !important;
    line-height: 0.93 !important;
  }

body[data-page="/precios/"] .pricing-title-accent {
    font-size: 1em !important;
  }
}

/* V4.76 header logo hover: match the footer wordmark glow instead of the wipe/border effect. */
body[data-page] .site-header .brand,
body[data-page] .site-header .brand:hover,
body[data-page] .site-header .brand:focus-visible {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
  transform: none !important;
}

body[data-page] .site-header .brand::before {
  content: none !important;
  display: none !important;
}

body[data-page] .site-header .brand .brand-mark {
  display: inline-block !important;
  color: #f0c66b !important;
  background: transparent !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
  filter: none !important;
  text-shadow: none !important;
  transform: none !important;
  transition: filter 0.24s ease, text-shadow 0.24s ease, transform 0.24s ease, color 0.24s ease !important;
}

body[data-page] .site-header .brand:hover .brand-mark,
body[data-page] .site-header .brand:focus-visible .brand-mark {
  background: linear-gradient(115deg, #ffe7a8 0%, #f5c65e 44%, #fff0ba 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  filter:
    drop-shadow(0 0 13px rgba(240, 198, 107, 0.28))
    drop-shadow(0 5px 18px rgba(0, 0, 0, 0.22)) !important;
  text-shadow: 0 0 16px rgba(240, 198, 107, 0.16) !important;
  transform: translateY(-1.5px) !important;
}

/* V4.76 footer configurator CTA: premium luminous plate. */
body[data-page] .site-footer .site-footer-contact-button,
body[data-page] .site-footer .site-footer-group .site-footer-contact-button,
.site-footer .site-footer-contact-button {
  position: relative !important;
  isolation: isolate !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 58px !important;
  align-items: center !important;
  width: min(100%, 340px) !important;
  min-width: 0 !important;
  min-height: 78px !important;
  padding: 0.95rem 1rem 0.95rem 1.55rem !important;
  gap: 1rem !important;
  overflow: hidden !important;
  border: 1px solid rgba(240, 198, 107, 0.72) !important;
  border-radius: 8px !important;
  color: #f0c66b !important;
  text-decoration: none !important;
  background:
    linear-gradient(90deg, rgba(240, 198, 107, 0.12), rgba(240, 198, 107, 0.025) 34%, rgba(4, 7, 8, 0.86) 100%),
    radial-gradient(circle at 90% 50%, rgba(240, 198, 107, 0.22), transparent 5.4rem),
    rgba(3, 5, 5, 0.88) !important;
  box-shadow:
    0 0 0 1px rgba(240, 198, 107, 0.1),
    0 18px 46px rgba(0, 0, 0, 0.38),
    0 0 34px rgba(240, 198, 107, 0.14),
    inset 0 1px 0 rgba(255, 248, 238, 0.12),
    inset 0 -1px 0 rgba(240, 198, 107, 0.14) !important;
  transform: none !important;
}

body[data-page] .site-footer .site-footer-contact-button::before,
.site-footer .site-footer-contact-button::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(110deg, transparent 0 48%, rgba(240, 198, 107, 0.22) 48.2%, transparent 49.1% 100%),
    linear-gradient(180deg, rgba(255, 248, 238, 0.08), transparent 45%, rgba(240, 198, 107, 0.08)) !important;
  opacity: 0.78 !important;
}

body[data-page] .site-footer .site-footer-contact-button::after,
.site-footer .site-footer-contact-button::after {
  content: "" !important;
  position: absolute !important;
  inset: 8px !important;
  z-index: -1 !important;
  pointer-events: none !important;
  border: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 5px !important;
}

body[data-page] .site-footer .site-footer-contact-button-label,
body[data-page] .site-footer .site-footer-contact-button .site-footer-contact-button-label,
.site-footer .site-footer-contact-button-label {
  display: block !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  border: 0 !important;
  color: #f0c66b !important;
  background: transparent !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(0.86rem, 0.95vw, 1rem) !important;
  font-weight: 950 !important;
  line-height: 1.05 !important;
  letter-spacing: 0.24em !important;
  text-align: left !important;
  text-transform: uppercase !important;
  text-shadow: 0 0 18px rgba(240, 198, 107, 0.22) !important;
}

body[data-page] .site-footer .site-footer-contact-button-arrow,
body[data-page] .site-footer .site-footer-contact-button .site-footer-contact-button-arrow,
.site-footer .site-footer-contact-button-arrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 54px !important;
  height: 54px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #f7c66d !important;
  background:
    radial-gradient(circle, rgba(240, 198, 107, 0.26), rgba(240, 198, 107, 0.08) 42%, transparent 68%) !important;
  font-size: 2.5rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-shadow:
    0 0 18px rgba(240, 198, 107, 0.75),
    0 0 38px rgba(240, 198, 107, 0.34) !important;
  transform: translateX(0) !important;
}

body[data-page] .site-footer .site-footer-contact-button:hover,
body[data-page] .site-footer .site-footer-contact-button:focus-visible,
.site-footer .site-footer-contact-button:hover,
.site-footer .site-footer-contact-button:focus-visible {
  border-color: rgba(255, 214, 126, 0.96) !important;
  color: #f7c66d !important;
  background:
    linear-gradient(90deg, rgba(240, 198, 107, 0.18), rgba(240, 198, 107, 0.04) 34%, rgba(4, 7, 8, 0.9) 100%),
    radial-gradient(circle at 90% 50%, rgba(240, 198, 107, 0.34), transparent 5.8rem),
    rgba(3, 5, 5, 0.9) !important;
  box-shadow:
    0 0 0 1px rgba(240, 198, 107, 0.2),
    0 20px 52px rgba(0, 0, 0, 0.42),
    0 0 42px rgba(240, 198, 107, 0.24),
    inset 0 1px 0 rgba(255, 248, 238, 0.18),
    inset 0 -1px 0 rgba(240, 198, 107, 0.18) !important;
  transform: translateY(-1px) !important;
}

body[data-page] .site-footer .site-footer-contact-button:hover .site-footer-contact-button-arrow,
body[data-page] .site-footer .site-footer-contact-button:focus-visible .site-footer-contact-button-arrow,
.site-footer .site-footer-contact-button:hover .site-footer-contact-button-arrow,
.site-footer .site-footer-contact-button:focus-visible .site-footer-contact-button-arrow {
  transform: translateX(5px) !important;
}

@media (max-width: 760px) {
  body[data-page] .site-footer .site-footer-contact-button,
  body[data-page] .site-footer .site-footer-group .site-footer-contact-button,
  .site-footer .site-footer-contact-button {
    width: 100% !important;
  }
}

/* V4.80 pricing horizontal lock: true EOF override after legacy pricing layers. */
html body[data-page="/precios/"] {
  --pricing-max: min(100% - clamp(36px, 5vw, 104px), 1540px) !important;
  --pricing-gap: clamp(0.9rem, 1.25vw, 1.35rem) !important;
  --pricing-section-y: clamp(3.25rem, 4.55vw, 5rem) !important;
  overflow-x: clip !important;
}

html body[data-page="/precios/"] .pricing-editorial-section,
html body[data-page="/precios/"] .pricing-range-section,
html body[data-page="/precios/"] .pricing-index-section,
html body[data-page="/precios/"] .pricing-compare-section,
html body[data-page="/precios/"] .pricing-route-section,
html body[data-page="/precios/"] .pricing-faq-section {
  width: var(--pricing-max) !important;
  max-width: var(--pricing-max) !important;
  margin-inline: auto !important;
  padding: var(--pricing-section-y) 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

html body[data-page="/precios/"] .pricing-editorial-section *,
html body[data-page="/precios/"] .pricing-range-section *,
html body[data-page="/precios/"] .pricing-index-section *,
html body[data-page="/precios/"] .pricing-compare-section *,
html body[data-page="/precios/"] .pricing-route-section *,
html body[data-page="/precios/"] .pricing-faq-section *,
html body[data-page="/precios/"] .pricing-final-cta * {
  min-width: 0 !important;
  box-sizing: border-box !important;
}

html body[data-page="/precios/"] .pricing-section-heading,
html body[data-page="/precios/"] .pricing-faq-layout > div .pricing-section-heading {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.36fr) minmax(0, 0.64fr) !important;
  column-gap: clamp(1.5rem, 3vw, 3.2rem) !important;
  row-gap: 0.75rem !important;
  align-items: end !important;
  max-width: none !important;
  margin: 0 0 clamp(1.2rem, 1.9vw, 1.8rem) !important;
  text-align: left !important;
}

html body[data-page="/precios/"] .pricing-section-heading .eyebrow,
html body[data-page="/precios/"] .pricing-faq-layout > div .pricing-section-heading .eyebrow {
  grid-column: 1 / -1 !important;
}

html body[data-page="/precios/"] .pricing-section-heading h2,
html body[data-page="/precios/"] .pricing-editorial-section h2,
html body[data-page="/precios/"] .pricing-compare-copy h2,
html body[data-page="/precios/"] .pricing-faq-heading h2,
html body[data-page="/precios/"] .pricing-faq-aside h2,
html body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 13.5ch !important;
  margin: 0 !important;
  font-size: clamp(2.35rem, 3.25vw, 4.2rem) !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
}

html body[data-page="/precios/"] .pricing-section-heading .lead,
html body[data-page="/precios/"] .pricing-editorial-section .lead,
html body[data-page="/precios/"] .pricing-compare-copy .lead,
html body[data-page="/precios/"] .pricing-faq-section .lead,
html body[data-page="/precios/"] .pricing-final-copy .lead {
  max-width: 72ch !important;
  margin: 0 !important;
  color: rgba(255, 248, 238, 0.72) !important;
  line-height: 1.62 !important;
}

html body[data-page="/precios/"] .pricing-process-step:hover,
html body[data-page="/precios/"] .pricing-service-card:hover,
html body[data-page="/precios/"] .pricing-route-card-v2:hover,
html body[data-page="/precios/"] .pricing-compare-table-row:hover,
html body[data-page="/precios/"] .pricing-rule-list article:hover,
html body[data-page="/precios/"] .pricing-proposal-card article:hover,
html body[data-page="/precios/"] .page-shell .button:hover,
html body[data-page="/precios/"] .card-link:hover,
html body[data-page="/precios/"] .pricing-service-link:hover {
  transform: none !important;
}

html body[data-page="/precios/"] .page-shell .button,
html body[data-page="/precios/"] .card-link,
html body[data-page="/precios/"] .pricing-service-link {
  min-height: 42px !important;
  max-width: 100% !important;
  padding: 0.78rem 1rem !important;
  border-radius: 999px !important;
  white-space: normal !important;
  text-align: center !important;
  line-height: 1.1 !important;
}

html body[data-page="/precios/"] .page-shell .button:hover,
html body[data-page="/precios/"] .card-link:hover,
html body[data-page="/precios/"] .pricing-service-link:hover {
  border-color: rgba(242, 193, 92, 0.78) !important;
  box-shadow: 0 0 0 1px rgba(242, 193, 92, 0.16), 0 12px 28px rgba(0, 0, 0, 0.26) !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.38fr) !important;
  gap: clamp(1.2rem, 2.2vw, 2.3rem) !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.42fr) minmax(0, 0.58fr) !important;
  column-gap: clamp(1.4rem, 3vw, 3rem) !important;
  row-gap: 0.9rem !important;
  align-content: start !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .eyebrow,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child h2 {
  grid-column: 1 !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .lead,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .pricing-rule-list {
  grid-column: 2 !important;
}

html body[data-page="/precios/"] .pricing-rule-list {
  display: grid !important;
  gap: 0.65rem !important;
  margin: 0 !important;
}

html body[data-page="/precios/"] .pricing-rule-list article,
html body[data-page="/precios/"] .pricing-proposal-card article {
  min-height: 72px !important;
  grid-template-columns: 42px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 0.72rem !important;
  padding: 0.78rem 0.85rem !important;
}

html body[data-page="/precios/"] .pricing-rule-list article p,
html body[data-page="/precios/"] .pricing-proposal-card article p {
  font-size: clamp(0.86rem, 0.82vw, 0.96rem) !important;
  line-height: 1.42 !important;
}

html body[data-page="/precios/"] .pricing-proposal-card {
  padding: clamp(1rem, 1.4vw, 1.35rem) !important;
}

html body[data-page="/precios/"] .pricing-proposal-card > div {
  gap: 0.65rem !important;
}

html body[data-page="/precios/"] .pricing-proposal-card h3 {
  max-width: 100% !important;
  font-size: clamp(1.25rem, 1.45vw, 1.7rem) !important;
}

html body[data-page="/precios/"] .pricing-process-track {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-process-track::before {
  content: "" !important;
  position: absolute !important;
  left: 4.2rem !important;
  right: 4.2rem !important;
  top: 2rem !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(242, 193, 92, 0.42), transparent) !important;
  pointer-events: none !important;
}

html body[data-page="/precios/"] .pricing-process-step {
  position: relative !important;
  min-height: 172px !important;
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  grid-template-rows: auto auto 1fr !important;
  gap: 0.42rem 0.78rem !important;
  align-content: start !important;
  padding: clamp(0.95rem, 1.25vw, 1.2rem) !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-process-step .pricing-range-top {
  grid-column: 1 !important;
  grid-row: 1 / span 3 !important;
  align-self: start !important;
  display: block !important;
}

html body[data-page="/precios/"] .pricing-process-step .pricing-range-signal {
  display: none !important;
}

html body[data-page="/precios/"] .pricing-process-step small,
html body[data-page="/precios/"] .pricing-process-step h3,
html body[data-page="/precios/"] .pricing-process-step p {
  grid-column: 2 !important;
}

html body[data-page="/precios/"] .pricing-process-step h3 {
  max-width: 15ch !important;
  font-size: clamp(1.14rem, 1.25vw, 1.45rem) !important;
}

html body[data-page="/precios/"] .pricing-process-step p {
  font-size: clamp(0.9rem, 0.84vw, 0.98rem) !important;
  line-height: 1.48 !important;
}

html body[data-page="/precios/"] .pricing-icon-badge,
html body[data-page="/precios/"] .pricing-command-mark,
html body[data-page="/precios/"] .pricing-rule-logo,
html body[data-page="/precios/"] .pricing-range-mark,
html body[data-page="/precios/"] .pricing-compare-icon,
html body[data-page="/precios/"] .pricing-compare-badge,
html body[data-page="/precios/"] .pricing-faq-logo {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  border-radius: 10px !important;
}

html body[data-page="/precios/"] .pricing-index-section {
  padding-bottom: clamp(3.8rem, 5vw, 5.8rem) !important;
}

html body[data-page="/precios/"] .pricing-service-index {
  display: grid !important;
  gap: var(--pricing-gap) !important;
}

html body[data-page="/precios/"] .pricing-service-main {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: var(--pricing-gap) !important;
}

html body[data-page="/precios/"] .pricing-service-secondary {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
}

html body[data-page="/precios/"] .pricing-service-card,
html body[data-page="/precios/"] .pricing-service-card.is-primary,
html body[data-page="/precios/"] .pricing-service-card.is-secondary {
  height: auto !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(280px, 0.38fr) minmax(0, 0.62fr) !important;
  align-items: stretch !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-service-main .pricing-service-card {
  grid-template-columns: minmax(380px, 0.42fr) minmax(0, 0.58fr) !important;
  min-height: 236px !important;
}

html body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card {
  min-height: 188px !important;
}

html body[data-page="/precios/"] .pricing-service-card figure {
  width: 100% !important;
  height: 100% !important;
  min-height: 188px !important;
  margin: 0 !important;
  display: block !important;
  border-right: 1px solid rgba(242, 193, 92, 0.13) !important;
  border-bottom: 0 !important;
}

html body[data-page="/precios/"] .pricing-service-main .pricing-service-card figure {
  min-height: 236px !important;
}

html body[data-page="/precios/"] .pricing-service-card figure img {
  width: 100% !important;
  height: 100% !important;
  min-height: inherit !important;
  object-fit: cover !important;
}

html body[data-page="/precios/"] .pricing-service-card:hover figure img,
html body[data-page="/precios/"] .pricing-route-card-v2:hover figure img {
  transform: scale(1.018) !important;
}

html body[data-page="/precios/"] .pricing-service-body,
html body[data-page="/precios/"] .pricing-service-card.is-secondary > div {
  min-height: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  grid-template-rows: auto auto 1fr auto !important;
  gap: 0.42rem 0.86rem !important;
  align-content: center !important;
  padding: clamp(1rem, 1.45vw, 1.35rem) !important;
}

html body[data-page="/precios/"] .pricing-service-body .pricing-icon-badge,
html body[data-page="/precios/"] .pricing-service-card.is-secondary > div .pricing-icon-badge {
  grid-column: 1 !important;
  grid-row: 1 / span 4 !important;
}

html body[data-page="/precios/"] .pricing-service-card .card-kicker,
html body[data-page="/precios/"] .pricing-service-card h3,
html body[data-page="/precios/"] .pricing-service-card p,
html body[data-page="/precios/"] .pricing-service-card .pricing-service-actions {
  grid-column: 2 !important;
}

html body[data-page="/precios/"] .pricing-service-card h3 {
  max-width: 22ch !important;
  font-size: clamp(1.18rem, 1.6vw, 2rem) !important;
  line-height: 1.05 !important;
}

html body[data-page="/precios/"] .pricing-service-card p {
  max-width: 60ch !important;
  font-size: clamp(0.9rem, 0.86vw, 1rem) !important;
  line-height: 1.48 !important;
}

html body[data-page="/precios/"] .pricing-service-actions {
  align-self: end !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.55rem !important;
  margin: 0 !important;
  padding-top: 0.55rem !important;
}

html body[data-page="/precios/"] .pricing-service-actions .card-link,
html body[data-page="/precios/"] .pricing-service-actions .pricing-service-link {
  min-height: 38px !important;
  padding: 0.68rem 0.9rem !important;
}

html body[data-page="/precios/"] .pricing-compare-layout {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(1.4rem, 2.6vw, 2.8rem) !important;
  align-items: start !important;
}

html body[data-page="/precios/"] .pricing-compare-copy {
  position: sticky !important;
  top: 98px !important;
}

html body[data-page="/precios/"] .pricing-compare-copy h2 {
  max-width: 12ch !important;
}

html body[data-page="/precios/"] .pricing-compare-benefits {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.55rem !important;
}

html body[data-page="/precios/"] .pricing-compare-board {
  padding: clamp(1rem, 1.45vw, 1.35rem) !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-compare-table-head,
html body[data-page="/precios/"] .pricing-compare-table-row {
  display: grid !important;
  grid-template-columns: minmax(180px, 0.28fr) minmax(0, 0.36fr) minmax(0, 0.36fr) !important;
  gap: 0.62rem !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-compare-table-head {
  min-height: 48px !important;
  padding: 0.55rem 0.6rem !important;
}

html body[data-page="/precios/"] .pricing-compare-table-row {
  min-height: 112px !important;
  margin-top: 0.6rem !important;
  padding: 0.62rem !important;
  border: 1px solid rgba(242, 193, 92, 0.13) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.025) !important;
}

html body[data-page="/precios/"] .pricing-compare-criterion,
html body[data-page="/precios/"] .pricing-compare-cell {
  min-height: 88px !important;
  display: grid !important;
  align-content: center !important;
  padding: clamp(0.72rem, 1vw, 0.95rem) !important;
  border-radius: 6px !important;
}

html body[data-page="/precios/"] .pricing-compare-criterion {
  grid-template-columns: 42px minmax(0, 1fr) !important;
  gap: 0.7rem !important;
  align-items: center !important;
  background: rgba(242, 193, 92, 0.045) !important;
}

html body[data-page="/precios/"] .pricing-compare-criterion h3 {
  margin: 0 0 0.15rem !important;
  font-size: clamp(1rem, 1vw, 1.12rem) !important;
  line-height: 1.12 !important;
}

html body[data-page="/precios/"] .pricing-compare-criterion p,
html body[data-page="/precios/"] .pricing-compare-cell p {
  margin: 0 !important;
  font-size: clamp(0.86rem, 0.82vw, 0.96rem) !important;
  line-height: 1.45 !important;
}

html body[data-page="/precios/"] .pricing-compare-footer {
  display: grid !important;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr) !important;
  gap: 0.75rem !important;
  align-items: center !important;
}

html body[data-page="/precios/"] .pricing-route-grid-v2 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: var(--pricing-gap) !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 {
  height: auto !important;
  min-height: 226px !important;
  display: grid !important;
  grid-template-columns: minmax(360px, 0.42fr) minmax(0, 0.58fr) !important;
  align-items: stretch !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 figure {
  width: 100% !important;
  height: 100% !important;
  min-height: 226px !important;
  margin: 0 !important;
  border-right: 1px solid rgba(242, 193, 92, 0.13) !important;
  border-bottom: 0 !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 figure img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 > div {
  min-height: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-rows: auto auto 1fr auto !important;
  gap: 0.55rem !important;
  align-content: center !important;
  padding: clamp(1.05rem, 1.55vw, 1.5rem) !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 h3 {
  max-width: 24ch !important;
  font-size: clamp(1.35rem, 1.8vw, 2.25rem) !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 p {
  max-width: 66ch !important;
}

html body[data-page="/precios/"] .pricing-faq-layout {
  display: grid !important;
  grid-template-columns: minmax(330px, 0.32fr) minmax(0, 0.68fr) !important;
  gap: clamp(1.2rem, 2.4vw, 2.4rem) !important;
  align-items: start !important;
}

html body[data-page="/precios/"] .pricing-faq-aside {
  position: sticky !important;
  top: 98px !important;
  padding: clamp(1rem, 1.4vw, 1.35rem) !important;
}

html body[data-page="/precios/"] .pricing-faq-aside h2 {
  max-width: 11ch !important;
}

html body[data-page="/precios/"] .pricing-faq-aside ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.5rem !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.72rem !important;
  max-width: none !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list details {
  height: auto !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list summary {
  min-height: 68px !important;
  padding: 0.9rem 1rem !important;
  font-size: clamp(0.92rem, 0.86vw, 1rem) !important;
  line-height: 1.24 !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list p {
  max-width: none !important;
  padding: 0 1rem 1rem !important;
  font-size: clamp(0.88rem, 0.82vw, 0.96rem) !important;
  line-height: 1.55 !important;
}

html body[data-page="/precios/"] .pricing-final-cta {
  position: relative !important;
  width: var(--pricing-max) !important;
  max-width: var(--pricing-max) !important;
  min-height: 360px !important;
  margin: clamp(1rem, 2vw, 2rem) auto clamp(3.4rem, 5vw, 5.6rem) !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 10px !important;
}

html body[data-page="/precios/"] .pricing-final-cta .internal-final-media {
  position: absolute !important;
  inset: 0 !important;
  opacity: 1 !important;
}

html body[data-page="/precios/"] .pricing-final-cta .internal-final-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html body[data-page="/precios/"] .pricing-final-cta .internal-final-media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(4, 7, 7, 0.9) 0%, rgba(4, 7, 7, 0.74) 45%, rgba(4, 7, 7, 0.88) 100%),
    radial-gradient(circle at 84% 32%, rgba(242, 193, 92, 0.16), transparent 24rem) !important;
}

html body[data-page="/precios/"] .pricing-final-shell {
  position: relative !important;
  z-index: 1 !important;
  min-height: 360px !important;
  display: grid !important;
  align-items: center !important;
  padding: clamp(2rem, 4vw, 3.8rem) !important;
}

html body[data-page="/precios/"] .pricing-final-copy {
  display: grid !important;
  grid-template-columns: minmax(360px, 0.52fr) minmax(240px, 0.22fr) minmax(260px, 0.26fr) !important;
  column-gap: clamp(1.2rem, 2.4vw, 2.5rem) !important;
  row-gap: 0.9rem !important;
  align-items: center !important;
}

html body[data-page="/precios/"] .pricing-final-copy .eyebrow,
html body[data-page="/precios/"] .pricing-final-copy h2,
html body[data-page="/precios/"] .pricing-final-copy .lead {
  grid-column: 1 !important;
}

html body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 13.5ch !important;
}

html body[data-page="/precios/"] .pricing-final-actions {
  grid-column: 2 !important;
  grid-row: 1 / span 3 !important;
  align-self: center !important;
  justify-content: flex-start !important;
}

html body[data-page="/precios/"] .pricing-final-notes {
  grid-column: 3 !important;
  grid-row: 1 / span 3 !important;
  align-self: center !important;
  display: grid !important;
  gap: 0.65rem !important;
}

html body[data-page="/precios/"] .pricing-final-notes span {
  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr) !important;
  gap: 0.55rem !important;
  align-items: center !important;
  padding: 0.75rem 0.85rem !important;
  border: 1px solid rgba(242, 193, 92, 0.15) !important;
  border-radius: 8px !important;
  background: rgba(4, 7, 7, 0.48) !important;
  color: rgba(255, 248, 238, 0.82) !important;
}

@media (max-width: 1180px) {
  html body[data-page="/precios/"] {
    --pricing-max: min(100% - 40px, 1000px) !important;
  }

  html body[data-page="/precios/"] .pricing-section-heading,
  html body[data-page="/precios/"] .pricing-editorial-grid,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child,
  html body[data-page="/precios/"] .pricing-compare-layout,
  html body[data-page="/precios/"] .pricing-faq-layout,
  html body[data-page="/precios/"] .pricing-final-copy {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .eyebrow,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child h2,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .lead,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .pricing-rule-list,
  html body[data-page="/precios/"] .pricing-final-copy .eyebrow,
  html body[data-page="/precios/"] .pricing-final-copy h2,
  html body[data-page="/precios/"] .pricing-final-copy .lead,
  html body[data-page="/precios/"] .pricing-final-actions,
  html body[data-page="/precios/"] .pricing-final-notes {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  html body[data-page="/precios/"] .pricing-process-track {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body[data-page="/precios/"] .pricing-process-track::before {
    display: none !important;
  }

  html body[data-page="/precios/"] .pricing-service-secondary,
  html body[data-page="/precios/"] .pricing-faq-section .faq-list {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-compare-copy,
  html body[data-page="/precios/"] .pricing-faq-aside {
    position: static !important;
  }

  html body[data-page="/precios/"] .pricing-final-actions {
    justify-content: flex-start !important;
  }
}

@media (max-width: 760px) {
  html body[data-page="/precios/"] {
    --pricing-max: min(100% - 24px, 100%) !important;
    --pricing-section-y: 3rem !important;
  }

  html body[data-page="/precios/"] .pricing-section-heading h2,
  html body[data-page="/precios/"] .pricing-editorial-section h2,
  html body[data-page="/precios/"] .pricing-compare-copy h2,
  html body[data-page="/precios/"] .pricing-faq-aside h2,
  html body[data-page="/precios/"] .pricing-final-copy h2 {
    max-width: 100% !important;
    font-size: clamp(2.25rem, 10vw, 3.25rem) !important;
  }

  html body[data-page="/precios/"] .pricing-process-track,
  html body[data-page="/precios/"] .pricing-service-main,
  html body[data-page="/precios/"] .pricing-service-secondary,
  html body[data-page="/precios/"] .pricing-route-grid-v2 {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-service-card,
  html body[data-page="/precios/"] .pricing-service-card.is-primary,
  html body[data-page="/precios/"] .pricing-service-card.is-secondary,
  html body[data-page="/precios/"] .pricing-service-main .pricing-service-card,
  html body[data-page="/precios/"] .pricing-route-card-v2 {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  html body[data-page="/precios/"] .pricing-service-card figure,
  html body[data-page="/precios/"] .pricing-service-main .pricing-service-card figure,
  html body[data-page="/precios/"] .pricing-route-card-v2 figure {
    min-height: 190px !important;
    height: 190px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(242, 193, 92, 0.13) !important;
  }

  html body[data-page="/precios/"] .pricing-service-body,
  html body[data-page="/precios/"] .pricing-service-card.is-secondary > div {
    grid-template-columns: 38px minmax(0, 1fr) !important;
    padding: 1rem !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-head {
    display: none !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-row,
  html body[data-page="/precios/"] .pricing-compare-footer {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-final-cta,
  html body[data-page="/precios/"] .pricing-final-shell {
    min-height: 0 !important;
  }

  html body[data-page="/precios/"] .pricing-final-shell {
    padding: 1.35rem !important;
  }

  html body[data-page="/precios/"] .pricing-final-actions,
  html body[data-page="/precios/"] .pricing-service-actions {
    align-items: stretch !important;
  }

  html body[data-page="/precios/"] .page-shell .button,
  html body[data-page="/precios/"] .card-link,
  html body[data-page="/precios/"] .pricing-service-link {
    width: 100% !important;
  }
}

/* V4.79 pricing final responsive lock: override late global footer and hero rules. */
@media (max-width: 760px) {
  body[data-page="/precios/"] .pricing-hero .hero-panel.hero-panel-layered {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-top: 1.15rem !important;
    justify-self: stretch !important;
    justify-items: stretch !important;
  }

  body[data-page="/precios/"] .pricing-hero .pricing-command-panel {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 1.1rem !important;
  }

  body[data-page="/precios/"] .pricing-command-head h3 {
    max-width: 100% !important;
    font-size: clamp(1.55rem, 8vw, 2.25rem) !important;
  }

  body[data-page="/precios/"] .pricing-command-list article {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    padding: 0.82rem 0 !important;
  }

  body[data-page="/precios/"] .pricing-command-mark {
    width: 42px !important;
    height: 42px !important;
  }

  body[data-page="/precios/"] .site-footer-main {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: min(100% - 32px, 720px) !important;
    max-width: min(100% - 32px, 720px) !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  body[data-page="/precios/"] .site-footer-intro,
  body[data-page="/precios/"] .site-footer-group,
  body[data-page="/precios/"] .site-footer-legal,
  body[data-page="/precios/"] .site-footer-capabilities,
  body[data-page="/precios/"] .site-footer-contact {
    grid-column: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
  }

  body[data-page="/precios/"] .site-footer-group h3,
  body[data-page="/precios/"] .site-footer-group a,
  body[data-page="/precios/"] .site-footer-group p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }
}

/* V7.02 promotoras blueprint pass: match the editorial PNG layout, body only. */
body[data-page="/promotoras/"] .promotoras-editorial-page {
  --promotoras-shell: min(1240px, calc(100vw - 96px)) !important;
  --promotoras-gold: #d6a85a !important;
  --promotoras-line: rgba(214, 168, 90, 0.18) !important;
  --promotoras-card: rgba(255, 255, 255, 0.025) !important;
  background:
    radial-gradient(circle at 8% 20%, rgba(42, 87, 70, 0.18), transparent 32rem),
    radial-gradient(circle at 85% 42%, rgba(214, 168, 90, 0.08), transparent 34rem),
    linear-gradient(180deg, #030706 0%, #06110d 48%, #030706 100%) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-section-shell,
body[data-page="/promotoras/"] .promotoras-editorial-page .v3-shell {
  width: var(--promotoras-shell) !important;
  max-width: var(--promotoras-shell) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-editorial-section {
  min-height: auto !important;
  display: block !important;
  padding: clamp(4.9rem, 7vw, 6.25rem) 0 !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.12) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-editorial-section::before {
  background:
    linear-gradient(90deg, rgba(214, 168, 90, 0.035), transparent 35%, rgba(214, 168, 90, 0.026)),
    linear-gradient(180deg, rgba(255, 255, 255, 0.015), transparent 58%) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero {
  min-height: min(640px, calc(100vh - 70px)) !important;
  height: min(640px, calc(100vh - 70px)) !important;
  padding: 0 !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.18) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-media img {
  object-position: 54% 52% !important;
  filter: brightness(0.62) contrast(1.08) saturate(0.95) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-media::after {
  background:
    linear-gradient(90deg, rgba(2, 4, 4, 0.92), rgba(2, 4, 4, 0.66) 42%, rgba(2, 4, 4, 0.26) 62%, rgba(2, 4, 4, 0.8) 100%),
    linear-gradient(180deg, rgba(2, 4, 4, 0.1), rgba(2, 4, 4, 0.58) 100%) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
  grid-template-columns: minmax(0, 0.62fr) minmax(300px, 0.34fr) !important;
  min-height: 100% !important;
  padding-top: 76px !important;
  padding-bottom: 2rem !important;
  align-items: center !important;
  gap: clamp(2rem, 5vw, 6rem) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy {
  max-width: 720px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy h1 {
  max-width: 12ch !important;
  font-size: clamp(4.1rem, 7.1vw, 7.6rem) !important;
  line-height: 0.88 !important;
  letter-spacing: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy > p:not(.v4-eyebrow) {
  max-width: 620px !important;
  margin-top: 1.15rem !important;
  font-size: clamp(1rem, 1.2vw, 1.17rem) !important;
  line-height: 1.58 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-actions {
  margin-top: 1.55rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-chip-row {
  margin-top: 1.35rem !important;
  gap: 1.35rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-chip-row span {
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 0 0 1.25rem !important;
  background: transparent !important;
  color: rgba(255, 248, 238, 0.8) !important;
  position: relative !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-chip-row span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 0.45rem;
  height: 0.45rem;
  border: 1px solid var(--promotoras-gold);
  border-radius: 50%;
  transform: translateY(-50%);
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-panel {
  min-height: 430px !important;
  padding: clamp(2rem, 3vw, 3rem) !important;
  border-radius: 0 !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.01)),
    rgba(4, 8, 7, 0.86) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-panel h2 {
  max-width: 12ch !important;
  font-size: clamp(2rem, 3vw, 3.4rem) !important;
  line-height: 0.95 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-section {
  padding-top: clamp(4rem, 6vw, 5.4rem) !important;
  padding-bottom: clamp(4.2rem, 6.5vw, 5.8rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-grid {
  grid-template-columns: minmax(220px, 0.28fr) minmax(0, 1fr) !important;
  gap: clamp(2rem, 4vw, 4.8rem) !important;
  align-items: start !important;
}

body[data-page="/promotoras/"] .promotoras-focus-cards {
  gap: 1.45rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card {
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.022) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card figure {
  height: 150px !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card > div {
  min-height: 230px !important;
  padding: 1.25rem 1.2rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-focus-section h2,
body[data-page="/promotoras/"] .promotoras-related-section h2,
body[data-page="/promotoras/"] .promotoras-faq-section h2 {
  max-width: 12ch !important;
  font-size: clamp(2.35rem, 4vw, 4rem) !important;
  line-height: 0.94 !important;
}

body[data-page="/promotoras/"] .promotoras-readable p {
  font-size: 0.98rem !important;
  line-height: 1.62 !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid {
  grid-template-columns: minmax(250px, 0.36fr) minmax(0, 0.76fr) !important;
  gap: clamp(2.4rem, 5vw, 6rem) !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-problem {
  grid-template-columns: minmax(260px, 0.34fr) minmax(0, 0.78fr) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy blockquote {
  margin-top: 1.2rem !important;
  margin-bottom: 1.6rem !important;
  color: #e0b564 !important;
  font-size: clamp(1.16rem, 1.6vw, 1.45rem) !important;
}

body[data-page="/promotoras/"] .promotoras-large-media,
body[data-page="/promotoras/"] .promotoras-device-media {
  min-height: 390px !important;
  border-radius: 8px !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-large-media {
  min-height: 430px !important;
}

body[data-page="/promotoras/"] .promotoras-mini-row {
  margin-top: -1px !important;
  gap: 0 !important;
  border: 1px solid var(--promotoras-line) !important;
  border-top: 0 !important;
  border-radius: 0 0 8px 8px !important;
  overflow: hidden !important;
  background: rgba(2, 6, 5, 0.72) !important;
}

body[data-page="/promotoras/"] .promotoras-mini-row .promotoras-mini-metric {
  border: 0 !important;
  border-right: 1px solid rgba(214, 168, 90, 0.13) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-page="/promotoras/"] .promotoras-mini-row .promotoras-mini-metric:last-child {
  border-right: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-reversed {
  grid-template-columns: minmax(0, 0.56fr) minmax(320px, 0.44fr) !important;
  gap: 0 !important;
  align-items: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-section-shell {
  width: 100% !important;
  max-width: none !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-large-media {
  min-height: 520px !important;
  border-left: 0 !important;
  border-radius: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-split-grid.is-reversed > div {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: clamp(4rem, 7vw, 6rem) max((100vw - 1240px) / 2, 48px) clamp(4rem, 7vw, 6rem) clamp(2rem, 4vw, 4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-visual-overlay {
  position: absolute;
  right: clamp(1.2rem, 3vw, 3.5rem);
  bottom: clamp(1.2rem, 3vw, 3.5rem);
  display: grid;
  gap: 0.85rem;
  width: min(360px, calc(100% - 2.4rem));
  padding: 1.1rem;
  border: 1px solid rgba(214, 168, 90, 0.2);
  border-radius: 8px;
  background: linear-gradient(145deg, rgba(3, 7, 6, 0.72), rgba(3, 7, 6, 0.42));
  backdrop-filter: blur(14px);
}

body[data-page="/promotoras/"] .promotoras-visual-overlay article {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  column-gap: 0.75rem;
  align-items: center;
}

body[data-page="/promotoras/"] .promotoras-visual-overlay span {
  grid-row: 1 / span 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(214, 168, 90, 0.3);
  border-radius: 8px;
  color: var(--promotoras-gold);
}

body[data-page="/promotoras/"] .promotoras-visual-overlay svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
}

body[data-page="/promotoras/"] .promotoras-visual-overlay strong {
  color: #fff8ee;
  font-size: 0.9rem;
  line-height: 1.2;
}

body[data-page="/promotoras/"] .promotoras-visual-overlay small {
  color: rgba(255, 248, 238, 0.62);
  font-size: 0.72rem;
  line-height: 1.28;
}

body[data-page="/promotoras/"] .promotoras-icon-points {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin-top: 1.7rem !important;
}

body[data-page="/promotoras/"] .promotoras-icon-points .promotoras-mini-metric {
  min-height: 92px !important;
  grid-template-columns: 1fr !important;
  justify-items: start !important;
  padding: 0 1.1rem 0 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-page="/promotoras/"] .promotoras-icon-points .promotoras-inline-icon {
  margin-bottom: 0.55rem !important;
  border: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-packs {
  grid-template-columns: minmax(260px, 0.34fr) minmax(0, 0.82fr) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-board {
  min-height: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: rotate(0.35deg) translateY(-2px) !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-board::after {
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-sheet {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 1rem;
  padding: 1.25rem;
  border: 1px solid rgba(255, 248, 238, 0.28);
  border-radius: 8px;
  color: #17150f;
  background: #e9e1d2;
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.42), 0 0 34px rgba(214, 168, 90, 0.11);
}

body[data-page="/promotoras/"] .promotoras-dossier-sheet aside strong {
  display: block;
  max-width: 11ch;
  color: #16130f;
  font-family: Inter, system-ui, sans-serif;
  font-size: 0.85rem;
  line-height: 1.05;
}

body[data-page="/promotoras/"] .promotoras-dossier-sheet ul {
  margin: 1rem 0 0;
  padding-left: 1rem;
}

body[data-page="/promotoras/"] .promotoras-dossier-sheet li {
  color: #312a1d;
  font-size: 0.68rem;
  font-weight: 750;
  line-height: 1.5;
}

body[data-page="/promotoras/"] .promotoras-dossier-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.55rem;
}

body[data-page="/promotoras/"] .promotoras-dossier-gallery img {
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 6px;
  object-fit: cover;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.22);
}

body[data-page="/promotoras/"] .promotoras-dossier-badges {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.6rem;
  padding-top: 0.65rem;
  border-top: 1px solid rgba(20, 16, 10, 0.14);
}

body[data-page="/promotoras/"] .promotoras-dossier-badges span {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: #252018;
  font-size: 0.6rem;
  font-weight: 850;
  line-height: 1.1;
  text-transform: uppercase;
}

body[data-page="/promotoras/"] .promotoras-dossier-badges svg {
  width: 16px;
  min-width: 16px;
  height: 16px;
  fill: none;
  stroke: #9f742c;
  stroke-width: 1.9;
}

body[data-page="/promotoras/"] .promotoras-process-section {
  padding: clamp(3.4rem, 5vw, 4.3rem) 0 !important;
  background:
    linear-gradient(90deg, rgba(4, 8, 7, 0.95), rgba(4, 8, 7, 0.72)),
    var(--promotoras-process-bg) center / cover !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell {
  display: grid;
  grid-template-columns: minmax(250px, 0.3fr) minmax(0, 0.7fr);
  gap: clamp(2rem, 5vw, 5.5rem);
  align-items: center;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-editorial-copy h2 {
  font-size: clamp(2.25rem, 3vw, 3.4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
  margin-top: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric {
  min-height: 150px !important;
  align-content: center !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.028) !important;
}

body[data-page="/promotoras/"] .promotoras-calculator-section {
  padding: clamp(3.5rem, 5vw, 4.5rem) 0 !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-calculator {
  grid-template-columns: minmax(300px, 0.4fr) minmax(260px, 0.32fr) minmax(290px, 0.35fr) !important;
  gap: clamp(1.8rem, 3vw, 3rem) !important;
}

body[data-page="/promotoras/"] .promotoras-device-media {
  min-height: 330px !important;
  transform: perspective(900px) rotateY(-9deg) rotateX(3deg) !important;
  box-shadow: 0 34px 78px rgba(0, 0, 0, 0.36) !important;
}

body[data-page="/promotoras/"] .promotoras-results-card {
  min-height: 250px !important;
  border-radius: 8px !important;
}

body[data-page="/promotoras/"] .promotoras-related-section,
body[data-page="/promotoras/"] .promotoras-faq-section {
  padding-top: clamp(4rem, 6vw, 5rem) !important;
  padding-bottom: clamp(4rem, 6vw, 5rem) !important;
}

body[data-page="/promotoras/"] .promotoras-related-grid,
body[data-page="/promotoras/"] .promotoras-faq-grid {
  grid-template-columns: minmax(210px, 0.26fr) minmax(0, 0.74fr) !important;
  gap: clamp(2rem, 4vw, 4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-related-card {
  border-radius: 8px !important;
}

body[data-page="/promotoras/"] .promotoras-related-card figure {
  height: 190px !important;
}

body[data-page="/promotoras/"] .promotoras-related-card > div {
  min-height: 260px !important;
}

body[data-page="/promotoras/"] .promotoras-accordion details {
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.018) !important;
  box-shadow: none !important;
}

body[data-page="/promotoras/"] .promotoras-final-section {
  min-height: 250px !important;
  padding: 0 !important;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .promotoras-editorial-page {
    --promotoras-shell: min(100% - 48px, 920px) !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero {
    height: auto !important;
    min-height: 680px !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell,
  body[data-page="/promotoras/"] .promotoras-focus-grid,
  body[data-page="/promotoras/"] .promotoras-split-grid,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-problem,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-packs,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-calculator,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell,
  body[data-page="/promotoras/"] .promotoras-related-grid,
  body[data-page="/promotoras/"] .promotoras-faq-grid {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-split-grid.is-reversed {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-split-grid.is-reversed > div {
    padding: 4rem 48px !important;
  }

  body[data-page="/promotoras/"] .promotoras-icon-points,
  body[data-page="/promotoras/"] .promotoras-timeline,
  body[data-page="/promotoras/"] .promotoras-dossier-badges {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/promotoras/"] .promotoras-related-cards,
  body[data-page="/promotoras/"] .promotoras-focus-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  body[data-page="/promotoras/"] .promotoras-editorial-page {
    --promotoras-shell: min(100% - 28px, 520px) !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-editorial-section {
    padding: 48px 0 !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero {
    min-height: auto !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
    padding-top: 96px !important;
    padding-bottom: 2.2rem !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy h1 {
    font-size: clamp(3.35rem, 14vw, 4.75rem) !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-panel {
    min-height: 260px !important;
    border-radius: 8px !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-cards,
  body[data-page="/promotoras/"] .promotoras-related-cards,
  body[data-page="/promotoras/"] .promotoras-mini-row,
  body[data-page="/promotoras/"] .promotoras-icon-points,
  body[data-page="/promotoras/"] .promotoras-timeline,
  body[data-page="/promotoras/"] .promotoras-dossier-badges,
  body[data-page="/promotoras/"] .promotoras-results-card > div {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-split-grid.is-reversed > div {
    padding: 48px 28px !important;
  }

  body[data-page="/promotoras/"] .promotoras-large-media,
  body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-large-media,
  body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-large-media,
  body[data-page="/promotoras/"] .promotoras-device-media {
    min-height: 300px !important;
  }

  body[data-page="/promotoras/"] .promotoras-visual-overlay {
    position: relative !important;
    right: auto !important;
    bottom: auto !important;
    width: auto !important;
    margin: -1px 0 0 !important;
    border-radius: 0 0 8px 8px !important;
  }

  body[data-page="/promotoras/"] .promotoras-dossier-sheet {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-dossier-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/promotoras/"] .promotoras-related-card > div,
  body[data-page="/promotoras/"] .promotoras-focus-card > div {
    min-height: 0 !important;
  }
}

/* V7.03 promotoras editorial density: bring section rhythm closer to the PNG. */
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-editorial-section {
  padding: clamp(3.2rem, 5vw, 4.7rem) 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero {
  min-height: 560px !important;
  height: 560px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy h1 {
  font-size: clamp(3.65rem, 6vw, 6.25rem) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy > p:not(.v4-eyebrow) {
  max-width: 560px !important;
  font-size: 0.98rem !important;
  line-height: 1.5 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-panel {
  min-height: 360px !important;
  padding: 2.15rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-panel h2 {
  font-size: clamp(1.85rem, 2.65vw, 2.85rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-section {
  padding-top: 3.8rem !important;
  padding-bottom: 4.25rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card figure {
  height: 132px !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card > div {
  min-height: 178px !important;
  padding: 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card h3,
body[data-page="/promotoras/"] .promotoras-related-card h3 {
  font-size: 1.38rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card p:not(.promotoras-part),
body[data-page="/promotoras/"] .promotoras-related-card p:not(.promotoras-part) {
  display: -webkit-box !important;
  overflow: hidden !important;
  font-size: 0.8rem !important;
  line-height: 1.45 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 6 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-focus-section h2,
body[data-page="/promotoras/"] .promotoras-related-section h2,
body[data-page="/promotoras/"] .promotoras-faq-section h2 {
  font-size: clamp(2.1rem, 3.35vw, 3.25rem) !important;
}

body[data-page="/promotoras/"] .promotoras-readable {
  gap: 0.58rem !important;
}

body[data-page="/promotoras/"] .promotoras-readable p {
  font-size: 0.82rem !important;
  line-height: 1.48 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-copy blockquote {
  font-size: 1.05rem !important;
  line-height: 1.35 !important;
}

body[data-page="/promotoras/"] .promotoras-large-media,
body[data-page="/promotoras/"] .promotoras-device-media {
  min-height: 340px !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-large-media {
  min-height: 380px !important;
}

body[data-page="/promotoras/"] .promotoras-mini-metric {
  min-height: 66px !important;
}

body[data-page="/promotoras/"] .promotoras-mini-metric strong {
  font-size: 0.78rem !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-large-media {
  min-height: 450px !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-split-grid.is-reversed > div {
  padding-top: 3.6rem !important;
  padding-bottom: 3.6rem !important;
}

body[data-page="/promotoras/"] .promotoras-icon-points .promotoras-mini-metric {
  min-height: 76px !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-sheet {
  padding: 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-gallery {
  gap: 0.45rem !important;
}

body[data-page="/promotoras/"] .promotoras-process-section {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric {
  min-height: 118px !important;
}

body[data-page="/promotoras/"] .promotoras-calculator-section {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

body[data-page="/promotoras/"] .promotoras-device-media {
  min-height: 300px !important;
}

body[data-page="/promotoras/"] .promotoras-related-card figure {
  height: 170px !important;
}

body[data-page="/promotoras/"] .promotoras-related-card > div {
  min-height: 220px !important;
}

body[data-page="/promotoras/"] .promotoras-accordion summary {
  min-height: 52px !important;
  padding-top: 0.72rem !important;
  padding-bottom: 0.72rem !important;
  font-size: 0.86rem !important;
}

@media (max-width: 720px) {
  body[data-page="/promotoras/"] .promotoras-editorial-hero {
    height: auto !important;
  }
}

/* V7.04 promotoras hero lock: keep H1 below the fixed header. */
body[data-page="/promotoras/"] .promotoras-editorial-hero {
  min-height: 610px !important;
  height: 610px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
  height: 100% !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
  padding-top: 116px !important;
  padding-bottom: 2rem !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy h1 {
  font-size: clamp(3.25rem, 5.25vw, 5.35rem) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy > p:not(.v4-eyebrow) {
  max-width: 540px !important;
  font-size: 0.92rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-chip-row {
  max-width: 660px !important;
}

@media (max-width: 720px) {
  body[data-page="/promotoras/"] .promotoras-editorial-hero {
    height: auto !important;
    min-height: auto !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
    height: auto !important;
    padding-top: 96px !important;
  }
}

/* V7.05 promotoras home-width lock: every central block follows the home shell. */
body[data-page="/promotoras/"] .promotoras-editorial-page {
  --promotoras-shell: var(--g3d-approved-shell) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-section-shell,
body[data-page="/promotoras/"] .promotoras-editorial-page .v3-shell {
  width: var(--g3d-approved-shell) !important;
  max-width: var(--g3d-approved-shell) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-editorial-section {
  padding-top: clamp(4rem, 5.8vw, 5.4rem) !important;
  padding-bottom: clamp(4rem, 5.8vw, 5.4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-grid,
body[data-page="/promotoras/"] .promotoras-related-grid,
body[data-page="/promotoras/"] .promotoras-faq-grid {
  grid-template-columns: minmax(230px, 0.28fr) minmax(0, 0.72fr) !important;
  gap: clamp(2rem, 4vw, 4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid,
body[data-page="/promotoras/"] .promotoras-split-grid.is-problem,
body[data-page="/promotoras/"] .promotoras-split-grid.is-packs {
  grid-template-columns: minmax(260px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(2.25rem, 4.8vw, 5rem) !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-reversed {
  grid-template-columns: minmax(0, 0.58fr) minmax(320px, 0.42fr) !important;
  gap: clamp(2.25rem, 4.4vw, 4.5rem) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section {
  padding-top: clamp(4rem, 5.8vw, 5.4rem) !important;
  padding-bottom: clamp(4rem, 5.8vw, 5.4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-section-shell {
  width: var(--g3d-approved-shell) !important;
  max-width: var(--g3d-approved-shell) !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-split-grid.is-reversed > div {
  padding: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-large-media {
  min-height: clamp(360px, 38vw, 470px) !important;
  border: 1px solid rgba(214, 168, 90, 0.18) !important;
  border-radius: 12px !important;
}

body[data-page="/promotoras/"] .promotoras-large-media,
body[data-page="/promotoras/"] .promotoras-device-media,
body[data-page="/promotoras/"] .promotoras-dossier-sheet,
body[data-page="/promotoras/"] .promotoras-focus-card,
body[data-page="/promotoras/"] .promotoras-related-card,
body[data-page="/promotoras/"] .promotoras-results-card,
body[data-page="/promotoras/"] .promotoras-accordion details {
  border-radius: 12px !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card,
body[data-page="/promotoras/"] .promotoras-related-card,
body[data-page="/promotoras/"] .promotoras-results-card,
body[data-page="/promotoras/"] .promotoras-accordion details {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.014)),
    rgba(255, 255, 255, 0.022) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-focus-section h2,
body[data-page="/promotoras/"] .promotoras-related-section h2,
body[data-page="/promotoras/"] .promotoras-faq-section h2 {
  max-width: 13ch !important;
  font-size: clamp(2.2rem, 3vw, 3.1rem) !important;
}

body[data-page="/promotoras/"] .promotoras-readable {
  max-width: 520px !important;
}

body[data-page="/promotoras/"] .promotoras-readable p {
  color: rgba(246, 239, 229, 0.7) !important;
}

body[data-page="/promotoras/"] .promotoras-mini-row {
  border-radius: 0 0 12px 12px !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-board {
  justify-self: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-sheet {
  width: 100% !important;
  box-sizing: border-box !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell {
  grid-template-columns: minmax(260px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(2.25rem, 4.8vw, 5rem) !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-calculator {
  grid-template-columns: minmax(280px, 0.34fr) minmax(260px, 0.32fr) minmax(260px, 0.34fr) !important;
  gap: clamp(1.5rem, 2.6vw, 2.5rem) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-device-media {
  min-height: clamp(260px, 27vw, 330px) !important;
}

body[data-page="/promotoras/"] .promotoras-related-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .promotoras-focus-grid,
  body[data-page="/promotoras/"] .promotoras-related-grid,
  body[data-page="/promotoras/"] .promotoras-faq-grid,
  body[data-page="/promotoras/"] .promotoras-split-grid,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-problem,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-packs,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-reversed,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-calculator {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-related-cards,
  body[data-page="/promotoras/"] .promotoras-focus-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .promotoras-related-cards,
  body[data-page="/promotoras/"] .promotoras-focus-cards {
    grid-template-columns: 1fr !important;
  }
}

/* V7 portfolio filters: sector row plus contextual subcategories. */
body[data-page="/portfolio/"] .portfolio-toolbar {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  align-items: stretch !important;
  gap: 0.55rem !important;
  padding: 10px !important;
}

body[data-page="/portfolio/"] .portfolio-toolbar > div:first-child,
body[data-page="/portfolio/"] .portfolio-filter-row,
body[data-page="/portfolio/"] .portfolio-subfilter-group.is-active {
  display: flex !important;
}

body[data-page="/portfolio/"] .portfolio-filter-row,
body[data-page="/portfolio/"] .portfolio-subfilter-group {
  width: 100%;
  min-width: 0;
  align-items: center;
  gap: 0.5rem;
}

body[data-page="/portfolio/"] .portfolio-filter-label,
body[data-page="/portfolio/"] .portfolio-subfilter-group > span {
  flex: 0 0 auto;
  min-width: 74px;
  color: rgba(255, 248, 238, 0.56);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-page="/portfolio/"] .portfolio-subfilter-shell {
  width: 100%;
  min-width: 0;
}

body[data-page="/portfolio/"] .portfolio-subfilter-group {
  display: none !important;
}

body[data-page="/portfolio/"] .portfolio-filter-group-primary,
body[data-page="/portfolio/"] .portfolio-filter-group-secondary {
  min-width: 0;
  gap: 0.4rem !important;
}

body[data-page="/portfolio/"] .portfolio-filter-group-primary button {
  min-height: 34px !important;
  padding-inline: 0.9rem !important;
  font-size: 0.68rem !important;
}

body[data-page="/portfolio/"] .portfolio-filter-group-secondary button {
  min-height: 28px !important;
  padding-inline: 0.68rem !important;
  color: rgba(255, 248, 238, 0.72);
  font-size: 0.6rem !important;
}

body[data-page="/portfolio/"] .portfolio-filter-group-primary button.is-active,
body[data-page="/portfolio/"] .portfolio-filter-group-secondary button.is-active {
  color: #080907 !important;
  border-color: rgba(236, 195, 105, 0.9) !important;
  background: #ecc369 !important;
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] .portfolio-toolbar {
    top: 64px;
    gap: 0.5rem !important;
  }

  body[data-page="/portfolio/"] .portfolio-filter-row,
  body[data-page="/portfolio/"] .portfolio-subfilter-group.is-active {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.35rem;
  }

  body[data-page="/portfolio/"] .portfolio-filter-label,
  body[data-page="/portfolio/"] .portfolio-subfilter-group > span {
    min-width: 0;
  }

  body[data-page="/portfolio/"] .portfolio-filter-group-primary,
  body[data-page="/portfolio/"] .portfolio-filter-group-secondary {
    flex-wrap: nowrap !important;
    overflow-x: auto;
    padding-bottom: 2px;
  }
}

/* V4.91 vertical personality lock: prevent older vertical hero rules from moving the new panel. */
body[data-home-template="true"] .vertical-personality .vertical-hero-panel {
  position: static !important;
  inset: auto !important;
  width: auto !important;
  min-height: 430px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  align-content: center !important;
  align-self: stretch !important;
  padding: clamp(1.6rem, 3vw, 2.6rem) !important;
}

body[data-home-template="true"] .vertical-personality .vertical-hero-panel h2 {
  display: block !important;
  max-width: 10ch !important;
  margin: 0 !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(2.6rem, 4vw, 4.4rem) !important;
  font-weight: 600 !important;
  line-height: 0.9 !important;
  letter-spacing: -0.045em !important;
}

body[data-home-template="true"] .vertical-personality .vertical-hero-panel ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.82rem !important;
  margin: 1.6rem 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

@media (max-width: 1050px) {
  body[data-home-template="true"] .vertical-personality .vertical-hero-copy {
    order: 1 !important;
  }

  body[data-home-template="true"] .vertical-personality .vertical-hero-panel {
    order: 2 !important;
    min-height: 0 !important;
  }
}

/* V4.81 approved-home typography and module rhythm. */
body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main h1 {
  max-width: 11.25ch !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(2.56rem, 4.58vw, 3.95rem) !important;
  font-weight: 600 !important;
  line-height: 1.01 !important;
  letter-spacing: 0 !important;
  text-wrap: balance !important;
}

body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main h2 {
  max-width: 10.9ch !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.9rem, 2.92vw, 2.5rem) !important;
  font-weight: 600 !important;
  line-height: 0.96 !important;
  letter-spacing: 0 !important;
  text-wrap: balance !important;
}

body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .section-heading,
body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .centered-heading,
body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .promo-section-copy,
body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .split-copy {
  max-width: min(100%, 760px) !important;
}

body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .lead,
body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .promo-lead,
body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .section-heading > p,
body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .hero-copy > p:not(.eyebrow),
body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .promo-section-copy > p:not(.promo-eyebrow) {
  max-width: 67ch !important;
  font-size: clamp(0.96rem, 1.15vw, 1.08rem) !important;
  line-height: 1.62 !important;
  letter-spacing: 0 !important;
}

body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .eyebrow,
body[data-page]:not([data-page="/"]):not([data-page="/configurador/"]) main .promo-eyebrow {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
}

body[data-page="/calculadora-render-3d/"] .calculator-configurator-bridge {
  width: var(--g3d-approved-shell) !important;
  max-width: var(--g3d-approved-shell) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* V4.82 pricing acceptance lock: horizontal desktop contract from the supplied references. */
html body[data-page="/precios/"] {
  --pricing-shell-v482: min(1320px, calc(100% - clamp(40px, 7vw, 128px))) !important;
  --pricing-gold-v482: #f1c15f !important;
  --pricing-line-v482: rgba(241, 193, 95, 0.24) !important;
  --pricing-panel-v482: rgba(7, 11, 11, 0.72) !important;
}

html body[data-page="/precios/"] .pricing-hero,
html body[data-page="/precios/"] .pricing-editorial-section,
html body[data-page="/precios/"] .pricing-range-section,
html body[data-page="/precios/"] .pricing-index-section,
html body[data-page="/precios/"] .pricing-compare-section,
html body[data-page="/precios/"] .pricing-route-section,
html body[data-page="/precios/"] .pricing-faq-section,
html body[data-page="/precios/"] .pricing-final-cta {
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-editorial-section,
html body[data-page="/precios/"] .pricing-range-section,
html body[data-page="/precios/"] .pricing-index-section,
html body[data-page="/precios/"] .pricing-compare-section,
html body[data-page="/precios/"] .pricing-route-section,
html body[data-page="/precios/"] .pricing-faq-section {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(4.5rem, 7vw, 7.2rem) 0 !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid,
html body[data-page="/precios/"] .pricing-process-track,
html body[data-page="/precios/"] .pricing-service-index,
html body[data-page="/precios/"] .pricing-compare-layout,
html body[data-page="/precios/"] .pricing-route-grid-v2,
html body[data-page="/precios/"] .pricing-faq-layout,
html body[data-page="/precios/"] .pricing-section-heading,
html body[data-page="/precios/"] .pricing-final-shell {
  width: var(--pricing-shell-v482) !important;
  max-width: var(--pricing-shell-v482) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}

html body[data-page="/precios/"] .pricing-section-heading {
  display: block !important;
  margin-bottom: clamp(1.8rem, 3vw, 3.2rem) !important;
  text-align: left !important;
}

html body[data-page="/precios/"] .pricing-section-heading h2 {
  max-width: 13.5ch !important;
  font-size: clamp(3.2rem, 5vw, 6.2rem) !important;
  line-height: 0.92 !important;
  letter-spacing: 0 !important;
}

html body[data-page="/precios/"] .pricing-section-heading .lead {
  max-width: 64ch !important;
  margin-top: 1rem !important;
}

@media (min-width: 980px) {
  html body[data-page="/precios/"] .pricing-hero.hero-immersive {
    display: grid !important;
    grid-template-columns: minmax(0, 0.58fr) minmax(380px, 0.42fr) !important;
    gap: clamp(2rem, 5vw, 6rem) !important;
    align-items: center !important;
    min-height: clamp(700px, 86vh, 900px) !important;
    padding-right: clamp(56px, 7vw, 112px) !important;
    padding-left: clamp(56px, 7vw, 112px) !important;
  }

  html body[data-page="/precios/"] .pricing-hero .internal-hero-media::after {
    background:
      linear-gradient(90deg, rgba(2, 5, 5, 0.94) 0%, rgba(2, 5, 5, 0.74) 34%, rgba(2, 5, 5, 0.28) 64%, rgba(2, 5, 5, 0.42) 100%),
      radial-gradient(circle at 80% 18%, rgba(241, 193, 95, 0.22), transparent 24rem) !important;
  }

  html body[data-page="/precios/"] .pricing-hero .hero-copy {
    grid-column: 1 !important;
    max-width: 760px !important;
  }

  html body[data-page="/precios/"] .pricing-hero .hero-copy h1 {
    max-width: 8.8ch !important;
    font-size: clamp(5.2rem, 8.4vw, 9rem) !important;
    line-height: 0.86 !important;
  }

  html body[data-page="/precios/"] .pricing-hero .hero-panel {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
  }

  html body[data-page="/precios/"] .pricing-command-panel {
    min-height: 560px !important;
    padding: clamp(2rem, 3vw, 3.2rem) !important;
    background:
      linear-gradient(135deg, rgba(15, 18, 16, 0.86), rgba(4, 9, 10, 0.78)),
      radial-gradient(circle at 8% 0%, rgba(241, 193, 95, 0.18), transparent 16rem) !important;
    border: 1px solid rgba(241, 193, 95, 0.44) !important;
    box-shadow: 0 34px 90px rgba(0, 0, 0, 0.48), inset 0 1px 0 rgba(255, 247, 224, 0.12) !important;
    backdrop-filter: blur(16px) !important;
  }

  html body[data-page="/precios/"] .pricing-command-head h3 {
    max-width: 13ch !important;
    font-size: clamp(2.4rem, 3.1vw, 4rem) !important;
    line-height: 1 !important;
  }

  html body[data-page="/precios/"] .pricing-command-list article {
    grid-template-columns: 74px minmax(0, 1fr) !important;
    min-height: 112px !important;
    padding: 1.15rem 0 !important;
    border-bottom: 1px solid rgba(241, 193, 95, 0.18) !important;
  }

  html body[data-page="/precios/"] .pricing-command-mark {
    width: 72px !important;
    height: 72px !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 0.58fr) minmax(380px, 0.42fr) !important;
    gap: clamp(2.5rem, 5vw, 5.8rem) !important;
    align-items: center !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child {
    display: block !important;
    min-width: 0 !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .eyebrow,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > h2,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .lead,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .pricing-rule-list {
    grid-column: auto !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid h2 {
    max-width: 12.5ch !important;
    font-size: clamp(4.2rem, 5.7vw, 7rem) !important;
    line-height: 0.9 !important;
  }

  html body[data-page="/precios/"] .pricing-rule-list {
    display: grid !important;
    gap: 0 !important;
    margin-top: clamp(1.9rem, 3vw, 3.1rem) !important;
  }

  html body[data-page="/precios/"] .pricing-rule-list article {
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) auto !important;
    min-height: 96px !important;
    align-items: center !important;
    padding: 1rem 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(241, 193, 95, 0.18) !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body[data-page="/precios/"] .pricing-proposal-card {
    min-height: 560px !important;
    padding: clamp(2rem, 3vw, 3.2rem) !important;
    border: 1px solid rgba(241, 193, 95, 0.38) !important;
    background: linear-gradient(145deg, rgba(13, 16, 15, 0.86), rgba(4, 8, 9, 0.72)) !important;
  }

  html body[data-page="/precios/"] .pricing-proposal-card h3 {
    max-width: 12ch !important;
    font-size: clamp(2.25rem, 3.1vw, 4rem) !important;
    line-height: 1 !important;
  }

  html body[data-page="/precios/"] .pricing-proposal-card article {
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) !important;
    gap: 1.1rem !important;
    min-height: 116px !important;
    align-items: start !important;
  }

  html body[data-page="/precios/"] .pricing-process-track {
    position: relative !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(1.2rem, 2vw, 2rem) !important;
    align-items: stretch !important;
  }

  html body[data-page="/precios/"] .pricing-process-track::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 86px !important;
    left: 9% !important;
    right: 9% !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent, rgba(241, 193, 95, 0.65), transparent) !important;
  }

  html body[data-page="/precios/"] .pricing-process-step {
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto 1fr !important;
    justify-items: center !important;
    min-height: 360px !important;
    padding: clamp(1.7rem, 2.3vw, 2.5rem) clamp(1.15rem, 1.8vw, 1.85rem) !important;
    text-align: center !important;
    background: linear-gradient(180deg, rgba(14, 17, 16, 0.8), rgba(4, 8, 8, 0.72)) !important;
    border: 1px solid rgba(241, 193, 95, 0.26) !important;
  }

  html body[data-page="/precios/"] .pricing-process-step .pricing-range-top,
  html body[data-page="/precios/"] .pricing-process-step small,
  html body[data-page="/precios/"] .pricing-process-step h3,
  html body[data-page="/precios/"] .pricing-process-step p {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  html body[data-page="/precios/"] .pricing-process-step .pricing-range-top {
    display: grid !important;
    justify-content: center !important;
  }

  html body[data-page="/precios/"] .pricing-range-mark {
    width: 74px !important;
    height: 74px !important;
  }

  html body[data-page="/precios/"] .pricing-process-step h3 {
    max-width: 11ch !important;
    font-size: clamp(1.85rem, 2.25vw, 2.8rem) !important;
    line-height: 0.96 !important;
  }

  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading {
    display: grid !important;
    grid-template-columns: minmax(300px, 0.38fr) minmax(0, 0.62fr) !important;
    gap: 1rem clamp(1.8rem, 4vw, 4rem) !important;
    align-items: end !important;
  }

  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading .eyebrow {
    grid-column: 1 / -1 !important;
  }

  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading h2 {
    grid-column: 1 !important;
    max-width: 11ch !important;
  }

  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading .lead {
    grid-column: 2 !important;
    margin: 0 !important;
  }

  html body[data-page="/precios/"] .pricing-service-main {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: clamp(1rem, 1.6vw, 1.5rem) !important;
  }

  html body[data-page="/precios/"] .pricing-service-secondary {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(0.9rem, 1.3vw, 1.25rem) !important;
    margin-top: clamp(1rem, 1.5vw, 1.4rem) !important;
  }

  html body[data-page="/precios/"] .pricing-service-card.is-primary,
  html body[data-page="/precios/"] .pricing-service-card.is-secondary {
    display: grid !important;
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  html body[data-page="/precios/"] .pricing-service-card.is-primary figure {
    display: block !important;
    height: 245px !important;
    min-height: 245px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(241, 193, 95, 0.16) !important;
  }

  html body[data-page="/precios/"] .pricing-service-card.is-secondary figure {
    display: block !important;
    height: 160px !important;
    min-height: 160px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(241, 193, 95, 0.16) !important;
  }

  html body[data-page="/precios/"] .pricing-service-card figure img,
  html body[data-page="/precios/"] .pricing-route-card-v2 figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  html body[data-page="/precios/"] .pricing-service-body,
  html body[data-page="/precios/"] .pricing-service-card.is-secondary > div {
    display: block !important;
    padding: clamp(1.1rem, 1.7vw, 1.55rem) !important;
  }

  html body[data-page="/precios/"] .pricing-service-card h3 {
    line-height: 1 !important;
  }

  html body[data-page="/precios/"] .pricing-compare-layout {
    display: grid !important;
    grid-template-columns: minmax(330px, 0.34fr) minmax(0, 0.66fr) !important;
    gap: clamp(2rem, 4vw, 4.5rem) !important;
    align-items: center !important;
  }

  html body[data-page="/precios/"] .pricing-compare-copy h2 {
    max-width: 11ch !important;
    font-size: clamp(3.9rem, 5vw, 6.2rem) !important;
    line-height: 0.93 !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-head,
  html body[data-page="/precios/"] .pricing-compare-table-row {
    display: grid !important;
    grid-template-columns: minmax(220px, 0.34fr) minmax(0, 0.33fr) minmax(0, 0.33fr) !important;
  }

  html body[data-page="/precios/"] .pricing-route-section .pricing-section-heading {
    text-align: center !important;
  }

  html body[data-page="/precios/"] .pricing-route-section .pricing-section-heading h2,
  html body[data-page="/precios/"] .pricing-route-section .pricing-section-heading .lead {
    max-width: 920px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  html body[data-page="/precios/"] .pricing-route-grid-v2 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: clamp(1rem, 1.6vw, 1.5rem) !important;
  }

  html body[data-page="/precios/"] .pricing-route-card-v2 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto 1fr !important;
    min-height: 520px !important;
  }

  html body[data-page="/precios/"] .pricing-route-card-v2 figure {
    display: block !important;
    height: 245px !important;
    min-height: 245px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(241, 193, 95, 0.16) !important;
  }

  html body[data-page="/precios/"] .pricing-route-card-v2 > div {
    display: grid !important;
    align-content: start !important;
    padding: clamp(1.4rem, 2vw, 2rem) !important;
  }

  html body[data-page="/precios/"] .pricing-route-card-v2 .card-link {
    align-self: end !important;
    width: 100% !important;
    justify-content: center !important;
  }

  html body[data-page="/precios/"] .pricing-faq-layout {
    display: grid !important;
    grid-template-columns: minmax(320px, 0.34fr) minmax(0, 0.66fr) !important;
    gap: clamp(2rem, 4vw, 4.5rem) !important;
    align-items: start !important;
  }

  html body[data-page="/precios/"] .pricing-faq-layout > div .pricing-section-heading {
    width: 100% !important;
    max-width: 100% !important;
  }

  html body[data-page="/precios/"] .pricing-faq-section .faq-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.85rem !important;
  }

  html body[data-page="/precios/"] .pricing-final-cta {
    width: calc(100% - 40px) !important;
    max-width: 1560px !important;
    min-height: 760px !important;
    margin: 1.5rem auto clamp(3rem, 6vw, 5.5rem) !important;
    border: 1px solid rgba(241, 193, 95, 0.32) !important;
    border-radius: 18px !important;
  }

  html body[data-page="/precios/"] .pricing-final-cta .internal-final-media::after {
    background:
      linear-gradient(90deg, rgba(2, 5, 5, 0.91) 0%, rgba(2, 5, 5, 0.74) 42%, rgba(2, 5, 5, 0.25) 72%, rgba(2, 5, 5, 0.45) 100%),
      radial-gradient(circle at 88% 10%, rgba(241, 193, 95, 0.24), transparent 26rem) !important;
  }

  html body[data-page="/precios/"] .pricing-final-shell {
    display: flex !important;
    min-height: 760px !important;
    align-items: center !important;
  }

  html body[data-page="/precios/"] .pricing-final-copy {
    max-width: 660px !important;
    padding: clamp(3rem, 5vw, 5rem) 0 !important;
  }

  html body[data-page="/precios/"] .pricing-final-copy h2 {
    font-size: clamp(4.4rem, 6.2vw, 7.4rem) !important;
    line-height: 0.88 !important;
  }
}

@media (max-width: 979px) {
  html body[data-page="/precios/"] {
    --pricing-shell-v482: min(100% - 32px, 720px) !important;
  }

  html body[data-page="/precios/"] .pricing-hero.hero-immersive {
    display: grid !important;
    grid-template-columns: 1fr !important;
    min-height: auto !important;
    padding: 7rem 16px 3.5rem !important;
  }

  html body[data-page="/precios/"] .pricing-hero .internal-hero-media::after {
    background:
      linear-gradient(180deg, rgba(2, 5, 5, 0.74), rgba(2, 5, 5, 0.92) 52%, rgba(2, 5, 5, 0.98)),
      linear-gradient(90deg, rgba(2, 5, 5, 0.82), rgba(2, 5, 5, 0.35)) !important;
  }

  html body[data-page="/precios/"] .pricing-hero .hero-copy,
  html body[data-page="/precios/"] .pricing-hero .hero-panel {
    width: var(--pricing-shell-v482) !important;
    max-width: var(--pricing-shell-v482) !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  html body[data-page="/precios/"] .pricing-hero .hero-copy h1 {
    max-width: 8.7ch !important;
    font-size: clamp(3.5rem, 16vw, 5.4rem) !important;
    line-height: 0.88 !important;
  }

  html body[data-page="/precios/"] .pricing-hero .cta-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.8rem !important;
  }

  html body[data-page="/precios/"] .pricing-hero .button {
    width: 100% !important;
    min-height: 54px !important;
    justify-content: center !important;
  }

  html body[data-page="/precios/"] .pricing-hero .hero-panel {
    margin-top: 1.2rem !important;
  }

  html body[data-page="/precios/"] .pricing-command-panel {
    min-height: 0 !important;
    padding: 1.15rem !important;
  }

  html body[data-page="/precios/"] .pricing-command-list article {
    grid-template-columns: 44px minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: 0.9rem 0 !important;
  }

  html body[data-page="/precios/"] .pricing-command-mark {
    width: 44px !important;
    height: 44px !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid,
  html body[data-page="/precios/"] .pricing-compare-layout,
  html body[data-page="/precios/"] .pricing-faq-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.4rem !important;
  }

  html body[data-page="/precios/"] .pricing-section-heading,
  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading {
    display: block !important;
    text-align: left !important;
  }

  html body[data-page="/precios/"] .pricing-section-heading h2,
  html body[data-page="/precios/"] .pricing-editorial-grid h2,
  html body[data-page="/precios/"] .pricing-compare-copy h2 {
    max-width: 11ch !important;
    font-size: clamp(2.9rem, 13vw, 4.6rem) !important;
    line-height: 0.94 !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child,
  html body[data-page="/precios/"] .pricing-rule-list,
  html body[data-page="/precios/"] .pricing-process-track,
  html body[data-page="/precios/"] .pricing-service-main,
  html body[data-page="/precios/"] .pricing-service-secondary,
  html body[data-page="/precios/"] .pricing-route-grid-v2 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }

  html body[data-page="/precios/"] .pricing-rule-list article {
    grid-template-columns: 48px minmax(0, 1fr) auto !important;
    min-height: 0 !important;
    padding: 1rem 0 !important;
  }

  html body[data-page="/precios/"] .pricing-proposal-card {
    min-height: 0 !important;
    padding: 1.35rem !important;
  }

  html body[data-page="/precios/"] .pricing-process-track::before {
    display: none !important;
  }

  html body[data-page="/precios/"] .pricing-process-step,
  html body[data-page="/precios/"] .pricing-service-card,
  html body[data-page="/precios/"] .pricing-route-card-v2 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  html body[data-page="/precios/"] .pricing-service-card figure,
  html body[data-page="/precios/"] .pricing-route-card-v2 figure {
    display: block !important;
    height: clamp(180px, 55vw, 260px) !important;
    min-height: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(241, 193, 95, 0.16) !important;
  }

  html body[data-page="/precios/"] .pricing-service-card figure img,
  html body[data-page="/precios/"] .pricing-route-card-v2 figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  html body[data-page="/precios/"] .pricing-service-body,
  html body[data-page="/precios/"] .pricing-service-card.is-secondary > div,
  html body[data-page="/precios/"] .pricing-route-card-v2 > div {
    padding: 1.25rem !important;
  }

  html body[data-page="/precios/"] .pricing-service-actions,
  html body[data-page="/precios/"] .pricing-final-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }

  html body[data-page="/precios/"] .pricing-service-actions a,
  html body[data-page="/precios/"] .pricing-route-card-v2 .card-link,
  html body[data-page="/precios/"] .pricing-final-actions .button {
    width: 100% !important;
    min-height: 52px !important;
    justify-content: center !important;
  }

  html body[data-page="/precios/"] .pricing-compare-board {
    overflow: hidden !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-head {
    display: none !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 1rem !important;
    border-bottom: 1px solid rgba(241, 193, 95, 0.18) !important;
  }

  html body[data-page="/precios/"] .pricing-compare-cell {
    padding: 0.9rem 0 0 !important;
  }

  html body[data-page="/precios/"] .pricing-final-cta {
    width: calc(100% - 24px) !important;
    margin: 1.5rem auto 3rem !important;
    border-radius: 16px !important;
  }

  html body[data-page="/precios/"] .pricing-final-shell {
    display: block !important;
    min-height: 0 !important;
    padding: 4rem 0 !important;
  }

  html body[data-page="/precios/"] .pricing-final-copy h2 {
    font-size: clamp(3.1rem, 13vw, 5rem) !important;
    line-height: 0.9 !important;
  }

  html body[data-page="/precios/"] .pricing-final-notes {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }
}

/* V4.80 pricing reference contract: desktop follows the supplied horizontal mockups. */
html body[data-page="/precios/"] {
  --pricing-shell: min(1320px, calc(100% - clamp(40px, 7vw, 128px))) !important;
}

html body[data-page="/precios/"] .pricing-editorial-section,
html body[data-page="/precios/"] .pricing-range-section,
html body[data-page="/precios/"] .pricing-index-section,
html body[data-page="/precios/"] .pricing-compare-section,
html body[data-page="/precios/"] .pricing-route-section,
html body[data-page="/precios/"] .pricing-faq-section {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding: clamp(4.5rem, 7vw, 7rem) 0 !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid,
html body[data-page="/precios/"] .pricing-process-track,
html body[data-page="/precios/"] .pricing-service-index,
html body[data-page="/precios/"] .pricing-compare-layout,
html body[data-page="/precios/"] .pricing-route-grid-v2,
html body[data-page="/precios/"] .pricing-faq-layout,
html body[data-page="/precios/"] .pricing-section-heading {
  width: var(--pricing-shell) !important;
  max-width: var(--pricing-shell) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}

html body[data-page="/precios/"] .pricing-section-heading {
  display: block !important;
  margin-bottom: clamp(1.8rem, 3vw, 3.2rem) !important;
  text-align: left !important;
}

html body[data-page="/precios/"] .pricing-section-heading h2 {
  max-width: 14ch !important;
  font-size: clamp(3.6rem, 5vw, 6.3rem) !important;
  line-height: 0.92 !important;
}

html body[data-page="/precios/"] .pricing-section-heading .lead {
  max-width: 64ch !important;
  margin-top: 1rem !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.58fr) minmax(360px, 0.42fr) !important;
  gap: clamp(2.2rem, 5vw, 5.5rem) !important;
  align-items: center !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child {
  display: block !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .eyebrow,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > h2,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .lead,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .pricing-rule-list {
  grid-column: auto !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid h2 {
  max-width: 12ch !important;
  font-size: clamp(4.2rem, 5.6vw, 7rem) !important;
  line-height: 0.9 !important;
}

html body[data-page="/precios/"] .pricing-rule-list {
  display: grid !important;
  gap: 0 !important;
  margin-top: clamp(1.8rem, 3vw, 3rem) !important;
}

html body[data-page="/precios/"] .pricing-rule-list article {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) auto !important;
  min-height: 96px !important;
  align-items: center !important;
  padding: 1rem 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(240, 189, 85, 0.18) !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body[data-page="/precios/"] .pricing-proposal-card {
  min-height: 560px !important;
  padding: clamp(2rem, 3vw, 3.2rem) !important;
}

html body[data-page="/precios/"] .pricing-proposal-card h3 {
  max-width: 12ch !important;
  font-size: clamp(2.3rem, 3.2vw, 4rem) !important;
}

html body[data-page="/precios/"] .pricing-range-section .pricing-section-heading {
  max-width: var(--pricing-shell) !important;
}

html body[data-page="/precios/"] .pricing-process-track {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(1.2rem, 2vw, 2rem) !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-process-track::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 86px !important;
  left: 9% !important;
  right: 9% !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(240, 189, 85, 0.58), transparent) !important;
}

html body[data-page="/precios/"] .pricing-process-step {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: auto auto auto 1fr !important;
  justify-items: center !important;
  text-align: center !important;
  min-height: 360px !important;
  padding: clamp(1.7rem, 2.4vw, 2.5rem) clamp(1.2rem, 2vw, 2rem) !important;
}

html body[data-page="/precios/"] .pricing-process-step .pricing-range-top,
html body[data-page="/precios/"] .pricing-process-step small,
html body[data-page="/precios/"] .pricing-process-step h3,
html body[data-page="/precios/"] .pricing-process-step p {
  grid-column: auto !important;
  grid-row: auto !important;
}

html body[data-page="/precios/"] .pricing-process-step .pricing-range-top {
  display: grid !important;
  justify-content: center !important;
}

html body[data-page="/precios/"] .pricing-range-mark {
  width: 72px !important;
  height: 72px !important;
}

html body[data-page="/precios/"] .pricing-process-step h3 {
  max-width: 11ch !important;
  font-size: clamp(1.9rem, 2.25vw, 2.85rem) !important;
  line-height: 0.96 !important;
}

html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.38fr) minmax(0, 0.62fr) !important;
  gap: 1rem clamp(1.8rem, 4vw, 4rem) !important;
  align-items: end !important;
}

html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading .eyebrow {
  grid-column: 1 / -1 !important;
}

html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading h2 {
  grid-column: 1 !important;
  max-width: 11ch !important;
}

html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading .lead {
  grid-column: 2 !important;
  margin: 0 !important;
}

html body[data-page="/precios/"] .pricing-service-main {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(1rem, 1.6vw, 1.5rem) !important;
}

html body[data-page="/precios/"] .pricing-service-secondary {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(0.9rem, 1.3vw, 1.25rem) !important;
  margin-top: clamp(1rem, 1.5vw, 1.4rem) !important;
}

html body[data-page="/precios/"] .pricing-service-card.is-primary,
html body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card {
  display: grid !important;
  grid-template-columns: 1fr !important;
  min-height: 0 !important;
}

html body[data-page="/precios/"] .pricing-service-card.is-primary figure {
  height: 245px !important;
  min-height: 245px !important;
  border-right: 0 !important;
  border-bottom: 1px solid rgba(240, 189, 85, 0.16) !important;
}

html body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card figure {
  display: block !important;
  height: 160px !important;
  min-height: 160px !important;
  border-right: 0 !important;
  border-bottom: 1px solid rgba(240, 189, 85, 0.16) !important;
}

html body[data-page="/precios/"] .pricing-service-body,
html body[data-page="/precios/"] .pricing-service-card.is-secondary > div {
  display: block !important;
  padding: clamp(1.1rem, 1.7vw, 1.55rem) !important;
}

html body[data-page="/precios/"] .pricing-service-card h3 {
  max-width: 100% !important;
}

html body[data-page="/precios/"] .pricing-compare-layout {
  display: grid !important;
  grid-template-columns: minmax(330px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(2rem, 4vw, 4.5rem) !important;
  align-items: center !important;
}

html body[data-page="/precios/"] .pricing-compare-copy {
  position: static !important;
  max-width: none !important;
}

html body[data-page="/precios/"] .pricing-compare-table-head,
html body[data-page="/precios/"] .pricing-compare-table-row {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 0.33fr) minmax(0, 0.33fr) !important;
}

html body[data-page="/precios/"] .pricing-route-section .pricing-section-heading {
  text-align: center !important;
}

html body[data-page="/precios/"] .pricing-route-section .pricing-section-heading h2,
html body[data-page="/precios/"] .pricing-route-section .pricing-section-heading .lead {
  max-width: 920px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

html body[data-page="/precios/"] .pricing-route-grid-v2 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(1rem, 1.6vw, 1.5rem) !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  min-height: 520px !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 figure {
  height: 245px !important;
  min-height: 245px !important;
  border-right: 0 !important;
  border-bottom: 1px solid rgba(240, 189, 85, 0.16) !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 .card-link,
html body[data-page="/precios/"] .pricing-service-actions .card-link,
html body[data-page="/precios/"] .pricing-service-link {
  width: auto !important;
}

html body[data-page="/precios/"] .pricing-faq-layout {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(2rem, 4vw, 4.5rem) !important;
  align-items: start !important;
}

html body[data-page="/precios/"] .pricing-faq-layout > div .pricing-section-heading {
  width: 100% !important;
  max-width: 100% !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.85rem !important;
}

@media (max-width: 979px) {
  html body[data-page="/precios/"] {
    --pricing-shell: min(100% - 24px, 760px) !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid,
  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading,
  html body[data-page="/precios/"] .pricing-compare-layout,
  html body[data-page="/precios/"] .pricing-faq-layout {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading h2,
  html body[data-page="/precios/"] .pricing-index-section .pricing-section-heading .lead {
    grid-column: 1 !important;
  }

  html body[data-page="/precios/"] .pricing-process-track,
  html body[data-page="/precios/"] .pricing-service-main,
  html body[data-page="/precios/"] .pricing-service-secondary,
  html body[data-page="/precios/"] .pricing-route-grid-v2 {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-process-track::before {
    display: none !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-head {
    display: none !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-row {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-route-card-v2 {
    min-height: 0 !important;
  }
}

/* V4.81 pricing final panoramic pass: last-rule lock for everything after the hero. */
html body[data-page="/precios/"] {
  --pricing-max: min(100% - clamp(36px, 5vw, 104px), 1540px) !important;
  --pricing-gap: clamp(0.9rem, 1.25vw, 1.35rem) !important;
  --pricing-section-y: clamp(3.25rem, 4.55vw, 5rem) !important;
  overflow-x: clip !important;
}

html body[data-page="/precios/"] .pricing-editorial-section,
html body[data-page="/precios/"] .pricing-range-section,
html body[data-page="/precios/"] .pricing-index-section,
html body[data-page="/precios/"] .pricing-compare-section,
html body[data-page="/precios/"] .pricing-route-section,
html body[data-page="/precios/"] .pricing-faq-section,
html body[data-page="/precios/"] .pricing-final-cta {
  width: var(--pricing-max) !important;
  max-width: var(--pricing-max) !important;
  margin-inline: auto !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

html body[data-page="/precios/"] .pricing-editorial-section,
html body[data-page="/precios/"] .pricing-range-section,
html body[data-page="/precios/"] .pricing-index-section,
html body[data-page="/precios/"] .pricing-compare-section,
html body[data-page="/precios/"] .pricing-route-section,
html body[data-page="/precios/"] .pricing-faq-section {
  padding: var(--pricing-section-y) 0 !important;
}

html body[data-page="/precios/"] .pricing-editorial-section *,
html body[data-page="/precios/"] .pricing-range-section *,
html body[data-page="/precios/"] .pricing-index-section *,
html body[data-page="/precios/"] .pricing-compare-section *,
html body[data-page="/precios/"] .pricing-route-section *,
html body[data-page="/precios/"] .pricing-faq-section *,
html body[data-page="/precios/"] .pricing-final-cta * {
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow-wrap: normal !important;
}

html body[data-page="/precios/"] .pricing-section-heading {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.36fr) minmax(0, 0.64fr) !important;
  column-gap: clamp(1.5rem, 3vw, 3.2rem) !important;
  row-gap: 0.75rem !important;
  align-items: end !important;
  max-width: none !important;
  margin: 0 0 clamp(1.2rem, 1.9vw, 1.8rem) !important;
  text-align: left !important;
}

html body[data-page="/precios/"] .pricing-section-heading .eyebrow {
  grid-column: 1 / -1 !important;
}

html body[data-page="/precios/"] .pricing-section-heading h2,
html body[data-page="/precios/"] .pricing-editorial-section h2,
html body[data-page="/precios/"] .pricing-compare-copy h2,
html body[data-page="/precios/"] .pricing-faq-aside h2,
html body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 13.5ch !important;
  margin: 0 !important;
  font-size: clamp(2.35rem, 3.25vw, 4.2rem) !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
}

html body[data-page="/precios/"] .pricing-section-heading .lead,
html body[data-page="/precios/"] .pricing-editorial-section .lead,
html body[data-page="/precios/"] .pricing-compare-copy .lead,
html body[data-page="/precios/"] .pricing-faq-section .lead,
html body[data-page="/precios/"] .pricing-final-copy .lead {
  max-width: 72ch !important;
  margin: 0 !important;
  color: rgba(255, 248, 238, 0.72) !important;
  line-height: 1.62 !important;
}

html body[data-page="/precios/"] .pricing-process-step:hover,
html body[data-page="/precios/"] .pricing-service-card:hover,
html body[data-page="/precios/"] .pricing-route-card-v2:hover,
html body[data-page="/precios/"] .pricing-compare-table-row:hover,
html body[data-page="/precios/"] .pricing-rule-list article:hover,
html body[data-page="/precios/"] .pricing-proposal-card article:hover,
html body[data-page="/precios/"] .page-shell .button:hover,
html body[data-page="/precios/"] .card-link:hover,
html body[data-page="/precios/"] .pricing-service-link:hover {
  transform: none !important;
}

html body[data-page="/precios/"] .page-shell .button,
html body[data-page="/precios/"] .card-link,
html body[data-page="/precios/"] .pricing-service-link {
  min-height: 42px !important;
  max-width: 100% !important;
  padding: 0.78rem 1rem !important;
  border-radius: 999px !important;
  white-space: normal !important;
  text-align: center !important;
  line-height: 1.1 !important;
}

html body[data-page="/precios/"] .page-shell .button:hover,
html body[data-page="/precios/"] .card-link:hover,
html body[data-page="/precios/"] .pricing-service-link:hover {
  border-color: rgba(242, 193, 92, 0.78) !important;
  box-shadow: 0 0 0 1px rgba(242, 193, 92, 0.16), 0 12px 28px rgba(0, 0, 0, 0.26) !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.38fr) !important;
  gap: clamp(1.2rem, 2.2vw, 2.3rem) !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.42fr) minmax(0, 0.58fr) !important;
  column-gap: clamp(1.4rem, 3vw, 3rem) !important;
  row-gap: 0.9rem !important;
  align-content: start !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .eyebrow,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child h2 {
  grid-column: 1 !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .lead,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .pricing-rule-list {
  grid-column: 2 !important;
}

html body[data-page="/precios/"] .pricing-rule-list {
  display: grid !important;
  gap: 0.65rem !important;
  margin: 0 !important;
}

html body[data-page="/precios/"] .pricing-rule-list article,
html body[data-page="/precios/"] .pricing-proposal-card article {
  min-height: 72px !important;
  grid-template-columns: 42px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 0.72rem !important;
  padding: 0.78rem 0.85rem !important;
}

html body[data-page="/precios/"] .pricing-proposal-card {
  padding: clamp(1rem, 1.4vw, 1.35rem) !important;
}

html body[data-page="/precios/"] .pricing-proposal-card h3 {
  max-width: 100% !important;
  font-size: clamp(1.25rem, 1.45vw, 1.7rem) !important;
}

html body[data-page="/precios/"] .pricing-icon-badge,
html body[data-page="/precios/"] .pricing-command-mark,
html body[data-page="/precios/"] .pricing-rule-logo,
html body[data-page="/precios/"] .pricing-range-mark,
html body[data-page="/precios/"] .pricing-compare-icon,
html body[data-page="/precios/"] .pricing-compare-badge,
html body[data-page="/precios/"] .pricing-faq-logo {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  border-radius: 10px !important;
}

html body[data-page="/precios/"] .pricing-process-track {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-process-track::before {
  content: "" !important;
  position: absolute !important;
  left: 4.2rem !important;
  right: 4.2rem !important;
  top: 2rem !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(242, 193, 92, 0.42), transparent) !important;
  pointer-events: none !important;
}

html body[data-page="/precios/"] .pricing-process-step {
  position: relative !important;
  min-height: 172px !important;
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  grid-template-rows: auto auto 1fr !important;
  gap: 0.42rem 0.78rem !important;
  align-content: start !important;
  padding: clamp(0.95rem, 1.25vw, 1.2rem) !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-process-step .pricing-range-top {
  grid-column: 1 !important;
  grid-row: 1 / span 3 !important;
  align-self: start !important;
  display: block !important;
}

html body[data-page="/precios/"] .pricing-process-step .pricing-range-signal {
  display: none !important;
}

html body[data-page="/precios/"] .pricing-process-step small,
html body[data-page="/precios/"] .pricing-process-step h3,
html body[data-page="/precios/"] .pricing-process-step p {
  grid-column: 2 !important;
}

html body[data-page="/precios/"] .pricing-process-step h3 {
  max-width: 15ch !important;
  font-size: clamp(1.14rem, 1.25vw, 1.45rem) !important;
}

html body[data-page="/precios/"] .pricing-process-step p {
  font-size: clamp(0.9rem, 0.84vw, 0.98rem) !important;
  line-height: 1.48 !important;
}

html body[data-page="/precios/"] .pricing-service-index {
  display: grid !important;
  gap: var(--pricing-gap) !important;
}

html body[data-page="/precios/"] .pricing-service-main {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: var(--pricing-gap) !important;
}

html body[data-page="/precios/"] .pricing-service-secondary {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
}

html body[data-page="/precios/"] .pricing-service-card,
html body[data-page="/precios/"] .pricing-service-card.is-primary,
html body[data-page="/precios/"] .pricing-service-card.is-secondary {
  height: auto !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(280px, 0.38fr) minmax(0, 0.62fr) !important;
  align-items: stretch !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-service-main .pricing-service-card {
  grid-template-columns: minmax(380px, 0.42fr) minmax(0, 0.58fr) !important;
  min-height: 236px !important;
}

html body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card {
  min-height: 188px !important;
}

html body[data-page="/precios/"] .pricing-service-card figure {
  width: 100% !important;
  height: 100% !important;
  min-height: 188px !important;
  margin: 0 !important;
  display: block !important;
  border-right: 1px solid rgba(242, 193, 92, 0.13) !important;
  border-bottom: 0 !important;
}

html body[data-page="/precios/"] .pricing-service-main .pricing-service-card figure {
  min-height: 236px !important;
}

html body[data-page="/precios/"] .pricing-service-card figure img {
  width: 100% !important;
  height: 100% !important;
  min-height: inherit !important;
  object-fit: cover !important;
}

html body[data-page="/precios/"] .pricing-service-card:hover figure img,
html body[data-page="/precios/"] .pricing-route-card-v2:hover figure img {
  transform: scale(1.018) !important;
}

html body[data-page="/precios/"] .pricing-service-body,
html body[data-page="/precios/"] .pricing-service-card.is-secondary > div {
  min-height: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  grid-template-rows: auto auto 1fr auto !important;
  gap: 0.42rem 0.86rem !important;
  align-content: center !important;
  padding: clamp(1rem, 1.45vw, 1.35rem) !important;
}

html body[data-page="/precios/"] .pricing-service-body .pricing-icon-badge,
html body[data-page="/precios/"] .pricing-service-card.is-secondary > div .pricing-icon-badge {
  grid-column: 1 !important;
  grid-row: 1 / span 4 !important;
}

html body[data-page="/precios/"] .pricing-service-card .card-kicker,
html body[data-page="/precios/"] .pricing-service-card h3,
html body[data-page="/precios/"] .pricing-service-card p,
html body[data-page="/precios/"] .pricing-service-card .pricing-service-actions {
  grid-column: 2 !important;
}

html body[data-page="/precios/"] .pricing-service-card h3 {
  max-width: 22ch !important;
  font-size: clamp(1.18rem, 1.6vw, 2rem) !important;
  line-height: 1.05 !important;
}

html body[data-page="/precios/"] .pricing-service-card p {
  max-width: 60ch !important;
  font-size: clamp(0.9rem, 0.86vw, 1rem) !important;
  line-height: 1.48 !important;
}

html body[data-page="/precios/"] .pricing-service-actions {
  align-self: end !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.55rem !important;
  margin: 0 !important;
  padding-top: 0.55rem !important;
}

html body[data-page="/precios/"] .pricing-compare-layout {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(1.4rem, 2.6vw, 2.8rem) !important;
  align-items: start !important;
}

html body[data-page="/precios/"] .pricing-compare-copy {
  position: sticky !important;
  top: 98px !important;
}

html body[data-page="/precios/"] .pricing-compare-copy h2 {
  max-width: 12ch !important;
}

html body[data-page="/precios/"] .pricing-compare-board {
  padding: clamp(1rem, 1.45vw, 1.35rem) !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-compare-table-head,
html body[data-page="/precios/"] .pricing-compare-table-row {
  display: grid !important;
  grid-template-columns: minmax(180px, 0.28fr) minmax(0, 0.36fr) minmax(0, 0.36fr) !important;
  gap: 0.62rem !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-compare-table-row {
  min-height: 112px !important;
  margin-top: 0.6rem !important;
  padding: 0.62rem !important;
  border: 1px solid rgba(242, 193, 92, 0.13) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.025) !important;
}

html body[data-page="/precios/"] .pricing-compare-criterion,
html body[data-page="/precios/"] .pricing-compare-cell {
  min-height: 88px !important;
  display: grid !important;
  align-content: center !important;
  padding: clamp(0.72rem, 1vw, 0.95rem) !important;
  border-radius: 6px !important;
}

html body[data-page="/precios/"] .pricing-compare-criterion {
  grid-template-columns: 42px minmax(0, 1fr) !important;
  gap: 0.7rem !important;
  align-items: center !important;
  background: rgba(242, 193, 92, 0.045) !important;
}

html body[data-page="/precios/"] .pricing-compare-criterion h3,
html body[data-page="/precios/"] .pricing-compare-criterion p,
html body[data-page="/precios/"] .pricing-compare-cell p {
  margin: 0 !important;
  line-height: 1.45 !important;
}

html body[data-page="/precios/"] .pricing-compare-footer {
  display: grid !important;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr) !important;
  gap: 0.75rem !important;
  align-items: center !important;
}

html body[data-page="/precios/"] .pricing-route-grid-v2 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: var(--pricing-gap) !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 {
  height: auto !important;
  min-height: 226px !important;
  display: grid !important;
  grid-template-columns: minmax(360px, 0.42fr) minmax(0, 0.58fr) !important;
  align-items: stretch !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 figure {
  width: 100% !important;
  height: 100% !important;
  min-height: 226px !important;
  margin: 0 !important;
  border-right: 1px solid rgba(242, 193, 92, 0.13) !important;
  border-bottom: 0 !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 figure img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 > div {
  min-height: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-rows: auto auto 1fr auto !important;
  gap: 0.55rem !important;
  align-content: center !important;
  padding: clamp(1.05rem, 1.55vw, 1.5rem) !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 h3 {
  max-width: 24ch !important;
  font-size: clamp(1.35rem, 1.8vw, 2.25rem) !important;
}

html body[data-page="/precios/"] .pricing-faq-layout {
  display: grid !important;
  grid-template-columns: minmax(330px, 0.32fr) minmax(0, 0.68fr) !important;
  gap: clamp(1.2rem, 2.4vw, 2.4rem) !important;
  align-items: start !important;
}

html body[data-page="/precios/"] .pricing-faq-aside {
  position: sticky !important;
  top: 98px !important;
  padding: clamp(1rem, 1.4vw, 1.35rem) !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.72rem !important;
  max-width: none !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list summary {
  min-height: 68px !important;
  padding: 0.9rem 1rem !important;
  font-size: clamp(0.92rem, 0.86vw, 1rem) !important;
  line-height: 1.24 !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list p {
  max-width: none !important;
  padding: 0 1rem 1rem !important;
  font-size: clamp(0.88rem, 0.82vw, 0.96rem) !important;
  line-height: 1.55 !important;
}

html body[data-page="/precios/"] .pricing-final-cta {
  position: relative !important;
  min-height: 360px !important;
  margin: clamp(1rem, 2vw, 2rem) auto clamp(3.4rem, 5vw, 5.6rem) !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 10px !important;
}

html body[data-page="/precios/"] .pricing-final-cta .internal-final-media {
  position: absolute !important;
  inset: 0 !important;
  opacity: 1 !important;
}

html body[data-page="/precios/"] .pricing-final-cta .internal-final-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html body[data-page="/precios/"] .pricing-final-cta .internal-final-media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(4, 7, 7, 0.9) 0%, rgba(4, 7, 7, 0.74) 45%, rgba(4, 7, 7, 0.88) 100%),
    radial-gradient(circle at 84% 32%, rgba(242, 193, 92, 0.16), transparent 24rem) !important;
}

html body[data-page="/precios/"] .pricing-final-shell {
  position: relative !important;
  z-index: 1 !important;
  min-height: 360px !important;
  display: grid !important;
  align-items: center !important;
  padding: clamp(2rem, 4vw, 3.8rem) !important;
}

html body[data-page="/precios/"] .pricing-final-copy {
  display: grid !important;
  grid-template-columns: minmax(360px, 0.52fr) minmax(240px, 0.22fr) minmax(260px, 0.26fr) !important;
  column-gap: clamp(1.2rem, 2.4vw, 2.5rem) !important;
  row-gap: 0.9rem !important;
  align-items: center !important;
}

html body[data-page="/precios/"] .pricing-final-copy .eyebrow,
html body[data-page="/precios/"] .pricing-final-copy h2,
html body[data-page="/precios/"] .pricing-final-copy .lead {
  grid-column: 1 !important;
}

html body[data-page="/precios/"] .pricing-final-actions {
  grid-column: 2 !important;
  grid-row: 1 / span 3 !important;
  align-self: center !important;
  justify-content: flex-start !important;
}

html body[data-page="/precios/"] .pricing-final-notes {
  grid-column: 3 !important;
  grid-row: 1 / span 3 !important;
  align-self: center !important;
  display: grid !important;
  gap: 0.65rem !important;
}

html body[data-page="/precios/"] .pricing-final-notes span {
  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr) !important;
  gap: 0.55rem !important;
  align-items: center !important;
  padding: 0.75rem 0.85rem !important;
  border: 1px solid rgba(242, 193, 92, 0.15) !important;
  border-radius: 8px !important;
  background: rgba(4, 7, 7, 0.48) !important;
  color: rgba(255, 248, 238, 0.82) !important;
}

@media (max-width: 1180px) {
  html body[data-page="/precios/"] {
    --pricing-max: min(100% - 40px, 1000px) !important;
  }

  html body[data-page="/precios/"] .pricing-section-heading,
  html body[data-page="/precios/"] .pricing-editorial-grid,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child,
  html body[data-page="/precios/"] .pricing-compare-layout,
  html body[data-page="/precios/"] .pricing-faq-layout,
  html body[data-page="/precios/"] .pricing-final-copy {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .eyebrow,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child h2,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .lead,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child .pricing-rule-list,
  html body[data-page="/precios/"] .pricing-final-copy .eyebrow,
  html body[data-page="/precios/"] .pricing-final-copy h2,
  html body[data-page="/precios/"] .pricing-final-copy .lead,
  html body[data-page="/precios/"] .pricing-final-actions,
  html body[data-page="/precios/"] .pricing-final-notes {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  html body[data-page="/precios/"] .pricing-process-track {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body[data-page="/precios/"] .pricing-process-track::before {
    display: none !important;
  }

  html body[data-page="/precios/"] .pricing-service-secondary,
  html body[data-page="/precios/"] .pricing-faq-section .faq-list {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-compare-copy,
  html body[data-page="/precios/"] .pricing-faq-aside {
    position: static !important;
  }
}

@media (max-width: 760px) {
  html body[data-page="/precios/"] {
    --pricing-max: min(100% - 24px, 100%) !important;
    --pricing-section-y: 3rem !important;
  }

  html body[data-page="/precios/"] .pricing-section-heading h2,
  html body[data-page="/precios/"] .pricing-editorial-section h2,
  html body[data-page="/precios/"] .pricing-compare-copy h2,
  html body[data-page="/precios/"] .pricing-faq-aside h2,
  html body[data-page="/precios/"] .pricing-final-copy h2 {
    max-width: 100% !important;
    font-size: clamp(2.25rem, 10vw, 3.25rem) !important;
  }

  html body[data-page="/precios/"] .pricing-process-track,
  html body[data-page="/precios/"] .pricing-service-main,
  html body[data-page="/precios/"] .pricing-service-secondary,
  html body[data-page="/precios/"] .pricing-route-grid-v2 {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-service-card,
  html body[data-page="/precios/"] .pricing-service-card.is-primary,
  html body[data-page="/precios/"] .pricing-service-card.is-secondary,
  html body[data-page="/precios/"] .pricing-service-main .pricing-service-card,
  html body[data-page="/precios/"] .pricing-route-card-v2 {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  html body[data-page="/precios/"] .pricing-service-card figure,
  html body[data-page="/precios/"] .pricing-service-main .pricing-service-card figure,
  html body[data-page="/precios/"] .pricing-route-card-v2 figure {
    min-height: 190px !important;
    height: 190px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(242, 193, 92, 0.13) !important;
  }

  html body[data-page="/precios/"] .pricing-service-body,
  html body[data-page="/precios/"] .pricing-service-card.is-secondary > div {
    grid-template-columns: 38px minmax(0, 1fr) !important;
    padding: 1rem !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-head {
    display: none !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-row,
  html body[data-page="/precios/"] .pricing-compare-footer {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-final-cta,
  html body[data-page="/precios/"] .pricing-final-shell {
    min-height: 0 !important;
  }

  html body[data-page="/precios/"] .pricing-final-shell {
    padding: 1.35rem !important;
  }

  html body[data-page="/precios/"] .page-shell .button,
  html body[data-page="/precios/"] .card-link,
  html body[data-page="/precios/"] .pricing-service-link {
    width: 100% !important;
  }
}

/* V4.79 pricing final horizontal lock: applied after all legacy pricing layers. */
html body[data-page="/precios/"] {
  --pricing-max: min(100% - clamp(32px, 5.4vw, 104px), 1540px) !important;
  --pricing-gap: clamp(1rem, 1.45vw, 1.45rem) !important;
  --pricing-section-y: clamp(3.2rem, 4.6vw, 5rem) !important;
}

html body[data-page="/precios/"] .pricing-editorial-section,
html body[data-page="/precios/"] .pricing-range-section,
html body[data-page="/precios/"] .pricing-index-section,
html body[data-page="/precios/"] .pricing-compare-section,
html body[data-page="/precios/"] .pricing-route-section,
html body[data-page="/precios/"] .pricing-faq-section {
  width: var(--pricing-max) !important;
  max-width: var(--pricing-max) !important;
  margin-inline: auto !important;
  padding-top: var(--pricing-section-y) !important;
  padding-bottom: var(--pricing-section-y) !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

html body[data-page="/precios/"] .pricing-section-heading,
html body[data-page="/precios/"] .pricing-faq-layout > div .pricing-section-heading {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.42fr) minmax(0, 0.58fr) !important;
  column-gap: clamp(1.5rem, 3vw, 3rem) !important;
  row-gap: 0.8rem !important;
  align-items: end !important;
  max-width: none !important;
  margin: 0 0 clamp(1.1rem, 1.8vw, 1.7rem) !important;
  text-align: left !important;
}

html body[data-page="/precios/"] .pricing-section-heading .eyebrow,
html body[data-page="/precios/"] .pricing-faq-layout > div .pricing-section-heading .eyebrow {
  grid-column: 1 / -1 !important;
}

html body[data-page="/precios/"] .pricing-section-heading h2,
html body[data-page="/precios/"] .pricing-editorial-section h2,
html body[data-page="/precios/"] .pricing-compare-copy h2,
html body[data-page="/precios/"] .pricing-faq-heading h2,
html body[data-page="/precios/"] .pricing-faq-aside h2,
html body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 13ch !important;
  font-size: clamp(2.35rem, 3.35vw, 4.45rem) !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
}

html body[data-page="/precios/"] .pricing-section-heading .lead,
html body[data-page="/precios/"] .pricing-editorial-section .lead,
html body[data-page="/precios/"] .pricing-compare-copy .lead,
html body[data-page="/precios/"] .pricing-faq-heading .lead {
  max-width: 68ch !important;
  margin: 0 !important;
  font-size: clamp(0.95rem, 1vw, 1.06rem) !important;
  line-height: 1.62 !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.36fr) !important;
  gap: clamp(1.4rem, 2.4vw, 2.6rem) !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.48fr) minmax(0, 0.52fr) !important;
  gap: 1rem clamp(1.4rem, 2.6vw, 2.6rem) !important;
  align-content: center !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .eyebrow {
  grid-column: 1 / -1 !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > h2 {
  grid-column: 1 !important;
  max-width: 11ch !important;
}

html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .lead,
html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .pricing-rule-list {
  grid-column: 2 !important;
}

html body[data-page="/precios/"] .pricing-rule-list {
  margin-top: 0 !important;
}

html body[data-page="/precios/"] .pricing-rule-list article {
  min-height: 74px !important;
  padding: 0.62rem 0 !important;
}

html body[data-page="/precios/"] .pricing-proposal-card {
  min-height: 0 !important;
  padding: clamp(1.15rem, 1.7vw, 1.55rem) !important;
}

html body[data-page="/precios/"] .pricing-proposal-card h3,
html body[data-page="/precios/"] .pricing-command-head h3 {
  max-width: 100% !important;
  font-size: clamp(1.45rem, 1.7vw, 2rem) !important;
}

html body[data-page="/precios/"] .pricing-proposal-card > div {
  margin-top: 0.9rem !important;
}

html body[data-page="/precios/"] .pricing-proposal-card article {
  min-height: 72px !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  padding: 0.65rem 0 !important;
}

html body[data-page="/precios/"] .pricing-process-track {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
  margin-top: 0 !important;
}

html body[data-page="/precios/"] .pricing-process-track::before,
html body[data-page="/precios/"] .pricing-range-signal {
  display: none !important;
}

html body[data-page="/precios/"] .pricing-process-step {
  min-height: 168px !important;
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  grid-template-rows: auto auto 1fr !important;
  column-gap: 0.9rem !important;
  row-gap: 0.28rem !important;
  justify-items: start !important;
  align-items: start !important;
  text-align: left !important;
  padding: clamp(0.95rem, 1.35vw, 1.25rem) !important;
}

html body[data-page="/precios/"] .pricing-process-step .pricing-range-top {
  grid-column: 1 !important;
  grid-row: 1 / span 3 !important;
  justify-content: flex-start !important;
}

html body[data-page="/precios/"] .pricing-process-step small,
html body[data-page="/precios/"] .pricing-process-step h3,
html body[data-page="/precios/"] .pricing-process-step p {
  grid-column: 2 !important;
}

html body[data-page="/precios/"] .pricing-process-step h3 {
  max-width: 13ch !important;
  font-size: clamp(1.22rem, 1.38vw, 1.62rem) !important;
}

html body[data-page="/precios/"] .pricing-process-step h3::after {
  margin: 0.56rem 0 0 !important;
}

html body[data-page="/precios/"] .pricing-process-step p,
html body[data-page="/precios/"] .pricing-service-card p,
html body[data-page="/precios/"] .pricing-route-card-v2 p,
html body[data-page="/precios/"] .pricing-compare-table-row p,
html body[data-page="/precios/"] .pricing-faq-section p {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

html body[data-page="/precios/"] .pricing-service-main,
html body[data-page="/precios/"] .pricing-service-secondary {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: var(--pricing-gap) !important;
}

html body[data-page="/precios/"] .pricing-service-card.is-primary,
html body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.42fr) minmax(0, 0.58fr) !important;
  min-height: 236px !important;
  height: auto !important;
}

html body[data-page="/precios/"] .pricing-service-card.is-primary figure,
html body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card figure {
  height: 100% !important;
  min-height: 236px !important;
  border-right: 1px solid rgba(240, 189, 85, 0.16) !important;
  border-bottom: 0 !important;
}

html body[data-page="/precios/"] .pricing-service-body,
html body[data-page="/precios/"] .pricing-service-card.is-secondary > div {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: clamp(1rem, 1.45vw, 1.35rem) !important;
  gap: 0.52rem !important;
}

html body[data-page="/precios/"] .pricing-service-card h3,
html body[data-page="/precios/"] .pricing-route-card-v2 h3 {
  max-width: 18ch !important;
  font-size: clamp(1.35rem, 1.85vw, 2.15rem) !important;
}

html body[data-page="/precios/"] .pricing-service-actions {
  gap: 0.5rem !important;
  padding-top: 0.5rem !important;
}

html body[data-page="/precios/"] .pricing-service-card .card-link,
html body[data-page="/precios/"] .pricing-service-link {
  width: auto !important;
  min-height: 40px !important;
  padding: 0.7rem 0.82rem !important;
  font-size: 0.78rem !important;
}

html body[data-page="/precios/"] .pricing-compare-layout {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(1.5rem, 2.8vw, 3rem) !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-compare-copy {
  position: static !important;
  align-self: center !important;
  max-width: none !important;
}

html body[data-page="/precios/"] .pricing-compare-board {
  min-width: 0 !important;
  overflow: hidden !important;
}

html body[data-page="/precios/"] .pricing-compare-table-head,
html body[data-page="/precios/"] .pricing-compare-table-row {
  display: grid !important;
  grid-template-columns: minmax(190px, 0.34fr) minmax(0, 0.33fr) minmax(0, 0.33fr) !important;
}

html body[data-page="/precios/"] .pricing-compare-table-head span {
  min-height: 56px !important;
  padding: 0.72rem !important;
  font-size: 0.72rem !important;
}

html body[data-page="/precios/"] .pricing-compare-table-row > div {
  min-height: 112px !important;
  min-width: 0 !important;
  padding: clamp(0.82rem, 1.15vw, 1.1rem) !important;
}

html body[data-page="/precios/"] .pricing-compare-criterion {
  gap: 0.78rem !important;
}

html body[data-page="/precios/"] .pricing-compare-criterion .pricing-compare-icon {
  width: 50px !important;
  height: 50px !important;
  min-width: 50px !important;
}

html body[data-page="/precios/"] .pricing-compare-criterion h3 {
  font-size: 0.82rem !important;
}

html body[data-page="/precios/"] .pricing-compare-table-row p {
  font-size: clamp(0.82rem, 0.86vw, 0.94rem) !important;
  line-height: 1.45 !important;
}

html body[data-page="/precios/"] .pricing-route-grid-v2 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: var(--pricing-gap) !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.42fr) minmax(0, 0.58fr) !important;
  min-height: 236px !important;
  height: auto !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 figure {
  height: 100% !important;
  min-height: 236px !important;
  border-right: 1px solid rgba(240, 189, 85, 0.16) !important;
  border-bottom: 0 !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 > div {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: clamp(1rem, 1.45vw, 1.35rem) !important;
}

html body[data-page="/precios/"] .pricing-route-card-v2 .card-link {
  width: max-content !important;
  max-width: 100% !important;
}

html body[data-page="/precios/"] .pricing-faq-layout {
  display: grid !important;
  grid-template-columns: minmax(330px, 0.32fr) minmax(0, 0.68fr) !important;
  gap: clamp(1.4rem, 2.8vw, 3rem) !important;
  align-items: stretch !important;
}

html body[data-page="/precios/"] .pricing-faq-aside {
  position: static !important;
  padding: clamp(1.05rem, 1.5vw, 1.45rem) !important;
}

html body[data-page="/precios/"] .pricing-faq-aside h2 {
  max-width: 12ch !important;
  font-size: clamp(1.75rem, 2.35vw, 2.9rem) !important;
}

html body[data-page="/precios/"] .pricing-faq-aside ul {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.5rem !important;
  margin-top: 0.9rem !important;
}

html body[data-page="/precios/"] .pricing-faq-aside li {
  min-height: 44px !important;
  padding: 0.58rem 0.68rem !important;
  font-size: 0.84rem !important;
}

html body[data-page="/precios/"] .pricing-faq-mini {
  margin-top: 0.9rem !important;
  padding: 0.82rem !important;
}

html body[data-page="/precios/"] .pricing-faq-layout > div {
  min-width: 0 !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.75rem !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list details {
  min-width: 0 !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list summary {
  min-height: 68px !important;
  padding: 0.85rem 0.95rem !important;
  gap: 0.65rem !important;
  font-size: clamp(0.96rem, 1.05vw, 1.14rem) !important;
  line-height: 1.18 !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list summary::before {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list summary::after {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
}

html body[data-page="/precios/"] .pricing-faq-section .faq-list p {
  padding: 0 0.95rem 0.95rem calc(0.95rem + 34px + 0.65rem) !important;
  font-size: 0.9rem !important;
  line-height: 1.54 !important;
}

html body[data-page="/precios/"] .pricing-final-cta {
  width: calc(100% - clamp(24px, 3vw, 44px)) !important;
  max-width: none !important;
  min-height: clamp(500px, 60vh, 680px) !important;
}

html body[data-page="/precios/"] .pricing-final-shell {
  align-items: center !important;
}

html body[data-page="/precios/"] .pricing-final-copy {
  display: grid !important;
  grid-template-columns: minmax(390px, 0.62fr) minmax(330px, 0.38fr) !important;
  gap: clamp(1.5rem, 3vw, 3rem) !important;
  align-items: center !important;
  max-width: 1180px !important;
}

html body[data-page="/precios/"] .pricing-final-copy .eyebrow,
html body[data-page="/precios/"] .pricing-final-copy h2,
html body[data-page="/precios/"] .pricing-final-copy > .pricing-gold-rule,
html body[data-page="/precios/"] .pricing-final-copy > .lead {
  grid-column: 1 !important;
}

html body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 12ch !important;
  font-size: clamp(2.8rem, 4.6vw, 5.8rem) !important;
}

html body[data-page="/precios/"] .pricing-final-actions,
html body[data-page="/precios/"] .pricing-final-notes {
  grid-column: 2 !important;
}

html body[data-page="/precios/"] .pricing-final-actions {
  align-self: end !important;
  margin-top: 0 !important;
}

html body[data-page="/precios/"] .pricing-final-notes {
  grid-template-columns: 1fr !important;
  margin-top: 1rem !important;
}

html body[data-page="/precios/"] .pricing-command-panel,
html body[data-page="/precios/"] .pricing-proposal-card,
html body[data-page="/precios/"] .pricing-process-step,
html body[data-page="/precios/"] .pricing-service-card,
html body[data-page="/precios/"] .pricing-route-card-v2,
html body[data-page="/precios/"] .pricing-compare-table-row,
html body[data-page="/precios/"] .pricing-faq-section .faq-list details {
  transform: none !important;
}

html body[data-page="/precios/"] .pricing-command-panel:hover,
html body[data-page="/precios/"] .pricing-proposal-card:hover,
html body[data-page="/precios/"] .pricing-process-step:hover,
html body[data-page="/precios/"] .pricing-service-card:hover,
html body[data-page="/precios/"] .pricing-route-card-v2:hover,
html body[data-page="/precios/"] .pricing-compare-table-row:hover,
html body[data-page="/precios/"] .pricing-faq-section .faq-list details:hover {
  transform: none !important;
}

@media (max-width: 1180px) {
  html body[data-page="/precios/"] {
    --pricing-max: min(100% - 40px, 980px) !important;
  }

  html body[data-page="/precios/"] .pricing-section-heading,
  html body[data-page="/precios/"] .pricing-faq-layout > div .pricing-section-heading,
  html body[data-page="/precios/"] .pricing-editorial-grid,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child,
  html body[data-page="/precios/"] .pricing-compare-layout,
  html body[data-page="/precios/"] .pricing-faq-layout,
  html body[data-page="/precios/"] .pricing-final-copy {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > h2,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .lead,
  html body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .pricing-rule-list,
  html body[data-page="/precios/"] .pricing-final-actions,
  html body[data-page="/precios/"] .pricing-final-notes {
    grid-column: 1 !important;
  }

  html body[data-page="/precios/"] .pricing-process-track {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body[data-page="/precios/"] .pricing-faq-section .faq-list {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  html body[data-page="/precios/"] {
    --pricing-max: min(100% - 24px, 100%) !important;
  }

  html body[data-page="/precios/"] .pricing-process-track,
  html body[data-page="/precios/"] .pricing-compare-table-head,
  html body[data-page="/precios/"] .pricing-compare-table-row,
  html body[data-page="/precios/"] .pricing-faq-aside ul {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-service-card.is-primary,
  html body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card,
  html body[data-page="/precios/"] .pricing-route-card-v2 {
    grid-template-columns: 1fr !important;
  }

  html body[data-page="/precios/"] .pricing-service-card.is-primary figure,
  html body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card figure,
  html body[data-page="/precios/"] .pricing-route-card-v2 figure {
    height: 205px !important;
    min-height: 205px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(240, 189, 85, 0.16) !important;
  }

  html body[data-page="/precios/"] .pricing-process-step {
    grid-template-columns: 56px minmax(0, 1fr) !important;
  }

  html body[data-page="/precios/"] .pricing-compare-table-head {
    display: none !important;
  }
}

/* V4.76 /promotoras content-only redesign. Header and footer are intentionally untouched. */
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium {
  --promo-ink: #f5efe4;
  --promo-muted: rgba(245, 239, 228, 0.72);
  --promo-soft: rgba(245, 239, 228, 0.52);
  --promo-gold: #d6a84f;
  --promo-gold-strong: #f2c66d;
  --promo-border: rgba(214, 168, 79, 0.32);
  --promo-card: rgba(255, 255, 255, 0.04);
  --promo-card-strong: rgba(16, 21, 18, 0.82);
  --promo-shell: min(1420px, calc(100% - clamp(32px, 6vw, 112px)));
  color: var(--promo-ink);
  background:
    radial-gradient(circle at 88% 2%, rgba(214, 168, 79, 0.14), transparent 30rem),
    radial-gradient(circle at 4% 42%, rgba(30, 58, 45, 0.35), transparent 44rem),
    linear-gradient(180deg, #050807 0%, #08110d 44%, #050807 100%);
  font-family: Inter, system-ui, sans-serif;
  overflow: hidden;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium *,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium *::before,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium *::after {
  box-sizing: border-box;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium h1,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium h2,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium h3 {
  margin: 0;
  color: var(--promo-ink);
  font-family: "Playfair Display", Georgia, serif;
  letter-spacing: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium p {
  margin: 0;
  color: var(--promo-muted);
  font-size: clamp(0.95rem, 0.95vw, 1.08rem);
  line-height: 1.62;
  letter-spacing: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium em {
  color: var(--promo-gold);
  font-style: italic;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: clamp(0.75rem, 1.4vw, 1.1rem) !important;
  color: var(--promo-gold-strong) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 850;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-eyebrow::before {
  content: "";
  width: 38px;
  height: 1px;
  background: currentColor;
  opacity: 0.72;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1px solid var(--promo-border);
  border-radius: 50%;
  color: var(--promo-gold-strong);
  background:
    radial-gradient(circle, rgba(242, 198, 109, 0.16), rgba(242, 198, 109, 0.02) 68%),
    rgba(0, 0, 0, 0.22);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-icon svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-btn,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-text-button,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
  min-height: 46px;
  padding: 0.85rem 1.3rem;
  border: 1px solid var(--promo-border);
  border-radius: 999px;
  color: var(--promo-ink);
  font-family: Inter, system-ui, sans-serif;
  font-size: 0.86rem;
  font-weight: 850;
  line-height: 1;
  text-decoration: none;
  letter-spacing: 0;
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-btn svg,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-text-button svg,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-link svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-btn-primary {
  color: #080908;
  border-color: rgba(255, 227, 158, 0.78);
  background: linear-gradient(180deg, #f8cf79 0%, #d6a84f 100%);
  box-shadow: 0 18px 34px rgba(214, 168, 79, 0.22);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-btn-secondary {
  background: rgba(255, 255, 255, 0.035);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-btn:hover,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-text-button:hover,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-link:hover {
  transform: translateY(-2px);
  border-color: rgba(242, 198, 109, 0.72);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.32), 0 0 26px rgba(214, 168, 79, 0.14);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-screen {
  min-height: calc(100svh - 70px);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.72fr);
  align-items: center;
  gap: clamp(2rem, 5vw, 5.5rem);
  padding: clamp(4rem, 6vh, 5.2rem) max((100vw - 1420px) / 2, clamp(1.8rem, 5.5vw, 6rem));
  background-image:
    linear-gradient(90deg, rgba(3, 5, 4, 0.94), rgba(3, 5, 4, 0.62) 42%, rgba(3, 5, 4, 0.72)),
    linear-gradient(180deg, rgba(3, 5, 4, 0.1), rgba(3, 5, 4, 0.95)),
    var(--promo-bg);
  background-position: center;
  background-size: cover;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero::after,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(214, 168, 79, 0.22), transparent);
  pointer-events: none;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-copy,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card {
  position: relative;
  z-index: 1;
  min-width: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero h1 {
  max-width: 850px;
  font-size: clamp(4rem, 6.25vw, 7.15rem);
  line-height: 0.88;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero h1 em {
  display: block;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-lead {
  max-width: 67ch;
  margin-top: 1.2rem !important;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  margin-top: clamp(1.25rem, 2.3vw, 2rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.25rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pill-row span,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-trust-line span,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-benefit-row span {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  min-height: 38px;
  padding: 0.55rem 0.85rem;
  border: 1px solid rgba(214, 168, 79, 0.24);
  border-radius: 999px;
  color: rgba(245, 239, 228, 0.82);
  background: rgba(0, 0, 0, 0.34);
  font-size: 0.82rem;
  font-weight: 750;
  letter-spacing: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pill-row svg,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-trust-line svg,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-benefit-row svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: var(--promo-gold-strong);
  stroke-width: 1.8;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-blockage-card,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-copy-card,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tools-panel,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-timeline-card {
  border: 1px solid var(--promo-border);
  border-radius: 28px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.018)),
    rgba(3, 7, 6, 0.74);
  box-shadow:
    0 26px 72px rgba(0, 0, 0, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card {
  padding: clamp(1.5rem, 2.6vw, 2.2rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.45rem;
  color: var(--promo-gold-strong);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-top small {
  padding: 0.45rem 0.7rem;
  border: 1px solid rgba(214, 168, 79, 0.3);
  border-radius: 999px;
  color: var(--promo-gold-strong);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card h2,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card h3 {
  font-size: clamp(2.25rem, 3.1vw, 3.65rem);
  line-height: 0.98;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card > p {
  margin-top: 1rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-rows {
  display: grid;
  gap: 0;
  margin-top: 1.35rem;
  border-top: 1px solid rgba(214, 168, 79, 0.22);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-card {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.05rem 0;
  border-bottom: 1px solid rgba(245, 239, 228, 0.08);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-card h3,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-blockage-row h3 {
  font-family: Inter, system-ui, sans-serif;
  color: var(--promo-ink);
  font-size: 0.98rem;
  font-weight: 850;
  line-height: 1.25;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-card p,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-blockage-row p {
  margin-top: 0.3rem;
  font-size: 0.86rem;
  line-height: 1.5;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section {
  position: relative;
  width: var(--promo-shell);
  margin: 0 auto;
  padding: clamp(4.2rem, 7vh, 6.8rem) 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-focus,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-context,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-solutions,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-next {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
  align-items: center;
  gap: clamp(2.2rem, 5vw, 5rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-focus > *,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-context > *,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-solutions > *,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process > *,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-next > *,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-heading-row > * {
  min-width: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-solutions {
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-next {
  grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section h2 {
  max-width: 860px;
  font-size: clamp(3.15rem, 5vw, 6.2rem);
  line-height: 0.92;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-copy {
  max-width: 62ch;
  margin-top: 1rem !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 2rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-grid .promo-mini-card {
  min-height: 164px;
  padding: 1.1rem;
  border: 1px solid rgba(214, 168, 79, 0.2);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.035);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card {
  padding: clamp(1.45rem, 2.6vw, 2rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.8rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(214, 168, 79, 0.24);
  border-radius: 24px;
  color: inherit;
  background: rgba(255, 255, 255, 0.035);
  text-decoration: none;
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini {
  min-height: 260px;
  padding: 1.1rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini small,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-body small,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card small,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured small {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--promo-gold-strong);
  font-family: Inter, system-ui, sans-serif;
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-body small svg,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card small svg,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured small svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini strong {
  margin-top: 0.8rem;
  color: var(--promo-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.35rem;
  line-height: 1.05;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini p {
  margin-top: 0.6rem;
  font-size: 0.88rem;
  line-height: 1.52;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini em {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  display: inline-flex;
  color: var(--promo-gold-strong);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini em svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-context {
  grid-template-columns: minmax(420px, 0.78fr) minmax(0, 1.22fr);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-blockage-card {
  margin-top: 1.65rem;
  padding: 0.55rem 1.15rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-blockage-row {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1rem 0;
  border-bottom: 1px solid rgba(245, 239, 228, 0.08);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-blockage-row:last-child {
  border-bottom: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-callout {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  margin-top: 1rem;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(214, 168, 79, 0.25);
  border-radius: 18px;
  color: var(--promo-gold-strong);
  background: rgba(255, 255, 255, 0.035);
  font-weight: 800;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-callout svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-image-card {
  position: relative;
  min-height: 520px;
  overflow: hidden;
  margin: 0;
  border: 1px solid var(--promo-border);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.04);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.38), 0 0 32px rgba(214, 168, 79, 0.1);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-image-card img,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card img,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card img,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured img,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card img,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 220ms ease, filter 220ms ease;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-image-card::after,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 48%, rgba(0, 0, 0, 0.74) 100%);
  pointer-events: none;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-image-card figcaption {
  position: absolute;
  left: 1.4rem;
  bottom: 1.4rem;
  z-index: 1;
  max-width: 520px;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(214, 168, 79, 0.26);
  border-radius: 18px;
  color: var(--promo-ink);
  background: rgba(0, 0, 0, 0.56);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.5rem, 2.2vw, 2.4rem);
  line-height: 1;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 1.1rem;
  min-height: 600px;
  padding: 1rem;
  border: 1px solid var(--promo-border);
  border-radius: 30px;
  background:
    radial-gradient(circle at 0 0, rgba(214, 168, 79, 0.12), transparent 18rem),
    rgba(255, 255, 255, 0.035);
  box-shadow: 0 28px 72px rgba(0, 0, 0, 0.34);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier aside {
  display: flex;
  flex-direction: column;
  padding: 1.4rem;
  border-right: 1px solid rgba(214, 168, 79, 0.16);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier aside small {
  margin-top: 1.2rem;
  color: var(--promo-gold-strong);
  font-weight: 900;
  text-transform: uppercase;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier aside h3 {
  margin-top: 0.3rem;
  font-size: clamp(2.2rem, 3vw, 3.5rem);
  text-transform: uppercase;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier ul,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card ul,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured ul {
  display: grid;
  gap: 0.7rem;
  margin: 1.4rem 0 0;
  padding: 0;
  list-style: none;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier li,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card li,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured li {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  color: var(--promo-muted);
  font-size: 0.9rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier li svg,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card li svg,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured li svg {
  width: 16px;
  height: 16px;
  color: var(--promo-gold-strong);
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier .promo-text-button {
  margin-top: auto;
  border-radius: 12px;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(3, minmax(145px, 1fr));
  gap: 0.55rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic figure {
  position: relative;
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(214, 168, 79, 0.15);
  border-radius: 18px;
  background: rgba(0, 0, 0, 0.35);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic figure::after,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card figure::after,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card figure::after,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 54%, rgba(0, 0, 0, 0.68) 100%);
  pointer-events: none;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic .is-large {
  grid-column: span 6;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic figure:not(.is-large) {
  grid-column: span 2;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic span,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card figure > span,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card figure > span {
  position: absolute;
  left: 0.9rem;
  bottom: 0.85rem;
  z-index: 1;
  color: var(--promo-gold-strong);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-copy-card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  margin-top: 1.8rem;
  padding: 1.3rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-copy-card strong {
  color: var(--promo-gold-strong);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-heading-row {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(260px, 0.55fr) auto;
  align-items: end;
  gap: clamp(1.5rem, 4vw, 4rem);
  margin-bottom: clamp(1.8rem, 3.5vw, 3rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-heading-row h2 {
  max-width: 760px;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-heading-row > p {
  max-width: 42ch;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.9fr);
  gap: 1.2rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured {
  position: relative;
  min-height: 650px;
  overflow: hidden;
  border: 1px solid var(--promo-border);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.035);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured figure {
  position: absolute;
  inset: 0;
  margin: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-featured-content {
  position: absolute;
  inset: auto 0 0;
  z-index: 1;
  padding: clamp(1.6rem, 3vw, 2.5rem);
  background: linear-gradient(180deg, transparent, rgba(3, 7, 6, 0.9) 18%);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-featured-content > span {
  display: inline-flex;
  margin-bottom: 1.2rem;
  padding: 0.55rem 0.8rem;
  border-radius: 999px;
  color: var(--promo-gold-strong);
  background: rgba(0, 0, 0, 0.58);
  font-weight: 900;
  text-transform: uppercase;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-featured-content h3 {
  margin-top: 0.45rem;
  font-size: clamp(2rem, 3.2vw, 3.55rem);
  line-height: 1;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-featured-content p {
  max-width: 74ch;
  margin-top: 0.8rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured ul {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 1.2rem 0 1.4rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-side {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.2rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card {
  display: grid;
  grid-template-columns: 190px 1fr;
  min-height: 200px;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card figure {
  position: relative;
  margin: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card figure .promo-icon {
  position: absolute;
  top: 0.9rem;
  left: 0.9rem;
  z-index: 1;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card > div {
  display: flex;
  flex-direction: column;
  padding: 1.15rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card h3 {
  margin-top: 0.45rem;
  font-size: 1.55rem;
  line-height: 1.02;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card p {
  margin-top: 0.55rem;
  font-size: 0.88rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-link,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-text-button {
  justify-content: flex-start;
  min-height: 0;
  margin-top: auto;
  padding: 0.7rem 0;
  border-width: 0 0 1px;
  border-radius: 0;
  color: var(--promo-gold-strong);
  background: transparent;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-grid,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-seal {
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 0.85rem;
  color: var(--promo-gold-strong);
  font-weight: 850;
  text-align: right;
  text-transform: uppercase;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-seal svg {
  width: 42px;
  height: 42px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.4;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card {
  min-height: 520px;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card figure,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card figure {
  position: relative;
  height: 255px;
  margin: 0;
  overflow: hidden;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-body,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card > div {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 1.35rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-body h3,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card h3 {
  margin-top: 0.65rem;
  font-size: clamp(1.75rem, 2vw, 2.35rem);
  line-height: 1.02;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-body p,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card p {
  margin-top: 0.75rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process {
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-timeline-card {
  margin-top: 1.6rem;
  padding: 0.45rem 1.2rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-timeline-card .promo-blockage-row .promo-icon::after {
  content: attr(data-step);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-benefit-row,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-trust-line {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.25rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process-image {
  min-height: 620px;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process-image figcaption {
  right: 1.4rem;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap: 1rem;
  max-width: none;
  font-family: Inter, system-ui, sans-serif;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process-image figcaption strong {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.35rem, 1.7vw, 2rem);
  line-height: 1.08;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process-image figcaption span {
  color: var(--promo-muted);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tools-panel {
  padding: clamp(1.35rem, 2.6vw, 2rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-panel-title {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.4rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-panel-title h3 {
  font-family: Inter, system-ui, sans-serif;
  color: var(--promo-gold-strong);
  font-size: 1rem;
  font-weight: 900;
  text-transform: uppercase;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-panel-title span {
  flex: 1;
  height: 1px;
  background: rgba(214, 168, 79, 0.25);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card {
  min-height: 420px;
  padding: 1.25rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-head small {
  color: var(--promo-gold-strong);
  font-size: 1rem;
  font-weight: 900;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card h3 {
  margin-top: 1rem;
  font-size: clamp(1.65rem, 2.1vw, 2.35rem);
  line-height: 1;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card p {
  margin-top: 0.75rem;
  font-size: 0.92rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card {
  min-height: 590px;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card figure {
  height: 290px;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card h3 em {
  display: inline;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-faq {
  display: grid;
  grid-template-columns: minmax(320px, 0.58fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(2rem, 5vw, 5rem);
  padding-bottom: clamp(5rem, 8vh, 7rem);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-faq-copy h2 {
  max-width: 520px;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-faq-copy p {
  max-width: 42ch;
  margin-top: 1rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-faq-cta {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 0.8rem;
  margin-top: 2rem;
  padding: 1rem;
  border: 1px solid rgba(214, 168, 79, 0.25);
  border-radius: 20px;
  color: var(--promo-muted);
  background: rgba(255, 255, 255, 0.035);
  text-decoration: none;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-faq-cta strong {
  display: block;
  color: var(--promo-gold-strong);
  text-transform: uppercase;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-faq-cta svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: var(--promo-gold-strong);
  stroke-width: 1.8;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion {
  overflow: hidden;
  border: 1px solid var(--promo-border);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.035);
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.26);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion details {
  border-bottom: 1px solid rgba(214, 168, 79, 0.22);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion details:last-child {
  border-bottom: 0;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion summary {
  display: grid;
  grid-template-columns: 64px 1fr auto;
  align-items: center;
  gap: 1.2rem;
  min-height: 96px;
  padding: 1rem 1.4rem;
  color: var(--promo-ink);
  cursor: pointer;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.25rem, 1.8vw, 1.8rem);
  list-style: none;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion summary::-webkit-details-marker {
  display: none;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion summary span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  border: 1px solid rgba(214, 168, 79, 0.34);
  border-radius: 50%;
  color: var(--promo-gold-strong);
  font-family: Inter, system-ui, sans-serif;
  font-weight: 900;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion summary em {
  font-family: Inter, system-ui, sans-serif;
  font-size: 1.4rem;
  font-style: normal;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion details > p,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-answer {
  margin: 0 1.4rem 1.4rem 6.9rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(245, 239, 228, 0.08);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-answer {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 1rem;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-answer svg {
  width: 44px;
  height: 44px;
  color: var(--promo-gold-strong);
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini:hover,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card:hover,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card:hover,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card:hover,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card:hover {
  transform: translateY(-4px);
  border-color: rgba(242, 198, 109, 0.56);
  box-shadow: 0 26px 56px rgba(0, 0, 0, 0.32), 0 0 28px rgba(214, 168, 79, 0.1);
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card:hover img,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card:hover img,
body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card:hover img {
  transform: scale(1.035);
}

@media (max-width: 1180px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-focus,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-context,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-solutions,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-next,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-faq,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-grid {
    grid-template-columns: 1fr;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-heading-row {
    grid-template-columns: 1fr;
    align-items: start;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-seal {
    justify-self: start;
    text-align: left;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card {
    width: min(100%, 760px);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-screen {
    min-height: auto;
  }
}

@media (max-width: 900px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) {
    overflow-x: hidden;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium {
    --promo-shell: min(100% - 28px, 720px);
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    padding: clamp(3rem, 8vw, 4rem) 14px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero > *,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section > *,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tools-panel,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-image-card {
    max-width: 100%;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero h1,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section h2 {
    max-width: 100%;
    font-size: clamp(2.45rem, 10vw, 3.35rem);
    overflow-wrap: normal;
    text-wrap: balance;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-copy,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tools-panel {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card {
    margin-top: 1.8rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured ul {
    grid-template-columns: 1fr;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier {
    grid-template-columns: 1fr;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier aside {
    border-right: 0;
    border-bottom: 1px solid rgba(214, 168, 79, 0.16);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic .is-large,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic figure:not(.is-large) {
    grid-column: span 1;
    min-height: 190px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic .is-large {
    grid-column: 1 / -1;
    min-height: 260px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card {
    grid-template-columns: 1fr;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card figure {
    height: 220px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-image-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process-image,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured {
    min-height: 460px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process-image figcaption {
    grid-template-columns: 1fr;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-actions,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-btn {
    width: 100%;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-btn {
    white-space: normal;
    text-align: center;
    line-height: 1.18;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion summary {
    grid-template-columns: 50px 1fr auto;
    min-height: 80px;
    font-size: 1.18rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion summary span {
    width: 44px;
    height: 44px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion details > p,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-answer {
    margin-left: 1.4rem;
  }
}

@media (max-width: 560px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero h1,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section h2 {
    font-size: clamp(2.08rem, 10.5vw, 2.75rem);
    line-height: 0.98;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-lead {
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card h3 {
    font-size: clamp(1.75rem, 8.5vw, 2rem);
    overflow-wrap: break-word;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-top {
    flex-wrap: wrap;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pill-row span,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-trust-line span,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-benefit-row span {
    max-width: 100%;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section {
    padding: 3.6rem 0;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tools-panel {
    border-radius: 22px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-copy-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-answer {
    grid-template-columns: 1fr;
  }
}

/* V4.77 /promotoras body-only compact pass: more horizontal, less scroll-heavy. */
@media (min-width: 1181px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-screen {
    min-height: min(900px, calc(100svh - 70px));
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section {
    padding: clamp(2.35rem, 3.9vh, 3.85rem) 0;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero {
    min-height: calc(100svh - 70px);
    padding-top: clamp(3.2rem, 5vh, 4.4rem);
    padding-bottom: clamp(3.2rem, 5vh, 4.4rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero h1 {
    font-size: clamp(3.75rem, 5.65vw, 6.55rem);
    line-height: 0.9;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card {
    max-width: 610px;
    justify-self: end;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card h3 {
    font-size: clamp(2.05rem, 2.75vw, 3.25rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-rows {
    margin-top: 1rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-card {
    padding: 0.82rem 0;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section h2 {
    font-size: clamp(2.75rem, 4vw, 4.95rem);
    line-height: 0.94;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-focus,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-context,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-solutions,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-next {
    gap: clamp(1.6rem, 3.4vw, 3.9rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-grid {
    gap: 0.75rem;
    margin-top: 1.45rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-grid .promo-mini-card {
    min-height: 138px;
    padding: 0.95rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card {
    padding: clamp(1.25rem, 2vw, 1.7rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-grid {
    gap: 0.8rem;
    margin-top: 1.35rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini {
    min-height: 220px;
    padding: 1rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini strong {
    font-size: 1.22rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini p {
    font-size: 0.84rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-blockage-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-timeline-card {
    margin-top: 1.15rem;
    padding: 0.35rem 1rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-blockage-row {
    padding: 0.82rem 0;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-blockage-row .promo-icon,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-card .promo-icon {
    width: 38px;
    height: 38px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-image-card {
    min-height: 460px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier {
    grid-template-columns: 250px 1fr;
    min-height: 510px;
    gap: 0.85rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier aside {
    padding: 1.15rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier aside h3 {
    font-size: clamp(2rem, 2.5vw, 3rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier ul {
    gap: 0.52rem;
    margin-top: 1rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mosaic {
    grid-template-rows: repeat(3, minmax(112px, 1fr));
    gap: 0.45rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-heading-row {
    align-items: center;
    gap: clamp(1.2rem, 3vw, 3rem);
    margin-bottom: clamp(1rem, 1.8vw, 1.55rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-grid {
    grid-template-columns: minmax(0, 1.16fr) minmax(0, 1fr);
    gap: 1rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured {
    min-height: 440px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-featured-content {
    padding: clamp(1.05rem, 1.8vw, 1.55rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-featured-content h3 {
    font-size: clamp(1.62rem, 2.1vw, 2.45rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-featured-content p {
    font-size: 0.88rem;
    line-height: 1.45;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured ul {
    gap: 0.5rem 0.8rem;
    margin: 0.7rem 0 0.8rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured li {
    font-size: 0.82rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-side {
    gap: 0.8rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card {
    grid-template-columns: 150px 1fr;
    min-height: 140px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card > div {
    padding: 0.95rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card h3 {
    font-size: 1.15rem;
    line-height: 1.04;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card p {
    font-size: 0.78rem;
    line-height: 1.38;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-link,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-text-button {
    font-size: 0.78rem;
    padding: 0.55rem 0;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-grid,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-grid {
    gap: 1rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card {
    min-height: 365px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card figure,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card figure {
    height: 165px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-body,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card > div {
    padding: 0.9rem 1.05rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-body h3,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card h3 {
    font-size: clamp(1.38rem, 1.55vw, 1.85rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-body p,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card p {
    font-size: 0.84rem;
    line-height: 1.45;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-process-image {
    min-height: 510px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-benefit-row,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-trust-line {
    gap: 0.55rem;
    margin-top: 1rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-benefit-row span,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-trust-line span {
    min-height: 34px;
    padding: 0.45rem 0.7rem;
    font-size: 0.78rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tools-panel {
    padding: clamp(1.2rem, 2vw, 1.65rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-grid {
    gap: 0.85rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card {
    min-height: 360px;
    padding: 1.05rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card h3 {
    font-size: clamp(1.45rem, 1.72vw, 2rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card p,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card li {
    font-size: 0.84rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card {
    min-height: 410px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card figure {
    height: 178px;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-faq {
    padding-bottom: clamp(3.8rem, 5.5vh, 5rem);
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion summary {
    min-height: 76px;
    padding: 0.85rem 1.15rem;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion summary span {
    width: 48px;
    height: 48px;
  }
}

@media (max-width: 900px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium {
    overflow-x: clip;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section {
    width: 100%;
    max-width: 100vw;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero > *,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section > *,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tools-panel,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-image-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-copy-card {
    width: 100%;
    min-width: 0;
    max-width: min(100%, calc(100vw - 28px));
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pill-row,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-trust-line,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-benefit-row {
    display: grid;
    grid-template-columns: 1fr;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pill-row span,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-trust-line span,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-benefit-row span,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-btn,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-text-button,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-link {
    width: 100%;
    max-width: 100%;
    white-space: normal;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero h1,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card h2,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card h3,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-featured h3,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card h3 {
    overflow-wrap: anywhere;
    text-wrap: balance;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-top,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-mini-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-mini,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tool-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-pack-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-case-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-reco-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-answer {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-top {
    justify-content: flex-start;
  }

  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-top span,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-card-top small {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
  }
}

/* V4.78 pricing horizontal pass: keep hero, make every following module panoramic. */
body[data-page="/precios/"] {
  --pricing-max: min(100% - clamp(32px, 5.4vw, 104px), 1540px) !important;
  --pricing-gap: clamp(1rem, 1.45vw, 1.45rem) !important;
  --pricing-section-y: clamp(3.8rem, 5.4vw, 5.8rem) !important;
}

body[data-page="/precios/"] .pricing-editorial-section,
body[data-page="/precios/"] .pricing-range-section,
body[data-page="/precios/"] .pricing-index-section,
body[data-page="/precios/"] .pricing-compare-section,
body[data-page="/precios/"] .pricing-route-section,
body[data-page="/precios/"] .pricing-faq-section {
  width: var(--pricing-max) !important;
  max-width: var(--pricing-max) !important;
  margin-inline: auto !important;
  padding-top: var(--pricing-section-y) !important;
  padding-bottom: var(--pricing-section-y) !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body[data-page="/precios/"] .pricing-section-heading {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.48fr) minmax(0, 0.72fr) !important;
  column-gap: clamp(1.8rem, 4vw, 4.5rem) !important;
  row-gap: 0.9rem !important;
  align-items: end !important;
  max-width: none !important;
  margin-bottom: clamp(1.25rem, 2vw, 2rem) !important;
}

body[data-page="/precios/"] .pricing-section-heading .eyebrow {
  grid-column: 1 / -1;
}

body[data-page="/precios/"] .pricing-section-heading h2 {
  max-width: 13ch !important;
  font-size: clamp(2.8rem, 4.1vw, 5.2rem) !important;
}

body[data-page="/precios/"] .pricing-section-heading .lead {
  max-width: 68ch !important;
  margin: 0 !important;
  align-self: end !important;
}

body[data-page="/precios/"] .pricing-editorial-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.4fr) !important;
  gap: clamp(1.4rem, 2.6vw, 2.8rem) !important;
  align-items: stretch !important;
}

body[data-page="/precios/"] .pricing-editorial-grid > div:first-child {
  display: grid !important;
  grid-template-columns: minmax(310px, 0.56fr) minmax(0, 0.74fr) !important;
  column-gap: clamp(1.5rem, 3.2vw, 3.2rem) !important;
  row-gap: 1rem !important;
  align-content: center !important;
  padding: clamp(1.2rem, 2vw, 1.6rem) 0 !important;
}

body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .eyebrow {
  grid-column: 1 / -1;
}

body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > h2 {
  grid-column: 1;
  max-width: 11ch !important;
  font-size: clamp(2.8rem, 4.2vw, 5.3rem) !important;
}

body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .lead,
body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .pricing-rule-list {
  grid-column: 2;
}

body[data-page="/precios/"] .pricing-rule-list {
  margin-top: 0 !important;
}

body[data-page="/precios/"] .pricing-rule-list article {
  min-height: 82px !important;
  padding: 0.7rem 0 !important;
}

body[data-page="/precios/"] .pricing-proposal-card {
  min-height: 0 !important;
  padding: clamp(1.2rem, 1.8vw, 1.65rem) !important;
}

body[data-page="/precios/"] .pricing-proposal-card h3 {
  max-width: 100% !important;
  font-size: clamp(1.55rem, 1.9vw, 2.15rem) !important;
}

body[data-page="/precios/"] .pricing-proposal-card > div {
  margin-top: 1rem !important;
}

body[data-page="/precios/"] .pricing-proposal-card article {
  min-height: 82px !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  padding: 0.8rem 0 !important;
}

body[data-page="/precios/"] .pricing-process-track {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
  margin-top: 0 !important;
}

body[data-page="/precios/"] .pricing-process-track::before {
  display: none !important;
}

body[data-page="/precios/"] .pricing-process-step {
  min-height: 178px !important;
  display: grid !important;
  grid-template-columns: 66px minmax(0, 1fr) !important;
  grid-template-rows: auto auto 1fr !important;
  column-gap: 1rem !important;
  row-gap: 0.35rem !important;
  justify-items: start !important;
  align-items: start !important;
  text-align: left !important;
  padding: clamp(1.05rem, 1.6vw, 1.45rem) !important;
}

body[data-page="/precios/"] .pricing-process-step .pricing-range-top {
  grid-column: 1;
  grid-row: 1 / span 3;
  justify-content: flex-start !important;
}

body[data-page="/precios/"] .pricing-process-step small,
body[data-page="/precios/"] .pricing-process-step h3,
body[data-page="/precios/"] .pricing-process-step p {
  grid-column: 2;
}

body[data-page="/precios/"] .pricing-process-step h3 {
  max-width: 13ch !important;
  font-size: clamp(1.45rem, 1.8vw, 2rem) !important;
}

body[data-page="/precios/"] .pricing-process-step h3::after {
  margin: 0.7rem 0 0 !important;
}

body[data-page="/precios/"] .pricing-process-step p,
body[data-page="/precios/"] .pricing-service-card p,
body[data-page="/precios/"] .pricing-route-card-v2 p,
body[data-page="/precios/"] .pricing-compare-table-row p,
body[data-page="/precios/"] .pricing-faq-section p {
  overflow-wrap: anywhere !important;
}

body[data-page="/precios/"] .pricing-service-main {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
}

body[data-page="/precios/"] .pricing-service-card.is-primary {
  display: grid !important;
  grid-template-columns: minmax(150px, 0.43fr) minmax(0, 0.57fr) !important;
  min-height: 315px !important;
}

body[data-page="/precios/"] .pricing-service-card.is-primary figure {
  height: 100% !important;
  min-height: 100% !important;
  border-right: 1px solid rgba(240, 189, 85, 0.18) !important;
  border-bottom: 0 !important;
}

body[data-page="/precios/"] .pricing-service-secondary {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
}

body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card {
  display: grid !important;
  grid-template-columns: minmax(128px, 0.36fr) minmax(0, 0.64fr) !important;
  min-height: 205px !important;
}

body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card figure {
  height: 100% !important;
  min-height: 100% !important;
  border-right: 1px solid rgba(240, 189, 85, 0.16) !important;
  border-bottom: 0 !important;
}

body[data-page="/precios/"] .pricing-service-body,
body[data-page="/precios/"] .pricing-service-card.is-secondary > div {
  min-width: 0 !important;
  padding: clamp(1rem, 1.4vw, 1.35rem) !important;
  gap: 0.55rem !important;
}

body[data-page="/precios/"] .pricing-service-card h3 {
  font-size: clamp(1.35rem, 1.75vw, 2rem) !important;
}

body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card h3 {
  font-size: clamp(1.1rem, 1.25vw, 1.35rem) !important;
  line-height: 1.08 !important;
}

body[data-page="/precios/"] .pricing-service-actions {
  gap: 0.45rem !important;
  padding-top: 0.45rem !important;
}

body[data-page="/precios/"] .pricing-service-card .card-link,
body[data-page="/precios/"] .pricing-service-link {
  min-height: 38px !important;
  padding: 0.68rem 0.78rem !important;
  font-size: 0.78rem !important;
}

body[data-page="/precios/"] .pricing-compare-layout {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.34fr) minmax(0, 0.66fr) !important;
  gap: clamp(1.6rem, 3vw, 3.2rem) !important;
  align-items: stretch !important;
}

body[data-page="/precios/"] .pricing-compare-copy {
  position: static !important;
  align-self: center !important;
  max-width: none !important;
}

body[data-page="/precios/"] .pricing-compare-copy h2 {
  max-width: 10.5ch !important;
  font-size: clamp(2.7rem, 3.9vw, 4.9rem) !important;
}

body[data-page="/precios/"] .pricing-decision-note,
body[data-page="/precios/"] .pricing-compare-benefits {
  margin-top: 1rem !important;
}

body[data-page="/precios/"] .pricing-compare-board {
  min-width: 0 !important;
  overflow: hidden !important;
}

body[data-page="/precios/"] .pricing-compare-table-head,
body[data-page="/precios/"] .pricing-compare-table-row {
  grid-template-columns: minmax(190px, 0.34fr) minmax(0, 0.33fr) minmax(0, 0.33fr) !important;
}

body[data-page="/precios/"] .pricing-compare-table-head span {
  min-height: 56px !important;
  padding: 0.75rem !important;
  font-size: 0.72rem !important;
}

body[data-page="/precios/"] .pricing-compare-table-row > div {
  min-height: 118px !important;
  min-width: 0 !important;
  padding: clamp(0.85rem, 1.25vw, 1.15rem) !important;
}

body[data-page="/precios/"] .pricing-compare-criterion {
  gap: 0.8rem !important;
}

body[data-page="/precios/"] .pricing-compare-criterion .pricing-compare-icon {
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
}

body[data-page="/precios/"] .pricing-compare-criterion h3 {
  font-size: 0.82rem !important;
}

body[data-page="/precios/"] .pricing-compare-table-row p {
  font-size: clamp(0.82rem, 0.86vw, 0.94rem) !important;
  line-height: 1.45 !important;
}

body[data-page="/precios/"] .pricing-route-grid-v2 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
}

body[data-page="/precios/"] .pricing-route-card-v2 {
  display: grid !important;
  grid-template-columns: minmax(160px, 0.43fr) minmax(0, 0.57fr) !important;
  min-height: 310px !important;
}

body[data-page="/precios/"] .pricing-route-card-v2 figure {
  height: 100% !important;
  min-height: 100% !important;
  border-right: 1px solid rgba(240, 189, 85, 0.18) !important;
  border-bottom: 0 !important;
}

body[data-page="/precios/"] .pricing-route-card-v2 > div {
  min-width: 0 !important;
  padding: clamp(1rem, 1.55vw, 1.45rem) !important;
}

body[data-page="/precios/"] .pricing-route-card-v2 h3 {
  font-size: clamp(1.35rem, 1.75vw, 2rem) !important;
}

body[data-page="/precios/"] .pricing-faq-layout {
  display: grid !important;
  grid-template-columns: minmax(330px, 0.32fr) minmax(0, 0.68fr) !important;
  gap: clamp(1.4rem, 3vw, 3rem) !important;
  align-items: stretch !important;
}

body[data-page="/precios/"] .pricing-faq-aside {
  position: static !important;
  padding: clamp(1.15rem, 1.65vw, 1.55rem) !important;
}

body[data-page="/precios/"] .pricing-faq-aside h2 {
  max-width: 12ch !important;
  font-size: clamp(1.8rem, 2.45vw, 3rem) !important;
}

body[data-page="/precios/"] .pricing-faq-aside ul {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.55rem !important;
  margin-top: 1rem !important;
}

body[data-page="/precios/"] .pricing-faq-aside li {
  min-height: 46px !important;
  padding: 0.62rem 0.72rem !important;
  font-size: 0.86rem !important;
}

body[data-page="/precios/"] .pricing-faq-mini {
  margin-top: 1rem !important;
  padding: 0.9rem !important;
}

body[data-page="/precios/"] .pricing-faq-layout > div {
  min-width: 0 !important;
}

body[data-page="/precios/"] .pricing-faq-layout > div .pricing-section-heading {
  display: grid !important;
  grid-template-columns: minmax(240px, 0.46fr) minmax(0, 0.54fr) !important;
  gap: 1rem 1.5rem !important;
  margin-bottom: 1rem !important;
}

body[data-page="/precios/"] .pricing-faq-heading h2 {
  font-size: clamp(2.1rem, 3.2vw, 4.1rem) !important;
  max-width: 12ch !important;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.8rem !important;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list details {
  min-width: 0 !important;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list summary {
  min-height: 70px !important;
  padding: 0.9rem 1rem !important;
  gap: 0.7rem !important;
  font-size: clamp(0.98rem, 1.1vw, 1.16rem) !important;
  line-height: 1.18 !important;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list summary::before {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list summary::after {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list p {
  padding: 0 1rem 1rem calc(1rem + 36px + 0.7rem) !important;
  font-size: 0.92rem !important;
  line-height: 1.55 !important;
}

body[data-page="/precios/"] .pricing-final-cta {
  width: calc(100% - clamp(24px, 3vw, 44px)) !important;
  min-height: clamp(520px, 64vh, 720px) !important;
}

body[data-page="/precios/"] .pricing-final-shell {
  align-items: center !important;
}

body[data-page="/precios/"] .pricing-final-copy {
  display: grid !important;
  grid-template-columns: minmax(390px, 0.62fr) minmax(330px, 0.38fr) !important;
  gap: clamp(1.5rem, 3vw, 3rem) !important;
  align-items: center !important;
  max-width: 1180px !important;
}

body[data-page="/precios/"] .pricing-final-copy .eyebrow,
body[data-page="/precios/"] .pricing-final-copy h2,
body[data-page="/precios/"] .pricing-final-copy > .pricing-gold-rule,
body[data-page="/precios/"] .pricing-final-copy > .lead {
  grid-column: 1 !important;
}

body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 12ch !important;
  font-size: clamp(3rem, 5vw, 6rem) !important;
}

body[data-page="/precios/"] .pricing-final-actions,
body[data-page="/precios/"] .pricing-final-notes {
  grid-column: 2 !important;
}

body[data-page="/precios/"] .pricing-final-actions {
  align-self: end !important;
  margin-top: 0 !important;
}

body[data-page="/precios/"] .pricing-final-notes {
  grid-template-columns: 1fr !important;
  margin-top: 1rem !important;
}

body[data-page="/precios/"] .pricing-command-panel,
body[data-page="/precios/"] .pricing-proposal-card,
body[data-page="/precios/"] .pricing-process-step,
body[data-page="/precios/"] .pricing-service-card,
body[data-page="/precios/"] .pricing-route-card-v2,
body[data-page="/precios/"] .pricing-compare-table-row,
body[data-page="/precios/"] .pricing-faq-section .faq-list details {
  transform: none !important;
}

body[data-page="/precios/"] .pricing-command-panel:hover,
body[data-page="/precios/"] .pricing-proposal-card:hover,
body[data-page="/precios/"] .pricing-process-step:hover,
body[data-page="/precios/"] .pricing-service-card:hover,
body[data-page="/precios/"] .pricing-route-card-v2:hover,
body[data-page="/precios/"] .pricing-compare-table-row:hover,
body[data-page="/precios/"] .pricing-faq-section .faq-list details:hover {
  transform: none !important;
}

@media (max-width: 1280px) {
  body[data-page="/precios/"] {
    --pricing-max: min(100% - 40px, 1120px) !important;
  }

  body[data-page="/precios/"] .pricing-editorial-grid,
  body[data-page="/precios/"] .pricing-editorial-grid > div:first-child,
  body[data-page="/precios/"] .pricing-compare-layout,
  body[data-page="/precios/"] .pricing-faq-layout,
  body[data-page="/precios/"] .pricing-final-copy {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > h2,
  body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .lead,
  body[data-page="/precios/"] .pricing-editorial-grid > div:first-child > .pricing-rule-list,
  body[data-page="/precios/"] .pricing-final-actions,
  body[data-page="/precios/"] .pricing-final-notes {
    grid-column: 1 !important;
  }

  body[data-page="/precios/"] .pricing-process-track,
  body[data-page="/precios/"] .pricing-service-main,
  body[data-page="/precios/"] .pricing-service-secondary,
  body[data-page="/precios/"] .pricing-route-grid-v2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/precios/"] .pricing-faq-section .faq-list {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/precios/"] {
    --pricing-max: min(100% - 24px, 100%) !important;
  }

  body[data-page="/precios/"] .pricing-section-heading,
  body[data-page="/precios/"] .pricing-faq-layout > div .pricing-section-heading,
  body[data-page="/precios/"] .pricing-process-track,
  body[data-page="/precios/"] .pricing-service-main,
  body[data-page="/precios/"] .pricing-service-secondary,
  body[data-page="/precios/"] .pricing-route-grid-v2,
  body[data-page="/precios/"] .pricing-compare-table-head,
  body[data-page="/precios/"] .pricing-compare-table-row,
  body[data-page="/precios/"] .pricing-faq-aside ul {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/precios/"] .pricing-service-card.is-primary,
  body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card,
  body[data-page="/precios/"] .pricing-route-card-v2 {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/precios/"] .pricing-service-card.is-primary figure,
  body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card figure,
  body[data-page="/precios/"] .pricing-route-card-v2 figure {
    height: 205px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(240, 189, 85, 0.16) !important;
  }

  body[data-page="/precios/"] .pricing-process-step {
    grid-template-columns: 58px minmax(0, 1fr) !important;
  }

  body[data-page="/precios/"] .pricing-compare-table-head {
    display: none !important;
  }
}

/* V4.78 pricing mobile panel lock: keep the hero criterion card visible below CTAs. */
@media (max-width: 760px) {
  body[data-page="/precios/"] .pricing-hero .hero-panel.hero-panel-layered {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-top: 1.15rem !important;
    justify-self: stretch !important;
    justify-items: stretch !important;
  }

  body[data-page="/precios/"] .pricing-hero .pricing-command-panel {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 1.1rem !important;
  }

  body[data-page="/precios/"] .pricing-command-head {
    padding-bottom: 0.85rem !important;
    margin-bottom: 0.85rem !important;
  }

  body[data-page="/precios/"] .pricing-command-head h3 {
    max-width: 100% !important;
    font-size: clamp(1.55rem, 8vw, 2.25rem) !important;
  }

  body[data-page="/precios/"] .pricing-command-list article {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    padding: 0.82rem 0 !important;
  }

  body[data-page="/precios/"] .pricing-command-mark {
    width: 42px !important;
    height: 42px !important;
  }

  body[data-page="/precios/"] .site-footer-main {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: min(100% - 32px, 720px) !important;
    max-width: min(100% - 32px, 720px) !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  body[data-page="/precios/"] .site-footer-intro,
  body[data-page="/precios/"] .site-footer-group,
  body[data-page="/precios/"] .site-footer-legal,
  body[data-page="/precios/"] .site-footer-capabilities,
  body[data-page="/precios/"] .site-footer-contact {
    grid-column: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
  }

  body[data-page="/precios/"] .site-footer-group h3,
  body[data-page="/precios/"] .site-footer-group a,
  body[data-page="/precios/"] .site-footer-group p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }
}

/* V4.75 - pricing premium editorial refinement */
body[data-page="/precios/"] .pricing-compare-badge {
  width: clamp(64px, 6vw, 84px) !important;
  height: clamp(64px, 6vw, 84px) !important;
  margin-bottom: clamp(1.2rem, 2vw, 1.8rem);
}

body[data-page="/precios/"] .pricing-compare-badge svg {
  width: 42% !important;
  height: 42% !important;
}

body[data-page="/precios/"] .pricing-decision-note {
  background:
    radial-gradient(circle at 10% 15%, rgba(242, 193, 92, 0.18), transparent 9rem),
    rgba(242, 193, 92, 0.055) !important;
}

body[data-page="/precios/"] .pricing-decision-note strong {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--pricing-gold);
  font-size: 0.82rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

body[data-page="/precios/"] .pricing-compare-benefits {
  display: grid;
  gap: 0.75rem;
  margin-top: 1.15rem;
}

body[data-page="/precios/"] .pricing-compare-benefits span {
  display: grid;
  grid-template-columns: 1.15rem minmax(0, 1fr);
  gap: 0.65rem;
  align-items: center;
  color: var(--pricing-muted);
  font-weight: 650;
}

body[data-page="/precios/"] .pricing-compare-benefits svg {
  width: 1.1rem;
  height: 1.1rem;
  color: var(--pricing-gold);
  stroke: currentColor;
  fill: none;
}

body[data-page="/precios/"] .pricing-compare-cell.is-clear p {
  color: var(--pricing-gold);
}

body[data-page="/precios/"] .pricing-service-actions {
  align-items: center;
}

body[data-page="/precios/"] .pricing-service-link,
body[data-page="/precios/"] .pricing-route-card-v2 .card-link {
  min-height: 44px;
}

body[data-page="/precios/"] .pricing-route-card-v2 .card-link {
  width: 100%;
  justify-content: center;
}

@media (max-width: 760px) {
  body[data-page="/precios/"] .pricing-compare-benefits {
    margin-top: 1rem;
  }

  body[data-page="/precios/"] .pricing-route-card-v2 .card-link,
  body[data-page="/precios/"] .pricing-service-card .card-link,
  body[data-page="/precios/"] .pricing-service-link {
    width: 100%;
    justify-content: center;
  }
}

body[data-page="/precios/"] .pricing-hero .hero-copy {
  max-width: 760px !important;
}

body[data-page="/precios/"] .eyebrow,
body[data-page="/precios/"] .panel-label,
body[data-page="/precios/"] .card-kicker {
  color: var(--pricing-gold) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.32em !important;
  text-transform: uppercase !important;
}

body[data-page="/precios/"] .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 1.1rem;
}

body[data-page="/precios/"] .eyebrow::before {
  content: "";
  width: 42px;
  height: 1px;
  background: linear-gradient(90deg, rgba(240, 189, 85, 0.18), var(--pricing-gold));
}

body[data-page="/precios/"] .pricing-hero .eyebrow::before {
  width: 0.9rem;
  height: 0.9rem;
  border: 1px solid var(--pricing-gold);
  background: transparent;
  transform: rotate(45deg);
  box-shadow: inset 0 0 0 3px rgba(240, 189, 85, 0.12);
}

body[data-page="/precios/"] .pricing-hero h1 {
  display: grid;
  max-width: 8.8ch !important;
  margin-top: 1.1rem;
  font-size: clamp(5.2rem, 9.4vw, 8.8rem) !important;
  line-height: 0.82 !important;
  text-wrap: balance;
  text-shadow: 0 12px 42px rgba(0, 0, 0, 0.6);
}

body[data-page="/precios/"] .pricing-title-accent,
body[data-page="/precios/"] h2 em,
body[data-page="/precios/"] .pricing-final-copy em {
  color: var(--pricing-gold);
  font-style: italic;
  font-weight: 600;
}

body[data-page="/precios/"] .pricing-gold-rule {
  width: 56px;
  height: 2px;
  display: block;
  margin: 1.35rem 0 0;
  background: linear-gradient(90deg, var(--pricing-gold), rgba(240, 189, 85, 0));
}

body[data-page="/precios/"] .pricing-gold-notch {
  width: 86px;
  height: 18px;
  display: block;
  margin: 1rem 0 1.6rem;
  background:
    linear-gradient(var(--pricing-gold), var(--pricing-gold)) left top / 86px 1px no-repeat,
    linear-gradient(135deg, transparent 47%, var(--pricing-gold) 49%, var(--pricing-gold) 51%, transparent 53%) 26px 0 / 28px 18px no-repeat;
  opacity: 0.9;
}

body[data-page="/precios/"] .pricing-hero .lead {
  max-width: 63ch;
  margin-top: 1.45rem;
  color: rgba(255, 247, 235, 0.82) !important;
  font-size: clamp(1rem, 1.18vw, 1.2rem) !important;
  line-height: 1.7 !important;
}

body[data-page="/precios/"] .page-shell .button {
  min-height: 58px !important;
  border-radius: 7px !important;
  padding: 1rem 1.5rem !important;
  letter-spacing: 0 !important;
  font-size: 0.96rem !important;
  box-shadow: 0 22px 48px rgba(0, 0, 0, 0.28);
}

body[data-page="/precios/"] .page-shell .button svg {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
}

body[data-page="/precios/"] .page-shell .button svg * {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.6 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body[data-page="/precios/"] .page-shell .button-primary {
  background: linear-gradient(135deg, #f6cf72 0%, #e5aa3d 54%, #f7d784 100%) !important;
  color: #090806 !important;
  border-color: rgba(255, 229, 151, 0.88) !important;
}

body[data-page="/precios/"] .page-shell .button-secondary,
body[data-page="/precios/"] .card-link,
body[data-page="/precios/"] .pricing-service-link {
  background: rgba(4, 7, 6, 0.52) !important;
  border-color: rgba(240, 189, 85, 0.42) !important;
  color: var(--pricing-ivory) !important;
}

body[data-page="/precios/"] .card-link::after,
body[data-page="/precios/"] .pricing-service-link::after,
body[data-page="/precios/"] .button::after {
  content: "\2192";
  color: currentColor;
  font-size: 1.15rem;
  line-height: 1;
}

body[data-page="/precios/"] .pricing-command-panel,
body[data-page="/precios/"] .pricing-proposal-card,
body[data-page="/precios/"] .pricing-process-step,
body[data-page="/precios/"] .pricing-service-card,
body[data-page="/precios/"] .pricing-route-card-v2,
body[data-page="/precios/"] .pricing-faq-aside,
body[data-page="/precios/"] .pricing-faq-section .faq-list details,
body[data-page="/precios/"] .pricing-compare-board {
  border: 1px solid var(--pricing-line) !important;
  border-radius: var(--pricing-radius) !important;
  background:
    linear-gradient(150deg, rgba(22, 24, 21, 0.78), rgba(5, 8, 7, 0.86)),
    rgba(5, 8, 7, 0.88) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 249, 232, 0.045),
    0 26px 80px rgba(0, 0, 0, 0.38) !important;
  backdrop-filter: blur(18px);
}

body[data-page="/precios/"] .pricing-command-panel {
  max-width: 520px !important;
  padding: clamp(1.6rem, 2.6vw, 2.6rem) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(240, 189, 85, 0.22), transparent 16rem),
    linear-gradient(145deg, rgba(20, 23, 20, 0.75), rgba(2, 7, 8, 0.88)) !important;
}

body[data-page="/precios/"] .pricing-command-head {
  padding-bottom: 1.35rem;
  margin-bottom: 1.15rem;
}

body[data-page="/precios/"] .pricing-command-head h3,
body[data-page="/precios/"] .pricing-proposal-card h3 {
  max-width: 13.5ch !important;
  color: var(--pricing-ivory) !important;
  font-size: clamp(2rem, 2.8vw, 3rem) !important;
  line-height: 1.08 !important;
}

body[data-page="/precios/"] .pricing-command-list {
  gap: 0 !important;
}

body[data-page="/precios/"] .pricing-command-list article {
  min-height: 124px;
  padding: 1.3rem 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  border-bottom: 1px solid rgba(255, 247, 235, 0.13) !important;
  background: transparent !important;
}

body[data-page="/precios/"] .pricing-command-list article:last-child {
  border-bottom: 0 !important;
}

body[data-page="/precios/"] .pricing-icon-badge,
body[data-page="/precios/"] .pricing-command-mark,
body[data-page="/precios/"] .pricing-rule-logo,
body[data-page="/precios/"] .pricing-range-mark,
body[data-page="/precios/"] .pricing-compare-icon,
body[data-page="/precios/"] .pricing-compare-badge,
body[data-page="/precios/"] .pricing-faq-logo {
  width: 74px !important;
  height: 74px !important;
  min-width: 74px !important;
  border-radius: 999px !important;
  border-color: rgba(240, 189, 85, 0.36) !important;
  background:
    radial-gradient(circle at 50% 50%, rgba(240, 189, 85, 0.18), rgba(240, 189, 85, 0.04) 48%, rgba(5, 8, 7, 0.88) 49%),
    rgba(7, 10, 9, 0.92) !important;
  box-shadow:
    inset 0 0 0 14px rgba(240, 189, 85, 0.04),
    0 14px 34px rgba(0, 0, 0, 0.34) !important;
}

body[data-page="/precios/"] .pricing-icon-badge svg,
body[data-page="/precios/"] .pricing-command-mark svg,
body[data-page="/precios/"] .pricing-rule-logo svg,
body[data-page="/precios/"] .pricing-range-mark svg,
body[data-page="/precios/"] .pricing-compare-icon svg,
body[data-page="/precios/"] .pricing-compare-badge svg,
body[data-page="/precios/"] .pricing-faq-logo svg {
  width: 32px !important;
  height: 32px !important;
}

body[data-page="/precios/"] .pricing-editorial-grid {
  grid-template-columns: minmax(0, 0.94fr) minmax(420px, 0.7fr) !important;
  gap: clamp(4rem, 8vw, 8rem) !important;
  align-items: center !important;
}

body[data-page="/precios/"] .pricing-editorial-section h2,
body[data-page="/precios/"] .pricing-section-heading h2,
body[data-page="/precios/"] .pricing-compare-copy h2,
body[data-page="/precios/"] .pricing-faq-heading h2,
body[data-page="/precios/"] .pricing-faq-aside h2,
body[data-page="/precios/"] .pricing-final-copy h2 {
  color: var(--pricing-ivory) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(3.8rem, 6.2vw, 6.6rem) !important;
  line-height: 0.94 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}

body[data-page="/precios/"] .pricing-editorial-section h2 {
  max-width: 12ch !important;
}

body[data-page="/precios/"] .pricing-section-heading {
  max-width: 850px !important;
}

body[data-page="/precios/"] .pricing-section-heading h2 {
  max-width: 15ch !important;
}

body[data-page="/precios/"] .pricing-section-heading .lead,
body[data-page="/precios/"] .pricing-editorial-section .lead,
body[data-page="/precios/"] .pricing-compare-copy .lead,
body[data-page="/precios/"] .pricing-faq-heading .lead,
body[data-page="/precios/"] .pricing-faq-aside p,
body[data-page="/precios/"] .pricing-final-copy .lead {
  color: var(--pricing-muted) !important;
  font-size: clamp(1.04rem, 1.18vw, 1.22rem) !important;
  line-height: 1.75 !important;
}

body[data-page="/precios/"] .pricing-rule-list {
  margin-top: clamp(2rem, 3.2vw, 3rem) !important;
  gap: 0 !important;
}

body[data-page="/precios/"] .pricing-rule-list article {
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  min-height: 106px;
  padding: 1rem 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(240, 189, 85, 0.16) !important;
  background: transparent !important;
}

body[data-page="/precios/"] .pricing-rule-list article > span:last-child {
  color: var(--pricing-gold);
  font-size: 2rem;
}

body[data-page="/precios/"] .pricing-rule-list strong,
body[data-page="/precios/"] .pricing-command-list strong,
body[data-page="/precios/"] .pricing-faq-mini strong,
body[data-page="/precios/"] .pricing-decision-note strong {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--pricing-ivory);
  font-size: 1.1rem;
}

body[data-page="/precios/"] .pricing-proposal-card {
  padding: clamp(2.2rem, 3.6vw, 4rem) !important;
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-proposal-card::after,
body[data-page="/precios/"] .pricing-compare-board::after,
body[data-page="/precios/"] .pricing-final-cta::after {
  content: "";
  position: absolute;
  inset: auto 10% 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 219, 132, 0.95), transparent);
  box-shadow: 0 0 18px rgba(240, 189, 85, 0.85);
  pointer-events: none;
}

body[data-page="/precios/"] .pricing-proposal-card > div {
  gap: 0 !important;
  margin-top: 2.2rem !important;
}

body[data-page="/precios/"] .pricing-proposal-card article {
  grid-template-columns: 54px minmax(0, 1fr) !important;
  min-height: 120px;
  padding: 1.1rem 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(240, 189, 85, 0.18) !important;
  background: transparent !important;
}

body[data-page="/precios/"] .pricing-proposal-card article:last-child {
  border-bottom: 0 !important;
}

body[data-page="/precios/"] .pricing-proposal-card article span {
  width: 44px !important;
  height: 44px !important;
  background: rgba(240, 189, 85, 0.1);
}

body[data-page="/precios/"] .pricing-process-track {
  position: relative;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(2rem, 4vw, 4.4rem) !important;
  margin-top: clamp(2rem, 3.8vw, 4rem);
}

body[data-page="/precios/"] .pricing-process-track::before {
  content: "";
  position: absolute;
  top: 86px;
  left: 12%;
  right: 12%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(240, 189, 85, 0.82), transparent);
}

body[data-page="/precios/"] .pricing-process-step {
  min-height: 360px !important;
  justify-items: center;
  text-align: center;
  padding: clamp(2rem, 2.8vw, 3rem) 1.5rem !important;
}

body[data-page="/precios/"] .pricing-process-step h3,
body[data-page="/precios/"] .pricing-service-card h3,
body[data-page="/precios/"] .pricing-route-card-v2 h3 {
  font-family: "Playfair Display", Georgia, serif !important;
  color: var(--pricing-ivory) !important;
  font-size: clamp(2rem, 2.6vw, 3rem) !important;
  line-height: 0.98 !important;
}

body[data-page="/precios/"] .pricing-process-step small {
  color: var(--pricing-gold) !important;
  font-weight: 900;
}

body[data-page="/precios/"] .pricing-process-step h3::after {
  content: "";
  width: 44px;
  height: 1px;
  display: block;
  margin: 1rem auto 0;
  background: var(--pricing-gold);
}

body[data-page="/precios/"] .pricing-range-top {
  justify-content: center !important;
}

body[data-page="/precios/"] .pricing-range-signal {
  display: none !important;
}

body[data-page="/precios/"] .pricing-service-index {
  gap: clamp(1.1rem, 1.8vw, 1.6rem) !important;
}

body[data-page="/precios/"] .pricing-service-main {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body[data-page="/precios/"] .pricing-service-secondary {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body[data-page="/precios/"] .pricing-service-card figure,
body[data-page="/precios/"] .pricing-route-card-v2 figure {
  height: clamp(220px, 22vw, 300px) !important;
  border-bottom-color: rgba(240, 189, 85, 0.2) !important;
}

body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card figure {
  height: clamp(190px, 17vw, 245px) !important;
}

body[data-page="/precios/"] .pricing-service-body,
body[data-page="/precios/"] .pricing-service-card.is-secondary > div,
body[data-page="/precios/"] .pricing-route-card-v2 > div {
  padding: clamp(1.35rem, 2vw, 2rem) !important;
  gap: 0.75rem !important;
}

body[data-page="/precios/"] .pricing-service-card .pricing-icon-badge,
body[data-page="/precios/"] .pricing-route-card-v2 .pricing-icon-badge {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
}

body[data-page="/precios/"] .pricing-service-card .pricing-icon-badge svg,
body[data-page="/precios/"] .pricing-route-card-v2 .pricing-icon-badge svg {
  width: 22px !important;
  height: 22px !important;
}

body[data-page="/precios/"] .pricing-compare-layout {
  grid-template-columns: minmax(320px, 0.52fr) minmax(0, 1fr) !important;
  gap: clamp(3rem, 6vw, 6rem) !important;
  align-items: center !important;
}

body[data-page="/precios/"] .pricing-compare-copy h2 {
  max-width: 10ch !important;
}

body[data-page="/precios/"] .pricing-decision-note,
body[data-page="/precios/"] .pricing-faq-mini {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1rem;
  align-items: center;
  margin-top: 2.2rem;
  padding: 1.2rem;
  border: 1px solid var(--pricing-line);
  border-radius: var(--pricing-radius);
  background: rgba(240, 189, 85, 0.045);
}

body[data-page="/precios/"] .pricing-decision-note .pricing-faq-logo,
body[data-page="/precios/"] .pricing-faq-mini .pricing-faq-logo {
  width: 60px !important;
  height: 60px !important;
  min-width: 60px !important;
}

body[data-page="/precios/"] .pricing-compare-board {
  position: relative;
  gap: 0 !important;
  padding: 0 !important;
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-compare-table-head,
body[data-page="/precios/"] .pricing-compare-table-row {
  display: grid;
  grid-template-columns: minmax(260px, 0.95fr) minmax(220px, 0.9fr) minmax(240px, 0.95fr);
}

body[data-page="/precios/"] .pricing-compare-table-head span {
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  border-right: 1px solid var(--pricing-line);
  border-bottom: 1px solid var(--pricing-line);
  color: var(--pricing-ivory);
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body[data-page="/precios/"] .pricing-compare-table-head span:last-child {
  border-right: 0;
  color: var(--pricing-gold);
}

body[data-page="/precios/"] .pricing-compare-table-row > div {
  min-height: 170px;
  padding: clamp(1.25rem, 2vw, 2rem);
  border-right: 1px solid var(--pricing-line);
  border-bottom: 1px solid var(--pricing-line);
}

body[data-page="/precios/"] .pricing-compare-table-row > div:last-child {
  border-right: 0;
}

body[data-page="/precios/"] .pricing-compare-criterion {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1.1rem;
  align-items: center;
}

body[data-page="/precios/"] .pricing-compare-criterion h3 {
  margin: 0 0 0.35rem;
  color: var(--pricing-gold);
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 0.95rem !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body[data-page="/precios/"] .pricing-compare-cell {
  display: grid;
  align-content: center;
}

body[data-page="/precios/"] .pricing-compare-cell.is-clear {
  color: var(--pricing-gold);
  background: linear-gradient(90deg, rgba(240, 189, 85, 0.07), rgba(240, 189, 85, 0.12));
}

body[data-page="/precios/"] .pricing-compare-footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1.4rem;
  align-items: center;
  padding: 1.35rem 2rem;
}

body[data-page="/precios/"] .pricing-compare-footer strong {
  color: var(--pricing-ivory);
}

body[data-page="/precios/"] .pricing-compare-footer span {
  color: var(--pricing-gold);
}

body[data-page="/precios/"] .pricing-route-heading {
  margin-inline: auto !important;
  text-align: center !important;
}

body[data-page="/precios/"] .pricing-route-heading .eyebrow {
  justify-content: center;
}

body[data-page="/precios/"] .pricing-route-heading .lead {
  margin-inline: auto;
}

body[data-page="/precios/"] .pricing-route-grid-v2 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(1.3rem, 2.2vw, 2rem) !important;
}

body[data-page="/precios/"] .pricing-route-card-v2 {
  min-height: 590px;
}

body[data-page="/precios/"] .pricing-faq-layout {
  grid-template-columns: minmax(340px, 0.43fr) minmax(0, 0.74fr) !important;
  gap: clamp(4rem, 8vw, 8rem) !important;
  align-items: start !important;
}

body[data-page="/precios/"] .pricing-faq-aside {
  padding: clamp(2rem, 3vw, 3rem) !important;
}

body[data-page="/precios/"] .pricing-faq-aside h2 {
  max-width: 11ch !important;
  font-size: clamp(2.6rem, 4vw, 4.2rem) !important;
}

body[data-page="/precios/"] .pricing-faq-aside ul {
  margin-top: 1.6rem !important;
}

body[data-page="/precios/"] .pricing-faq-aside li {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  min-height: 54px;
  padding: 0.86rem 1rem !important;
}

body[data-page="/precios/"] .pricing-faq-aside li::before {
  content: "\2713";
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(240, 189, 85, 0.45);
  border-radius: 999px;
  color: var(--pricing-gold);
  font-size: 0.8rem;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list {
  counter-reset: faq;
  max-width: none !important;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list details {
  counter-increment: faq;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list summary {
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  min-height: 88px !important;
  padding: 1.2rem 1.4rem !important;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.12rem, 1.5vw, 1.45rem);
}

body[data-page="/precios/"] .pricing-faq-section .faq-list summary::before {
  content: counter(faq, decimal-leading-zero);
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(240, 189, 85, 0.36);
  border-radius: 999px;
  color: var(--pricing-gold);
  font-family: Inter, system-ui, sans-serif;
  font-size: 0.82rem;
  font-weight: 900;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list p {
  padding-left: calc(1.4rem + 46px + 1rem) !important;
}

body[data-page="/precios/"] .pricing-final-cta {
  width: calc(100% - clamp(26px, 3vw, 44px)) !important;
  max-width: none !important;
  min-height: calc(100vh - 44px) !important;
  min-height: calc(100svh - 44px) !important;
  margin: 1.4rem auto clamp(2rem, 3vw, 3rem) !important;
  border-radius: 12px !important;
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media {
  opacity: 0.8 !important;
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.9) brightness(0.64) contrast(1.08);
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media::after {
  background:
    linear-gradient(90deg, rgba(3, 5, 4, 0.98) 0%, rgba(3, 5, 4, 0.78) 42%, rgba(3, 5, 4, 0.36) 72%, rgba(3, 5, 4, 0.75) 100%),
    linear-gradient(180deg, rgba(3, 5, 4, 0.35), rgba(3, 5, 4, 0.82)) !important;
}

body[data-page="/precios/"] .pricing-final-shell {
  min-height: inherit;
  display: grid;
  align-items: center;
  padding: clamp(4rem, 7vw, 7rem) max(32px, calc((100vw - 1480px) / 2)) !important;
}

body[data-page="/precios/"] .pricing-final-copy {
  max-width: 820px;
  display: block !important;
}

body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 12ch !important;
  font-size: clamp(4rem, 7vw, 7.4rem) !important;
}

body[data-page="/precios/"] .pricing-final-actions {
  margin-top: 2rem;
}

body[data-page="/precios/"] .pricing-final-notes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  max-width: 760px;
  margin-top: clamp(2.5rem, 4vw, 4.5rem);
}

body[data-page="/precios/"] .pricing-final-notes span {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 0.7rem;
  align-items: center;
  color: rgba(255, 247, 235, 0.78);
}

body[data-page="/precios/"] .pricing-final-notes svg {
  width: 30px;
  height: 30px;
  color: var(--pricing-gold);
}

body[data-page="/precios/"] .pricing-final-notes svg * {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.55 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

@media (max-width: 1180px) {
  body[data-page="/precios/"] {
    --pricing-max: min(100% - 40px, 980px);
  }

  body[data-page="/precios/"] .pricing-hero,
  body[data-page="/precios/"] .pricing-editorial-grid,
  body[data-page="/precios/"] .pricing-compare-layout,
  body[data-page="/precios/"] .pricing-faq-layout {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/precios/"] .pricing-hero {
    min-height: auto !important;
    padding-inline: max(20px, calc((100vw - 980px) / 2)) !important;
  }

  body[data-page="/precios/"] .pricing-command-panel {
    max-width: 100% !important;
    margin-left: 0 !important;
  }

  body[data-page="/precios/"] .pricing-process-track,
  body[data-page="/precios/"] .pricing-service-main,
  body[data-page="/precios/"] .pricing-service-secondary,
  body[data-page="/precios/"] .pricing-route-grid-v2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/precios/"] .pricing-process-track::before {
    display: none;
  }

  body[data-page="/precios/"] .pricing-compare-copy,
  body[data-page="/precios/"] .pricing-faq-aside {
    position: static !important;
  }

  body[data-page="/precios/"] .pricing-compare-table-head,
  body[data-page="/precios/"] .pricing-compare-table-row {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/precios/"] .pricing-compare-table-head span,
  body[data-page="/precios/"] .pricing-compare-table-row > div {
    border-right: 0 !important;
  }

  body[data-page="/precios/"] .pricing-final-copy h2 {
    max-width: 13ch !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/precios/"] {
    --pricing-max: min(100% - 24px, 100%);
  }

  body[data-page="/precios/"] .pricing-hero {
    padding: 6.5rem 12px 3rem !important;
  }

  body[data-page="/precios/"] .pricing-hero h1 {
    max-width: 8ch !important;
    font-size: clamp(3.6rem, 17vw, 5rem) !important;
  }

  body[data-page="/precios/"] .pricing-editorial-section,
  body[data-page="/precios/"] .pricing-range-section,
  body[data-page="/precios/"] .pricing-index-section,
  body[data-page="/precios/"] .pricing-compare-section,
  body[data-page="/precios/"] .pricing-route-section,
  body[data-page="/precios/"] .pricing-faq-section {
    padding-top: 3.8rem !important;
    padding-bottom: 3.8rem !important;
  }

  body[data-page="/precios/"] .pricing-editorial-section h2,
  body[data-page="/precios/"] .pricing-section-heading h2,
  body[data-page="/precios/"] .pricing-compare-copy h2,
  body[data-page="/precios/"] .pricing-faq-heading h2,
  body[data-page="/precios/"] .pricing-faq-aside h2,
  body[data-page="/precios/"] .pricing-final-copy h2 {
    max-width: 100% !important;
    font-size: clamp(2.7rem, 12vw, 4rem) !important;
  }

  body[data-page="/precios/"] .pricing-process-track,
  body[data-page="/precios/"] .pricing-service-main,
  body[data-page="/precios/"] .pricing-service-secondary,
  body[data-page="/precios/"] .pricing-route-grid-v2,
  body[data-page="/precios/"] .pricing-final-notes {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/precios/"] .pricing-process-step {
    min-height: auto !important;
  }

  body[data-page="/precios/"] .pricing-icon-badge,
  body[data-page="/precios/"] .pricing-command-mark,
  body[data-page="/precios/"] .pricing-rule-logo,
  body[data-page="/precios/"] .pricing-range-mark,
  body[data-page="/precios/"] .pricing-compare-icon,
  body[data-page="/precios/"] .pricing-compare-badge,
  body[data-page="/precios/"] .pricing-faq-logo {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
  }

  body[data-page="/precios/"] .pricing-command-list article,
  body[data-page="/precios/"] .pricing-rule-list article,
  body[data-page="/precios/"] .pricing-proposal-card article,
  body[data-page="/precios/"] .pricing-decision-note,
  body[data-page="/precios/"] .pricing-faq-mini {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/precios/"] .pricing-faq-section .faq-list summary {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    font-size: 1.05rem;
  }

  body[data-page="/precios/"] .pricing-faq-section .faq-list p {
    padding-left: 1.4rem !important;
  }

  body[data-page="/precios/"] .page-shell .button,
  body[data-page="/precios/"] .card-link,
  body[data-page="/precios/"] .pricing-service-link {
    width: 100%;
  }

  body[data-page="/precios/"] .pricing-final-cta {
    min-height: auto !important;
  }

  body[data-page="/precios/"] .pricing-final-shell {
    padding: 4rem 1rem !important;
  }
}

@media (min-width: 801px) {
  body:not([data-page="/portfolio/"]) .button-nav {
    min-width: 207px !important;
  }
}

/* V4.69 - Pricing hub premium system */
body[data-page="/precios/"] {
  --pricing-max: min(100% - 64px, 1240px);
  --pricing-gap: clamp(1rem, 1.7vw, 1.35rem);
  --pricing-section-y: clamp(3.4rem, 5.8vw, 5.6rem);
  --pricing-card-pad: clamp(1.15rem, 1.7vw, 1.45rem);
  --pricing-radius: 8px;
  --pricing-radius-sm: 6px;
  --pricing-gold: #f2c15c;
  --pricing-gold-soft: rgba(242, 193, 92, 0.72);
  --pricing-border: rgba(242, 193, 92, 0.18);
  --pricing-border-strong: rgba(242, 193, 92, 0.34);
  --pricing-text: rgba(248, 246, 238, 0.94);
  --pricing-muted: rgba(248, 246, 238, 0.66);
  --pricing-card: linear-gradient(145deg, rgba(14, 17, 15, 0.94), rgba(6, 9, 8, 0.96));
  --pricing-card-hover: linear-gradient(145deg, rgba(20, 22, 19, 0.97), rgba(8, 10, 9, 0.98));
  background:
    radial-gradient(circle at 82% 10%, rgba(242, 193, 92, 0.055), transparent 26rem),
    #050806;
}

body[data-page="/precios/"] .page-shell {
  background: transparent;
}

body[data-page="/precios/"] .breadcrumbs,
body[data-page="/precios/"] .pricing-editorial-section,
body[data-page="/precios/"] .pricing-range-section,
body[data-page="/precios/"] .pricing-index-section,
body[data-page="/precios/"] .pricing-compare-section,
body[data-page="/precios/"] .pricing-route-section,
body[data-page="/precios/"] .pricing-faq-section,
body[data-page="/precios/"] .pricing-final-cta {
  width: var(--pricing-max) !important;
  max-width: var(--pricing-max) !important;
  margin-inline: auto !important;
}

body[data-page="/precios/"] .pricing-editorial-section,
body[data-page="/precios/"] .pricing-range-section,
body[data-page="/precios/"] .pricing-index-section,
body[data-page="/precios/"] .pricing-compare-section,
body[data-page="/precios/"] .pricing-route-section,
body[data-page="/precios/"] .pricing-faq-section {
  min-height: auto !important;
  padding: var(--pricing-section-y) 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body[data-page="/precios/"] .pricing-section-heading,
body[data-page="/precios/"] .pricing-compare-copy,
body[data-page="/precios/"] .pricing-faq-heading {
  max-width: 720px !important;
  margin: 0 0 clamp(1.4rem, 2.2vw, 2rem) !important;
  text-align: left !important;
}

body[data-page="/precios/"] .pricing-section-heading h2,
body[data-page="/precios/"] .pricing-editorial-section h2,
body[data-page="/precios/"] .pricing-compare-copy h2,
body[data-page="/precios/"] .pricing-faq-aside h2,
body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 12.5ch;
  margin: 0;
  color: var(--pricing-text);
  font-size: clamp(2.55rem, 4.1vw, 4.5rem);
  line-height: 0.96;
  letter-spacing: 0;
}

body[data-page="/precios/"] .pricing-section-heading .lead,
body[data-page="/precios/"] .pricing-editorial-section .lead,
body[data-page="/precios/"] .pricing-compare-copy .lead,
body[data-page="/precios/"] .pricing-faq-heading .lead,
body[data-page="/precios/"] .pricing-final-copy .lead,
body[data-page="/precios/"] .pricing-hero .lead {
  max-width: 62ch;
  color: var(--pricing-muted);
  font-size: clamp(1rem, 1.12vw, 1.11rem);
  line-height: 1.72;
}

body[data-page="/precios/"] .pricing-hero {
  width: 100% !important;
  max-width: none !important;
  min-height: clamp(610px, 76vh, 780px) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.95fr) minmax(390px, 0.55fr) !important;
  align-items: center !important;
  gap: clamp(2rem, 5vw, 5rem) !important;
  padding: clamp(7.5rem, 10vw, 9.2rem) max(32px, calc((100vw - 1240px) / 2)) clamp(3.2rem, 5vw, 4.5rem) !important;
  overflow: hidden;
  border-bottom: 1px solid rgba(242, 193, 92, 0.12);
}

body[data-page="/precios/"] .pricing-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(3, 6, 5, 0.96) 0%, rgba(3, 6, 5, 0.76) 38%, rgba(3, 6, 5, 0.38) 68%, rgba(3, 6, 5, 0.82) 100%),
    radial-gradient(circle at 75% 28%, rgba(242, 193, 92, 0.12), transparent 22rem);
  pointer-events: none;
}

body[data-page="/precios/"] .pricing-hero .internal-hero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

body[data-page="/precios/"] .pricing-hero .internal-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.92) brightness(0.74);
}

body[data-page="/precios/"] .pricing-hero .hero-copy,
body[data-page="/precios/"] .pricing-hero .hero-panel {
  position: relative;
  z-index: 2;
}

body[data-page="/precios/"] .pricing-hero .hero-copy {
  max-width: 690px !important;
}

body[data-page="/precios/"] .pricing-hero h1 {
  max-width: 10.5ch;
  margin: 0;
  color: var(--pricing-text);
  font-size: clamp(4rem, 7.4vw, 7.1rem);
  line-height: 0.9;
  letter-spacing: 0;
}

body[data-page="/precios/"] .pricing-hero .cta-row,
body[data-page="/precios/"] .pricing-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
}

body[data-page="/precios/"] .page-shell .button,
body[data-page="/precios/"] .card-link,
body[data-page="/precios/"] .pricing-service-link {
  min-height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.5rem !important;
  border-radius: 7px !important;
  padding: 0.86rem 1.18rem !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.03em !important;
  text-transform: none !important;
  transition: transform 0.35s ease, border-color 0.35s ease, background 0.35s ease, color 0.35s ease;
}

body[data-page="/precios/"] .page-shell .button-primary {
  border: 1px solid rgba(242, 193, 92, 0.86) !important;
  background: linear-gradient(135deg, #f4c766, #dba13a) !important;
  color: #080806 !important;
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.24);
}

body[data-page="/precios/"] .page-shell .button-secondary,
body[data-page="/precios/"] .card-link,
body[data-page="/precios/"] .pricing-service-link {
  border: 1px solid var(--pricing-border-strong) !important;
  background: rgba(5, 8, 7, 0.52) !important;
  color: var(--pricing-text) !important;
}

body[data-page="/precios/"] .page-shell .button:hover,
body[data-page="/precios/"] .card-link:hover,
body[data-page="/precios/"] .pricing-service-link:hover {
  transform: translateY(-2px);
  border-color: rgba(242, 193, 92, 0.68) !important;
}

body[data-page="/precios/"] .pricing-command-panel,
body[data-page="/precios/"] .pricing-proposal-card,
body[data-page="/precios/"] .pricing-process-step,
body[data-page="/precios/"] .pricing-service-card,
body[data-page="/precios/"] .pricing-compare-board,
body[data-page="/precios/"] .pricing-route-card-v2,
body[data-page="/precios/"] .pricing-faq-aside,
body[data-page="/precios/"] .pricing-faq-section .faq-list details {
  border: 1px solid var(--pricing-border) !important;
  border-radius: var(--pricing-radius) !important;
  background: var(--pricing-card) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035), 0 24px 70px rgba(0, 0, 0, 0.22);
}

body[data-page="/precios/"] .pricing-process-step,
body[data-page="/precios/"] .pricing-service-card,
body[data-page="/precios/"] .pricing-route-card-v2,
body[data-page="/precios/"] .pricing-compare-card,
body[data-page="/precios/"] .pricing-rule-list article,
body[data-page="/precios/"] .pricing-proposal-card article {
  transition: transform 0.45s ease, border-color 0.45s ease, background 0.45s ease;
}

body[data-page="/precios/"] .pricing-process-step:hover,
body[data-page="/precios/"] .pricing-service-card:hover,
body[data-page="/precios/"] .pricing-route-card-v2:hover,
body[data-page="/precios/"] .pricing-compare-card:hover,
body[data-page="/precios/"] .pricing-rule-list article:hover,
body[data-page="/precios/"] .pricing-proposal-card article:hover {
  transform: translateY(-3px);
  border-color: var(--pricing-border-strong) !important;
  background: var(--pricing-card-hover) !important;
}

body[data-page="/precios/"] .pricing-command-panel {
  max-width: 455px;
  margin-left: auto;
  padding: clamp(1.2rem, 2vw, 1.65rem) !important;
  backdrop-filter: blur(22px);
  background:
    radial-gradient(circle at 12% 0%, rgba(242, 193, 92, 0.13), transparent 15rem),
    linear-gradient(150deg, rgba(14, 17, 15, 0.88), rgba(5, 8, 7, 0.94)) !important;
}

body[data-page="/precios/"] .pricing-command-head {
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid rgba(242, 193, 92, 0.14);
}

body[data-page="/precios/"] .pricing-command-head h3,
body[data-page="/precios/"] .pricing-proposal-card h3 {
  margin: 0;
  max-width: 12ch;
  color: var(--pricing-text);
  font-size: clamp(1.55rem, 2.1vw, 2.1rem);
  line-height: 1.04;
  letter-spacing: 0;
}

body[data-page="/precios/"] .pricing-command-list {
  display: grid;
  gap: 0.7rem;
}

body[data-page="/precios/"] .pricing-command-list article,
body[data-page="/precios/"] .pricing-rule-list article,
body[data-page="/precios/"] .pricing-proposal-card article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 0.9rem;
  min-height: 92px;
  padding: 0.95rem !important;
  border: 1px solid rgba(242, 193, 92, 0.12);
  border-radius: var(--pricing-radius-sm);
  background: rgba(255, 255, 255, 0.025);
}

body[data-page="/precios/"] .pricing-command-list article p,
body[data-page="/precios/"] .pricing-rule-list article p,
body[data-page="/precios/"] .pricing-proposal-card article p,
body[data-page="/precios/"] .pricing-process-step p,
body[data-page="/precios/"] .pricing-service-card p,
body[data-page="/precios/"] .pricing-route-card-v2 p,
body[data-page="/precios/"] .pricing-compare-lane p {
  margin: 0;
  color: var(--pricing-muted);
  line-height: 1.58;
}

body[data-page="/precios/"] .pricing-command-list strong,
body[data-page="/precios/"] .pricing-proposal-card strong {
  display: block;
  margin-bottom: 0.25rem;
  color: var(--pricing-text);
}

body[data-page="/precios/"] .pricing-icon-badge,
body[data-page="/precios/"] .pricing-command-mark,
body[data-page="/precios/"] .pricing-rule-logo,
body[data-page="/precios/"] .pricing-range-mark,
body[data-page="/precios/"] .pricing-compare-icon,
body[data-page="/precios/"] .pricing-compare-badge,
body[data-page="/precios/"] .pricing-faq-logo {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(242, 193, 92, 0.32) !important;
  border-radius: 12px !important;
  color: var(--pricing-gold) !important;
  background:
    radial-gradient(circle at 35% 20%, rgba(242, 193, 92, 0.18), transparent 3rem),
    rgba(9, 12, 10, 0.92) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.025);
}

body[data-page="/precios/"] .pricing-icon-badge svg,
body[data-page="/precios/"] .pricing-command-mark svg,
body[data-page="/precios/"] .pricing-rule-logo svg,
body[data-page="/precios/"] .pricing-range-mark svg,
body[data-page="/precios/"] .pricing-compare-icon svg,
body[data-page="/precios/"] .pricing-compare-badge svg,
body[data-page="/precios/"] .pricing-faq-logo svg {
  width: 24px;
  height: 24px;
}

body[data-page="/precios/"] .pricing-icon-badge svg *,
body[data-page="/precios/"] .pricing-command-mark svg *,
body[data-page="/precios/"] .pricing-rule-logo svg *,
body[data-page="/precios/"] .pricing-range-mark svg *,
body[data-page="/precios/"] .pricing-compare-icon svg *,
body[data-page="/precios/"] .pricing-compare-badge svg *,
body[data-page="/precios/"] .pricing-faq-logo svg * {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.55 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body[data-page="/precios/"] .pricing-editorial-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.95fr) minmax(360px, 0.55fr) !important;
  gap: clamp(1.4rem, 3vw, 2.4rem) !important;
  align-items: stretch !important;
}

body[data-page="/precios/"] .pricing-rule-list {
  display: grid !important;
  gap: 0.8rem !important;
  margin-top: 1.35rem !important;
}

body[data-page="/precios/"] .pricing-proposal-card {
  min-height: 100%;
  padding: var(--pricing-card-pad) !important;
}

body[data-page="/precios/"] .pricing-proposal-card > div {
  display: grid;
  gap: 0.75rem;
  margin-top: 1.2rem;
}

body[data-page="/precios/"] .pricing-proposal-card article {
  grid-template-columns: 44px minmax(0, 1fr);
}

body[data-page="/precios/"] .pricing-proposal-card article span {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(242, 193, 92, 0.28);
  border-radius: 999px;
  color: var(--pricing-gold);
  font-weight: 800;
  font-size: 0.76rem;
}

body[data-page="/precios/"] .pricing-process-track {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
  align-items: stretch !important;
}

body[data-page="/precios/"] .pricing-process-step {
  min-height: 310px;
  display: grid !important;
  grid-template-rows: auto auto auto 1fr;
  gap: 0.85rem;
  padding: var(--pricing-card-pad) !important;
}

body[data-page="/precios/"] .pricing-range-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

body[data-page="/precios/"] .pricing-range-signal {
  width: 42px;
  height: 1px;
  display: block;
  background: linear-gradient(90deg, rgba(242, 193, 92, 0), rgba(242, 193, 92, 0.7));
}

body[data-page="/precios/"] .pricing-process-step small,
body[data-page="/precios/"] .card-kicker,
body[data-page="/precios/"] .panel-label,
body[data-page="/precios/"] .pricing-compare-lane small,
body[data-page="/precios/"] .pricing-compare-card-head span,
body[data-page="/precios/"] .pricing-compare-board-head span {
  color: var(--pricing-gold) !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body[data-page="/precios/"] .pricing-process-step h3,
body[data-page="/precios/"] .pricing-service-card h3,
body[data-page="/precios/"] .pricing-route-card-v2 h3,
body[data-page="/precios/"] .pricing-compare-card h3 {
  margin: 0;
  color: var(--pricing-text);
  font-size: clamp(1.25rem, 1.6vw, 1.55rem);
  line-height: 1.08;
  letter-spacing: 0;
}

body[data-page="/precios/"] .pricing-service-index {
  display: grid;
  gap: var(--pricing-gap);
}

body[data-page="/precios/"] .pricing-service-main {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
  align-items: stretch !important;
}

body[data-page="/precios/"] .pricing-service-secondary {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
  align-items: stretch !important;
}

body[data-page="/precios/"] .pricing-service-card {
  height: 100%;
  min-height: 100%;
  display: flex !important;
  flex-direction: column;
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-service-card figure,
body[data-page="/precios/"] .pricing-route-card-v2 figure {
  width: 100%;
  height: 220px !important;
  margin: 0 !important;
  overflow: hidden;
  border-bottom: 1px solid rgba(242, 193, 92, 0.12);
  background: #080b09;
}

body[data-page="/precios/"] .pricing-route-card-v2 figure {
  height: 235px !important;
}

body[data-page="/precios/"] .pricing-service-card figure img,
body[data-page="/precios/"] .pricing-route-card-v2 figure img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: saturate(0.9) brightness(0.86);
  transition: transform 0.65s ease, filter 0.65s ease;
}

body[data-page="/precios/"] .pricing-service-card:hover figure img,
body[data-page="/precios/"] .pricing-route-card-v2:hover figure img {
  transform: scale(1.025);
  filter: saturate(1) brightness(0.96);
}

body[data-page="/precios/"] .pricing-service-body,
body[data-page="/precios/"] .pricing-service-card.is-secondary > div,
body[data-page="/precios/"] .pricing-route-card-v2 > div {
  min-height: 100%;
  display: flex !important;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 0.72rem;
  padding: var(--pricing-card-pad) !important;
}

body[data-page="/precios/"] .pricing-service-actions {
  display: flex !important;
  flex-wrap: wrap;
  gap: 0.6rem !important;
  margin-top: auto !important;
  padding-top: 1rem;
}

body[data-page="/precios/"] .pricing-service-link {
  min-height: 42px !important;
  padding-inline: 0.95rem !important;
  color: rgba(248, 246, 238, 0.78) !important;
}

body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card {
  min-height: 290px;
}

body[data-page="/precios/"] .pricing-compare-layout {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.78fr) minmax(0, 1.22fr) !important;
  gap: clamp(1.5rem, 3.2vw, 2.6rem) !important;
  align-items: start !important;
}

body[data-page="/precios/"] .pricing-compare-copy {
  position: sticky;
  top: 102px;
}

body[data-page="/precios/"] .pricing-compare-board {
  display: grid !important;
  gap: 0.72rem !important;
  padding: var(--pricing-card-pad) !important;
}

body[data-page="/precios/"] .pricing-compare-board-head {
  display: grid;
  gap: 0.25rem;
  padding: 0.2rem 0 0.95rem;
  border-bottom: 1px solid rgba(242, 193, 92, 0.16);
}

body[data-page="/precios/"] .pricing-compare-board-head strong {
  color: var(--pricing-text);
  font-size: clamp(1.2rem, 1.45vw, 1.45rem);
  line-height: 1.18;
}

body[data-page="/precios/"] .pricing-compare-card {
  display: grid !important;
  grid-template-columns: minmax(150px, 0.38fr) minmax(0, 1fr) !important;
  gap: 0.75rem !important;
  align-items: stretch !important;
  min-height: 148px;
  padding: 0.72rem !important;
  border: 1px solid rgba(242, 193, 92, 0.12) !important;
  border-radius: var(--pricing-radius-sm);
  background: rgba(255, 255, 255, 0.024) !important;
}

body[data-page="/precios/"] .pricing-compare-card-head {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.7rem;
  align-items: center;
  min-height: 100%;
  padding: 0.72rem;
  border-radius: 5px;
  background: rgba(242, 193, 92, 0.04);
}

body[data-page="/precios/"] .pricing-compare-lanes {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.55rem !important;
}

body[data-page="/precios/"] .pricing-compare-lane {
  min-height: 100%;
  display: grid;
  align-content: start;
  gap: 0.35rem;
  padding: 0.95rem !important;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.028);
}

body[data-page="/precios/"] .pricing-compare-lane.is-clear {
  border-color: rgba(242, 193, 92, 0.22);
  background: rgba(242, 193, 92, 0.055);
}

body[data-page="/precios/"] .pricing-route-grid-v2 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--pricing-gap) !important;
  align-items: stretch !important;
}

body[data-page="/precios/"] .pricing-route-card-v2 {
  height: 100%;
  display: flex !important;
  flex-direction: column;
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-route-card-v2 .card-link,
body[data-page="/precios/"] .pricing-service-card .card-link {
  margin-top: auto;
}

body[data-page="/precios/"] .pricing-faq-layout {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.42fr) minmax(0, 1fr) !important;
  gap: clamp(1.4rem, 3vw, 2.4rem) !important;
  align-items: start !important;
}

body[data-page="/precios/"] .pricing-faq-aside {
  position: sticky;
  top: 102px;
  padding: var(--pricing-card-pad) !important;
}

body[data-page="/precios/"] .pricing-faq-aside h2 {
  max-width: 11ch;
  font-size: clamp(2.25rem, 3.1vw, 3.4rem);
}

body[data-page="/precios/"] .pricing-faq-aside ul {
  display: grid;
  gap: 0.55rem;
  margin: 1.2rem 0 0;
  padding: 0;
  list-style: none;
}

body[data-page="/precios/"] .pricing-faq-aside li {
  padding: 0.78rem 0.85rem;
  border: 1px solid rgba(242, 193, 92, 0.12);
  border-radius: 5px;
  color: var(--pricing-muted);
  background: rgba(255, 255, 255, 0.025);
}

body[data-page="/precios/"] .pricing-faq-section .faq-list {
  display: grid;
  gap: 0.75rem;
  max-width: 780px;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list details {
  padding: 0 !important;
  overflow: hidden;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list summary {
  min-height: 76px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
  padding: 1rem 1.15rem !important;
  color: var(--pricing-text);
  font-weight: 800;
  cursor: pointer;
  list-style: none;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list summary::-webkit-details-marker {
  display: none;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list summary::after {
  content: "+";
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(242, 193, 92, 0.28);
  border-radius: 999px;
  color: var(--pricing-gold);
  font-size: 1.1rem;
  line-height: 1;
}

body[data-page="/precios/"] .pricing-faq-section .faq-list details[open] summary::after {
  content: "-";
  background: rgba(242, 193, 92, 0.12);
}

body[data-page="/precios/"] .pricing-faq-section .faq-list p {
  margin: 0;
  padding: 0 1.15rem 1.15rem;
  max-width: 66ch;
  color: var(--pricing-muted);
  line-height: 1.72;
}

body[data-page="/precios/"] .pricing-final-cta {
  min-height: auto !important;
  margin-top: clamp(1rem, 2vw, 2rem) !important;
  margin-bottom: clamp(3rem, 5vw, 5rem) !important;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid var(--pricing-border) !important;
  border-radius: var(--pricing-radius) !important;
  background: var(--pricing-card) !important;
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media {
  position: absolute;
  inset: 0;
  opacity: 0.28;
}

body[data-page="/precios/"] .pricing-final-cta .internal-final-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(5, 8, 7, 0.96), rgba(5, 8, 7, 0.74), rgba(5, 8, 7, 0.92));
}

body[data-page="/precios/"] .pricing-final-shell {
  position: relative;
  z-index: 1;
  padding: clamp(2rem, 4vw, 3.4rem) !important;
}

body[data-page="/precios/"] .pricing-final-copy {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) auto;
  gap: clamp(1.3rem, 3vw, 2.2rem);
  align-items: end;
}

body[data-page="/precios/"] .pricing-final-copy .eyebrow,
body[data-page="/precios/"] .pricing-final-copy h2,
body[data-page="/precios/"] .pricing-final-copy .lead {
  grid-column: 1;
}

body[data-page="/precios/"] .pricing-final-copy h2 {
  max-width: 13ch;
  font-size: clamp(2.35rem, 3.8vw, 4rem);
}

body[data-page="/precios/"] .pricing-final-actions {
  grid-column: 2;
  grid-row: 1 / span 3;
  justify-content: flex-end;
  align-self: center;
}

@media (max-width: 1180px) {
  body[data-page="/precios/"] {
    --pricing-max: min(100% - 40px, 920px);
  }

  body[data-page="/precios/"] .pricing-hero,
  body[data-page="/precios/"] .pricing-editorial-grid,
  body[data-page="/precios/"] .pricing-compare-layout,
  body[data-page="/precios/"] .pricing-faq-layout,
  body[data-page="/precios/"] .pricing-final-copy {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/precios/"] .pricing-hero {
    min-height: auto !important;
    padding-inline: max(20px, calc((100vw - 920px) / 2)) !important;
  }

  body[data-page="/precios/"] .pricing-command-panel {
    max-width: 100%;
    margin-left: 0;
  }

  body[data-page="/precios/"] .pricing-process-track,
  body[data-page="/precios/"] .pricing-service-main,
  body[data-page="/precios/"] .pricing-route-grid-v2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/precios/"] .pricing-service-secondary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/precios/"] .pricing-compare-copy,
  body[data-page="/precios/"] .pricing-faq-aside {
    position: static;
  }

  body[data-page="/precios/"] .pricing-final-actions {
    grid-column: 1;
    grid-row: auto;
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  body[data-page="/precios/"] {
    --pricing-max: min(100% - 24px, 100%);
    --pricing-gap: 0.8rem;
    --pricing-section-y: 3rem;
  }

  body[data-page="/precios/"] .pricing-hero {
    padding: 6.6rem 12px 2.8rem !important;
  }

  body[data-page="/precios/"] .pricing-hero h1 {
    max-width: 8.8ch;
    font-size: clamp(3.2rem, 15vw, 4.6rem);
  }

  body[data-page="/precios/"] .pricing-section-heading h2,
  body[data-page="/precios/"] .pricing-editorial-section h2,
  body[data-page="/precios/"] .pricing-compare-copy h2,
  body[data-page="/precios/"] .pricing-faq-aside h2,
  body[data-page="/precios/"] .pricing-final-copy h2 {
    max-width: 100%;
    font-size: clamp(2.35rem, 11vw, 3.4rem);
  }

  body[data-page="/precios/"] .pricing-process-track,
  body[data-page="/precios/"] .pricing-service-main,
  body[data-page="/precios/"] .pricing-service-secondary,
  body[data-page="/precios/"] .pricing-route-grid-v2,
  body[data-page="/precios/"] .pricing-compare-card,
  body[data-page="/precios/"] .pricing-compare-lanes {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/precios/"] .pricing-process-step,
  body[data-page="/precios/"] .pricing-service-secondary .pricing-service-card {
    min-height: auto;
  }

  body[data-page="/precios/"] .pricing-service-card figure,
  body[data-page="/precios/"] .pricing-route-card-v2 figure {
    height: 205px !important;
  }

  body[data-page="/precios/"] .pricing-hero .cta-row,
  body[data-page="/precios/"] .pricing-final-actions,
  body[data-page="/precios/"] .pricing-service-actions {
    align-items: stretch;
  }

  body[data-page="/precios/"] .page-shell .button,
  body[data-page="/precios/"] .card-link,
  body[data-page="/precios/"] .pricing-service-link {
    width: 100%;
  }

  body[data-page="/precios/"] .pricing-final-shell {
    padding: 1.35rem !important;
  }
}

/* V4.73 vertical hubs: final home-language lock for arquitectura, promotoras and industria. */
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) {
  --vh-shell: min(1240px, calc(100% - clamp(40px, 8vw, 112px)));
  --vh-bg: #050807;
  --vh-bg-soft: #08110d;
  --vh-panel: rgba(9, 13, 11, 0.82);
  --vh-panel-soft: rgba(255, 255, 255, 0.045);
  --vh-line: rgba(240, 198, 107, 0.16);
  --vh-line-soft: rgba(255, 248, 238, 0.1);
  --vh-gold: #f0c66b;
  --vh-gold-muted: #c9a45c;
  --vh-text: #fff8ee;
  --vh-muted: rgba(255, 248, 238, 0.68);
  background:
    radial-gradient(circle at 84% 4%, rgba(240, 198, 107, 0.13), transparent 31rem),
    linear-gradient(180deg, #020303 0%, #08110d 42%, #020303 100%) !important;
  color: var(--vh-text) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .page-shell {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .breadcrumbs {
  display: none !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .site-header {
  min-height: 78px !important;
  padding-inline: clamp(22px, 4vw, 72px) !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 0 !important;
  background: rgba(2, 3, 3, 0.88) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px);
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .brand-mark {
  color: #f5c96c !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: -0.05em !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .site-nav {
  gap: clamp(1rem, 2vw, 2rem) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .site-nav a:not(.button) {
  color: rgba(255, 248, 238, 0.68) !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .button,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-link {
  min-height: 44px !important;
  border-radius: 999px !important;
  padding: 0 1.15rem !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .button-primary,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .button-nav {
  border-color: rgba(240, 198, 107, 0.78) !important;
  color: #11100b !important;
  background: linear-gradient(135deg, #f5c96c, #dca74d 62%, #f0c66b) !important;
  box-shadow: 0 18px 48px rgba(216, 160, 77, 0.18) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .button-secondary,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-link {
  border: 1px solid rgba(240, 198, 107, 0.28) !important;
  color: var(--vh-text) !important;
  background: rgba(5, 8, 7, 0.54) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .button:hover,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-link:hover {
  transform: translateY(-2px);
  border-color: rgba(240, 198, 107, 0.58) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(470px, 0.82fr) !important;
  align-items: center !important;
  gap: clamp(2.2rem, 5vw, 6rem) !important;
  width: 100% !important;
  min-height: clamp(720px, calc(100svh - 78px), 940px) !important;
  max-height: none !important;
  margin: 0 !important;
  padding: clamp(5.4rem, 8vh, 7.4rem) clamp(40px, 8vw, 112px) clamp(3rem, 6vh, 5rem) !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  isolation: isolate;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(118deg, transparent 0 41%, rgba(240, 198, 107, 0.13) 41.04%, transparent 41.24% 100%),
    linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.018) 1px, transparent 1px);
  background-size: 100% 100%, 100% 88px, 88px 100%;
  opacity: 0.44 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: auto 0 0 !important;
  z-index: -1 !important;
  height: 34% !important;
  pointer-events: none !important;
  background: linear-gradient(180deg, transparent, var(--vh-bg) 86%) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero-media {
  position: absolute !important;
  inset: 0 !important;
  z-index: -3 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero-media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 78% 18%, rgba(240, 198, 107, 0.12), transparent 28rem),
    linear-gradient(90deg, rgba(2, 3, 3, 0.92) 0%, rgba(2, 3, 3, 0.68) 42%, rgba(2, 3, 3, 0.9) 100%),
    linear-gradient(180deg, rgba(2, 3, 3, 0.06), rgba(2, 3, 3, 0.74) 88%);
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: brightness(0.78) contrast(1.08) saturate(0.92) !important;
  transform: scale(1.02) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-copy {
  position: relative !important;
  z-index: 2 !important;
  max-width: 760px !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.78rem !important;
  margin: 0 0 1.1rem !important;
  color: var(--vh-gold) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .eyebrow::before {
  content: "" !important;
  width: 36px !important;
  height: 1px !important;
  background: currentColor !important;
  opacity: 0.72 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero h1 {
  max-width: 15.5ch !important;
  margin: 0 0 1rem !important;
  color: var(--vh-text) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(3.75rem, 5.7vw, 6.45rem) !important;
  font-weight: 600 !important;
  line-height: 0.88 !important;
  letter-spacing: 0 !important;
  text-wrap: balance !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero .lead {
  max-width: 64ch !important;
  color: rgba(255, 248, 238, 0.82) !important;
  font-size: clamp(0.98rem, 1.03vw, 1.1rem) !important;
  line-height: 1.62 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero .hero-note {
  max-width: 55ch !important;
  margin-top: 0.75rem !important;
  color: rgba(255, 248, 238, 0.64) !important;
  font-size: 0.92rem !important;
  line-height: 1.5 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero .cta-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.75rem !important;
  margin-top: 1.25rem !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .meta-strip {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.62rem !important;
  margin-top: 1rem !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .meta-strip span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  padding: 0.46rem 0.8rem !important;
  border: 1px solid rgba(240, 198, 107, 0.2) !important;
  border-radius: 999px !important;
  color: rgba(255, 248, 238, 0.8) !important;
  background: rgba(0, 0, 0, 0.26) !important;
  font-size: 0.72rem !important;
  font-weight: 850 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-layered {
  position: relative !important;
  z-index: 2 !important;
  justify-self: end !important;
  display: block !important;
  width: min(100%, 660px) !important;
  min-height: clamp(390px, 42vw, 560px) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-brand {
  display: none !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-visual {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(240, 198, 107, 0.18) !important;
  border-radius: 10px !important;
  background: #050807 !important;
  box-shadow: 0 38px 110px rgba(0, 0, 0, 0.42) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-layered > .visual-frame.hero-panel-visual {
  display: block !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-visual::before {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 2 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.03), rgba(0, 0, 0, 0.5)),
    linear-gradient(118deg, transparent 0 61%, rgba(240, 198, 107, 0.12) 61.05%, transparent 61.3% 100%);
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-visual img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: brightness(0.8) contrast(1.08) saturate(0.9) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-visual figcaption {
  display: none !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-visual figcaption strong {
  color: var(--vh-text) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.35rem, 2vw, 2.1rem) !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-visual figcaption span {
  margin-top: 0.5rem !important;
  color: rgba(255, 248, 238, 0.64) !important;
  font-size: 0.82rem !important;
  line-height: 1.42 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel {
  position: absolute !important;
  top: 1.1rem !important;
  right: 1.1rem !important;
  z-index: 4 !important;
  width: min(360px, calc(100% - 2.2rem)) !important;
  padding: 1rem !important;
  border: 1px solid rgba(240, 198, 107, 0.22) !important;
  border-radius: 8px !important;
  background: rgba(5, 8, 7, 0.78) !important;
  box-shadow: 0 24px 72px rgba(0, 0, 0, 0.36) !important;
  backdrop-filter: blur(18px);
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel .panel-label {
  margin: 0 0 0.55rem !important;
  color: var(--vh-gold) !important;
  font-size: 0.68rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel .panel-label::after {
  content: none !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel h3 {
  max-width: 18ch !important;
  margin: 0 !important;
  color: var(--vh-text) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(1.15rem, 1.55vw, 1.65rem) !important;
  font-weight: 900 !important;
  line-height: 1.03 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel > p:not(.panel-label) {
  display: none !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel .stat-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.45rem !important;
  margin-top: 0.85rem !important;
  border: 0 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel .stat-pill {
  display: block !important;
  min-height: 112px !important;
  padding: 0.7rem !important;
  border: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.04) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel .stat-pill::before {
  content: "" !important;
  display: block !important;
  width: 1.45rem !important;
  height: 1.45rem !important;
  margin-bottom: 0.5rem !important;
  border: 1px solid rgba(240, 198, 107, 0.36) !important;
  border-radius: 999px !important;
  background: radial-gradient(circle at 45% 45%, rgba(240, 198, 107, 0.34), transparent 38%) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel .stat-pill strong {
  display: block !important;
  color: var(--vh-text) !important;
  font-size: 0.7rem !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  text-transform: none !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel .stat-pill span {
  display: none !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-section,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .section-frame {
  position: relative !important;
  width: 100% !important;
  min-height: auto !important;
  margin: 0 !important;
  padding: clamp(5rem, 9vw, 8.5rem) 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(240, 198, 107, 0.08) !important;
  border-radius: 0 !important;
  background:
    radial-gradient(circle at 82% 6%, rgba(240, 198, 107, 0.12), transparent 28rem),
    linear-gradient(135deg, #07100c 0%, #111714 54%, #050807 100%) !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-section:nth-of-type(even),
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band:nth-of-type(even) {
  background:
    radial-gradient(circle at 10% 12%, rgba(240, 198, 107, 0.08), transparent 25rem),
    linear-gradient(135deg, #050807 0%, #0a1510 62%, #030504 100%) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-section::before,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band::before,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .section-frame::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.016) 1px, transparent 1px);
  background-size: 100% 88px, 88px 100%;
  opacity: 0.2 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-section > *,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band > *,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .section-frame > * {
  position: relative !important;
  z-index: 1 !important;
  width: var(--vh-shell) !important;
  max-width: 1240px !important;
  margin-inline: auto !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .dual-column,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-story-grid,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .split-section,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band:not(.vertical-brief-section) .dual-column {
  display: grid !important;
  grid-template-columns: minmax(0, 0.84fr) minmax(460px, 0.78fr) !important;
  align-items: center !important;
  gap: clamp(2rem, 5vw, 6rem) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .section-heading,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .centered-heading {
  max-width: 900px !important;
  margin: 0 0 clamp(1.4rem, 2.6vw, 2.5rem) !important;
  text-align: left !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .section-heading h2,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-section h2,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band h2,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .split-section h2 {
  max-width: 15ch !important;
  margin: 0 !important;
  color: var(--vh-text) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(3.3rem, 5.45vw, 6.25rem) !important;
  font-weight: 600 !important;
  line-height: 0.9 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  text-wrap: balance !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) p,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) li {
  color: var(--vh-muted) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .lead {
  max-width: 64ch !important;
  color: rgba(255, 248, 238, 0.72) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .case-richtext {
  max-width: 64ch !important;
  columns: auto !important;
  padding: 1.2rem !important;
  border: 1px solid var(--vh-line) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.014)),
    rgba(2, 3, 3, 0.28) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .case-richtext p {
  margin-bottom: 0.72rem !important;
  font-size: 0.96rem !important;
  line-height: 1.62 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .feature-list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.75rem !important;
  margin-top: 1.25rem !important;
  padding: 0 !important;
  list-style: none !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .feature-list li,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .compact-card,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .interface-panel,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .tool-card,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) details {
  border: 1px solid var(--vh-line) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.014)),
    var(--vh-panel) !important;
  box-shadow:
    0 24px 72px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
  backdrop-filter: blur(16px);
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .feature-list li {
  min-height: 112px !important;
  padding: 1rem 1rem 1rem 2.8rem !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid {
  display: grid !important;
  gap: 1rem !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-3,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-4,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-5,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-6,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-6 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card {
  min-height: 0 !important;
  padding: 1rem !important;
  overflow: hidden !important;
  transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card:hover {
  transform: translateY(-5px);
  border-color: rgba(240, 198, 107, 0.34) !important;
  box-shadow: 0 34px 92px rgba(0, 0, 0, 0.42), 0 0 34px rgba(240, 198, 107, 0.08) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-media {
  position: relative !important;
  overflow: hidden !important;
  margin: -1rem -1rem 1rem !important;
  border: 0 !important;
  border-radius: 8px 8px 0 0 !important;
  aspect-ratio: 16 / 9 !important;
  background: #050807 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-media img,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .visual-frame img,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-section-visual img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: brightness(0.82) contrast(1.08) saturate(0.92) !important;
  transition: transform 0.36s ease, filter 0.36s ease;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card:hover .card-media img,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .visual-frame:hover img {
  transform: scale(1.035);
  filter: brightness(0.92) contrast(1.1) saturate(0.98) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-kicker {
  color: rgba(255, 248, 238, 0.66) !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card h3 {
  color: var(--vh-text) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.35rem, 1.65vw, 1.82rem) !important;
  font-weight: 600 !important;
  line-height: 1.02 !important;
  letter-spacing: 0 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card p:not(.card-kicker) {
  color: rgba(255, 248, 238, 0.64) !important;
  font-size: 0.88rem !important;
  line-height: 1.5 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  min-height: 34px !important;
  margin-top: auto !important;
  padding: 0.45rem 0.78rem !important;
  color: var(--vh-gold) !important;
  background: rgba(240, 198, 107, 0.08) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-section-visual,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-story-grid > .visual-frame {
  position: relative !important;
  min-height: clamp(330px, 36vw, 520px) !important;
  overflow: hidden !important;
  border: 1px solid rgba(240, 198, 107, 0.18) !important;
  border-radius: 10px !important;
  background: #050807 !important;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.34) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band:not(.vertical-brief-section) .dual-panel .grid-1 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.82rem !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band:not(.vertical-brief-section) .dual-panel .compact-card {
  min-height: 170px !important;
  padding: 1rem !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .faq-section {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.45fr) minmax(0, 0.8fr) !important;
  gap: clamp(1.5rem, 4vw, 4rem) !important;
  padding-inline: max(calc((100vw - 1240px) / 2), clamp(40px, 8vw, 112px)) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .faq-section > .section-heading,
body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .faq-section > .faq-list {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .faq-list {
  display: grid !important;
  gap: 0.72rem !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) summary {
  min-height: 52px !important;
  padding: 0.9rem 1rem !important;
  color: var(--vh-text) !important;
  font-weight: 900 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) details p {
  padding: 0 1rem 1rem !important;
  color: rgba(255, 248, 238, 0.64) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-final-cta {
  min-height: min(760px, calc(100svh - 78px)) !important;
  display: grid !important;
  align-items: center !important;
  background: #050807 !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-final-cta .split-section {
  grid-template-columns: minmax(0, 0.86fr) minmax(360px, 0.52fr) !important;
  align-items: end !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-final-cta h2 {
  max-width: 12ch !important;
  font-size: clamp(3.7rem, 6vw, 6.6rem) !important;
}

body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-final-cta .tool-card {
  max-width: 460px !important;
  justify-self: end !important;
}

@media (max-height: 760px) and (min-width: 981px) {
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero {
    padding-top: 5rem !important;
    padding-bottom: 2rem !important;
    gap: 2.2rem !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero h1 {
    font-size: clamp(3.5rem, 5.8vw, 6.2rem) !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-layered {
    min-height: 390px !important;
  }
}

@media (max-height: 820px) and (min-width: 981px) {
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero .meta-strip {
    display: none !important;
  }
}

@media (max-width: 1180px) {
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .dual-column,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-story-grid,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .split-section,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band:not(.vertical-brief-section) .dual-column,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .faq-section,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-final-cta .split-section {
    grid-template-columns: 1fr !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-layered {
    justify-self: start !important;
    width: min(100%, 760px) !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-4,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-4,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-5,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-5,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-6,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-6 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero {
    min-height: auto !important;
    padding: 6.25rem 1rem 3rem !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .internal-hero h1,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .section-heading h2,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-section h2,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band h2,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .split-section h2 {
    max-width: 100% !important;
    font-size: clamp(2.65rem, 12vw, 4rem) !important;
    line-height: 0.96 !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .hero-panel-layered {
    min-height: 420px !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel {
    left: 0.85rem !important;
    right: 0.85rem !important;
    top: 0.85rem !important;
    width: auto !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel .stat-grid {
    grid-template-columns: 1fr !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .vertical-hero-panel .stat-pill {
    min-height: 0 !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-section,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .section-frame {
    padding: 3.25rem 0 !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-section > *,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band > *,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .section-frame > * {
    width: min(100% - 1.25rem, 1240px) !important;
  }

  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .feature-list,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-3,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-4,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-5,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .card-grid.items-6,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-3,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-4,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-5,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .grid-3.items-6,
  body:is([data-page="/arquitectura/"], [data-page="/promotoras/"], [data-page="/industria/"]) .content-band:not(.vertical-brief-section) .dual-panel .grid-1 {
    grid-template-columns: 1fr !important;
  }
}

/* V4.73 global chrome canonical: approved header and footer on every page. */
.site-header {
  position: fixed !important;
  inset: 0 0 auto !important;
  z-index: 90 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 70px !important;
  margin: 0 !important;
  padding: 0 clamp(22px, 2.35vw, 42px) !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 0 !important;
  background: rgba(4, 7, 8, 0.94) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) !important;
}

.brand,
.brand-mark {
  color: #f4c45f !important;
}

.brand-mark {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(2rem, 2.15vw, 2.55rem) !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
  line-height: 0.95 !important;
}

.site-nav {
  gap: clamp(1rem, 1.7vw, 2rem) !important;
}

.site-nav a:not(.button) {
  color: rgba(246, 239, 228, 0.74) !important;
  font-size: clamp(0.78rem, 0.72vw, 0.86rem) !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.site-nav a:not(.button)::after {
  content: none !important;
}

.site-nav a:not(.button):hover,
.site-nav a:not(.button):focus-visible {
  color: #f4c45f !important;
}

.button-nav {
  min-width: 207px !important;
  min-height: 44px !important;
  padding: 0 1.42rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.62rem !important;
  border: 1px solid rgba(247, 190, 86, 0.62) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%) !important;
  color: #0c0d0c !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow:
    0 7px 16px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 241, 196, 0.42) !important;
}

.button-nav::after {
  content: "\2192" !important;
  margin-left: 0.35rem !important;
  color: #0c0d0c !important;
  font-weight: 900 !important;
}

.button-nav:hover,
.button-nav:focus-visible {
  border-color: rgba(255, 205, 106, 0.74) !important;
  background: linear-gradient(180deg, #ffd078 0%, #f5bd58 100%) !important;
  box-shadow:
    0 9px 20px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 245, 208, 0.48) !important;
  transform: translateY(-1px) !important;
}

.site-footer {
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(4.2rem, 7vw, 6.8rem) clamp(1.15rem, 5vw, 4rem) 2rem !important;
  border-top: 1px solid rgba(240, 206, 122, 0.16) !important;
  background:
    radial-gradient(circle at 16% 18%, rgba(240, 198, 107, 0.13), transparent 28rem),
    radial-gradient(circle at 88% 0%, rgba(90, 111, 108, 0.16), transparent 30rem),
    linear-gradient(180deg, rgba(4, 7, 7, 0.98), rgba(6, 10, 10, 0.98)) !important;
  color: #f6efe4 !important;
}

.site-footer::before {
  content: "" !important;
  position: absolute !important;
  left: -5rem !important;
  bottom: 10.6rem !important;
  width: min(34rem, 38vw) !important;
  height: min(14rem, 17vw) !important;
  border: 1px solid rgba(240, 198, 107, 0.13) !important;
  border-left: 0 !important;
  opacity: 0.34 !important;
  transform: skewY(-18deg) !important;
  pointer-events: none !important;
}

.site-footer::after {
  content: "" !important;
  position: absolute !important;
  left: clamp(1.5rem, 4vw, 4.5rem) !important;
  top: 0 !important;
  bottom: 14rem !important;
  width: 1px !important;
  background: linear-gradient(180deg, rgba(240, 198, 107, 0.68), rgba(240, 198, 107, 0.04)) !important;
  box-shadow: 0 0 24px rgba(240, 198, 107, 0.26) !important;
  pointer-events: none !important;
}

.site-footer-main {
  position: relative !important;
  z-index: 1 !important;
  width: min(100%, 1320px) !important;
  max-width: 1320px !important;
  display: grid !important;
  grid-template-columns: minmax(250px, 1.18fr) minmax(130px, 0.55fr) minmax(150px, 0.6fr) minmax(120px, 0.45fr) minmax(250px, 0.92fr) !important;
  gap: clamp(1.5rem, 3.3vw, 3.8rem) !important;
  align-items: start !important;
  margin: 0 auto !important;
  padding-bottom: clamp(2.2rem, 4vw, 3.4rem) !important;
  border-bottom: 1px solid rgba(240, 206, 122, 0.16) !important;
}

.site-footer-intro {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  max-width: 360px !important;
}

.site-footer .footer-logo,
.site-footer .footer-logo:hover,
.site-footer .footer-logo:focus-visible {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  text-decoration: none !important;
}

.site-footer .footer-logo::before {
  content: none !important;
  display: none !important;
}

.site-footer .footer-logo .brand-mark {
  color: #f4c45f !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(3.4rem, 4.3vw, 4.65rem) !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em !important;
  text-shadow: none !important;
}

.site-footer-intro p {
  max-width: 25ch !important;
  margin: 1.35rem 0 0 !important;
  color: rgba(246, 239, 228, 0.68) !important;
  font-size: clamp(1.02rem, 1.35vw, 1.22rem) !important;
  line-height: 1.55 !important;
}

.site-footer-main > .site-footer-group:nth-of-type(1) {
  grid-column: 2 !important;
  grid-row: 1 !important;
  justify-self: center !important;
}

.site-footer-main > .site-footer-group:nth-of-type(2) {
  grid-column: 3 !important;
  grid-row: 1 !important;
  justify-self: center !important;
}

.site-footer-main > .site-footer-legal {
  grid-column: 4 !important;
  grid-row: 1 !important;
  justify-self: center !important;
}

.site-footer-contact {
  grid-column: 5 !important;
  grid-row: 1 / span 2 !important;
}

.site-footer-group {
  min-height: 100% !important;
  padding-left: 0 !important;
  border-left: 0 !important;
  display: grid !important;
  align-content: start !important;
  gap: 0.64rem !important;
}

.site-footer-group h3 {
  position: relative !important;
  margin: 0 0 0.75rem !important;
  color: #f0c66b !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.2em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
}

.site-footer-group h3::before {
  content: "" !important;
  display: block !important;
  width: 1.6rem !important;
  height: 1px !important;
  margin-bottom: 0.72rem !important;
  background: rgba(240, 206, 122, 0.22) !important;
}

.site-footer a {
  color: rgba(246, 239, 228, 0.64) !important;
  font-size: 0.96rem !important;
  font-weight: 760 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
}

.site-footer a:hover,
.site-footer a:focus-visible {
  color: #f0c66b !important;
}

.site-footer-contact p {
  max-width: 28ch !important;
  margin: 0.65rem 0 1.8rem !important;
  color: rgba(246, 239, 228, 0.7) !important;
  font-size: 0.96rem !important;
  font-weight: 500 !important;
  line-height: 1.62 !important;
}

.site-footer-contact-button,
.site-footer-group .site-footer-contact-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: min(100%, 250px) !important;
  min-width: min(100%, 250px) !important;
  min-height: 50px !important;
  padding: 0.68rem 1.05rem 0.62rem 1.35rem !important;
  gap: 1.2rem !important;
  border: 1px solid rgba(240, 198, 107, 0.68) !important;
  border-radius: 6px !important;
  background: linear-gradient(90deg, rgba(240, 198, 107, 0.035), rgba(255, 255, 255, 0.012)) !important;
  color: #f0c66b !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
}

.site-footer-contact-button-label {
  display: block !important;
  color: currentColor !important;
  font-size: 0.76rem !important;
  font-weight: 950 !important;
  letter-spacing: 0.24em !important;
  line-height: 0.92 !important;
  text-transform: uppercase !important;
}

.site-footer-contact-button-arrow,
.site-footer-contact-button .site-footer-contact-button-arrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: currentColor !important;
  font-size: 0.95rem !important;
  line-height: 1 !important;
}

.site-footer-contact-button:hover,
.site-footer-contact-button:focus-visible {
  color: #f0c66b !important;
  border-color: rgba(240, 198, 107, 0.76) !important;
  background: linear-gradient(90deg, rgba(240, 198, 107, 0.08), rgba(255, 255, 255, 0.018)) !important;
  box-shadow:
    0 0 0 1px rgba(240, 198, 107, 0.08),
    0 16px 34px rgba(0, 0, 0, 0.18) !important;
  transform: translateY(-1px) !important;
}

.site-footer-socials {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.9rem !important;
  margin-top: 1.35rem !important;
}

.site-footer-social-label {
  width: 100% !important;
  color: rgba(240, 198, 107, 0.72) !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
}

.site-footer-contact .site-footer-social-link,
.site-footer-social-link {
  display: inline-grid !important;
  place-items: center !important;
  width: 48px !important;
  min-width: 48px !important;
  height: 48px !important;
  border: 1px solid rgba(246, 239, 228, 0.16) !important;
  border-radius: 5px !important;
  background: rgba(255, 255, 255, 0.018) !important;
  color: rgba(246, 239, 228, 0.9) !important;
}

.site-footer-social-link svg {
  width: 22px !important;
  height: 22px !important;
}

.site-footer-main > .site-footer-capabilities {
  position: relative !important;
  z-index: 1 !important;
  grid-column: 1 / 5 !important;
  grid-row: 2 !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  align-self: end !important;
  align-items: center !important;
  width: max-content !important;
  max-width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0.08rem 0 !important;
  border: 0 !important;
  background: transparent !important;
  gap: 0.42rem !important;
  white-space: nowrap !important;
  transform: translateY(-0.28rem) !important;
}

.site-footer-main > .site-footer-capabilities::before {
  content: "Especialidad \00B7" !important;
  width: auto !important;
  height: auto !important;
  margin: 0 0.5rem 0 0 !important;
  border: 0 !important;
  color: rgba(240, 198, 107, 0.54) !important;
  font-size: clamp(0.64rem, 0.7vw, 0.72rem) !important;
  font-weight: 760 !important;
  letter-spacing: 0.085em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
  transform: none !important;
}

.site-footer-main > .site-footer-capabilities::after {
  content: none !important;
}

.site-footer-main > .site-footer-capabilities span {
  color: rgba(246, 239, 228, 0.42) !important;
  font-size: clamp(0.64rem, 0.7vw, 0.72rem) !important;
  font-weight: 760 !important;
  letter-spacing: 0.085em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
}

.site-footer-main > .site-footer-capabilities span + span::before {
  content: "\00B7" !important;
  margin: 0 0.42rem 0 0 !important;
  color: rgba(240, 198, 107, 0.3) !important;
}

.site-footer-bottom {
  position: relative !important;
  z-index: 1 !important;
  width: min(100%, 1320px) !important;
  max-width: 1320px !important;
  display: flex !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  margin: 1rem auto 0 !important;
  padding-top: 1.15rem !important;
  border-top: 1px solid rgba(240, 206, 122, 0.1) !important;
  color: rgba(246, 239, 228, 0.38) !important;
  font-size: 0.82rem !important;
}

@media (max-width: 1180px) {
  .site-footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .site-footer-intro,
  .site-footer-main > .site-footer-group:nth-of-type(1),
  .site-footer-main > .site-footer-group:nth-of-type(2),
  .site-footer-main > .site-footer-legal,
  .site-footer-contact,
  .site-footer-main > .site-footer-capabilities {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .site-footer-main > .site-footer-capabilities {
    grid-column: 1 / -1 !important;
    flex-wrap: wrap !important;
    white-space: normal !important;
  }
}

@media (max-width: 800px) {
  .site-header {
    padding-inline: 1rem !important;
  }

  .nav-toggle {
    display: inline-flex !important;
    border-color: rgba(240, 198, 107, 0.32) !important;
    color: #f4c45f !important;
  }

  .site-nav {
    right: 1rem !important;
    width: min(320px, calc(100vw - 2rem)) !important;
    background: rgba(4, 7, 8, 0.96) !important;
  }
}

@media (max-width: 760px) {
  .site-footer {
    padding: 3.2rem 1rem 1.5rem !important;
  }

  .site-footer::after {
    bottom: 5rem !important;
  }

  .site-footer-main {
    grid-template-columns: 1fr !important;
  }

  .site-footer-contact-button,
  .site-footer-group .site-footer-contact-button {
    width: 100% !important;
    min-width: 0 !important;
  }

  .site-footer-bottom {
    flex-direction: column !important;
  }
}

/* V4.74 global chrome hard lock against page-specific overrides. */
body[data-page] .site-header {
  min-height: 70px !important;
  background: rgba(4, 7, 8, 0.94) !important;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12) !important;
  box-shadow: none !important;
}

body[data-page] .button-nav {
  min-width: 207px !important;
  min-height: 44px !important;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%) !important;
  color: #0c0d0c !important;
}

body[data-page] .button-nav::after {
  content: "\2192" !important;
  color: #0c0d0c !important;
}

body[data-page] .site-footer .site-footer-group .site-footer-contact-button,
body[data-page] .site-footer .site-footer-contact-button,
body[data-page] .site-footer .site-footer-contact-button:hover,
body[data-page] .site-footer .site-footer-contact-button:focus-visible {
  color: #f0c66b !important;
}

body[data-page] .site-footer .site-footer-contact-button-label,
body[data-page] .site-footer .site-footer-contact-button-arrow {
  color: currentColor !important;
}

/* V4.75 promotoras final lock: premium screen composition, source text intact. */
body[data-page="/promotoras/"] {
  --promotoras-final-shell: min(1380px, calc(100% - clamp(32px, 6vw, 96px)));
}

body[data-page="/promotoras/"] .page-shell {
  background:
    radial-gradient(circle at 90% 4%, rgba(240, 198, 107, 0.11), transparent 30rem),
    radial-gradient(circle at 9% 42%, rgba(68, 92, 82, 0.18), transparent 38rem),
    linear-gradient(180deg, #030504 0%, #07100c 36%, #030504 100%) !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras {
  grid-template-columns: minmax(620px, 1fr) minmax(330px, 390px) !important;
  min-height: calc(100vh - 70px) !important;
  min-height: calc(100svh - 70px) !important;
  padding: clamp(3.9rem, 5.4vh, 5rem) max((100vw - 1380px) / 2, clamp(1.5rem, 4.8vw, 5rem)) clamp(2rem, 4vh, 3.2rem) !important;
  gap: clamp(2rem, 3.6vw, 3.8rem) !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .internal-hero-media::after {
  background:
    radial-gradient(circle at 78% 18%, rgba(240, 198, 107, 0.1), transparent 28rem),
    linear-gradient(90deg, rgba(2, 3, 3, 0.95) 0%, rgba(2, 3, 3, 0.74) 33%, rgba(2, 3, 3, 0.42) 58%, rgba(2, 3, 3, 0.78) 100%),
    linear-gradient(180deg, rgba(2, 3, 3, 0.08), rgba(2, 3, 3, 0.76) 92%) !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .internal-hero-media img {
  object-position: 58% 48% !important;
  filter: brightness(0.82) contrast(1.08) saturate(0.92) !important;
  transform: scale(1.01) !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .hero-copy {
  max-width: 760px !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .hero-copy h1 {
  max-width: 100% !important;
  margin: 0 0 0.9rem !important;
  font-size: clamp(3rem, 4.1vw, 4.7rem) !important;
  line-height: 0.91 !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .lead {
  max-width: 66ch !important;
  font-size: clamp(0.98rem, 1vw, 1.08rem) !important;
  line-height: 1.52 !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .hero-note {
  max-width: 48ch !important;
  margin-top: 0.78rem !important;
  font-size: 0.93rem !important;
  line-height: 1.46 !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .cta-row {
  margin-top: 1.15rem !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .meta-strip {
  display: flex !important;
  margin-top: 0.95rem !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .meta-strip span {
  background: rgba(7, 10, 9, 0.54) !important;
  border-color: rgba(240, 198, 107, 0.26) !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .hero-panel-layered {
  width: min(100%, 430px) !important;
  min-height: 0 !important;
  display: block !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .hero-panel-visual {
  display: none !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .vertical-hero-panel {
  position: static !important;
  width: 100% !important;
  min-height: 0 !important;
  padding: clamp(1.15rem, 1.9vw, 1.55rem) !important;
  border-color: rgba(240, 198, 107, 0.3) !important;
  background:
    linear-gradient(132deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.014) 44%),
    radial-gradient(circle at 100% 0%, rgba(240, 198, 107, 0.14), transparent 18rem),
    rgba(5, 8, 7, 0.84) !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .vertical-hero-panel .panel-label {
  display: flex !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  margin-bottom: 0.85rem !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .vertical-hero-panel .panel-label::after {
  content: "Campa\00F1a 3D" !important;
  color: #f0c66b !important;
  letter-spacing: 0.1em !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .vertical-hero-panel h3 {
  max-width: 14ch !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(1.55rem, 2.05vw, 2.35rem) !important;
  line-height: 0.98 !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .vertical-hero-panel > p:not(.panel-label) {
  display: block !important;
  margin: 0.9rem 0 0 !important;
  color: rgba(255, 248, 238, 0.68) !important;
  font-size: 0.92rem !important;
  line-height: 1.46 !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .vertical-hero-panel .stat-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  margin-top: 1rem !important;
  border-top: 1px solid rgba(240, 198, 107, 0.14) !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .vertical-hero-panel .stat-pill {
  display: grid !important;
  grid-template-columns: 2.45rem minmax(0, 1fr) !important;
  gap: 0.74rem !important;
  align-items: start !important;
  min-height: 0 !important;
  padding: 0.68rem 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .vertical-hero-panel .stat-pill::before {
  grid-row: 1 / span 2 !important;
  width: 2rem !important;
  height: 2rem !important;
  margin: 0 !important;
  border-radius: 999px !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .vertical-hero-panel .stat-pill strong {
  font-size: 0.78rem !important;
  line-height: 1.18 !important;
}

body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .vertical-hero-panel .stat-pill span {
  display: block !important;
  margin-top: 0.18rem !important;
  color: rgba(255, 248, 238, 0.62) !important;
  font-size: 0.76rem !important;
  line-height: 1.34 !important;
}

@media (min-width: 981px) {
  body[data-page="/promotoras/"] .page-shell > section:not(.faq-section) {
    min-height: calc(100vh - 70px) !important;
    min-height: calc(100svh - 70px) !important;
    display: grid !important;
    align-items: center !important;
    padding-top: clamp(2.2rem, 3.5vw, 3.8rem) !important;
    padding-bottom: clamp(2.2rem, 3.5vw, 3.8rem) !important;
  }

  body[data-page="/promotoras/"] .page-shell > .internal-hero-promotoras {
    padding-top: clamp(3.9rem, 5.4vh, 5rem) !important;
    padding-bottom: clamp(2rem, 4vh, 3.2rem) !important;
  }

  body[data-page="/promotoras/"] .page-shell > section:not(.internal-hero-promotoras):not(.faq-section) > * {
    width: var(--promotoras-final-shell) !important;
    max-width: 1380px !important;
  }
}

body[data-page="/promotoras/"] .content-section h2,
body[data-page="/promotoras/"] .content-band h2,
body[data-page="/promotoras/"] .split-section h2 {
  max-width: 16ch !important;
  font-size: clamp(2.25rem, 3.2vw, 3.9rem) !important;
  line-height: 0.94 !important;
}

body[data-page="/promotoras/"] .editorial-visual-section .internal-story-grid,
body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-column {
  grid-template-columns: minmax(0, 0.5fr) minmax(520px, 0.55fr) !important;
  gap: clamp(1.8rem, 4vw, 5rem) !important;
}

body[data-page="/promotoras/"] .editorial-visual-section .case-richtext {
  columns: auto !important;
  max-width: 58ch !important;
  padding: 1rem !important;
  border-left: 1px solid rgba(240, 198, 107, 0.2) !important;
  border-radius: 0 !important;
  background: linear-gradient(90deg, rgba(240, 198, 107, 0.045), transparent 70%) !important;
}

body[data-page="/promotoras/"] .editorial-visual-section .case-richtext p {
  margin-bottom: 0.72rem !important;
  font-size: 0.9rem !important;
  line-height: 1.5 !important;
}

body[data-page="/promotoras/"] .internal-section-visual {
  min-height: clamp(320px, 40vh, 500px) !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .dual-column {
  grid-template-columns: minmax(0, 0.88fr) minmax(460px, 0.72fr) !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .feature-list {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.72rem !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .feature-list li {
  min-height: 104px !important;
  font-size: 0.86rem !important;
  line-height: 1.42 !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .interface-panel {
  padding: clamp(0.95rem, 1.45vw, 1.2rem) !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .interface-panel h3 {
  max-width: 22ch !important;
  font-size: clamp(1.7rem, 2.05vw, 2.35rem) !important;
  line-height: 1 !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .compact-card {
  min-height: 0 !important;
  padding: 0.78rem 0.9rem !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .compact-card h3 {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 0.92rem !important;
  line-height: 1.16 !important;
}

body[data-page="/promotoras/"] .vertical-brief-section .compact-card p:not(.card-kicker) {
  font-size: 0.82rem !important;
  line-height: 1.38 !important;
  -webkit-line-clamp: 2 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .section-heading {
  margin-bottom: 1rem !important;
}

body[data-page="/promotoras/"] .section-frame-dark h2 {
  font-size: clamp(2.2rem, 2.9vw, 3.4rem) !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  align-items: stretch !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:first-child {
  grid-column: span 3 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:not(:first-child) {
  grid-column: span 1 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card {
  padding: 0.78rem !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:first-child .card-media {
  aspect-ratio: 16 / 6.05 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:not(:first-child) .card-media {
  aspect-ratio: 4 / 2.42 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:first-child p:not(.card-kicker) {
  -webkit-line-clamp: 2 !important;
}

body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:not(:first-child) p:not(.card-kicker) {
  -webkit-line-clamp: 1 !important;
}

body[data-page="/promotoras/"] .content-section:not(.editorial-visual-section):not(.related-next-section) .card-grid.items-3 .card {
  min-height: clamp(300px, 32vh, 380px) !important;
}

body[data-page="/promotoras/"] .content-section:not(.editorial-visual-section):not(.related-next-section) .card-grid.items-3 .card-media,
body[data-page="/promotoras/"] .related-next-section .card-media {
  aspect-ratio: 16 / 7.4 !important;
}

body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-panel .grid-1 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-panel .compact-card {
  min-height: 170px !important;
}

body[data-page="/promotoras/"] .related-next-section .card {
  min-height: 330px !important;
}

body[data-page="/promotoras/"] .faq-section {
  min-height: auto !important;
  padding-top: clamp(3rem, 5vw, 4.5rem) !important;
  padding-bottom: clamp(3rem, 5vw, 4.5rem) !important;
}

body[data-page="/promotoras/"] .internal-final-cta {
  min-height: calc(100vh - 70px) !important;
  min-height: calc(100svh - 70px) !important;
}

body[data-page="/promotoras/"] .internal-final-cta .split-section {
  grid-template-columns: minmax(0, 0.55fr) minmax(380px, 0.36fr) !important;
  align-items: end !important;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras,
  body[data-page="/promotoras/"] .editorial-visual-section .internal-story-grid,
  body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-column,
  body[data-page="/promotoras/"] .internal-final-cta .split-section {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:first-child,
  body[data-page="/promotoras/"] .section-frame-dark .card-grid.items-4 .card:not(:first-child) {
    grid-column: auto !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras {
    min-height: auto !important;
    padding: 6.2rem 1rem 3rem !important;
  }

  body[data-page="/promotoras/"] .internal-hero.internal-hero-promotoras .hero-copy h1 {
    max-width: 100% !important;
    font-size: clamp(3rem, 13vw, 4.25rem) !important;
  }

  body[data-page="/promotoras/"] .page-shell > section:not(.faq-section) {
    min-height: auto !important;
  }

  body[data-page="/promotoras/"] .vertical-brief-section .feature-list,
  body[data-page="/promotoras/"] .content-band:not(.vertical-brief-section) .dual-panel .grid-1 {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .internal-section-visual {
    min-height: 260px !important;
  }
}

@media (max-width: 640px) {
  body[data-page="/precios/"] .pricing-hero {
    padding-inline: clamp(0.85rem, 4vw, 1.25rem) !important;
  }

  body[data-page="/precios/"] .pricing-hero h1 {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(3rem, 13vw, 3.85rem) !important;
    line-height: 0.93 !important;
  }

  body[data-page="/precios/"] .pricing-title-accent {
    font-size: 1em !important;
  }
}

/* V4.77 footer CTA final lock: match the premium reference button. */
body[data-page] .site-footer .site-footer-contact-button,
body[data-page] .site-footer .site-footer-group .site-footer-contact-button,
.site-footer .site-footer-contact-button {
  position: relative !important;
  isolation: isolate !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 32px !important;
  align-items: center !important;
  width: min(100%, 176px) !important;
  min-width: 0 !important;
  min-height: 42px !important;
  padding: 0.52rem 0.55rem 0.52rem 0.82rem !important;
  gap: 0.5rem !important;
  overflow: hidden !important;
  border: 1px solid rgba(240, 198, 107, 0.72) !important;
  border-radius: 6px !important;
  color: #f0c66b !important;
  text-decoration: none !important;
  background:
    linear-gradient(90deg, rgba(240, 198, 107, 0.12), rgba(240, 198, 107, 0.025) 34%, rgba(4, 7, 8, 0.86) 100%),
    radial-gradient(circle at 90% 50%, rgba(240, 198, 107, 0.18), transparent 3.4rem),
    rgba(3, 5, 5, 0.88) !important;
  box-shadow:
    0 0 0 1px rgba(240, 198, 107, 0.1),
    0 12px 28px rgba(0, 0, 0, 0.3),
    0 0 18px rgba(240, 198, 107, 0.1),
    inset 0 1px 0 rgba(255, 248, 238, 0.12),
    inset 0 -1px 0 rgba(240, 198, 107, 0.14) !important;
  transform: none !important;
}

body[data-page] .site-footer .site-footer-contact-button::before,
.site-footer .site-footer-contact-button::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(110deg, transparent 0 48%, rgba(240, 198, 107, 0.22) 48.2%, transparent 49.1% 100%),
    linear-gradient(180deg, rgba(255, 248, 238, 0.08), transparent 45%, rgba(240, 198, 107, 0.08)) !important;
  opacity: 0.78 !important;
}

body[data-page] .site-footer .site-footer-contact-button::after,
.site-footer .site-footer-contact-button::after {
  content: "" !important;
  position: absolute !important;
  inset: 5px !important;
  z-index: -1 !important;
  pointer-events: none !important;
  border: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 4px !important;
}

body[data-page] .site-footer .site-footer-contact-button-label,
body[data-page] .site-footer .site-footer-contact-button .site-footer-contact-button-label,
.site-footer .site-footer-contact-button-label {
  display: block !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  border: 0 !important;
  color: #f0c66b !important;
  background: transparent !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(0.56rem, 0.62vw, 0.66rem) !important;
  font-weight: 950 !important;
  line-height: 1.05 !important;
  letter-spacing: 0.18em !important;
  text-align: left !important;
  text-transform: uppercase !important;
  text-shadow: 0 0 10px rgba(240, 198, 107, 0.18) !important;
}

body[data-page] .site-footer .site-footer-contact-button-arrow,
body[data-page] .site-footer .site-footer-contact-button .site-footer-contact-button-arrow,
.site-footer .site-footer-contact-button-arrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #f7c66d !important;
  background:
    radial-gradient(circle, rgba(240, 198, 107, 0.26), rgba(240, 198, 107, 0.08) 42%, transparent 68%) !important;
  font-size: 1.55rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-shadow:
    0 0 10px rgba(240, 198, 107, 0.62),
    0 0 22px rgba(240, 198, 107, 0.24) !important;
  transform: translateX(0) !important;
}

body[data-page] .site-footer .site-footer-contact-button:hover,
body[data-page] .site-footer .site-footer-contact-button:focus-visible,
.site-footer .site-footer-contact-button:hover,
.site-footer .site-footer-contact-button:focus-visible {
  border-color: rgba(255, 214, 126, 0.96) !important;
  color: #f7c66d !important;
  background:
    linear-gradient(90deg, rgba(240, 198, 107, 0.18), rgba(240, 198, 107, 0.04) 34%, rgba(4, 7, 8, 0.9) 100%),
    radial-gradient(circle at 90% 50%, rgba(240, 198, 107, 0.28), transparent 3.7rem),
    rgba(3, 5, 5, 0.9) !important;
  box-shadow:
    0 0 0 1px rgba(240, 198, 107, 0.2),
    0 14px 32px rgba(0, 0, 0, 0.36),
    0 0 22px rgba(240, 198, 107, 0.16),
    inset 0 1px 0 rgba(255, 248, 238, 0.18),
    inset 0 -1px 0 rgba(240, 198, 107, 0.18) !important;
  transform: translateY(-1px) !important;
}

body[data-page] .site-footer .site-footer-contact-button:hover .site-footer-contact-button-arrow,
body[data-page] .site-footer .site-footer-contact-button:focus-visible .site-footer-contact-button-arrow,
.site-footer .site-footer-contact-button:hover .site-footer-contact-button-arrow,
.site-footer .site-footer-contact-button:focus-visible .site-footer-contact-button-arrow {
  transform: translateX(3px) !important;
}

@media (max-width: 760px) {
  body[data-page] .site-footer .site-footer-contact-button,
  body[data-page] .site-footer .site-footer-group .site-footer-contact-button,
  .site-footer .site-footer-contact-button {
    width: 100% !important;
  }
}

/* V4.80 approved-home shell: one width system for internal templates. */
:root {
  --g3d-approved-shell: min(1240px, calc(100vw - 88px));
  --g3d-approved-gutter: max(44px, calc((100vw - 1240px) / 2));
}

body:not([data-page="/"]) {
  --vertical-home-shell: var(--g3d-approved-shell) !important;
  --vh-shell: var(--g3d-approved-shell) !important;
  --pricing-max: var(--g3d-approved-shell) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-premium {
  --promo-shell: var(--g3d-approved-shell) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section {
  width: var(--g3d-approved-shell) !important;
  max-width: var(--g3d-approved-shell) !important;
}

body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero,
body:not([data-page="/"]) .hero,
body:not([data-page="/"]) .hero.hero-page.internal-hero,
body:not([data-page="/"]) .content-section,
body:not([data-page="/"]) .content-band,
body:not([data-page="/"]) .section-frame {
  padding-left: var(--g3d-approved-gutter) !important;
  padding-right: var(--g3d-approved-gutter) !important;
}

body:not([data-page="/"]) .content-section > *,
body:not([data-page="/"]) .content-band > *,
body:not([data-page="/"]) .section-frame > *,
body:not([data-page="/"]) .site-footer-main,
body:not([data-page="/"]) .site-footer-bottom,
body:not([data-page="/"]) .site-footer-funding {
  width: 100% !important;
  max-width: var(--g3d-approved-shell) !important;
}

@media (max-width: 900px) {
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero > *,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-section > *,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-hero-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-route-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-tools-panel,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-dossier,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-image-card,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-accordion,
  body:is([data-page="/promotoras/"], [data-page="/industria/"]) .promo-copy-card {
    max-width: var(--g3d-approved-shell) !important;
  }
}

body[data-page="/precios/"] .pricing-editorial-grid,
body[data-page="/precios/"] .pricing-range-grid,
body[data-page="/precios/"] .pricing-service-index,
body[data-page="/precios/"] .pricing-compare-layout,
body[data-page="/precios/"] .pricing-route-grid-v2,
body[data-page="/precios/"] .pricing-faq-layout,
body[data-page="/precios/"] .pricing-final-shell {
  width: var(--g3d-approved-shell) !important;
  max-width: var(--g3d-approved-shell) !important;
}

@media (max-width: 1180px) {
  :root {
    --g3d-approved-shell: min(calc(100vw - 48px), 980px);
    --g3d-approved-gutter: 24px;
  }
}

@media (max-width: 760px) {
  :root {
    --g3d-approved-shell: min(calc(100vw - 24px), 520px);
    --g3d-approved-gutter: 12px;
  }
}

/* V7 approved pages: keep the home-approved stage and shell geometry. */
body[data-home-template="true"] .page-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-top: 0 !important;
  overflow: hidden !important;
}

body[data-home-template="true"] .v7-approved-page {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

body[data-home-template="true"] .v7-approved-page .v3-shell {
  width: min(1240px, calc(100vw - clamp(32px, 7vw, 104px))) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body[data-home-template="true"] .v7-approved-page .case-richtext {
  padding: clamp(1.15rem, 2vw, 1.55rem) !important;
  border: 1px solid rgba(240, 206, 122, 0.16) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(145deg, rgba(11, 15, 13, 0.82), rgba(3, 6, 5, 0.68)),
    radial-gradient(circle at 92% 0%, rgba(240, 206, 122, 0.12), transparent 14rem) !important;
  color: rgba(248, 240, 228, 0.9) !important;
  box-shadow: 0 28px 82px rgba(0, 0, 0, 0.28) !important;
}

body[data-home-template="true"] .v7-approved-page .case-richtext h2 {
  color: #fff8ee !important;
}

body[data-home-template="true"] .v7-approved-page .case-richtext p {
  color: rgba(248, 240, 228, 0.72) !important;
}

@media (max-width: 720px) {
  body[data-home-template="true"] .v7-approved-page .v3-shell {
    width: min(100% - 24px, 640px) !important;
  }
}

/* V4.79 pricing final responsive lock: override late global footer and hero rules. */
@media (max-width: 760px) {
  body[data-page="/precios/"] .pricing-hero .hero-panel.hero-panel-layered {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-top: 1.15rem !important;
    justify-self: stretch !important;
    justify-items: stretch !important;
  }

  body[data-page="/precios/"] .pricing-hero .pricing-command-panel {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 1.1rem !important;
  }

  body[data-page="/precios/"] .pricing-command-head h3 {
    max-width: 100% !important;
    font-size: clamp(1.55rem, 8vw, 2.25rem) !important;
  }

  body[data-page="/precios/"] .pricing-command-list article {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    padding: 0.82rem 0 !important;
  }

  body[data-page="/precios/"] .pricing-command-mark {
    width: 42px !important;
    height: 42px !important;
  }

  body[data-page="/precios/"] .site-footer-main {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: min(100% - 32px, 720px) !important;
    max-width: min(100% - 32px, 720px) !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  body[data-page="/precios/"] .site-footer-intro,
  body[data-page="/precios/"] .site-footer-group,
  body[data-page="/precios/"] .site-footer-legal,
  body[data-page="/precios/"] .site-footer-capabilities,
  body[data-page="/precios/"] .site-footer-contact {
    grid-column: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
  }

  body[data-page="/precios/"] .site-footer-group h3,
  body[data-page="/precios/"] .site-footer-group a,
  body[data-page="/precios/"] .site-footer-group p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }
}

/* V7.10 final promotoras background parity: true file-end override. */
body[data-page="/promotoras/"],
body[data-page="/promotoras/"] .page-shell,
body[data-page="/promotoras/"] .promotoras-editorial-page {
  background:
    radial-gradient(circle at 10% 7%, rgba(240, 198, 107, 0.1), transparent 26rem),
    radial-gradient(circle at 88% 18%, rgba(52, 76, 72, 0.18), transparent 34rem),
    linear-gradient(180deg, #020303 0%, #050807 48%, #020303 100%) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-editorial-section {
  background: transparent !important;
}

body[data-page="/promotoras/"] .promotoras-focus-section,
body[data-page="/promotoras/"] .promotoras-problem-section,
body[data-page="/promotoras/"] .promotoras-packs-section,
body[data-page="/promotoras/"] .promotoras-calculator-section,
body[data-page="/promotoras/"] .promotoras-related-section,
body[data-page="/promotoras/"] .promotoras-faq-section {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.008), rgba(255, 255, 255, 0)),
    transparent !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.012), transparent 55%),
    transparent !important;
}

body[data-page="/promotoras/"] .promotoras-process-section {
  background:
    linear-gradient(90deg, rgba(2, 3, 3, 0.96), rgba(2, 3, 3, 0.72)),
    var(--promotoras-process-bg) center / cover !important;
}

/* V7.11 promotoras hero fit: keep CTAs visible inside the editorial hero. */
body[data-page="/promotoras/"] .promotoras-editorial-hero {
  min-height: clamp(680px, 78vh, 760px) !important;
  height: auto !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
  min-height: clamp(680px, 78vh, 760px) !important;
  height: auto !important;
  padding-top: clamp(104px, 10vh, 128px) !important;
  padding-bottom: clamp(76px, 8vh, 104px) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy {
  align-self: center !important;
  transform: translateY(-8px) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy h1 {
  font-size: clamp(3rem, 4.65vw, 5rem) !important;
  line-height: 0.9 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-actions {
  position: relative !important;
  z-index: 4 !important;
  margin-top: 1.15rem !important;
  margin-bottom: 0.65rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-chip-row {
  margin-top: 0.65rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-panel {
  align-self: center !important;
  min-height: 420px !important;
}

@media (max-width: 720px) {
  body[data-page="/promotoras/"] .promotoras-editorial-hero,
  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
    min-height: auto !important;
    height: auto !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
    padding-top: 96px !important;
    padding-bottom: 56px !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy {
    transform: none !important;
  }
}

/* V7.12 promotoras hero: reference-style editorial header with priority exterior render. */
body[data-page="/promotoras/"] .promotoras-editorial-hero {
  min-height: clamp(760px, calc(100vh - 48px), 880px) !important;
  height: auto !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.2) !important;
  background: #020303 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-media img {
  object-position: center 58% !important;
  filter: brightness(0.72) contrast(1.08) saturate(0.92) !important;
  transform: scale(1.01) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero::after {
  background:
    linear-gradient(90deg, rgba(2, 3, 3, 0.95) 0%, rgba(2, 3, 3, 0.76) 34%, rgba(2, 3, 3, 0.32) 58%, rgba(2, 3, 3, 0.82) 100%),
    linear-gradient(180deg, rgba(2, 3, 3, 0.7) 0%, rgba(2, 3, 3, 0.1) 46%, rgba(2, 3, 3, 0.86) 100%),
    radial-gradient(circle at 36% 42%, rgba(214, 168, 90, 0.16), transparent 24rem) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 420px) !important;
  min-height: clamp(760px, calc(100vh - 48px), 880px) !important;
  padding-top: clamp(112px, 11vh, 144px) !important;
  padding-bottom: clamp(68px, 8vh, 104px) !important;
  gap: clamp(3rem, 7vw, 8rem) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy {
  max-width: 720px !important;
  transform: none !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.78rem !important;
  margin-bottom: 1.45rem !important;
  color: var(--promotoras-gold) !important;
  font-size: 0.84rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-eyebrow::before {
  content: "" !important;
  width: 34px !important;
  height: 1px !important;
  background: var(--promotoras-gold) !important;
  opacity: 0.8 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-title {
  max-width: 9ch !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(4.7rem, 7.7vw, 8.25rem) !important;
  line-height: 0.88 !important;
  letter-spacing: 0 !important;
  color: #fff8ee !important;
  text-wrap: balance !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-title span {
  color: var(--promotoras-gold) !important;
  text-shadow: 0 0 34px rgba(214, 168, 90, 0.16) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy > p:not(.v4-eyebrow) {
  max-width: 650px !important;
  margin-top: 1.8rem !important;
  color: rgba(255, 248, 238, 0.78) !important;
  font-size: clamp(1.02rem, 1.12vw, 1.16rem) !important;
  line-height: 1.72 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 1rem !important;
  margin-top: 2.35rem !important;
  margin-bottom: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-button {
  min-height: 58px !important;
  padding: 0 2.05rem !important;
  border-radius: 999px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-button-gold {
  background: linear-gradient(135deg, #f0bf5f, #d6a85a) !important;
  color: #14100a !important;
  border-color: rgba(255, 222, 152, 0.42) !important;
  box-shadow: 0 18px 44px rgba(214, 168, 90, 0.24) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-button-dark {
  background: rgba(5, 8, 7, 0.38) !important;
  color: #fff8ee !important;
  border-color: rgba(214, 168, 90, 0.34) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: clamp(1.4rem, 3vw, 3rem) !important;
  margin-top: 3.05rem !important;
  max-width: 760px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row span {
  display: inline-grid !important;
  grid-template-columns: 28px minmax(0, auto) !important;
  align-items: center !important;
  gap: 0.72rem !important;
  min-height: 40px !important;
  padding: 0 !important;
  color: rgba(255, 248, 238, 0.82) !important;
  background: transparent !important;
  border: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row span::before {
  content: none !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row svg {
  width: 27px !important;
  height: 27px !important;
  color: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row em {
  font-style: normal !important;
  line-height: 1.25 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel {
  display: grid !important;
  align-content: center !important;
  gap: 0 !important;
  min-height: 560px !important;
  padding: clamp(2.4rem, 3.8vw, 3.6rem) !important;
  border: 1px solid rgba(214, 168, 90, 0.28) !important;
  border-radius: 22px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(3, 7, 6, 0.78) !important;
  box-shadow: 0 36px 96px rgba(0, 0, 0, 0.46) !important;
  backdrop-filter: blur(18px) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  gap: 1.55rem !important;
  align-items: start !important;
  padding: 2.05rem 0 !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.18) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article:first-child {
  padding-top: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article:last-child {
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article > span {
  width: 44px !important;
  height: 44px !important;
  display: grid !important;
  place-items: center !important;
  color: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel svg {
  width: 36px !important;
  height: 36px !important;
  stroke-width: 1.35 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel h3 {
  max-width: 13ch !important;
  margin: 0 !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.35rem, 1.7vw, 1.65rem) !important;
  line-height: 1.05 !important;
  color: #fff8ee !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel p {
  max-width: 24ch !important;
  margin: 1rem 0 0 !important;
  color: rgba(255, 248, 238, 0.66) !important;
  font-size: 0.95rem !important;
  line-height: 1.62 !important;
}

@media (max-width: 980px) {
  body[data-page="/promotoras/"] .promotoras-editorial-hero,
  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
    min-height: auto !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
    grid-template-columns: 1fr !important;
    padding-top: 104px !important;
    padding-bottom: 64px !important;
    gap: 2rem !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-title {
    max-width: 9ch !important;
    font-size: clamp(3.55rem, 15vw, 5.4rem) !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel {
    min-height: auto !important;
  }
}

@media (max-width: 620px) {
  body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-actions,
  body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-button {
    width: 100% !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1rem !important;
    margin-top: 2rem !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    gap: 1rem !important;
  }
}

/* V7.13 promotoras hero fit: prevent inherited absolute panel rules from stretching the header. */
body[data-page="/promotoras/"] .promotoras-editorial-hero {
  min-height: clamp(700px, calc(100vh - 24px), 820px) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
  min-height: clamp(700px, calc(100vh - 24px), 820px) !important;
  padding-top: clamp(96px, 9vh, 128px) !important;
  padding-bottom: clamp(52px, 7vh, 86px) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-title {
  font-size: clamp(3.95rem, 6.35vw, 7.65rem) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy > p:not(.v4-eyebrow) {
  margin-top: 1.25rem !important;
  line-height: 1.62 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-actions {
  margin-top: 1.65rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row {
  margin-top: 2.1rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  width: 100% !important;
  max-width: 420px !important;
  min-height: auto !important;
  height: auto !important;
  align-self: center !important;
  justify-self: end !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article {
  padding-top: 1.45rem !important;
  padding-bottom: 1.45rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel p {
  margin-top: 0.72rem !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-weight: 400 !important;
}

@media (max-width: 980px) {
  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel {
    justify-self: stretch !important;
    max-width: none !important;
  }
}

/* V7.14 promotoras hero polish: match reference icon rhythm while keeping CTA text intact. */
body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row {
  width: min(100%, 720px) !important;
  grid-template-columns: repeat(4, minmax(0, auto)) !important;
  justify-content: start !important;
  align-items: center !important;
  column-gap: clamp(2rem, 4.2vw, 4rem) !important;
  row-gap: 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row span {
  grid-template-columns: 32px minmax(0, max-content) !important;
  gap: 0.82rem !important;
  color: rgba(255, 248, 238, 0.84) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row svg {
  width: 30px !important;
  height: 30px !important;
  color: var(--promotoras-gold) !important;
  stroke-width: 1.38 !important;
  filter: drop-shadow(0 0 10px rgba(214, 168, 90, 0.18)) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row em {
  max-width: 8.8ch !important;
  color: rgba(255, 248, 238, 0.78) !important;
  font-size: 0.92rem !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel {
  padding: clamp(2.45rem, 3.4vw, 3.25rem) !important;
  border-color: rgba(214, 168, 90, 0.34) !important;
  background:
    linear-gradient(150deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.01)),
    radial-gradient(circle at 15% 8%, rgba(214, 168, 90, 0.08), transparent 11rem),
    rgba(3, 6, 6, 0.82) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article {
  grid-template-columns: 52px minmax(0, 1fr) !important;
  gap: 1.45rem !important;
  padding-top: 1.65rem !important;
  padding-bottom: 1.65rem !important;
  border-bottom-color: rgba(214, 168, 90, 0.24) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article > span {
  align-self: start !important;
  width: 44px !important;
  height: 44px !important;
  color: var(--promotoras-gold) !important;
  filter: drop-shadow(0 0 12px rgba(214, 168, 90, 0.2)) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel svg {
  width: 38px !important;
  height: 38px !important;
  stroke-width: 1.28 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel h3 {
  max-width: 14ch !important;
  font-size: clamp(1.38rem, 1.55vw, 1.58rem) !important;
  line-height: 1.06 !important;
  letter-spacing: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel p {
  max-width: 25ch !important;
  margin-top: 0.82rem !important;
  color: rgba(255, 248, 238, 0.65) !important;
  font-size: 0.94rem !important;
  line-height: 1.58 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy > p:not(.v4-eyebrow) {
  max-width: 650px !important;
  color: rgba(255, 248, 238, 0.78) !important;
}

@media (max-width: 620px) {
  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 1rem !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row span {
    grid-template-columns: 30px minmax(0, 1fr) !important;
  }
}

/* V7.15 promotoras hero logos: golden marks and shorter right panel. */
body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel {
  max-width: 390px !important;
  padding: clamp(1.8rem, 2.55vw, 2.35rem) !important;
  border-radius: 20px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article {
  grid-template-columns: 42px minmax(0, 1fr) !important;
  gap: 1.2rem !important;
  padding-top: 1.08rem !important;
  padding-bottom: 1.08rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article > span {
  width: 36px !important;
  height: 36px !important;
  color: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel svg {
  width: 31px !important;
  height: 31px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel h3 {
  max-width: 13ch !important;
  font-size: clamp(1.22rem, 1.42vw, 1.46rem) !important;
  line-height: 1.04 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel p {
  max-width: 24ch !important;
  margin-top: 0.62rem !important;
  font-size: 0.86rem !important;
  line-height: 1.48 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row {
  width: min(100%, 680px) !important;
  margin-top: 1.85rem !important;
  column-gap: clamp(1.7rem, 3.7vw, 3.45rem) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row span {
  grid-template-columns: 34px minmax(0, max-content) !important;
  gap: 0.76rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row svg {
  width: 31px !important;
  height: 31px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel svg,
body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row svg {
  color: var(--promotoras-gold) !important;
  fill: none !important;
  stroke: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel svg *,
body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row svg * {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.45 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article > span,
body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row span svg {
  opacity: 0.96 !important;
}

@media (max-width: 980px) {
  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel {
    max-width: none !important;
  }
}

/* V7.16 promotoras editorial blocks: logos without duplicated quote text. */
body[data-page="/promotoras/"] .promotoras-focus-card > div {
  position: relative !important;
  display: grid !important;
  align-content: start !important;
  padding: 1.35rem 1.25rem 1.55rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-logo {
  position: absolute !important;
  top: 1.1rem !important;
  right: 1.05rem !important;
  display: grid !important;
  width: 34px !important;
  height: 34px !important;
  place-items: center !important;
  border: 1px solid rgba(214, 168, 90, 0.22) !important;
  border-radius: 999px !important;
  color: var(--promotoras-gold) !important;
  background: rgba(214, 168, 90, 0.045) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-logo svg,
body[data-page="/promotoras/"] .promotoras-copy-logo svg,
body[data-page="/promotoras/"] .promotoras-mini-row .promotoras-inline-icon svg {
  width: 18px !important;
  height: 18px !important;
  color: var(--promotoras-gold) !important;
  fill: none !important;
  stroke: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-logo svg *,
body[data-page="/promotoras/"] .promotoras-copy-logo svg *,
body[data-page="/promotoras/"] .promotoras-mini-row .promotoras-inline-icon svg * {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.55 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card h3 {
  padding-right: 2.25rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card p:not(.promotoras-part) {
  display: -webkit-box !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 4 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card:hover .promotoras-focus-logo {
  border-color: rgba(214, 168, 90, 0.4) !important;
  background: rgba(214, 168, 90, 0.08) !important;
  box-shadow: 0 0 24px rgba(214, 168, 90, 0.12) !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy.is-problem-copy {
  position: relative !important;
  padding: clamp(1.55rem, 2.35vw, 2.2rem) !important;
  border: 1px solid rgba(214, 168, 90, 0.18) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.028), rgba(255, 255, 255, 0.008)),
    radial-gradient(circle at 8% 12%, rgba(214, 168, 90, 0.08), transparent 12rem) !important;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.22) !important;
}

body[data-page="/promotoras/"] .promotoras-copy-logo {
  position: absolute !important;
  top: clamp(1.25rem, 2vw, 1.8rem) !important;
  right: clamp(1.25rem, 2vw, 1.8rem) !important;
  display: grid !important;
  width: 40px !important;
  height: 40px !important;
  place-items: center !important;
  border: 1px solid rgba(214, 168, 90, 0.24) !important;
  border-radius: 999px !important;
  color: var(--promotoras-gold) !important;
  background: rgba(214, 168, 90, 0.045) !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy.is-problem-copy h2 {
  padding-right: 3rem !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy.is-problem-copy blockquote {
  margin-top: 1.05rem !important;
  margin-bottom: 1.15rem !important;
  padding-left: 1rem !important;
  border-left: 1px solid rgba(214, 168, 90, 0.5) !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy.is-problem-copy .promotoras-readable p:first-child {
  margin-top: 0 !important;
}

/* V7.17 promotoras editorial refinements: softer image motion, clearer modules, richer FAQ and final CTA. */
@keyframes promotorasSoftCrossfade {
  0%,
  31% {
    opacity: 1;
    transform: scale(1);
  }

  38%,
  93% {
    opacity: 0;
    transform: scale(1.035);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

body[data-page="/promotoras/"] .promotoras-image-rotator {
  position: absolute !important;
  inset: 0 !important;
  overflow: hidden !important;
}

body[data-page="/promotoras/"] .promotoras-image-rotator .promotoras-rotator-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: 0;
  animation: promotorasSoftCrossfade 15s ease-in-out infinite;
  animation-delay: calc(var(--slide-index) * 5s);
}

body[data-page="/promotoras/"] .promotoras-focus-grid {
  grid-template-columns: minmax(320px, 0.31fr) minmax(0, 0.69fr) !important;
  align-items: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-focus-cards {
  align-items: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card figure {
  height: clamp(240px, 16vw, 300px) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card > div {
  min-height: 250px !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card h3 {
  font-size: clamp(1.62rem, 2vw, 2rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card:hover .promotoras-image-rotator .promotoras-rotator-image,
body[data-page="/promotoras/"] .promotoras-large-media:hover .promotoras-image-rotator .promotoras-rotator-image {
  animation-duration: 12s;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-problem {
  grid-template-columns: minmax(350px, 0.4fr) minmax(0, 0.6fr) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy.is-problem-copy {
  max-width: 560px !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-large-media {
  min-height: clamp(360px, 34vw, 470px) !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-large-media {
  min-height: clamp(440px, 42vw, 600px) !important;
}

body[data-page="/promotoras/"] .promotoras-visual-overlay article,
body[data-page="/promotoras/"] .promotoras-icon-points .promotoras-mini-metric,
body[data-page="/promotoras/"] .promotoras-mini-row .promotoras-mini-metric {
  transition: transform 220ms ease, color 220ms ease, background 220ms ease, border-color 220ms ease !important;
}

body[data-page="/promotoras/"] .promotoras-visual-overlay article:hover,
body[data-page="/promotoras/"] .promotoras-icon-points .promotoras-mini-metric:hover,
body[data-page="/promotoras/"] .promotoras-mini-row .promotoras-mini-metric:hover {
  transform: translateY(-3px) !important;
}

body[data-page="/promotoras/"] .promotoras-visual-overlay article:hover span,
body[data-page="/promotoras/"] .promotoras-mini-metric:hover .promotoras-inline-icon {
  border-color: rgba(214, 168, 90, 0.5) !important;
  background: rgba(214, 168, 90, 0.08) !important;
  box-shadow: 0 0 24px rgba(214, 168, 90, 0.12) !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-packs {
  grid-template-columns: minmax(350px, 0.37fr) minmax(0, 0.63fr) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-board {
  min-height: clamp(420px, 37vw, 560px) !important;
  align-self: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-pack-rotator {
  display: grid !important;
  min-height: inherit !important;
}

body[data-page="/promotoras/"] .promotoras-pack-slide {
  grid-area: 1 / 1 !important;
  opacity: 0;
  animation: promotorasSoftCrossfade 18s ease-in-out infinite;
  animation-delay: calc(var(--slide-index) * 6s);
}

body[data-page="/promotoras/"] .promotoras-pack-slide .promotoras-dossier-sheet {
  min-height: clamp(420px, 37vw, 560px) !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-sheet {
  grid-template-columns: minmax(170px, 0.28fr) minmax(0, 0.72fr) !important;
  align-content: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-gallery {
  align-content: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-gallery img {
  min-height: 112px !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell {
  grid-template-columns: minmax(320px, 0.34fr) minmax(0, 0.66fr) !important;
  align-items: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(220px, 1fr)) !important;
  gap: clamp(0.9rem, 1.4vw, 1.15rem) !important;
  align-self: stretch !important;
  align-content: center !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline::before {
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric {
  grid-template-columns: 52px minmax(0, 1fr) !important;
  align-content: start !important;
  align-items: start !important;
  min-height: 154px !important;
  padding: clamp(1.15rem, 1.7vw, 1.45rem) !important;
  border-radius: 12px !important;
}

body[data-page="/promotoras/"] .promotoras-mini-metric small {
  grid-column: 2 !important;
  display: block !important;
  margin-top: 0.45rem !important;
  color: rgba(246, 239, 229, 0.58) !important;
  font-size: 0.8rem !important;
  line-height: 1.42 !important;
}

body[data-page="/promotoras/"] .promotoras-calculator-shell {
  display: grid !important;
  grid-template-columns: minmax(360px, 0.46fr) minmax(300px, 0.3fr) minmax(280px, 0.24fr) !important;
  gap: clamp(1.4rem, 2.6vw, 2.6rem) !important;
  align-items: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-calculator-copy,
body[data-page="/promotoras/"] .promotoras-decision-card,
body[data-page="/promotoras/"] .promotoras-results-card {
  min-height: 360px !important;
}

body[data-page="/promotoras/"] .promotoras-decision-card {
  display: flex !important;
  flex-direction: column !important;
  padding: clamp(1.3rem, 2vw, 1.8rem) !important;
  border: 1px solid var(--promotoras-gold-soft) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.014)),
    rgba(255, 255, 255, 0.024) !important;
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.24) !important;
}

body[data-page="/promotoras/"] .promotoras-decision-card h3 {
  margin: 0 !important;
  color: var(--promotoras-ink) !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.7rem, 2vw, 2.2rem) !important;
  line-height: 1 !important;
}

body[data-page="/promotoras/"] .promotoras-decision-card ul {
  display: grid !important;
  gap: 0.85rem !important;
  margin: 1.3rem 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body[data-page="/promotoras/"] .promotoras-decision-card li {
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) !important;
  gap: 0.75rem !important;
  align-items: start !important;
  padding-top: 0.85rem !important;
  border-top: 1px solid rgba(214, 168, 90, 0.14) !important;
}

body[data-page="/promotoras/"] .promotoras-decision-card li > span {
  grid-row: 1 / span 2 !important;
  display: grid !important;
  width: 34px !important;
  height: 34px !important;
  place-items: center !important;
  border: 1px solid rgba(214, 168, 90, 0.24) !important;
  border-radius: 999px !important;
  color: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-decision-card svg {
  width: 17px !important;
  height: 17px !important;
  fill: none !important;
  stroke: currentColor !important;
}

body[data-page="/promotoras/"] .promotoras-decision-card strong {
  color: var(--promotoras-ink) !important;
  font-size: 0.88rem !important;
  line-height: 1.25 !important;
}

body[data-page="/promotoras/"] .promotoras-decision-card small {
  display: block !important;
  margin-top: 0.22rem !important;
  color: rgba(246, 239, 229, 0.58) !important;
  font-size: 0.76rem !important;
  line-height: 1.38 !important;
}

body[data-page="/promotoras/"] .promotoras-results-card {
  justify-content: flex-start !important;
}

body[data-page="/promotoras/"] .promotoras-results-card > div {
  grid-template-columns: 1fr !important;
  gap: 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-results-card strong {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(1.2rem, 1.7vw, 1.55rem) !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-results-card span {
  max-width: 22ch !important;
  font-size: 0.78rem !important;
}

body[data-page="/promotoras/"] .promotoras-related-stack {
  display: grid !important;
  gap: clamp(1.5rem, 2.6vw, 2.4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-related-stack .promotoras-editorial-copy {
  max-width: 740px !important;
}

body[data-page="/promotoras/"] .promotoras-related-stack .promotoras-editorial-copy h2 {
  max-width: none !important;
}

body[data-page="/promotoras/"] .promotoras-section-note {
  max-width: 640px !important;
  margin: 0.95rem 0 0 !important;
  color: rgba(246, 239, 229, 0.66) !important;
  font-size: 0.92rem !important;
  line-height: 1.58 !important;
}

body[data-page="/promotoras/"] .promotoras-related-card > div {
  min-height: 230px !important;
}

body[data-page="/promotoras/"] .promotoras-faq-grid {
  grid-template-columns: minmax(300px, 0.32fr) minmax(0, 0.68fr) !important;
  align-items: start !important;
}

body[data-page="/promotoras/"] .promotoras-faq-visual {
  position: relative !important;
  height: 220px !important;
  margin: 1.5rem 0 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(214, 168, 90, 0.18) !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, 0.018) !important;
}

body[data-page="/promotoras/"] .promotoras-accordion {
  max-width: none !important;
  gap: 0.55rem !important;
}

body[data-page="/promotoras/"] .promotoras-accordion summary {
  grid-template-columns: 44px minmax(0, 1fr) 28px !important;
  min-height: 62px !important;
  padding: 0.72rem 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-accordion summary::after {
  content: none !important;
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-accordion summary .promotoras-faq-number {
  align-self: start !important;
  color: var(--promotoras-gold) !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
}

body[data-page="/promotoras/"] .promotoras-faq-question {
  display: grid !important;
  gap: 0.22rem !important;
  color: var(--promotoras-ink) !important;
}

body[data-page="/promotoras/"] .promotoras-faq-question small,
body[data-page="/promotoras/"] .promotoras-faq-answer small {
  color: var(--promotoras-gold) !important;
  font-size: 0.62rem !important;
  font-weight: 850 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

body[data-page="/promotoras/"] .promotoras-faq-answer {
  margin: 0 1rem 1rem 4.55rem !important;
  padding-top: 0.8rem !important;
  border-top: 1px solid rgba(214, 168, 90, 0.12) !important;
}

body[data-page="/promotoras/"] .promotoras-accordion .promotoras-faq-answer p {
  max-width: 720px !important;
  margin: 0.3rem 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: rgba(246, 239, 229, 0.7) !important;
  font-size: 0.88rem !important;
  line-height: 1.58 !important;
}

body[data-page="/promotoras/"] .promotoras-final-section {
  min-height: clamp(440px, 54vh, 620px) !important;
  padding: clamp(3.2rem, 6vw, 5.4rem) 0 !important;
  overflow: hidden !important;
}

body[data-page="/promotoras/"] .promotoras-final-section .v4-final-media .promotoras-image-rotator {
  position: absolute !important;
  inset: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-final-grid {
  grid-template-columns: minmax(0, 0.58fr) minmax(320px, 0.32fr) !important;
  align-items: center !important;
  gap: clamp(2rem, 5vw, 5rem) !important;
}

body[data-page="/promotoras/"] .promotoras-final-copy {
  max-width: 720px !important;
}

body[data-page="/promotoras/"] .promotoras-final-copy h2 {
  max-width: 14ch !important;
  margin-top: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-final-copy p {
  max-width: 62ch !important;
}

body[data-page="/promotoras/"] .promotoras-final-copy ul {
  display: grid !important;
  gap: 0.55rem !important;
  margin: 1.2rem 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body[data-page="/promotoras/"] .promotoras-final-copy li {
  position: relative !important;
  padding-left: 1.25rem !important;
  color: rgba(255, 248, 238, 0.74) !important;
  font-size: 0.94rem !important;
  line-height: 1.48 !important;
}

body[data-page="/promotoras/"] .promotoras-final-copy li::before {
  content: "" !important;
  position: absolute !important;
  top: 0.62em !important;
  left: 0 !important;
  width: 0.42rem !important;
  height: 0.42rem !important;
  border-radius: 999px !important;
  background: var(--promotoras-gold) !important;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .promotoras-focus-grid,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-problem,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-packs,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell,
  body[data-page="/promotoras/"] .promotoras-calculator-shell,
  body[data-page="/promotoras/"] .promotoras-faq-grid,
  body[data-page="/promotoras/"] .promotoras-final-grid {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-calculator-copy,
  body[data-page="/promotoras/"] .promotoras-decision-card,
  body[data-page="/promotoras/"] .promotoras-results-card {
    min-height: 0 !important;
  }

  body[data-page="/promotoras/"] .promotoras-dossier-board,
  body[data-page="/promotoras/"] .promotoras-pack-slide .promotoras-dossier-sheet {
    min-height: 420px !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .promotoras-focus-card figure,
  body[data-page="/promotoras/"] .promotoras-faq-visual {
    height: 210px !important;
  }

  body[data-page="/promotoras/"] .promotoras-dossier-sheet {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-dossier-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/promotoras/"] .promotoras-dossier-badges {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric {
    grid-template-columns: 46px minmax(0, 1fr) !important;
    min-height: 0 !important;
  }

  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-accordion summary {
    grid-template-columns: 34px minmax(0, 1fr) 24px !important;
  }

  body[data-page="/promotoras/"] .promotoras-faq-answer {
    margin-left: 1rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body[data-page="/promotoras/"] .promotoras-image-rotator .promotoras-rotator-image,
  body[data-page="/promotoras/"] .promotoras-pack-slide {
    animation: none !important;
  }

  body[data-page="/promotoras/"] .promotoras-image-rotator .promotoras-rotator-image:first-child,
  body[data-page="/promotoras/"] .promotoras-pack-slide:first-child {
    opacity: 1 !important;
  }
}

/* V7.18 promotoras typography parity: align with the approved home scale. */
body[data-page="/promotoras/"] .promotoras-editorial-page {
  --promotoras-display-font: "Playfair Display", Georgia, serif;
  --promotoras-body-font: Inter, Manrope, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-family: var(--promotoras-body-font) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page h1,
body[data-page="/promotoras/"] .promotoras-editorial-page h2,
body[data-page="/promotoras/"] .promotoras-editorial-page h3 {
  font-family: var(--promotoras-display-font) !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy h1 {
  max-width: 12.9ch !important;
  font-size: clamp(3.25rem, 4.7vw, 5.35rem) !important;
  line-height: 1.01 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-final-copy h2 {
  font-size: clamp(2.2rem, 3.05vw, 3.55rem) !important;
  line-height: 1.04 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-editorial-section .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-split-grid .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-focus-section .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-process-section .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-calculator-section .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-related-stack .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-faq-grid .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-final-copy h2 {
  font-family: var(--promotoras-display-font) !important;
  font-size: clamp(2.2rem, 3.05vw, 3.55rem) !important;
  font-weight: 600 !important;
  line-height: 1.04 !important;
  letter-spacing: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-focus-card h3,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-related-card h3,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-decision-card h3 {
  font-family: var(--promotoras-display-font) !important;
  font-weight: 600 !important;
  line-height: 1.04 !important;
  letter-spacing: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-section .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-related-stack .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-faq-grid .promotoras-editorial-copy h2 {
  max-width: 18ch !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page p,
body[data-page="/promotoras/"] .promotoras-editorial-page li,
body[data-page="/promotoras/"] .promotoras-editorial-page small,
body[data-page="/promotoras/"] .promotoras-editorial-page strong,
body[data-page="/promotoras/"] .promotoras-editorial-page a,
body[data-page="/promotoras/"] .promotoras-editorial-page span:not(.promotoras-faq-question):not(.promotoras-faq-number) {
  font-family: var(--promotoras-body-font) !important;
  letter-spacing: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-readable p,
body[data-page="/promotoras/"] .promotoras-editorial-copy > p:not(.promotoras-part):not(.v4-eyebrow),
body[data-page="/promotoras/"] .promotoras-section-note,
body[data-page="/promotoras/"] .promotoras-final-copy p,
body[data-page="/promotoras/"] .promotoras-final-copy li,
body[data-page="/promotoras/"] .promotoras-focus-card p:not(.promotoras-part),
body[data-page="/promotoras/"] .promotoras-related-card p,
body[data-page="/promotoras/"] .promotoras-visual-overlay article small,
body[data-page="/promotoras/"] .promotoras-mini-metric small,
body[data-page="/promotoras/"] .promotoras-decision-card small,
body[data-page="/promotoras/"] .promotoras-results-card span,
body[data-page="/promotoras/"] .promotoras-accordion .promotoras-faq-answer p {
  font-family: var(--promotoras-body-font) !important;
  font-size: clamp(0.98rem, 0.95vw, 1.04rem) !important;
  line-height: 1.72 !important;
}

body[data-page="/promotoras/"] .promotoras-part,
body[data-page="/promotoras/"] .promotoras-faq-question small,
body[data-page="/promotoras/"] .promotoras-faq-answer small,
body[data-page="/promotoras/"] .promotoras-hero-panel small,
body[data-page="/promotoras/"] .promotoras-related-card p:first-child,
body[data-page="/promotoras/"] .promotoras-results-card > p {
  font-family: var(--promotoras-body-font) !important;
  font-size: 0.78rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card > div,
body[data-page="/promotoras/"] .promotoras-related-card > div {
  min-height: 280px !important;
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy h1 {
    width: min(10.2ch, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    font-size: clamp(2.38rem, 10.5vw, 2.85rem) !important;
    line-height: 0.98 !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-copy h2,
  body[data-page="/promotoras/"] .promotoras-final-copy h2 {
    width: min(11.5ch, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    font-size: clamp(1.95rem, 8.8vw, 2.35rem) !important;
    line-height: 1.04 !important;
  }
}

/* V7.19 promotoras reference composition: compact premium landing rhythm. */
body[data-page="/promotoras/"] .promotoras-editorial-page {
  --promotoras-shell: min(1240px, calc(100% - 64px)) !important;
  background:
    radial-gradient(circle at 15% 10%, rgba(214, 168, 90, 0.08), transparent 26rem),
    radial-gradient(circle at 86% 32%, rgba(214, 168, 90, 0.045), transparent 30rem),
    linear-gradient(180deg, #050706 0%, #10120d 52%, #050706 100%) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-section {
  padding: clamp(4.6rem, 7vw, 6.6rem) 0 !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.12) !important;
}

body[data-page="/promotoras/"] .promotoras-section-shell,
body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell,
body[data-page="/promotoras/"] .promotoras-final-section .v3-shell {
  width: var(--promotoras-shell) !important;
  max-width: 1240px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero {
  min-height: clamp(610px, 76vh, 720px) !important;
  background: #050706 !important;
  border-bottom-color: rgba(214, 168, 90, 0.16) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-media img {
  object-position: center 52% !important;
  filter: brightness(0.62) contrast(1.08) saturate(0.9) !important;
  transform: scale(1.015) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero::after {
  background:
    linear-gradient(90deg, rgba(4, 6, 6, 0.93) 0%, rgba(4, 6, 6, 0.65) 34%, rgba(4, 6, 6, 0.28) 58%, rgba(4, 6, 6, 0.84) 100%),
    linear-gradient(180deg, rgba(4, 6, 6, 0.44) 0%, rgba(4, 6, 6, 0.04) 44%, rgba(4, 6, 6, 0.9) 100%) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
  grid-template-columns: minmax(0, 1fr) minmax(330px, 360px) !important;
  min-height: clamp(610px, 76vh, 720px) !important;
  align-items: center !important;
  gap: clamp(2.2rem, 5vw, 4.8rem) !important;
  padding-top: clamp(5.4rem, 9vh, 7.5rem) !important;
  padding-bottom: clamp(2.8rem, 6vh, 4.4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy {
  max-width: 700px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-eyebrow {
  margin-bottom: 1rem !important;
  color: var(--promotoras-gold) !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-eyebrow::before {
  width: 34px !important;
  opacity: 0.75 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-title {
  width: auto !important;
  max-width: 10.8ch !important;
  font-size: clamp(3.35rem, 5.1vw, 5.55rem) !important;
  line-height: 0.96 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-copy > p:not(.v4-eyebrow) {
  max-width: 630px !important;
  margin-top: 1.05rem !important;
  color: rgba(255, 248, 238, 0.78) !important;
  font-size: clamp(0.96rem, 0.9vw, 1.04rem) !important;
  line-height: 1.62 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-actions {
  margin-top: 1.55rem !important;
  gap: 0.9rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .v4-button {
  min-height: 46px !important;
  padding: 0 1.55rem !important;
  font-size: 0.82rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, max-content)) !important;
  width: min(100%, 690px) !important;
  margin-top: 1.7rem !important;
  column-gap: clamp(1.2rem, 3vw, 2.4rem) !important;
  row-gap: 0.8rem !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row span {
  display: grid !important;
  grid-template-columns: 28px minmax(0, auto) !important;
  grid-template-rows: auto auto !important;
  gap: 0.08rem 0.62rem !important;
  align-items: center !important;
  min-height: 42px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row svg {
  grid-row: 1 / span 2 !important;
  width: 22px !important;
  height: 22px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row em {
  max-width: none !important;
  color: rgba(255, 248, 238, 0.86) !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-transform: none !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row small {
  display: block !important;
  color: rgba(255, 248, 238, 0.54) !important;
  font-size: 0.68rem !important;
  line-height: 1.15 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel {
  max-width: 360px !important;
  min-height: 0 !important;
  padding: clamp(1.35rem, 2.1vw, 1.85rem) !important;
  border-radius: 16px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(7, 11, 10, 0.76) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article {
  grid-template-columns: 38px minmax(0, 1fr) !important;
  gap: 1rem !important;
  padding: 1.15rem 0 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel article > span {
  width: 32px !important;
  height: 32px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel svg {
  width: 26px !important;
  height: 26px !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel h3 {
  max-width: 15ch !important;
  font-size: clamp(1.08rem, 1.25vw, 1.28rem) !important;
  line-height: 1.05 !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-feature-panel p {
  max-width: 24ch !important;
  margin-top: 0.55rem !important;
  font-size: 0.78rem !important;
  line-height: 1.48 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-grid {
  grid-template-columns: minmax(260px, 0.28fr) minmax(0, 0.72fr) !important;
  gap: clamp(2rem, 4vw, 3.2rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-cards {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card figure {
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card > div {
  display: grid !important;
  align-content: start !important;
  min-height: 280px !important;
  padding: clamp(1.25rem, 1.7vw, 1.55rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card .promotoras-part {
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-focus-logo {
  position: static !important;
  display: grid !important;
  width: 54px !important;
  height: 54px !important;
  margin-bottom: 1.25rem !important;
  place-items: center !important;
  border-color: rgba(214, 168, 90, 0.28) !important;
  background: rgba(214, 168, 90, 0.055) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-logo svg {
  width: 25px !important;
  height: 25px !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card h3 {
  padding-right: 0 !important;
  font-size: clamp(1.28rem, 1.55vw, 1.55rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card p:not(.promotoras-part) {
  -webkit-line-clamp: 4 !important;
  margin-top: 0.72rem !important;
  color: rgba(246, 239, 229, 0.62) !important;
  font-size: 0.82rem !important;
  line-height: 1.55 !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-layout {
  display: grid !important;
  gap: clamp(1.6rem, 3vw, 2.4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-editorial-copy {
  max-width: 760px !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-readable {
  max-width: 900px !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1.1rem 2rem !important;
}

body[data-page="/promotoras/"] .promotoras-solution-cards {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card {
  overflow: hidden !important;
  border: 1px solid rgba(214, 168, 90, 0.18) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(255, 255, 255, 0.025) !important;
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.24) !important;
  transition: transform 250ms ease, border-color 250ms ease, box-shadow 250ms ease !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(214, 168, 90, 0.42) !important;
  box-shadow: 0 26px 70px rgba(0, 0, 0, 0.34), 0 0 34px rgba(214, 168, 90, 0.08) !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card figure {
  height: clamp(170px, 15vw, 230px) !important;
  margin: 0 !important;
  overflow: hidden !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 250ms ease !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card:hover img {
  transform: scale(1.035) !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card > div {
  display: grid !important;
  min-height: 210px !important;
  padding: 1.05rem !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card .promotoras-focus-logo {
  width: 38px !important;
  height: 38px !important;
  margin-bottom: 0.95rem !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card .promotoras-focus-logo svg {
  width: 18px !important;
  height: 18px !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card h3 {
  margin: 0 !important;
  color: var(--promotoras-ink) !important;
  font-family: var(--promotoras-display-font) !important;
  font-size: clamp(1.22rem, 1.45vw, 1.48rem) !important;
  line-height: 1.05 !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card p {
  margin: 0.75rem 0 0 !important;
  color: rgba(246, 239, 229, 0.62) !important;
  font-size: 0.82rem !important;
  line-height: 1.48 !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card .promotoras-card-arrow {
  align-self: end !important;
  margin-top: 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-problem,
body[data-page="/promotoras/"] .promotoras-split-grid.is-packs {
  grid-template-columns: minmax(280px, 0.35fr) minmax(0, 0.65fr) !important;
  gap: clamp(2rem, 4vw, 3.5rem) !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy.is-problem-copy {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-page="/promotoras/"] .promotoras-copy-logo {
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-large-media {
  min-height: clamp(340px, 31vw, 430px) !important;
  border-radius: 12px !important;
}

body[data-page="/promotoras/"] .promotoras-mini-row {
  gap: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(214, 168, 90, 0.14) !important;
  border-radius: 0 0 12px 12px !important;
}

body[data-page="/promotoras/"] .promotoras-mini-row .promotoras-mini-metric {
  border: 0 !important;
  border-right: 1px solid rgba(214, 168, 90, 0.12) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: rgba(0, 0, 0, 0.22) !important;
}

body[data-page="/promotoras/"] .promotoras-mini-row .promotoras-mini-metric:last-child {
  border-right: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell {
  grid-template-columns: minmax(260px, 0.32fr) minmax(0, 0.68fr) !important;
  gap: clamp(2rem, 4vw, 3.5rem) !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric {
  min-height: 160px !important;
  border: 0 !important;
  border-top: 1px solid rgba(214, 168, 90, 0.28) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-page="/promotoras/"] .promotoras-calculator-shell {
  grid-template-columns: minmax(260px, 0.32fr) repeat(2, minmax(0, 0.34fr)) !important;
  align-items: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-calculator-copy,
body[data-page="/promotoras/"] .promotoras-decision-card,
body[data-page="/promotoras/"] .promotoras-results-card {
  min-height: 290px !important;
  border-radius: 12px !important;
}

body[data-page="/promotoras/"] .promotoras-related-stack {
  grid-template-columns: minmax(250px, 0.28fr) minmax(0, 0.72fr) !important;
  align-items: start !important;
}

body[data-page="/promotoras/"] .promotoras-related-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body[data-page="/promotoras/"] .promotoras-related-card {
  border-radius: 12px !important;
}

body[data-page="/promotoras/"] .promotoras-related-card figure {
  height: clamp(185px, 17vw, 245px) !important;
}

body[data-page="/promotoras/"] .promotoras-related-card > div {
  min-height: 220px !important;
}

body[data-page="/promotoras/"] .promotoras-faq-grid {
  grid-template-columns: minmax(250px, 0.28fr) minmax(0, 0.72fr) !important;
}

body[data-page="/promotoras/"] .promotoras-faq-visual {
  min-height: 210px !important;
  border-radius: 14px !important;
  opacity: 0.8 !important;
}

body[data-page="/promotoras/"] .promotoras-final-section {
  min-height: 420px !important;
  background:
    radial-gradient(circle at 82% 58%, rgba(214, 168, 90, 0.18), transparent 22rem),
    linear-gradient(90deg, rgba(5, 7, 6, 0.98), rgba(5, 7, 6, 0.78)) !important;
}

body[data-page="/promotoras/"] .promotoras-final-grid {
  grid-template-columns: minmax(0, 0.55fr) minmax(260px, 0.3fr) !important;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell,
  body[data-page="/promotoras/"] .promotoras-focus-grid,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-problem,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-packs,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell,
  body[data-page="/promotoras/"] .promotoras-calculator-shell,
  body[data-page="/promotoras/"] .promotoras-related-stack,
  body[data-page="/promotoras/"] .promotoras-faq-grid,
  body[data-page="/promotoras/"] .promotoras-final-grid {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-cards,
  body[data-page="/promotoras/"] .promotoras-solution-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-readable {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .promotoras-editorial-page {
    --promotoras-shell: min(100% - 28px, 640px) !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .vertical-hero-shell {
    padding-top: 92px !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-title {
    max-width: 10ch !important;
    font-size: clamp(2.75rem, 12vw, 3.45rem) !important;
  }

  body[data-page="/promotoras/"] .promotoras-editorial-hero .promotoras-hero-chip-row,
  body[data-page="/promotoras/"] .promotoras-focus-cards,
  body[data-page="/promotoras/"] .promotoras-solution-cards,
  body[data-page="/promotoras/"] .promotoras-related-cards,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline,
  body[data-page="/promotoras/"] .promotoras-mini-row {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-mini-row .promotoras-mini-metric {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(214, 168, 90, 0.12) !important;
  }

  body[data-page="/promotoras/"] .promotoras-mini-row .promotoras-mini-metric:last-child {
    border-bottom: 0 !important;
  }
}

/* V7.20 verticals, cases and resources: align to the approved promotoras language. */
body:is([data-page="/industria/"], [data-page="/arquitectura/"], [data-page="/casos/"], [data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) {
  background:
    radial-gradient(circle at 15% 10%, rgba(214, 168, 90, 0.08), transparent 26rem),
    radial-gradient(circle at 86% 32%, rgba(214, 168, 90, 0.045), transparent 30rem),
    linear-gradient(180deg, #050706 0%, #10120d 52%, #050706 100%) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality {
  --vertical-approved-shell: min(1240px, calc(100% - 64px));
  background:
    radial-gradient(circle at 15% 10%, rgba(214, 168, 90, 0.08), transparent 26rem),
    radial-gradient(circle at 86% 32%, rgba(214, 168, 90, 0.045), transparent 30rem),
    linear-gradient(180deg, #050706 0%, #10120d 52%, #050706 100%) !important;
  color: #f6efe5 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality .v3-shell {
  width: var(--vertical-approved-shell) !important;
  max-width: 1240px !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero {
  min-height: clamp(610px, 76vh, 720px) !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.16) !important;
  background: #050706 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-media img {
  object-position: center 52% !important;
  filter: brightness(0.62) contrast(1.08) saturate(0.9) !important;
  transform: scale(1.015) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero::after {
  background:
    linear-gradient(90deg, rgba(4, 6, 6, 0.93) 0%, rgba(4, 6, 6, 0.65) 34%, rgba(4, 6, 6, 0.28) 58%, rgba(4, 6, 6, 0.84) 100%),
    linear-gradient(180deg, rgba(4, 6, 6, 0.44) 0%, rgba(4, 6, 6, 0.04) 44%, rgba(4, 6, 6, 0.9) 100%) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-shell,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality-arquitectura .vertical-hero-shell {
  grid-template-columns: minmax(0, 1fr) minmax(330px, 360px) !important;
  min-height: clamp(610px, 76vh, 720px) !important;
  align-items: center !important;
  gap: clamp(2.2rem, 5vw, 4.8rem) !important;
  padding-top: clamp(5.4rem, 9vh, 7.5rem) !important;
  padding-bottom: clamp(2.8rem, 6vh, 4.4rem) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-copy {
  max-width: 710px !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-copy h1 {
  max-width: 12.4ch !important;
  margin: 0 !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(3.25rem, 4.7vw, 5.35rem) !important;
  line-height: 1.01 !important;
  letter-spacing: 0 !important;
}

body[data-page="/arquitectura/"] .vertical-hero-copy h1 {
  max-width: 15.4ch !important;
  font-size: clamp(3rem, 4.35vw, 5rem) !important;
}

html body[data-home-template="true"][data-page="/arquitectura/"] .vertical-personality.vertical-personality-arquitectura .vertical-hero-copy h1 {
  max-width: 15.4ch !important;
  font-size: clamp(3rem, 4.35vw, 5rem) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-copy > p:not(.v4-eyebrow) {
  max-width: 640px !important;
  margin-top: 1.05rem !important;
  color: rgba(255, 248, 238, 0.78) !important;
  font-size: clamp(0.96rem, 0.9vw, 1.04rem) !important;
  line-height: 1.62 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero .v4-eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.78rem !important;
  margin-bottom: 1rem !important;
  color: #d6a85a !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero .v4-eyebrow::before {
  content: "" !important;
  width: 34px !important;
  height: 1px !important;
  background: #d6a85a !important;
  opacity: 0.75 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero .v4-actions {
  margin-top: 1.55rem !important;
  gap: 0.9rem !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero .v4-button {
  min-height: 46px !important;
  padding: 0 1.55rem !important;
  border-radius: 999px !important;
  font-size: 0.82rem !important;
  font-weight: 800 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-chip-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, max-content)) !important;
  width: min(100%, 700px) !important;
  margin-top: 1.7rem !important;
  gap: 0.8rem clamp(1.1rem, 2.8vw, 2.3rem) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-chip-row span {
  display: grid !important;
  grid-template-columns: 28px minmax(0, auto) !important;
  align-items: center !important;
  min-height: 42px !important;
  gap: 0.62rem !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(255, 248, 238, 0.86) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-chip-row svg {
  width: 22px !important;
  height: 22px !important;
  fill: none !important;
  stroke: #d6a85a !important;
  stroke-width: 1.5 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-chip-row em {
  font-style: normal !important;
  color: rgba(255, 248, 238, 0.82) !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel {
  justify-self: end !important;
  align-self: center !important;
  display: grid !important;
  align-content: center !important;
  width: 100% !important;
  max-width: 360px !important;
  min-height: 0 !important;
  padding: clamp(1.35rem, 2.1vw, 1.85rem) !important;
  border: 1px solid rgba(214, 168, 90, 0.34) !important;
  border-radius: 16px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(7, 11, 10, 0.78) !important;
  box-shadow: 0 30px 86px rgba(0, 0, 0, 0.4) !important;
  backdrop-filter: blur(16px) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel > p {
  margin-bottom: 0.8rem !important;
  color: #d6a85a !important;
  font-size: 0.66rem !important;
  letter-spacing: 0.08em !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel h2 {
  max-width: 100% !important;
  font-size: clamp(1.12rem, 1.32vw, 1.32rem) !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
}

body[data-page="/industria/"] .vertical-personality .vertical-hero-panel h2,
body[data-page="/arquitectura/"] .vertical-personality .vertical-hero-panel h2 {
  max-width: 100% !important;
  font-size: clamp(1.12rem, 1.32vw, 1.32rem) !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
}

html body[data-home-template="true"][data-page="/industria/"] .vertical-personality.vertical-personality-industria .vertical-hero-panel h2,
html body[data-home-template="true"][data-page="/arquitectura/"] .vertical-personality.vertical-personality-arquitectura .vertical-hero-panel h2 {
  max-width: 100% !important;
  font-size: clamp(1.12rem, 1.32vw, 1.32rem) !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
}

html body[data-home-template="true"][data-page="/industria/"] .vertical-personality.vertical-personality-industria .vertical-hero-panel,
html body[data-home-template="true"][data-page="/arquitectura/"] .vertical-personality.vertical-personality-arquitectura .vertical-hero-panel {
  align-self: center !important;
  height: auto !important;
  min-height: 0 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel ul {
  gap: 0 !important;
  margin-top: 1rem !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel li {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 0.9rem !important;
  padding: 0.78rem 0 !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.18) !important;
  color: rgba(255, 248, 238, 0.68) !important;
  font-size: 0.76rem !important;
  line-height: 1.38 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel li:last-child {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel li::before {
  content: none !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-panel-mark {
  display: grid !important;
  width: 28px !important;
  height: 28px !important;
  place-items: center !important;
  color: #d6a85a !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-panel-mark svg {
  width: 24px !important;
  height: 24px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.5 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-intro,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-blockers,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-references,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-method,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-faq {
  padding: clamp(4.6rem, 7vw, 6.6rem) 0 !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.12) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.008), rgba(255, 255, 255, 0)),
    transparent !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-intro-grid,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-blockers-grid,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-method-grid,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-faq-grid,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-section-head {
  grid-template-columns: minmax(260px, 0.28fr) minmax(0, 0.72fr) !important;
  gap: clamp(2rem, 4vw, 3.2rem) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-intro h2,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-section-head h2,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-blockers h2,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-method h2,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-faq h2 {
  max-width: 13ch !important;
  font-size: clamp(2.2rem, 3.05vw, 3.55rem) !important;
  line-height: 1.04 !important;
  letter-spacing: 0 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-intro-grid > p,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-section-head > p:not(.v4-eyebrow) {
  max-width: 620px !important;
  margin-top: 0 !important;
  color: rgba(246, 239, 229, 0.68) !important;
  font-size: clamp(0.98rem, 0.95vw, 1.04rem) !important;
  line-height: 1.72 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-problem-list article,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-card,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-reference-card,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-method-steps article,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-faq-list details {
  border: 1px solid rgba(214, 168, 90, 0.18) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(255, 255, 255, 0.025) !important;
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.24) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-problem-list article {
  grid-template-columns: 42px minmax(0, 1fr) !important;
  padding: 1.05rem !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-problem-list article > span {
  display: grid !important;
  width: 38px !important;
  height: 38px !important;
  place-items: center !important;
  border: 1px solid rgba(214, 168, 90, 0.28) !important;
  border-radius: 999px !important;
  background: rgba(214, 168, 90, 0.055) !important;
  color: #d6a85a !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-problem-list article > span svg {
  width: 18px !important;
  height: 18px !important;
  fill: none !important;
  stroke: currentColor !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-feature-image,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-card,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-reference-card {
  border-radius: 12px !important;
  overflow: hidden !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-feature-image {
  min-height: clamp(340px, 32vw, 450px) !important;
  top: 98px !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-feature-image img {
  min-height: clamp(340px, 32vw, 450px) !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-grid,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality-industria .vertical-activation-grid,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality-arquitectura .vertical-activation-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-card figure,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-reference-card figure,
body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality-arquitectura .vertical-activation-card:first-child figure {
  aspect-ratio: 1.55 / 1 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-reference-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-method-steps {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
}

body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-method-steps article {
  border: 0 !important;
  border-top: 1px solid rgba(214, 168, 90, 0.28) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .page-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-top: 0 !important;
  overflow: hidden !important;
  color: #f6efe5 !important;
  background:
    radial-gradient(circle at 15% 10%, rgba(214, 168, 90, 0.08), transparent 26rem),
    radial-gradient(circle at 86% 32%, rgba(214, 168, 90, 0.045), transparent 30rem),
    linear-gradient(180deg, #050706 0%, #10120d 52%, #050706 100%) !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(330px, 360px) !important;
  align-items: center !important;
  min-height: clamp(610px, 76vh, 720px) !important;
  gap: clamp(2.2rem, 5vw, 4.8rem) !important;
  padding: clamp(5.4rem, 9vh, 7.5rem) max(32px, calc((100vw - 1240px) / 2)) clamp(2.8rem, 6vh, 4.4rem) !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.16) !important;
  overflow: hidden !important;
  background: #050706 !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero-media img {
  filter: brightness(0.62) contrast(1.08) saturate(0.9) !important;
  transform: scale(1.015) !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero::after {
  background:
    linear-gradient(90deg, rgba(4, 6, 6, 0.93) 0%, rgba(4, 6, 6, 0.65) 34%, rgba(4, 6, 6, 0.28) 58%, rgba(4, 6, 6, 0.84) 100%),
    linear-gradient(180deg, rgba(4, 6, 6, 0.44) 0%, rgba(4, 6, 6, 0.04) 44%, rgba(4, 6, 6, 0.9) 100%) !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero > :not(.internal-hero-media) {
  position: relative !important;
  z-index: 2 !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .hero-copy {
  max-width: 710px !important;
  z-index: 1 !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero h1 {
  max-width: 12.4ch !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(3.25rem, 4.7vw, 5.35rem) !important;
  line-height: 1.01 !important;
  letter-spacing: 0 !important;
  color: #fff8ee !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .lead,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .hero-note {
  max-width: 640px !important;
  color: rgba(255, 248, 238, 0.78) !important;
  font-size: clamp(0.96rem, 0.9vw, 1.04rem) !important;
  line-height: 1.62 !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .eyebrow {
  color: #d6a85a !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .button,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-final-cta .button,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-final-cta .button {
  min-height: 46px !important;
  padding: 0 1.55rem !important;
  border-radius: 999px !important;
  font-size: 0.82rem !important;
  font-weight: 800 !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .button-primary,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-final-cta .button-primary,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-final-cta .button-primary {
  border-color: rgba(255, 222, 152, 0.42) !important;
  background: linear-gradient(135deg, #f0bf5f, #d6a85a) !important;
  color: #14100a !important;
  box-shadow: 0 18px 44px rgba(214, 168, 90, 0.24) !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .button-secondary,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-final-cta .button-secondary,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-final-cta .button-secondary {
  border-color: rgba(214, 168, 90, 0.34) !important;
  background: rgba(5, 8, 7, 0.38) !important;
  color: #fff8ee !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .meta-strip {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, max-content)) !important;
  width: min(100%, 700px) !important;
  margin-top: 1.7rem !important;
  gap: 0.8rem clamp(1.1rem, 2.8vw, 2.3rem) !important;
  border: 0 !important;
  background: transparent !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .meta-strip span {
  padding: 0 !important;
  border: 0 !important;
  color: rgba(255, 248, 238, 0.82) !important;
  background: transparent !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .hero-panel,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .hero-panel-layered {
  position: relative !important;
  inset: auto !important;
  z-index: 1 !important;
  justify-self: end !important;
  width: 100% !important;
  max-width: 360px !important;
  min-height: 0 !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .interface-panel {
  padding: clamp(1.35rem, 2.1vw, 1.85rem) !important;
  border: 1px solid rgba(214, 168, 90, 0.34) !important;
  border-radius: 16px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(7, 11, 10, 0.78) !important;
  box-shadow: 0 30px 86px rgba(0, 0, 0, 0.4) !important;
  backdrop-filter: blur(16px) !important;
}

body[data-page="/blog/"] .resource-hub-panel .internal-hero-mini-grid,
body[data-page^="/blog/"] .resource-hub-panel .internal-hero-mini-grid {
  display: none !important;
}

body[data-page="/blog/"] .internal-hero,
body[data-page^="/blog/"] .internal-hero {
  min-height: clamp(610px, 76vh, 720px) !important;
}

body[data-page="/blog/"] .internal-hero h1,
body[data-page^="/blog/"] .internal-hero h1 {
  max-width: 13ch !important;
  font-size: clamp(2.75rem, 4.15vw, 4.75rem) !important;
}

body[data-page="/blog/"] .internal-hero .hero-panel,
body[data-page="/blog/"] .internal-hero .hero-panel-layered,
body[data-page^="/blog/"] .internal-hero .hero-panel,
body[data-page^="/blog/"] .internal-hero .hero-panel-layered {
  align-self: center !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .content-section,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .content-band,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .section-frame {
  padding: clamp(4.6rem, 7vw, 6.6rem) max(32px, calc((100vw - 1240px) / 2)) !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.12) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.008), rgba(255, 255, 255, 0)),
    transparent !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-hub-shell,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .band-shell,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .split-section,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .section-heading,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .faq-section > .faq-list,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .card-grid {
  width: min(1240px, 100%) !important;
  max-width: 1240px !important;
  margin-inline: auto !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .section-heading h2,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-section-heading h2,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-faq-aside h2,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-final-cta h2 {
  max-width: 13ch !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(2.2rem, 3.05vw, 3.55rem) !important;
  line-height: 1.04 !important;
  letter-spacing: 0 !important;
  color: #fff8ee !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-module-card,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-module-feature,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-reference-card,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-route-card,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-workflow-step,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-faq-aside,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .card,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .tool-card,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) details {
  border: 1px solid rgba(214, 168, 90, 0.18) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(255, 255, 255, 0.025) !important;
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.24) !important;
}

body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .card-media,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-module-card figure,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-module-feature figure,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-reference-card figure,
body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .cases-route-card figure {
  border-radius: 12px 12px 0 0 !important;
  overflow: hidden !important;
}

@media (max-width: 1180px) {
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality {
    --vertical-approved-shell: min(100% - 44px, 900px);
  }

  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-shell,
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-intro-grid,
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-blockers-grid,
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-method-grid,
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-faq-grid,
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-section-head,
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality-arquitectura .vertical-hero-shell,
  body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero {
    grid-template-columns: 1fr !important;
  }

  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-panel,
  body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .hero-panel,
  body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .hero-panel-layered {
    justify-self: stretch !important;
    max-width: none !important;
  }

  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-activation-grid,
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality-industria .vertical-activation-grid,
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality-arquitectura .vertical-activation-grid,
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-reference-grid,
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-method-steps {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-personality {
    --vertical-approved-shell: min(100% - 28px, 640px);
  }

  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero {
    min-height: auto !important;
  }

  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-shell {
    padding-top: 92px !important;
  }

  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-hero-copy h1,
  body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero h1 {
    max-width: 10.8ch !important;
    font-size: clamp(2.75rem, 12vw, 3.45rem) !important;
  }

  body:is([data-page="/industria/"], [data-page="/arquitectura/"]) .vertical-chip-row,
  body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero .meta-strip {
    grid-template-columns: 1fr !important;
  }

  body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .internal-hero,
  body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .content-section,
  body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .content-band,
  body:is([data-page^="/casos/"], [data-page="/blog/"], [data-page^="/blog/"]) .section-frame {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

/* V7.09 contacto premium. Header and footer are intentionally outside this scope. */
body[data-page="/contacto/"] .page-shell {
  --contact-gold: #f6be53;
  --contact-gold-soft: rgba(246, 190, 83, 0.18);
  --contact-ink: #f4efe6;
  --contact-muted: rgba(244, 239, 230, 0.78);
  --contact-soft: rgba(244, 239, 230, 0.58);
  --contact-line: rgba(246, 190, 83, 0.2);
  --contact-panel: rgba(255, 255, 255, 0.052);
  --contact-panel-soft: rgba(255, 255, 255, 0.022);
  padding: 0;
  color: var(--contact-ink);
  background:
    radial-gradient(circle at 18% 6%, rgba(246, 190, 83, 0.1), transparent 350px),
    radial-gradient(circle at 86% 28%, rgba(246, 190, 83, 0.07), transparent 420px),
    linear-gradient(180deg, #050606 0%, #0b0b08 48%, #060706 100%);
  overflow: hidden;
}

body[data-page="/contacto/"] .page-shell > .breadcrumbs {
  display: none !important;
}

body[data-page="/contacto/"] .contact-premium-shell {
  width: min(1240px, calc(100% - 64px));
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

body[data-page="/contacto/"] .contact-premium-hero {
  position: relative;
  min-height: 580px;
  padding: 120px 0 64px;
  overflow: hidden;
  isolation: isolate;
  background:
    linear-gradient(90deg, rgba(5, 6, 6, 0.98) 0%, rgba(11, 11, 8, 0.94) 46%, rgba(14, 13, 9, 0.98) 100%),
    radial-gradient(circle at 32% 44%, rgba(246, 190, 83, 0.11), transparent 330px);
}

body[data-page="/contacto/"] .contact-premium-hero::before,
body[data-page="/contacto/"] .contact-premium-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(246, 190, 83, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(246, 190, 83, 0.018) 1px, transparent 1px);
  background-size: 34px 34px;
  opacity: 0.28;
  mix-blend-mode: screen;
}

body[data-page="/contacto/"] .contact-premium-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.42)),
    radial-gradient(circle at 74% 48%, rgba(246, 190, 83, 0.1), transparent 390px);
  z-index: 0;
}

body[data-page="/contacto/"] .contact-premium-hero-glow {
  position: absolute;
  left: 50%;
  top: 18%;
  width: 1px;
  height: 360px;
  transform: translateX(-50%);
  background: linear-gradient(180deg, transparent, rgba(246, 190, 83, 0.42), transparent);
  box-shadow: 0 0 36px rgba(246, 190, 83, 0.18);
  opacity: 0.42;
  z-index: 0;
}

body[data-page="/contacto/"] .contact-premium-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.55fr) 1px minmax(320px, 0.45fr);
  gap: 42px;
  align-items: center;
}

body[data-page="/contacto/"] .contact-premium-divider {
  width: 1px;
  height: 300px;
  align-self: center;
  background: linear-gradient(180deg, transparent, rgba(246, 190, 83, 0.46), transparent);
  opacity: 0.72;
}

body[data-page="/contacto/"] .contact-premium-copy {
  max-width: 560px;
}

body[data-page="/contacto/"] .contact-premium-copy .eyebrow,
body[data-page="/contacto/"] .contact-premium-form-card > .eyebrow,
body[data-page="/contacto/"] .contact-premium-timeline-card > .eyebrow {
  margin: 0 0 18px;
  color: var(--contact-gold);
  font-family: Inter, system-ui, sans-serif;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-premium-copy .eyebrow::after,
body[data-page="/contacto/"] .contact-premium-form-card > .eyebrow::before,
body[data-page="/contacto/"] .contact-premium-timeline-card > .eyebrow::before {
  content: "";
  display: block;
  width: 42px;
  height: 1px;
  margin-top: 12px;
  background: linear-gradient(90deg, var(--contact-gold), transparent);
}

body[data-page="/contacto/"] .contact-premium-copy h1 {
  max-width: 520px !important;
  margin: 0;
  color: var(--contact-ink);
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 72px !important;
  font-weight: 700 !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
}

body[data-page="/contacto/"] .contact-premium-copy .lead {
  max-width: 520px !important;
  margin: 28px 0 0;
  color: var(--contact-muted);
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
  letter-spacing: 0 !important;
}

body[data-page="/contacto/"] .contact-premium-cards {
  display: grid;
  gap: 24px;
  justify-items: end;
}

body[data-page="/contacto/"] .contact-premium-card {
  width: 100%;
  max-width: 390px;
  min-height: 98px;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 20px;
  align-items: center;
  padding: 24px 26px;
  border: 1px solid rgba(246, 190, 83, 0.22);
  border-radius: 20px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.025)),
    rgba(8, 8, 7, 0.58);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(14px);
  transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

body[data-page="/contacto/"] .contact-premium-card:hover,
body[data-page="/contacto/"] .contact-premium-form-card:hover,
body[data-page="/contacto/"] .contact-premium-timeline-card:hover {
  transform: translateY(-2px);
  border-color: rgba(246, 190, 83, 0.34);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body[data-page="/contacto/"] .contact-premium-icon {
  width: 52px;
  height: 52px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(246, 190, 83, 0.45);
  border-radius: 999px;
  color: var(--contact-gold);
  background: rgba(246, 190, 83, 0.12);
  box-shadow: 0 0 24px rgba(246, 190, 83, 0.18);
}

body[data-page="/contacto/"] .contact-premium-icon svg {
  width: 22px;
  height: 22px;
}

body[data-page="/contacto/"] .contact-premium-card div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

body[data-page="/contacto/"] .contact-premium-card small {
  color: var(--contact-gold);
  font-family: Inter, system-ui, sans-serif;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: uppercase;
}

body[data-page="/contacto/"] .contact-premium-card strong {
  color: var(--contact-ink);
  font-family: Inter, system-ui, sans-serif;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0;
}

body[data-page="/contacto/"] .contact-premium-card span:not(.contact-premium-icon) {
  color: rgba(244, 239, 230, 0.68);
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.45;
  letter-spacing: 0;
}

body[data-page="/contacto/"] .contact-premium-section {
  position: relative;
  padding: 84px 0 90px;
  overflow: hidden;
  background:
    radial-gradient(circle at 30% 0%, rgba(246, 190, 83, 0.1), transparent 360px),
    linear-gradient(180deg, #060706 0%, #090a08 100%);
}

body[data-page="/contacto/"] .contact-premium-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.6fr) minmax(330px, 0.4fr);
  gap: 34px;
  align-items: start;
}

body[data-page="/contacto/"] .contact-premium-form-card,
body[data-page="/contacto/"] .contact-premium-timeline-card {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(246, 190, 83, 0.18);
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.025)),
    rgba(8, 8, 7, 0.72);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(16px);
  transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

body[data-page="/contacto/"] .contact-premium-form-card {
  padding: 40px;
}

body[data-page="/contacto/"] .contact-premium-timeline-card {
  min-height: 100%;
  padding: 38px 40px;
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.018)),
    rgba(7, 7, 6, 0.78);
}

body[data-page="/contacto/"] .contact-premium-form-card::before,
body[data-page="/contacto/"] .contact-premium-timeline-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 10%;
  right: 10%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(246, 190, 83, 0.72), transparent);
  opacity: 0.72;
  pointer-events: none;
}

body[data-page="/contacto/"] .contact-premium-form-card h2 {
  max-width: 370px !important;
  margin: 0 0 30px;
  color: var(--contact-ink);
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 46px !important;
  font-weight: 700 !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
}

body[data-page="/contacto/"] .contact-premium-form {
  display: grid;
  gap: 18px;
  margin: 0;
}

body[data-page="/contacto/"] .contact-premium-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
}

body[data-page="/contacto/"] .contact-premium-fields label {
  display: grid;
  gap: 8px;
  margin: 0;
  color: rgba(244, 239, 230, 0.75);
  font-family: Inter, system-ui, sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
}

body[data-page="/contacto/"] .contact-premium-fields label:nth-child(5),
body[data-page="/contacto/"] .contact-premium-fields label:nth-child(6) {
  grid-column: 1 / -1;
}

body[data-page="/contacto/"] .contact-premium-form input,
body[data-page="/contacto/"] .contact-premium-form select,
body[data-page="/contacto/"] .contact-premium-form textarea {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.35);
  color: var(--contact-ink);
  font-family: Inter, system-ui, sans-serif;
  font-size: 15px;
  line-height: 1.4;
  outline: none;
  transition: border-color 220ms ease, box-shadow 220ms ease, background 220ms ease;
}

body[data-page="/contacto/"] .contact-premium-form input,
body[data-page="/contacto/"] .contact-premium-form select {
  height: 50px;
  padding: 0 14px;
}

body[data-page="/contacto/"] .contact-premium-form textarea {
  min-height: 132px;
  padding: 14px;
  resize: vertical;
}

body[data-page="/contacto/"] .contact-premium-form textarea::placeholder {
  color: rgba(244, 239, 230, 0.35);
}

body[data-page="/contacto/"] .contact-premium-form input:focus,
body[data-page="/contacto/"] .contact-premium-form select:focus,
body[data-page="/contacto/"] .contact-premium-form textarea:focus {
  border-color: rgba(246, 190, 83, 0.65);
  background: rgba(0, 0, 0, 0.44);
  box-shadow: 0 0 0 3px rgba(246, 190, 83, 0.1);
}

body[data-page="/contacto/"] .contact-premium-form .button-primary {
  width: 100%;
  height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(90deg, #f6be53, #ffd06d);
  color: #090909 !important;
  font-family: Inter, system-ui, sans-serif;
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  box-shadow: 0 18px 46px rgba(246, 190, 83, 0.18);
  transition: transform 220ms ease, box-shadow 220ms ease;
}

body[data-page="/contacto/"] .contact-premium-form .button-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 22px 62px rgba(246, 190, 83, 0.28);
}

body[data-page="/contacto/"] .contact-premium-form .form-note {
  margin: 0;
  color: rgba(244, 239, 230, 0.55);
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  letter-spacing: 0;
}

body[data-page="/contacto/"] .contact-premium-timeline {
  position: relative;
  display: grid;
  gap: 30px;
  margin: 34px 0 0;
}

body[data-page="/contacto/"] .contact-premium-timeline::before {
  content: "";
  position: absolute;
  left: 21px;
  top: 22px;
  bottom: 22px;
  width: 1px;
  background: linear-gradient(180deg, rgba(246, 190, 83, 0.05), rgba(246, 190, 83, 0.45), rgba(246, 190, 83, 0.05));
  pointer-events: none;
}

body[data-page="/contacto/"] .contact-premium-step {
  position: relative;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}

body[data-page="/contacto/"] .contact-premium-step-number {
  width: 44px;
  height: 44px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(246, 190, 83, 0.65);
  border-radius: 999px;
  color: var(--contact-gold);
  background: rgba(246, 190, 83, 0.08);
  box-shadow: 0 0 20px rgba(246, 190, 83, 0.12);
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}

body[data-page="/contacto/"] .contact-premium-step div {
  display: grid;
  gap: 8px;
  padding-top: 2px;
}

body[data-page="/contacto/"] .contact-premium-step strong {
  color: var(--contact-ink);
  font-family: Inter, system-ui, sans-serif;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0;
}

body[data-page="/contacto/"] .contact-premium-step span:not(.contact-premium-step-number) {
  color: rgba(244, 239, 230, 0.68);
  font-family: Inter, system-ui, sans-serif;
  font-size: 15px;
  line-height: 1.5;
  letter-spacing: 0;
}

body[data-page="/contacto/"] .contact-premium-config-button {
  width: 100%;
  min-height: 58px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 32px;
  border: 1px solid rgba(246, 190, 83, 0.65);
  border-radius: 14px;
  background: rgba(0, 0, 0, 0.22);
  color: var(--contact-ink) !important;
  font-family: Inter, system-ui, sans-serif;
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  box-shadow: 0 0 0 rgba(246, 190, 83, 0);
  transition: background 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}

body[data-page="/contacto/"] .contact-premium-config-button span {
  color: var(--contact-gold);
}

body[data-page="/contacto/"] .contact-premium-config-button:hover {
  transform: translateY(-1px);
  background: rgba(246, 190, 83, 0.08);
  box-shadow: 0 0 30px rgba(246, 190, 83, 0.14);
}

@media (max-width: 1060px) {
  body[data-page="/contacto/"] .contact-premium-hero {
    min-height: auto;
    padding: 110px 0 64px;
  }

  body[data-page="/contacto/"] .contact-premium-hero-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 36px;
  }

  body[data-page="/contacto/"] .contact-premium-divider,
  body[data-page="/contacto/"] .contact-premium-hero-glow {
    display: none;
  }

  body[data-page="/contacto/"] .contact-premium-copy h1 {
    font-size: 58px !important;
  }

  body[data-page="/contacto/"] .contact-premium-cards {
    justify-items: stretch;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body[data-page="/contacto/"] .contact-premium-card {
    max-width: none;
  }
}

@media (max-width: 900px) {
  body[data-page="/contacto/"] .contact-premium-main-grid {
    grid-template-columns: 1fr;
  }

  body[data-page="/contacto/"] .contact-premium-timeline-card {
    min-height: auto;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] .contact-premium-shell {
    width: min(100% - 40px, 1240px);
  }

  body[data-page="/contacto/"] .contact-premium-hero {
    padding: 90px 0 50px;
  }

  body[data-page="/contacto/"] .contact-premium-copy h1 {
    max-width: 11ch !important;
    font-size: 46px !important;
    line-height: 1 !important;
  }

  body[data-page="/contacto/"] .contact-premium-copy .lead {
    margin-top: 22px;
    font-size: 16px !important;
  }

  body[data-page="/contacto/"] .contact-premium-cards {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  body[data-page="/contacto/"] .contact-premium-card {
    min-height: 92px;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 16px;
    padding: 20px;
    border-radius: 18px;
  }

  body[data-page="/contacto/"] .contact-premium-icon {
    width: 48px;
    height: 48px;
  }

  body[data-page="/contacto/"] .contact-premium-section {
    padding: 56px 0 64px;
  }

  body[data-page="/contacto/"] .contact-premium-form-card,
  body[data-page="/contacto/"] .contact-premium-timeline-card {
    padding: 24px;
    border-radius: 22px;
  }

  body[data-page="/contacto/"] .contact-premium-form-card h2 {
    font-size: 36px !important;
  }

  body[data-page="/contacto/"] .contact-premium-fields {
    grid-template-columns: 1fr;
  }

  body[data-page="/contacto/"] .contact-premium-fields label:nth-child(5),
  body[data-page="/contacto/"] .contact-premium-fields label:nth-child(6) {
    grid-column: auto;
  }

  body[data-page="/contacto/"] .contact-premium-timeline {
    gap: 26px;
  }

  body[data-page="/contacto/"] .contact-premium-timeline::before {
    left: 19px;
  }

  body[data-page="/contacto/"] .contact-premium-step {
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 18px;
  }

  body[data-page="/contacto/"] .contact-premium-step-number {
    width: 40px;
    height: 40px;
  }
}

/* Contact page typography lock against legacy internal-page rules. */
body[data-page="/contacto/"] main.page-shell .contact-premium-hero .contact-premium-copy h1 {
  max-width: 520px !important;
  font-size: 72px !important;
  line-height: 0.98 !important;
  font-weight: 700 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-hero .contact-premium-copy .lead {
  max-width: 520px !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-section .contact-premium-form-card h2 {
  max-width: 370px !important;
  font-size: 46px !important;
  line-height: 0.98 !important;
  font-weight: 700 !important;
}

@media (max-width: 1060px) {
  body[data-page="/contacto/"] main.page-shell .contact-premium-hero .contact-premium-copy h1 {
    font-size: 58px !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] main.page-shell .contact-premium-hero .contact-premium-copy h1 {
    max-width: 11ch !important;
    font-size: 46px !important;
    line-height: 1 !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-hero .contact-premium-copy .lead {
    font-size: 16px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-section .contact-premium-form-card h2 {
    font-size: 36px !important;
  }
}

/* Contact reference fidelity pass: ghost logos, tighter premium rhythm and card detail. */
body[data-page="/contacto/"] main.page-shell .contact-premium-shell {
  width: min(1180px, calc(100% - 86px)) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-hero {
  min-height: 642px !important;
  padding: 116px 0 66px !important;
  background:
    radial-gradient(circle at 55% 42%, rgba(246, 190, 83, 0.085), transparent 290px),
    radial-gradient(circle at 15% 12%, rgba(255, 255, 255, 0.035), transparent 240px),
    linear-gradient(90deg, #050708 0%, #080909 52%, #090908 100%) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-hero::before,
body[data-page="/contacto/"] main.page-shell .contact-premium-section::before {
  opacity: 0.16 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-hero::after {
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.12), rgba(0, 0, 0, 0.48)),
    radial-gradient(circle at 58% 47%, rgba(246, 190, 83, 0.12), transparent 16rem),
    radial-gradient(circle at 89% 52%, rgba(255, 255, 255, 0.03), transparent 18rem) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-logos {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-logo {
  position: absolute;
  display: block;
  opacity: 0.052;
  filter: grayscale(1) brightness(1.65) contrast(0.72) blur(0.2px);
  mix-blend-mode: screen;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-logo img {
  display: block;
  width: 100%;
  height: auto;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-logo-1 {
  top: 72px;
  left: max(24px, calc(50% - 680px));
  width: 160px;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-logo-2 {
  top: 112px;
  left: calc(50% - 210px);
  width: 205px;
  opacity: 0.07;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-logo-3 {
  top: 270px;
  right: max(26px, calc(50% - 690px));
  width: 210px;
  opacity: 0.038;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-logo-4 {
  left: max(82px, calc(50% - 640px));
  bottom: 80px;
  width: 190px;
  opacity: 0.06;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-logo-5 {
  left: calc(50% - 130px);
  bottom: 118px;
  width: 185px;
  opacity: 0.055;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-logo-6 {
  right: max(120px, calc(50% - 620px));
  bottom: 88px;
  width: 210px;
  opacity: 0.055;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-hero-grid {
  grid-template-columns: minmax(0, 0.53fr) 1px minmax(360px, 0.47fr) !important;
  gap: 46px !important;
  align-items: start !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-divider {
  height: 356px !important;
  margin-top: 2px;
  opacity: 0.62 !important;
  background: linear-gradient(180deg, transparent, rgba(246, 190, 83, 0.5) 48%, transparent) !important;
  box-shadow: 0 0 34px rgba(246, 190, 83, 0.2);
}

body[data-page="/contacto/"] main.page-shell .contact-premium-copy {
  padding-top: 6px;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-copy .eyebrow,
body[data-page="/contacto/"] main.page-shell .contact-premium-form-card > .eyebrow,
body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card > .eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 24px !important;
  font-size: 11px !important;
  letter-spacing: 0 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-copy .eyebrow::before,
body[data-page="/contacto/"] main.page-shell .contact-premium-form-card > .eyebrow::before,
body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card > .eyebrow::before {
  content: "" !important;
  display: inline-block !important;
  width: 36px !important;
  height: 1px !important;
  margin: 0 !important;
  background: linear-gradient(90deg, transparent, var(--contact-gold)) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-copy .eyebrow::after,
body[data-page="/contacto/"] main.page-shell .contact-premium-form-card > .eyebrow::after,
body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card > .eyebrow::after {
  content: none !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-hero .contact-premium-copy h1 {
  max-width: 500px !important;
  font-size: 74px !important;
  line-height: 0.98 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-hero .contact-premium-copy .lead {
  max-width: 505px !important;
  margin-top: 30px !important;
  color: rgba(244, 239, 230, 0.76) !important;
  font-size: 16px !important;
  line-height: 1.68 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-cards {
  gap: 20px !important;
  padding-top: 0;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-card {
  max-width: 420px !important;
  min-height: 128px !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  gap: 22px !important;
  padding: 26px 30px !important;
  border-radius: 16px !important;
  border-color: rgba(246, 190, 83, 0.28) !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
    radial-gradient(circle at 16% 50%, rgba(246, 190, 83, 0.07), transparent 7rem),
    rgba(7, 8, 8, 0.66) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-card small {
  display: none !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-card div {
  gap: 8px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-card strong {
  font-size: 16px !important;
  line-height: 1.25 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-card span:not(.contact-premium-icon) {
  max-width: 250px;
  color: rgba(244, 239, 230, 0.72) !important;
  font-size: 14px !important;
  line-height: 1.48 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-icon {
  width: 66px !important;
  height: 66px !important;
  border-color: rgba(246, 190, 83, 0.54) !important;
  background:
    radial-gradient(circle, rgba(246, 190, 83, 0.16), rgba(246, 190, 83, 0.05) 62%, transparent) !important;
  box-shadow:
    0 0 30px rgba(246, 190, 83, 0.22),
    inset 0 0 0 1px rgba(246, 190, 83, 0.05) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-icon svg {
  width: 28px !important;
  height: 28px !important;
  stroke-width: 1.55;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-section {
  padding: 52px 0 74px !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(246, 190, 83, 0.11), transparent 280px),
    radial-gradient(circle at 52% 0%, rgba(246, 190, 83, 0.075), transparent 240px),
    linear-gradient(180deg, #060707 0%, #070807 100%) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-main-grid {
  grid-template-columns: minmax(0, 0.58fr) minmax(380px, 0.42fr) !important;
  gap: 22px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-form-card,
body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card {
  border-radius: 14px !important;
  border-color: rgba(246, 190, 83, 0.32) !important;
  background:
    linear-gradient(155deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.016)),
    radial-gradient(circle at 50% 0%, rgba(246, 190, 83, 0.05), transparent 12rem),
    rgba(6, 7, 7, 0.82) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-form-card {
  padding: 42px 56px 40px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card {
  padding: 42px 44px 40px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-form-card::before,
body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card::before {
  left: 12% !important;
  right: 12% !important;
  height: 1px !important;
  opacity: 0.82 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-section .contact-premium-form-card h2 {
  max-width: 310px !important;
  margin-bottom: 18px !important;
  font-size: 42px !important;
  line-height: 0.98 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-form {
  gap: 20px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-fields {
  gap: 16px 22px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-form input,
body[data-page="/contacto/"] main.page-shell .contact-premium-form select {
  height: 44px !important;
  border-radius: 7px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-form textarea {
  min-height: 124px !important;
  border-radius: 7px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-form .button-primary {
  height: 54px !important;
  margin-top: 0 !important;
  box-shadow:
    0 16px 46px rgba(246, 190, 83, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.36) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline {
  gap: 28px !important;
  margin-top: 28px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-step {
  grid-template-columns: 48px minmax(0, 1fr) !important;
  gap: 22px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-step-number {
  width: 48px !important;
  height: 48px !important;
  box-shadow: 0 0 26px rgba(246, 190, 83, 0.2) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline::before {
  left: 23px !important;
  top: 48px !important;
  bottom: 48px !important;
  background: rgba(246, 190, 83, 0.48) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-step div {
  position: relative;
  gap: 6px !important;
  padding: 2px 0 20px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-step:not(:last-child) div::after {
  content: "";
  position: absolute;
  left: 0;
  right: 8px;
  bottom: 0;
  height: 1px;
  background: rgba(255, 255, 255, 0.07);
}

body[data-page="/contacto/"] main.page-shell .contact-premium-step strong {
  font-size: 16px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-step span:not(.contact-premium-step-number) {
  color: rgba(244, 239, 230, 0.7) !important;
  font-size: 14px !important;
  line-height: 1.52 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-config-button {
  min-height: 58px !important;
  margin-top: 30px !important;
  border-radius: 8px !important;
  border-color: rgba(246, 190, 83, 0.78) !important;
  box-shadow:
    0 0 32px rgba(246, 190, 83, 0.13),
    inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

@media (max-width: 1060px) {
  body[data-page="/contacto/"] main.page-shell .contact-premium-shell {
    width: min(100% - 56px, 1180px) !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-hero {
    min-height: auto !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-hero-grid {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-card {
    max-width: none !important;
    min-height: 132px !important;
    grid-template-columns: 64px minmax(0, 1fr) !important;
    padding: 22px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-icon {
    width: 60px !important;
    height: 60px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-main-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] main.page-shell .contact-premium-shell {
    width: min(100% - 40px, 1180px) !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-logo {
    opacity: 0.035 !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-logo-2,
  body[data-page="/contacto/"] main.page-shell .contact-premium-logo-3,
  body[data-page="/contacto/"] main.page-shell .contact-premium-logo-6 {
    display: none !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-hero .contact-premium-copy h1 {
    font-size: 46px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-cards {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-card {
    min-height: 110px !important;
    grid-template-columns: 54px minmax(0, 1fr) !important;
    padding: 20px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-icon {
    width: 52px !important;
    height: 52px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-icon svg {
    width: 22px !important;
    height: 22px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-form-card,
  body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card {
    padding: 26px 24px !important;
    border-radius: 14px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-section .contact-premium-form-card h2 {
    font-size: 36px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-step {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    gap: 18px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-step-number {
    width: 42px !important;
    height: 42px !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-timeline::before {
    left: 20px !important;
  }
}

/* Contact reference cleanup: remove inherited checklist artifacts and reduce hero-to-form air. */
body[data-page="/contacto/"] main.page-shell .contact-premium-hero {
  min-height: 560px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-section {
  padding-top: 44px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-section > .contact-premium-shell {
  width: min(1240px, calc(100% - 86px)) !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist {
  display: block !important;
  gap: 0 !important;
  padding-left: 44px !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist > .contact-premium-timeline {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  box-shadow: none !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist > .contact-premium-timeline::before {
  content: "" !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist > .contact-premium-timeline::after {
  content: none !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist > .contact-premium-timeline > .contact-premium-step {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist > .contact-premium-timeline > .contact-premium-step::before,
body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist > .contact-premium-timeline > .contact-premium-step::after,
body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist > .contact-premium-timeline::before {
  border-radius: 0 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist > .contact-premium-timeline::before {
  border: 0 !important;
}

body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist > .contact-premium-timeline > .contact-premium-step::before {
  content: none !important;
}

@media (max-width: 1060px) {
  body[data-page="/contacto/"] main.page-shell .contact-premium-section > .contact-premium-shell {
    width: min(100% - 56px, 1240px) !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/contacto/"] main.page-shell .contact-premium-hero {
    min-height: auto !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-section > .contact-premium-shell {
    width: min(100% - 40px, 1240px) !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card.checklist {
    padding-left: 24px !important;
  }
}

/* Contact mobile overflow lock. */
@media (max-width: 760px) {
  body[data-page="/contacto/"],
  body[data-page="/contacto/"] .page-shell,
  body[data-page="/contacto/"] main.page-shell .contact-premium-hero,
  body[data-page="/contacto/"] main.page-shell .contact-premium-section {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-shell,
  body[data-page="/contacto/"] main.page-shell .contact-premium-hero-grid,
  body[data-page="/contacto/"] main.page-shell .contact-premium-copy,
  body[data-page="/contacto/"] main.page-shell .contact-premium-cards,
  body[data-page="/contacto/"] main.page-shell .contact-premium-main-grid,
  body[data-page="/contacto/"] main.page-shell .contact-premium-form,
  body[data-page="/contacto/"] main.page-shell .contact-premium-fields {
    width: min(100%, calc(100vw - 40px)) !important;
    max-width: min(100%, calc(100vw - 40px)) !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-card,
  body[data-page="/contacto/"] main.page-shell .contact-premium-form-card,
  body[data-page="/contacto/"] main.page-shell .contact-premium-timeline-card,
  body[data-page="/contacto/"] main.page-shell .contact-premium-form input,
  body[data-page="/contacto/"] main.page-shell .contact-premium-form select,
  body[data-page="/contacto/"] main.page-shell .contact-premium-form textarea,
  body[data-page="/contacto/"] main.page-shell .contact-premium-config-button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-hero .contact-premium-copy h1,
  body[data-page="/contacto/"] main.page-shell .contact-premium-hero .contact-premium-copy .lead,
  body[data-page="/contacto/"] main.page-shell .contact-premium-card strong,
  body[data-page="/contacto/"] main.page-shell .contact-premium-card span:not(.contact-premium-icon),
  body[data-page="/contacto/"] main.page-shell .contact-premium-step strong,
  body[data-page="/contacto/"] main.page-shell .contact-premium-step span:not(.contact-premium-step-number) {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
  }

  body[data-page="/contacto/"] main.page-shell .contact-premium-card {
    grid-template-columns: 52px minmax(0, 1fr) !important;
  }
}

@media (max-width: 540px) {
  body[data-page="/contacto/"] main.page-shell .contact-premium-shell,
  body[data-page="/contacto/"] main.page-shell .contact-premium-section > .contact-premium-shell,
  body[data-page="/contacto/"] main.page-shell .contact-premium-hero-grid,
  body[data-page="/contacto/"] main.page-shell .contact-premium-copy,
  body[data-page="/contacto/"] main.page-shell .contact-premium-cards,
  body[data-page="/contacto/"] main.page-shell .contact-premium-main-grid,
  body[data-page="/contacto/"] main.page-shell .contact-premium-form,
  body[data-page="/contacto/"] main.page-shell .contact-premium-fields {
    width: min(350px, calc(100vw - 40px)) !important;
    max-width: min(350px, calc(100vw - 40px)) !important;
  }
}

/* V7.14 promotoras horizontal editorial refinement. Header/footer stay untouched. */
body[data-page="/promotoras/"] .promotoras-editorial-page {
  --promotoras-shell: min(1240px, calc(100% - 64px)) !important;
}

body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-editorial-section,
body[data-page="/promotoras/"] .promotoras-home-faq-section {
  padding-top: clamp(4.8rem, 7vw, 7.4rem) !important;
  padding-bottom: clamp(4.8rem, 7vw, 7.4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-panel {
  display: grid !important;
  gap: clamp(1.45rem, 2.4vw, 2.2rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-header {
  display: grid !important;
  grid-template-columns: minmax(310px, 0.42fr) minmax(0, 0.58fr) !important;
  gap: clamp(2rem, 5vw, 5.2rem) !important;
  align-items: end !important;
}

body[data-page="/promotoras/"] .promotoras-focus-header .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-process-section .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-calculator-section .promotoras-editorial-copy h2 {
  font-size: clamp(3.3rem, 5.2vw, 6rem) !important;
  line-height: 0.9 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-intro {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(1.2rem, 2.4vw, 2.2rem) !important;
  align-items: start !important;
}

body[data-page="/promotoras/"] .promotoras-focus-intro p {
  margin: 0 !important;
  color: rgba(255, 248, 238, 0.72) !important;
  font-size: clamp(0.98rem, 1vw, 1.08rem) !important;
  line-height: 1.72 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  overflow: hidden !important;
  border: 1px solid rgba(214, 168, 90, 0.18) !important;
  border-radius: 18px !important;
  background:
    radial-gradient(circle at 22% 0%, rgba(214, 168, 90, 0.1), transparent 20rem),
    rgba(255, 255, 255, 0.03) !important;
  box-shadow: 0 26px 80px rgba(0, 0, 0, 0.28) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary article {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  gap: 0.25rem 1rem !important;
  align-items: start !important;
  min-height: 118px !important;
  padding: clamp(1.1rem, 1.6vw, 1.45rem) !important;
  border-right: 1px solid rgba(214, 168, 90, 0.14) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary article:last-child {
  border-right: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary span {
  grid-row: span 2 !important;
  color: var(--promotoras-gold) !important;
  font-weight: 900 !important;
  font-size: 0.82rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary strong {
  color: #fff8ee !important;
  font-size: 1rem !important;
  line-height: 1.1 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary small {
  max-width: 34ch !important;
  color: rgba(255, 248, 238, 0.58) !important;
  font-size: 0.82rem !important;
  line-height: 1.5 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-cards {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0.9rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card {
  min-height: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card > div {
  position: relative !important;
  min-height: 188px !important;
  padding: clamp(1rem, 1.3vw, 1.25rem) !important;
}

body[data-page="/promotoras/"] .promotoras-card-number {
  position: absolute !important;
  right: 1rem !important;
  top: 1rem !important;
  color: rgba(214, 168, 90, 0.72) !important;
  font-size: 0.74rem !important;
  font-weight: 900 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card .promotoras-focus-logo {
  width: 42px !important;
  height: 42px !important;
  margin-bottom: 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card .promotoras-focus-logo svg {
  width: 19px !important;
  height: 19px !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card h3 {
  max-width: 13ch !important;
  font-size: clamp(1.05rem, 1.2vw, 1.28rem) !important;
  line-height: 1.02 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card p:not(.promotoras-part) {
  -webkit-line-clamp: 3 !important;
  margin-top: 0.62rem !important;
  font-size: 0.76rem !important;
  line-height: 1.45 !important;
}

body[data-page="/promotoras/"] .promotoras-split-grid.is-problem,
body[data-page="/promotoras/"] .promotoras-split-grid.is-packs {
  grid-template-columns: minmax(340px, 0.38fr) minmax(0, 0.62fr) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section blockquote {
  font-size: clamp(1.26rem, 1.85vw, 1.82rem) !important;
  line-height: 1.2 !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-readable p {
  max-width: 44ch !important;
}

body[data-page="/promotoras/"] .promotoras-large-media {
  min-height: clamp(300px, 28vw, 390px) !important;
}

body[data-page="/promotoras/"] .promotoras-pack-copy {
  display: grid !important;
  gap: 1.25rem !important;
  align-content: center !important;
}

body[data-page="/promotoras/"] .promotoras-pack-options {
  display: grid !important;
  gap: 0.75rem !important;
  margin-top: 0.25rem !important;
}

body[data-page="/promotoras/"] .promotoras-pack-options article {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  gap: 0.18rem 1rem !important;
  padding: 0.95rem 1rem !important;
  border: 1px solid rgba(214, 168, 90, 0.18) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.032) !important;
}

body[data-page="/promotoras/"] .promotoras-pack-options span {
  grid-row: span 2 !important;
  color: var(--promotoras-gold) !important;
  font-weight: 900 !important;
}

body[data-page="/promotoras/"] .promotoras-pack-options strong {
  color: #fff8ee !important;
  font-size: 0.98rem !important;
  line-height: 1.15 !important;
}

body[data-page="/promotoras/"] .promotoras-pack-options small {
  color: rgba(255, 248, 238, 0.6) !important;
  font-size: 0.78rem !important;
  line-height: 1.45 !important;
}

body[data-page="/promotoras/"] .promotoras-dossier-media {
  min-height: clamp(340px, 30vw, 460px) !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell {
  grid-template-columns: minmax(330px, 0.36fr) minmax(0, 0.64fr) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-process-copy {
  display: grid !important;
  gap: 1.35rem !important;
}

body[data-page="/promotoras/"] .promotoras-process-highlights {
  display: grid !important;
  gap: 0.65rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body[data-page="/promotoras/"] .promotoras-process-highlights li {
  display: grid !important;
  grid-template-columns: 118px minmax(0, 1fr) !important;
  gap: 1rem !important;
  padding: 0.8rem 0 !important;
  border-top: 1px solid rgba(214, 168, 90, 0.16) !important;
}

body[data-page="/promotoras/"] .promotoras-process-highlights strong {
  color: var(--promotoras-gold) !important;
  text-transform: uppercase !important;
  font-size: 0.78rem !important;
}

body[data-page="/promotoras/"] .promotoras-process-highlights span {
  color: rgba(255, 248, 238, 0.66) !important;
  font-size: 0.86rem !important;
  line-height: 1.45 !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
  overflow: hidden !important;
  border: 1px solid rgba(214, 168, 90, 0.16) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.028) !important;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.3) !important;
}

body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric {
  min-height: 178px !important;
  padding: 1.25rem !important;
  border-top: 0 !important;
  border-right: 1px solid rgba(214, 168, 90, 0.12) !important;
  transition: transform 240ms ease, background 240ms ease, box-shadow 240ms ease !important;
}

body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric:last-child {
  border-right: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric:hover {
  transform: translateY(-4px) !important;
  background: rgba(214, 168, 90, 0.055) !important;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.24) !important;
}

body[data-page="/promotoras/"] .promotoras-calculator-shell {
  grid-template-columns: minmax(310px, 0.32fr) minmax(0, 0.36fr) minmax(0, 0.32fr) !important;
  gap: clamp(1rem, 2vw, 1.35rem) !important;
}

body[data-page="/promotoras/"] .promotoras-calculator-copy,
body[data-page="/promotoras/"] .promotoras-decision-card,
body[data-page="/promotoras/"] .promotoras-results-card {
  min-height: 0 !important;
  padding: clamp(1.5rem, 2.4vw, 2.2rem) !important;
}

body[data-page="/promotoras/"] .promotoras-decision-card h3 {
  font-size: clamp(1.75rem, 2.3vw, 2.45rem) !important;
  line-height: 1.02 !important;
}

body[data-page="/promotoras/"] .promotoras-decision-card li {
  padding: 0.95rem 0 !important;
}

body[data-page="/promotoras/"] .promotoras-results-list {
  display: grid !important;
  gap: 0.85rem !important;
  margin-top: 1.2rem !important;
}

body[data-page="/promotoras/"] .promotoras-results-list article {
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) !important;
  gap: 0.15rem 0.85rem !important;
  align-items: start !important;
  padding: 0.9rem !important;
  border: 1px solid rgba(214, 168, 90, 0.16) !important;
  border-radius: 14px !important;
  background: rgba(0, 0, 0, 0.14) !important;
}

body[data-page="/promotoras/"] .promotoras-results-list article span {
  grid-row: span 2 !important;
  color: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-results-list strong {
  color: #fff8ee !important;
  font-size: 0.98rem !important;
}

body[data-page="/promotoras/"] .promotoras-results-list small {
  color: rgba(255, 248, 238, 0.58) !important;
  font-size: 0.78rem !important;
  line-height: 1.45 !important;
}

body[data-page="/promotoras/"] .promotoras-home-faq-section {
  border-top: 1px solid rgba(214, 168, 90, 0.12) !important;
  border-bottom: 1px solid rgba(214, 168, 90, 0.12) !important;
  background:
    radial-gradient(circle at 72% 30%, rgba(214, 168, 90, 0.08), transparent 28rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.018), rgba(255, 255, 255, 0.006)) !important;
}

body[data-page="/promotoras/"] .promotoras-home-faq-grid {
  grid-template-columns: minmax(320px, 0.36fr) minmax(0, 0.64fr) !important;
  gap: clamp(2rem, 5vw, 5rem) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-home-faq-grid h2 {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(2.7rem, 4.2vw, 4.7rem) !important;
  line-height: 0.94 !important;
  color: #fff8ee !important;
}

body[data-page="/promotoras/"] .promotoras-home-faq-list {
  display: grid !important;
  gap: 0.72rem !important;
}

body[data-page="/promotoras/"] .promotoras-home-faq-item {
  border: 1px solid rgba(214, 168, 90, 0.16) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.032) !important;
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.18) !important;
}

body[data-page="/promotoras/"] .promotoras-home-faq-item summary {
  min-height: 58px !important;
  padding: 1rem 1.25rem !important;
  color: #fff8ee !important;
  font-weight: 800 !important;
}

body[data-page="/promotoras/"] .promotoras-home-faq-item summary::after {
  color: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-home-faq-item p {
  padding: 0 1.25rem 1.25rem !important;
  color: rgba(255, 248, 238, 0.66) !important;
  font-size: 0.95rem !important;
  line-height: 1.65 !important;
}

body[data-page="/promotoras/"] .promotoras-final-section {
  min-height: 360px !important;
  padding: clamp(4rem, 6vw, 6rem) 0 !important;
}

body[data-page="/promotoras/"] .promotoras-final-grid {
  grid-template-columns: minmax(0, 0.58fr) max-content !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-final-copy h2 {
  max-width: 11ch !important;
}

body[data-page="/promotoras/"] .promotoras-final-section .v4-actions {
  justify-content: end !important;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .promotoras-focus-header,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-problem,
  body[data-page="/promotoras/"] .promotoras-split-grid.is-packs,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell,
  body[data-page="/promotoras/"] .promotoras-calculator-shell,
  body[data-page="/promotoras/"] .promotoras-home-faq-grid,
  body[data-page="/promotoras/"] .promotoras-final-grid {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-cards,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/promotoras/"] .promotoras-final-section .v4-actions {
    justify-content: start !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .promotoras-editorial-page {
    --promotoras-shell: min(100% - 28px, 640px) !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-intro,
  body[data-page="/promotoras/"] .promotoras-focus-summary,
  body[data-page="/promotoras/"] .promotoras-focus-cards,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-summary article {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(214, 168, 90, 0.14) !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-summary article:last-child,
  body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric:last-child {
    border-bottom: 0 !important;
  }

  body[data-page="/promotoras/"] .promotoras-timeline .promotoras-mini-metric {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(214, 168, 90, 0.12) !important;
  }

  body[data-page="/promotoras/"] .promotoras-home-faq-grid h2,
  body[data-page="/promotoras/"] .promotoras-focus-header .promotoras-editorial-copy h2,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-editorial-copy h2,
  body[data-page="/promotoras/"] .promotoras-calculator-section .promotoras-editorial-copy h2 {
    font-size: clamp(2.55rem, 13vw, 3.45rem) !important;
  }
}

/* V7.15 process density fix: remove the empty stretched panel on desktop. */
body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
  align-self: center !important;
  align-content: stretch !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0.8rem !important;
  padding: 0.9rem !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline .promotoras-mini-metric {
  min-height: 190px !important;
  border: 1px solid rgba(214, 168, 90, 0.14) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.026) !important;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
    grid-template-columns: 1fr !important;
  }
}

/* V7.16 promotoras reference-inspired premium sections, keeping the existing shell width. */
body[data-page="/promotoras/"] .promotoras-title-gold {
  color: transparent !important;
  background: linear-gradient(135deg, #f7dfad 0%, #d8a24b 48%, #fff3d7 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  text-shadow: 0 0 34px rgba(214, 168, 90, 0.13) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-section,
body[data-page="/promotoras/"] .promotoras-problem-section,
body[data-page="/promotoras/"] .promotoras-solutions-section {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

body[data-page="/promotoras/"] .promotoras-focus-section::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 auto 0 0 !important;
  width: min(420px, 34vw) !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 10% 16%, rgba(214, 168, 90, 0.12), transparent 16rem),
    linear-gradient(90deg, rgba(214, 168, 90, 0.05), transparent 62%) !important;
  opacity: 0.72 !important;
  z-index: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-panel,
body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-section-shell,
body[data-page="/promotoras/"] .promotoras-solutions-section .promotoras-section-shell {
  position: relative !important;
  z-index: 1 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-header {
  grid-template-columns: minmax(360px, 0.43fr) minmax(0, 0.57fr) !important;
  align-items: start !important;
  gap: clamp(2.5rem, 5.4vw, 5.8rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-header .promotoras-editorial-copy h2 {
  max-width: 8.5ch !important;
  font-size: clamp(4.4rem, 7vw, 7.4rem) !important;
  line-height: 0.86 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-header .promotoras-gold-rule {
  width: min(220px, 100%) !important;
  margin-top: 2rem !important;
  box-shadow: 0 0 22px rgba(214, 168, 90, 0.3) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-intro {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(1.9rem, 4vw, 3.2rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-intro p {
  color: rgba(255, 248, 238, 0.78) !important;
  font-size: clamp(1.06rem, 1.18vw, 1.22rem) !important;
  line-height: 1.8 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-intro p + p {
  padding-left: clamp(1.4rem, 3vw, 2.8rem) !important;
  border-left: 1px solid rgba(214, 168, 90, 0.42) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  margin-top: 0.8rem !important;
  overflow: visible !important;
  border-color: rgba(214, 168, 90, 0.42) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(115deg, rgba(214, 168, 90, 0.12), rgba(255, 255, 255, 0.024) 48%, rgba(214, 168, 90, 0.08)),
    rgba(11, 10, 7, 0.78) !important;
  box-shadow: 0 24px 72px rgba(0, 0, 0, 0.36), inset 0 0 0 1px rgba(255, 238, 200, 0.035) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary article {
  position: relative !important;
  grid-template-columns: 70px minmax(0, 1fr) !important;
  min-height: 126px !important;
  padding: clamp(1.25rem, 1.9vw, 1.8rem) clamp(1.5rem, 2.2vw, 2.2rem) !important;
  border-right: 1px solid rgba(214, 168, 90, 0.26) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary article:not(:last-child)::after {
  content: ">" !important;
  position: absolute !important;
  right: -0.42rem !important;
  top: 50% !important;
  width: 2.2rem !important;
  height: 2.2rem !important;
  transform: translateY(-50%) !important;
  display: grid !important;
  place-items: center !important;
  color: var(--promotoras-gold) !important;
  font-size: 1.9rem !important;
  line-height: 1 !important;
  text-shadow: 0 0 16px rgba(214, 168, 90, 0.35) !important;
  background: rgba(12, 10, 7, 0.92) !important;
  z-index: 2 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary span {
  align-self: center !important;
  color: #f2c574 !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(2.1rem, 2.8vw, 3.1rem) !important;
  font-weight: 800 !important;
  line-height: 0.9 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary strong {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.18rem, 1.5vw, 1.55rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary small {
  color: rgba(255, 248, 238, 0.68) !important;
  font-size: 0.9rem !important;
  line-height: 1.55 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-cards {
  gap: clamp(1rem, 2vw, 1.35rem) !important;
  margin-top: 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card {
  position: relative !important;
  overflow: hidden !important;
  border-color: rgba(214, 168, 90, 0.32) !important;
  border-radius: 16px !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(214, 168, 90, 0.14), transparent 12rem),
    linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.015)),
    rgba(8, 8, 6, 0.8) !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.32), inset 0 0 0 1px rgba(255, 237, 196, 0.035) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card::after {
  content: "" !important;
  position: absolute !important;
  right: -16% !important;
  bottom: -18% !important;
  width: 72% !important;
  height: 72% !important;
  pointer-events: none !important;
  opacity: 0.18 !important;
  background:
    linear-gradient(30deg, transparent 48%, rgba(214, 168, 90, 0.45) 49%, transparent 51%),
    linear-gradient(150deg, transparent 48%, rgba(214, 168, 90, 0.35) 49%, transparent 51%),
    repeating-linear-gradient(90deg, transparent 0 20px, rgba(214, 168, 90, 0.2) 21px 22px, transparent 23px 42px) !important;
  transform: rotate(-8deg) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card > div {
  min-height: clamp(240px, 20vw, 290px) !important;
  padding: clamp(1.45rem, 2vw, 1.9rem) !important;
  z-index: 1 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card .promotoras-focus-logo {
  width: 64px !important;
  height: 64px !important;
  margin-bottom: clamp(1.45rem, 2vw, 2rem) !important;
  border-color: rgba(246, 201, 113, 0.62) !important;
  border-radius: 999px !important;
  box-shadow: 0 0 28px rgba(214, 168, 90, 0.16) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card .promotoras-focus-logo svg {
  width: 28px !important;
  height: 28px !important;
}

body[data-page="/promotoras/"] .promotoras-card-number {
  right: 1.6rem !important;
  top: 1.55rem !important;
  color: #f2bc5e !important;
  font-size: 0.95rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card h3 {
  max-width: 16ch !important;
  font-size: clamp(1.35rem, 1.72vw, 1.85rem) !important;
  line-height: 1.02 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card h3::after {
  content: "" !important;
  display: block !important;
  width: 42px !important;
  height: 1px !important;
  margin: 0.9rem 0 0 !important;
  background: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card p:not(.promotoras-part) {
  -webkit-line-clamp: 4 !important;
  color: rgba(255, 248, 238, 0.72) !important;
  font-size: 0.9rem !important;
  line-height: 1.58 !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section {
  background:
    radial-gradient(circle at 8% 24%, rgba(214, 168, 90, 0.08), transparent 24rem),
    radial-gradient(circle at 78% 42%, rgba(214, 168, 90, 0.1), transparent 28rem),
    transparent !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-split-grid.is-problem {
  grid-template-columns: minmax(360px, 0.38fr) minmax(0, 0.62fr) !important;
  gap: clamp(2.6rem, 5vw, 5.2rem) !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy h2 {
  max-width: 8ch !important;
  font-size: clamp(4.2rem, 6.5vw, 7.2rem) !important;
  line-height: 0.86 !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section blockquote {
  position: relative !important;
  margin-top: 2.2rem !important;
  padding: 0.55rem 0 0.65rem clamp(2.6rem, 4vw, 3.4rem) !important;
  border-left: 1px solid rgba(214, 168, 90, 0.62) !important;
  color: #e4b861 !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.36rem, 2.05vw, 2.35rem) !important;
  line-height: 1.18 !important;
  font-style: italic !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section blockquote::before {
  content: "\201C" !important;
  position: absolute !important;
  left: 1.05rem !important;
  top: 0.25rem !important;
  color: var(--promotoras-gold) !important;
  font-size: 3.2rem !important;
  line-height: 1 !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-media-stack {
  gap: 1.35rem !important;
  padding: clamp(1rem, 1.5vw, 1.25rem) !important;
  border: 1px solid rgba(214, 168, 90, 0.38) !important;
  border-radius: 30px !important;
  background:
    linear-gradient(145deg, rgba(214, 168, 90, 0.06), rgba(255, 255, 255, 0.018)),
    rgba(4, 5, 4, 0.68) !important;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.4), 0 0 48px rgba(214, 168, 90, 0.08) !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-large-media {
  min-height: clamp(380px, 34vw, 520px) !important;
  border-radius: 24px !important;
  border-color: rgba(214, 168, 90, 0.36) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 238, 202, 0.07), 0 22px 74px rgba(0, 0, 0, 0.32) !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-large-media::before {
  content: "La visualizaci\00F3n correcta convierte la incertidumbre en confianza." !important;
  position: absolute !important;
  left: clamp(1rem, 2vw, 2rem) !important;
  bottom: clamp(1rem, 2vw, 2rem) !important;
  z-index: 3 !important;
  max-width: min(360px, 70%) !important;
  padding: 1.25rem 1.45rem !important;
  border: 1px solid rgba(214, 168, 90, 0.28) !important;
  border-radius: 18px !important;
  color: #fff8ee !important;
  font-size: clamp(1rem, 1.15vw, 1.18rem) !important;
  line-height: 1.45 !important;
  background: rgba(24, 17, 10, 0.72) !important;
  box-shadow: 0 22px 58px rgba(0, 0, 0, 0.34), inset 0 0 0 1px rgba(255, 238, 202, 0.04) !important;
  backdrop-filter: blur(10px) !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-mini-row {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(0.85rem, 1.4vw, 1.1rem) !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-mini-row .promotoras-mini-metric {
  min-height: 132px !important;
  padding: 1.25rem !important;
  border: 1px solid rgba(214, 168, 90, 0.22) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.034) !important;
  box-shadow: none !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-mini-row .promotoras-mini-metric strong::after {
  content: "" !important;
  display: block !important;
  width: 34px !important;
  height: 1px !important;
  margin-top: 1rem !important;
  background: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section {
  background:
    radial-gradient(circle at 78% 8%, rgba(214, 168, 90, 0.12), transparent 28rem),
    linear-gradient(90deg, rgba(255, 255, 255, 0.012), transparent 55%),
    transparent !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-section::after {
  content: "" !important;
  position: absolute !important;
  right: -12vw !important;
  top: 0 !important;
  width: min(820px, 58vw) !important;
  height: 78% !important;
  pointer-events: none !important;
  opacity: 0.24 !important;
  background:
    repeating-radial-gradient(ellipse at 100% 0%, transparent 0 38px, rgba(214, 168, 90, 0.42) 39px 41px, transparent 42px 76px) !important;
  z-index: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-editorial-copy h2 {
  max-width: 9ch !important;
  font-size: clamp(4.1rem, 6.3vw, 7rem) !important;
  line-height: 0.86 !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-readable {
  max-width: 780px !important;
  gap: clamp(1.3rem, 2.5vw, 2.4rem) !important;
}

body[data-page="/promotoras/"] .promotoras-solution-cards {
  position: relative !important;
  z-index: 1 !important;
  gap: clamp(1rem, 1.65vw, 1.28rem) !important;
  align-items: stretch !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card {
  border-color: rgba(214, 168, 90, 0.28) !important;
  border-radius: 16px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
    rgba(8, 8, 6, 0.84) !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card figure {
  height: clamp(180px, 16vw, 245px) !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card > div {
  min-height: 245px !important;
  padding: clamp(1.2rem, 1.45vw, 1.45rem) !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card h3 {
  font-size: clamp(1.38rem, 1.68vw, 1.78rem) !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card p {
  color: rgba(255, 248, 238, 0.68) !important;
  font-size: 0.88rem !important;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .promotoras-focus-header,
  body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-split-grid.is-problem {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-summary,
  body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-mini-row {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-summary article {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(214, 168, 90, 0.2) !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-summary article:not(:last-child)::after {
    content: none !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .promotoras-focus-header .promotoras-editorial-copy h2,
  body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy h2,
  body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-editorial-copy h2 {
    max-width: 8.5ch !important;
    font-size: clamp(3.25rem, 15vw, 4.45rem) !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-intro p + p {
    padding-left: 0 !important;
    border-left: 0 !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-summary article:last-child {
    border-bottom: 0 !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-card > div {
    min-height: 220px !important;
  }

  body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-large-media::before {
    max-width: calc(100% - 2rem) !important;
    font-size: 0.92rem !important;
  }
}

/* Portfolio page: align editorial holders with the home container while keeping the gallery wide. */
body[data-page="/portfolio/"] .portfolio-page {
  --portfolio-home-shell: min(1240px, calc(100vw - clamp(32px, 7vw, 104px)));
  --portfolio-gallery-shell-wide: calc(100% - clamp(24px, 4vw, 76px));
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero,
body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-toolbar,
body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-load-panel,
body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-cta,
body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-internal-links {
  width: var(--portfolio-home-shell) !important;
  max-width: var(--portfolio-home-shell) !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-gallery-shell {
  width: var(--portfolio-gallery-shell-wide) !important;
  max-width: none !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero {
  min-height: clamp(500px, 42vw, 620px) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important;
  align-items: stretch !important;
  gap: clamp(28px, 4.8vw, 72px) !important;
  padding: clamp(48px, 6vw, 78px) clamp(34px, 5vw, 70px) !important;
  border-radius: 8px !important;
  border: 1px solid rgba(214, 179, 90, 0.18) !important;
  background:
    radial-gradient(circle at 80% 8%, rgba(214, 179, 90, 0.12), transparent 22rem),
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.014)),
    rgba(3, 5, 4, 0.86) !important;
  box-shadow:
    0 34px 92px rgba(0, 0, 0, 0.36),
    inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
  overflow: hidden !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero::after {
  opacity: 0.38 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero .portfolio-hero-copy {
  width: 100% !important;
  max-width: 540px !important;
  align-self: center !important;
  justify-self: start !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero h1 {
  max-width: 10.8ch !important;
  font-size: clamp(58px, 5.1vw, 76px) !important;
  line-height: 0.94 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero .lead {
  max-width: 480px !important;
  font-size: 17px !important;
  line-height: 1.62 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-media {
  width: 100% !important;
  min-height: 100% !important;
  align-self: stretch !important;
  border-radius: 6px !important;
  overflow: hidden !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-media img {
  width: 100% !important;
  height: 100% !important;
  min-height: 420px !important;
  object-fit: cover !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-toolbar {
  top: 72px !important;
  gap: 0.72rem !important;
  margin-top: 18px !important;
  padding: 14px 16px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(214, 179, 90, 0.22) !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(214, 179, 90, 0.09), transparent 24rem),
    rgba(3, 5, 4, 0.86) !important;
  box-shadow:
    0 22px 58px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
  backdrop-filter: blur(18px) !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-toolbar > div:first-child,
body[data-page="/portfolio/"] main.page-shell .portfolio-filter-row,
body[data-page="/portfolio/"] main.page-shell .portfolio-subfilter-group.is-active {
  display: grid !important;
  grid-template-columns: 82px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 0.8rem !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-filter-label,
body[data-page="/portfolio/"] main.page-shell .portfolio-subfilter-group > span {
  min-width: 0 !important;
  color: rgba(246, 190, 83, 0.82) !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.14em !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-filter-group-primary button,
body[data-page="/portfolio/"] main.page-shell .portfolio-filter-group-secondary button {
  border-radius: 999px !important;
  transition:
    color 220ms ease,
    border-color 220ms ease,
    background 220ms ease,
    transform 220ms ease !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-filter-group-primary button:hover,
body[data-page="/portfolio/"] main.page-shell .portfolio-filter-group-secondary button:hover {
  transform: translateY(-1px) !important;
  border-color: rgba(236, 195, 105, 0.48) !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-gallery-shell {
  margin-top: 10px !important;
  border-radius: 8px !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-load-panel {
  margin-top: 16px !important;
  padding: 1.05rem 1.2rem !important;
  border-radius: 8px !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-cta {
  min-height: 270px !important;
  margin-top: 22px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: clamp(24px, 4vw, 56px) !important;
  padding: clamp(36px, 5vw, 62px) !important;
  border-radius: 8px !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(214, 179, 90, 0.11), transparent 24rem),
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.018)),
    rgba(3, 5, 4, 0.88) !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-cta h2 {
  max-width: 560px !important;
  font-size: clamp(42px, 4.4vw, 62px) !important;
  line-height: 0.95 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-cta p:not(.eyebrow) {
  max-width: 540px !important;
  font-size: 17px !important;
  line-height: 1.62 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-cta-actions {
  min-width: min(100%, 320px) !important;
  display: grid !important;
  gap: 12px !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-internal-links {
  margin-top: 18px !important;
  padding: 0.95rem 1rem !important;
  border-radius: 8px !important;
}

@media (max-width: 980px) {
  body[data-page="/portfolio/"] .portfolio-page {
    --portfolio-home-shell: min(100% - 48px, 900px);
    --portfolio-gallery-shell-wide: calc(100% - 24px);
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero,
  body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-cta {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero .portfolio-hero-copy,
  body[data-page="/portfolio/"] main.page-shell .portfolio-hero .lead,
  body[data-page="/portfolio/"] main.page-shell .portfolio-cta h2,
  body[data-page="/portfolio/"] main.page-shell .portfolio-cta p:not(.eyebrow) {
    max-width: 100% !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero-media img {
    min-height: 360px !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-cta-actions {
    width: 100% !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"],
  body[data-page="/portfolio/"] .page-shell,
  body[data-page="/portfolio/"] main.page-shell .portfolio-page {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body[data-page="/portfolio/"] .portfolio-page {
    --portfolio-home-shell: min(100% - 40px, 560px);
    --portfolio-gallery-shell-wide: calc(100% - 16px);
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero {
    min-height: auto !important;
    padding: 34px 24px !important;
    gap: 24px !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero h1 {
    max-width: 100% !important;
    font-size: clamp(38px, 10.8vw, 44px) !important;
    line-height: 0.98 !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero .lead,
  body[data-page="/portfolio/"] main.page-shell .portfolio-cta p:not(.eyebrow) {
    font-size: 15.5px !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero-media img {
    min-height: 280px !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-toolbar {
    top: 64px !important;
    padding: 10px !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-toolbar > div:first-child,
  body[data-page="/portfolio/"] main.page-shell .portfolio-filter-row,
  body[data-page="/portfolio/"] main.page-shell .portfolio-subfilter-group.is-active {
    grid-template-columns: 1fr !important;
    gap: 0.42rem !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-filter-group-primary,
  body[data-page="/portfolio/"] main.page-shell .portfolio-filter-group-secondary {
    max-width: 100% !important;
    overflow-x: auto !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-cta {
    min-height: 0 !important;
    padding: 30px 24px !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-cta h2 {
    font-size: clamp(34px, 11vw, 44px) !important;
  }
}

/* Portfolio hero: use the same full-bleed premium holder language as the home vertical hero. */
body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero {
  position: relative !important;
  isolation: isolate !important;
  width: 100% !important;
  max-width: none !important;
  min-height: clamp(680px, 82vh, 860px) !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 680px) minmax(340px, 430px) !important;
  justify-content: center !important;
  align-items: center !important;
  gap: clamp(2rem, 6vw, 7rem) !important;
  padding:
    clamp(4.8rem, 7vw, 6.8rem)
    max(calc((100vw - 1240px) / 2), clamp(20px, 3.5vw, 52px))
    clamp(3.7rem, 6vw, 5.5rem) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #050809 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero::before,
body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero::before {
  z-index: -1 !important;
  background:
    linear-gradient(90deg, rgba(5, 8, 9, 0.96) 0%, rgba(5, 8, 9, 0.76) 31%, rgba(5, 8, 9, 0.08) 60%, rgba(5, 8, 9, 0.32) 100%),
    linear-gradient(180deg, rgba(5, 8, 9, 0.48) 0%, rgba(5, 8, 9, 0.12) 38%, rgba(5, 8, 9, 0.28) 66%, rgba(5, 8, 9, 0.84) 100%) !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero::after {
  z-index: -1 !important;
  background:
    radial-gradient(circle at 78% 24%, rgba(240, 206, 122, 0.16), transparent 24rem),
    linear-gradient(90deg, rgba(240, 206, 122, 0.08), transparent 18%, transparent 82%, rgba(240, 206, 122, 0.06)) !important;
  opacity: 0.82 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero .portfolio-hero-media {
  position: absolute !important;
  inset: 0 !important;
  z-index: -2 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #050809 !important;
  box-shadow: none !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero .portfolio-hero-media::before,
body[data-page="/portfolio/"] main.page-shell .portfolio-hero .portfolio-hero-media::after {
  content: none !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero .portfolio-hero-media img {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: 58% center !important;
  filter: brightness(0.86) contrast(1.1) saturate(1.03) !important;
  transform: scale(1.12) !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero .portfolio-hero-copy {
  width: 100% !important;
  max-width: 680px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero .portfolio-hero-copy::before,
body[data-page="/portfolio/"] main.page-shell .portfolio-hero .portfolio-hero-copy::after {
  content: none !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero .eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.8rem !important;
  margin: 0 0 1.35rem !important;
  color: #f0ce7a !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero .eyebrow::before {
  width: 38px !important;
  background: currentColor !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero h1 {
  max-width: 10.9ch !important;
  margin: 0 !important;
  color: #f8f0e4 !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(3.6rem, 5.6vw, 6.1rem) !important;
  font-weight: 600 !important;
  line-height: 0.94 !important;
  letter-spacing: -0.045em !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero h1 span {
  color: #f0bd5b !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero .lead {
  max-width: 610px !important;
  margin: 1.25rem 0 0 !important;
  color: rgba(246, 239, 228, 0.82) !important;
  font-size: clamp(1.06rem, 1.2vw, 1.22rem) !important;
  line-height: 1.68 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.75rem !important;
  margin-top: 1.55rem !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-actions .button {
  min-height: 48px !important;
  padding: 0 1.65rem !important;
  border-radius: 999px !important;
  font-weight: 850 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-panel {
  position: relative !important;
  z-index: 1 !important;
  align-self: center !important;
  display: grid !important;
  gap: 0 !important;
  min-height: 430px !important;
  border: 1px solid rgba(240, 206, 122, 0.38) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(145deg, rgba(23, 27, 28, 0.78), rgba(7, 10, 10, 0.84)),
    radial-gradient(circle at 90% 0%, rgba(240, 206, 122, 0.16), transparent 36%) !important;
  box-shadow:
    0 42px 120px rgba(0, 0, 0, 0.5),
    0 0 0 1px rgba(240, 206, 122, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
  overflow: hidden !important;
  backdrop-filter: blur(16px) !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-panel::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 86% 8%, rgba(240, 206, 122, 0.17), transparent 22%),
    repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 5px) !important;
  opacity: 0.34 !important;
  pointer-events: none !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-panel article {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  gap: 1.05rem !important;
  align-items: start !important;
  padding: clamp(1.35rem, 2vw, 1.85rem) clamp(1.25rem, 2vw, 1.7rem) !important;
  border-bottom: 1px solid rgba(240, 206, 122, 0.22) !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-panel article:last-child {
  border-bottom: 0 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-panel article > span,
body[data-page="/portfolio/"] main.page-shell .portfolio-hero-proof i {
  display: grid !important;
  place-items: center !important;
  color: #f0bd5b !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-panel svg,
body[data-page="/portfolio/"] main.page-shell .portfolio-hero-proof svg {
  width: 24px !important;
  height: 24px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.7 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-panel strong {
  display: block !important;
  max-width: 13ch !important;
  color: #f8f0e4 !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.42rem, 1.9vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 0.96 !important;
  letter-spacing: -0.025em !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-panel p {
  max-width: 24ch !important;
  margin: 0.62rem 0 0 !important;
  color: rgba(246, 239, 228, 0.68) !important;
  font-size: 0.95rem !important;
  line-height: 1.48 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-proof {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(1rem, 2vw, 1.45rem) !important;
  max-width: 680px !important;
  margin-top: clamp(1.8rem, 3.2vw, 2.6rem) !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-proof span {
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  gap: 0.64rem !important;
  align-items: start !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-proof strong,
body[data-page="/portfolio/"] main.page-shell .portfolio-hero-proof em {
  display: block !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-proof strong {
  color: #f8f0e4 !important;
  font-size: 0.92rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-hero-proof em {
  grid-column: 2 !important;
  margin-top: 0.28rem !important;
  color: rgba(246, 239, 228, 0.66) !important;
  font-size: 0.72rem !important;
  font-style: normal !important;
  font-weight: 850 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.3 !important;
  text-transform: uppercase !important;
}

body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-toolbar {
  margin-top: 28px !important;
}

@media (max-width: 980px) {
  body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero {
    grid-template-columns: 1fr !important;
    align-content: center !important;
    min-height: auto !important;
    padding:
      clamp(6.2rem, 12vw, 8rem)
      max(24px, calc((100vw - 900px) / 2))
      clamp(3rem, 7vw, 4.5rem) !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero-panel {
    max-width: 520px !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero-proof {
    grid-template-columns: 1fr !important;
    max-width: 420px !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero {
    width: 100% !important;
    padding: 7.4rem 20px 3.1rem !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-page > .portfolio-hero::before {
    background:
      linear-gradient(90deg, rgba(5, 8, 9, 0.96) 0%, rgba(5, 8, 9, 0.82) 64%, rgba(5, 8, 9, 0.55) 100%),
      linear-gradient(180deg, rgba(5, 8, 9, 0.5) 0%, rgba(5, 8, 9, 0.18) 36%, rgba(5, 8, 9, 0.68) 100%) !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero .portfolio-hero-media img {
    object-position: 58% center !important;
    transform: scale(1.08) !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero h1 {
    width: min(10.2ch, calc(100vw - 40px)) !important;
    max-width: calc(100vw - 40px) !important;
    font-size: clamp(2.5rem, 10.8vw, 3rem) !important;
    line-height: 0.98 !important;
    text-wrap: balance !important;
    overflow-wrap: break-word !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero .lead {
    width: min(32ch, calc(100vw - 40px)) !important;
    max-width: calc(100vw - 40px) !important;
    font-size: 0.98rem !important;
    line-height: 1.64 !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero-actions .button {
    width: min(100%, 310px) !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero-panel {
    display: none !important;
  }

  body[data-page="/portfolio/"] main.page-shell .portfolio-hero-proof {
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
    max-width: calc(100vw - 40px) !important;
  }
}

/* Canonical header: the approved home header is the only header across Grup3D. */
html body[data-page] .site-header {
  position: fixed !important;
  inset: 0 0 auto 0 !important;
  z-index: 1000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 70px !important;
  height: 70px !important;
  margin: 0 !important;
  padding: 0 clamp(22px, 3.125vw, 64px) !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(240, 198, 107, 0.12) !important;
  border-radius: 0 !important;
  background: rgba(4, 7, 8, 0.94) !important;
  box-shadow: none !important;
  color: #f8f4eb !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  backdrop-filter: blur(18px) !important;
}

html body[data-page] .site-header .brand,
html body[data-page] .site-header .brand:hover,
html body[data-page] .site-header .brand:focus-visible {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #f0c66b !important;
  text-decoration: none !important;
}

html body[data-page] .site-header .brand::before,
html body[data-page] .site-header .brand::after {
  content: none !important;
}

html body[data-page] .site-header .brand-mark {
  display: block !important;
  color: #f0c66b !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(2rem, 2.15vw, 2.55rem) !important;
  font-weight: 900 !important;
  line-height: 0.95 !important;
  letter-spacing: -0.03em !important;
  text-transform: uppercase !important;
  text-shadow: none !important;
  transform: none !important;
}

html body[data-page] .site-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: clamp(1rem, 1.7vw, 2rem) !important;
  width: auto !important;
  max-width: none !important;
  margin-left: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body[data-page] .site-nav a:not(.button),
html body[data-page] .site-nav a.is-active:not(.button) {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 44px !important;
  padding: 0 !important;
  color: rgba(246, 239, 228, 0.74) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(0.78rem, 0.72vw, 0.86rem) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
}

html body[data-page] .site-nav a:not(.button)::before,
html body[data-page] .site-nav a:not(.button)::after {
  content: none !important;
}

html body[data-page] .site-nav a:not(.button):hover,
html body[data-page] .site-nav a:not(.button):focus-visible {
  color: #f4c45f !important;
}

html body[data-page] .site-nav .button-nav,
html body[data-page] .button-nav {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.62rem !important;
  min-width: 207px !important;
  min-height: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 1.45rem !important;
  border: 1px solid rgba(247, 190, 86, 0.62) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%) !important;
  box-shadow:
    0 7px 16px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 241, 196, 0.42) !important;
  color: #0c0d0c !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
}

html body[data-page] .site-nav .button-nav::before,
html body[data-page] .button-nav::before {
  content: none !important;
}

html body[data-page] .site-nav .button-nav::after,
html body[data-page] .button-nav::after {
  content: "\2192" !important;
  display: inline-block !important;
  margin-left: 0.35rem !important;
  color: #0c0d0c !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

html body[data-page] .site-nav .button-nav:hover,
html body[data-page] .site-nav .button-nav:focus-visible,
html body[data-page] .button-nav:hover,
html body[data-page] .button-nav:focus-visible {
  border-color: rgba(255, 205, 106, 0.74) !important;
  background: linear-gradient(180deg, #ffd078 0%, #f5bd58 100%) !important;
  box-shadow:
    0 9px 20px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 245, 208, 0.48) !important;
  color: #0c0d0c !important;
  transform: translateY(-1px) !important;
}

html body[data-page] .nav-toggle {
  display: none !important;
}

@media (max-width: 1060px) {
  html body[data-page] .site-header {
    padding-inline: clamp(18px, 4.2vw, 40px) !important;
  }

  html body[data-page] .site-nav {
    gap: clamp(0.75rem, 1.2vw, 1.2rem) !important;
  }
}

@media (max-width: 900px) {
  html body[data-page] .site-header {
    height: 70px !important;
    min-height: 70px !important;
    padding-inline: 20px !important;
  }

  html body[data-page] .nav-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    border: 1px solid rgba(240, 198, 107, 0.32) !important;
    border-radius: 999px !important;
    background: rgba(4, 7, 8, 0.42) !important;
    color: transparent !important;
    box-shadow: none !important;
  }

  html body[data-page] .nav-toggle::before,
  html body[data-page] .nav-toggle::after {
    content: "" !important;
    position: absolute !important;
    width: 20px !important;
    height: 1px !important;
    background: #f0c66b !important;
    transform: translateY(-4px) !important;
  }

  html body[data-page] .nav-toggle::after {
    transform: translateY(4px) !important;
  }

  html body[data-page] .site-nav {
    position: fixed !important;
    top: 78px !important;
    right: 20px !important;
    display: none !important;
    width: min(320px, calc(100vw - 40px)) !important;
    padding: 18px !important;
    border: 1px solid rgba(240, 198, 107, 0.18) !important;
    border-radius: 14px !important;
    background: rgba(4, 7, 8, 0.96) !important;
    box-shadow: 0 22px 70px rgba(0, 0, 0, 0.4) !important;
    backdrop-filter: blur(18px) !important;
  }

  html body[data-page] .site-nav.is-open {
    display: grid !important;
    gap: 0.8rem !important;
  }

  html body[data-page] .site-nav a:not(.button),
  html body[data-page] .site-nav .button-nav,
  html body[data-page] .button-nav {
    width: 100% !important;
  }
}

/* V7.21 promotoras compact horizontal reading rhythm. */
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-focus-section,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-problem-section,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-solutions-section,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-packs-section,
body[data-page="/promotoras/"] .promotoras-editorial-page .promotoras-process-section {
  padding-top: clamp(2.35rem, 3.4vw, 3.5rem) !important;
  padding-bottom: clamp(2.35rem, 3.4vw, 3.5rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-panel {
  gap: clamp(0.9rem, 1.5vw, 1.35rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-header {
  grid-template-columns: minmax(230px, 0.27fr) minmax(0, 0.73fr) !important;
  gap: clamp(1.2rem, 3vw, 2.4rem) !important;
  align-items: start !important;
}

body[data-page="/promotoras/"] .promotoras-focus-header .promotoras-editorial-copy h2 {
  max-width: 9ch !important;
  font-size: clamp(3rem, 4.4vw, 5.25rem) !important;
  line-height: 0.9 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-header .promotoras-gold-rule {
  margin-top: 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-intro {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.85rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-intro p {
  margin: 0 !important;
  padding: 1rem !important;
  border: 1px solid rgba(214, 168, 90, 0.16) !important;
  border-radius: 12px !important;
  color: rgba(255, 248, 238, 0.72) !important;
  background: rgba(255, 255, 255, 0.026) !important;
  font-size: clamp(0.88rem, 0.82vw, 0.96rem) !important;
  line-height: 1.48 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-intro p + p {
  padding-left: 1rem !important;
  border-left: 1px solid rgba(214, 168, 90, 0.16) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary {
  margin-top: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary article {
  grid-template-columns: 50px minmax(0, 1fr) !important;
  min-height: 84px !important;
  padding: 0.95rem 1.15rem !important;
  gap: 0.15rem 0.85rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary span {
  font-size: clamp(1.65rem, 2vw, 2.25rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary strong {
  font-size: clamp(1rem, 1.1vw, 1.2rem) !important;
}

body[data-page="/promotoras/"] .promotoras-focus-summary small {
  font-size: 0.78rem !important;
  line-height: 1.4 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-cards {
  gap: 0.75rem !important;
  margin-top: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card > div {
  display: grid !important;
  grid-template-columns: 40px minmax(0, 1fr) !important;
  gap: 0.25rem 0.8rem !important;
  align-content: center !important;
  min-height: 138px !important;
  padding: 0.95rem !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card .promotoras-focus-logo {
  grid-row: 1 / span 3 !important;
  width: 36px !important;
  height: 36px !important;
  margin: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card .promotoras-focus-logo svg {
  width: 17px !important;
  height: 17px !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card h3 {
  max-width: none !important;
  padding-right: 1.75rem !important;
  font-size: clamp(0.98rem, 1vw, 1.14rem) !important;
  line-height: 1.08 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card h3::after {
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card p:not(.promotoras-part) {
  -webkit-line-clamp: 2 !important;
  margin-top: 0.25rem !important;
  font-size: 0.73rem !important;
  line-height: 1.4 !important;
}

body[data-page="/promotoras/"] .promotoras-focus-card .promotoras-card-arrow {
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-card-number {
  right: 0.9rem !important;
  top: 0.85rem !important;
  font-size: 0.72rem !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-split-grid.is-problem {
  grid-template-columns: minmax(0, 0.58fr) minmax(390px, 0.42fr) !important;
  gap: clamp(1.3rem, 3vw, 2.5rem) !important;
  align-items: center !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-editorial-copy h2 {
  max-width: 9ch !important;
  font-size: clamp(2.95rem, 4.35vw, 4.8rem) !important;
  line-height: 0.9 !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section blockquote {
  margin-top: 0.85rem !important;
  padding: 0.4rem 0 0.45rem 1.25rem !important;
  font-size: clamp(0.98rem, 1.22vw, 1.28rem) !important;
  line-height: 1.18 !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section blockquote::before {
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-readable,
body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-readable,
body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-readable,
body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-readable {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.72rem !important;
  max-width: none !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-readable p,
body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-readable p,
body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-readable p,
body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-readable p {
  max-width: none !important;
  margin: 0 !important;
  padding: 0.82rem !important;
  border: 1px solid rgba(214, 168, 90, 0.16) !important;
  border-radius: 12px !important;
  color: rgba(255, 248, 238, 0.68) !important;
  background:
    linear-gradient(145deg, rgba(214, 168, 90, 0.055), rgba(255, 255, 255, 0.018)),
    rgba(255, 255, 255, 0.024) !important;
  font-size: 0.75rem !important;
  line-height: 1.38 !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-readable p::before,
body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-readable p::before,
body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-readable p::before,
body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-readable p::before {
  content: "" !important;
  display: block !important;
  width: 32px !important;
  height: 1px !important;
  margin-bottom: 0.65rem !important;
  background: var(--promotoras-gold) !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-media-stack {
  gap: 0.7rem !important;
  padding: 0.75rem !important;
  border-radius: 16px !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-large-media {
  min-height: clamp(260px, 24vw, 340px) !important;
  border-radius: 14px !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-large-media::before {
  max-width: min(300px, 62%) !important;
  padding: 0.85rem 1rem !important;
  border-radius: 12px !important;
  font-size: 0.84rem !important;
  line-height: 1.34 !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-mini-row .promotoras-mini-metric {
  grid-template-columns: 30px minmax(0, 1fr) !important;
  min-height: 82px !important;
  padding: 0.72rem !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-mini-row .promotoras-mini-metric strong {
  font-size: 0.72rem !important;
  line-height: 1.25 !important;
}

body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-mini-row .promotoras-mini-metric strong::after {
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-layout {
  gap: clamp(1rem, 2vw, 1.45rem) !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-editorial-copy,
body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-editorial-copy,
body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-editorial-copy {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.24fr) minmax(0, 0.76fr) !important;
  gap: 0.9rem clamp(1.2rem, 2.4vw, 2rem) !important;
  align-items: start !important;
  max-width: none !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-part,
body[data-page="/promotoras/"] .promotoras-solutions-header h2,
body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-gold-rule,
body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-part,
body[data-page="/promotoras/"] .promotoras-pack-copy h2,
body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-gold-rule,
body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-part,
body[data-page="/promotoras/"] .promotoras-process-copy h2,
body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-gold-rule {
  grid-column: 1 !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-readable,
body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-readable,
body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-readable {
  grid-column: 2 !important;
  grid-row: 1 / span 3 !important;
}

body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-editorial-copy h2,
body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-editorial-copy h2 {
  max-width: 9ch !important;
  font-size: clamp(2.8rem, 4.2vw, 4.85rem) !important;
  line-height: 0.9 !important;
}

body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-editorial-copy h2 {
  font-size: clamp(2.35rem, 3.45vw, 3.7rem) !important;
}

body[data-page="/promotoras/"] .promotoras-solution-cards {
  gap: 0.72rem !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card figure {
  height: clamp(118px, 10vw, 156px) !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card > div {
  min-height: 138px !important;
  padding: 0.85rem !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card .promotoras-focus-logo {
  width: 30px !important;
  height: 30px !important;
  margin-bottom: 0.6rem !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card h3 {
  font-size: clamp(0.98rem, 1.08vw, 1.18rem) !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card p {
  margin-top: 0.45rem !important;
  font-size: 0.72rem !important;
  line-height: 1.35 !important;
}

body[data-page="/promotoras/"] .promotoras-solution-card .promotoras-card-arrow {
  display: none !important;
}

body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-split-grid.is-packs {
  grid-template-columns: minmax(0, 0.65fr) minmax(360px, 0.35fr) !important;
  gap: clamp(1.2rem, 2.6vw, 2.2rem) !important;
  align-items: start !important;
}

body[data-page="/promotoras/"] .promotoras-pack-copy {
  gap: 0.85rem !important;
}

body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-readable {
  grid-column: 1 / -1 !important;
  grid-row: auto !important;
  width: 100% !important;
}

body[data-page="/promotoras/"] .promotoras-pack-options {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.65rem !important;
  margin-top: 0 !important;
}

body[data-page="/promotoras/"] .promotoras-pack-options article {
  grid-template-columns: 30px minmax(0, 1fr) !important;
  min-height: 92px !important;
  padding: 0.75rem !important;
}

body[data-page="/promotoras/"] .promotoras-pack-options strong {
  font-size: 0.82rem !important;
}

body[data-page="/promotoras/"] .promotoras-pack-options small {
  font-size: 0.7rem !important;
  line-height: 1.35 !important;
}

body[data-page="/promotoras/"] .promotoras-soft-cta {
  width: fit-content !important;
  min-height: 40px !important;
  padding: 0.65rem 1rem !important;
}

body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-dossier-board,
body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-pack-slide .promotoras-dossier-sheet {
  min-height: clamp(280px, 25vw, 350px) !important;
}

body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-dossier-board {
  align-self: start !important;
  height: auto !important;
}

body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-dossier-sheet {
  grid-template-columns: minmax(130px, 0.26fr) minmax(0, 0.74fr) !important;
  padding: 0.8rem !important;
}

body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-dossier-gallery img {
  min-height: 72px !important;
}

body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-dossier-badges {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.4rem !important;
}

body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-dossier-badges span {
  font-size: 0.54rem !important;
  line-height: 1.15 !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-section-shell {
  grid-template-columns: 1fr !important;
  gap: 1rem !important;
  align-items: start !important;
}

body[data-page="/promotoras/"] .promotoras-process-copy {
  display: grid !important;
  gap: 0.85rem !important;
}

body[data-page="/promotoras/"] .promotoras-process-highlights {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.65rem !important;
}

body[data-page="/promotoras/"] .promotoras-process-highlights li {
  grid-template-columns: 88px minmax(0, 1fr) !important;
  gap: 0.65rem !important;
  padding: 0.65rem 0.78rem !important;
  border: 1px solid rgba(214, 168, 90, 0.14) !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, 0.024) !important;
}

body[data-page="/promotoras/"] .promotoras-process-highlights strong {
  font-size: 0.7rem !important;
}

body[data-page="/promotoras/"] .promotoras-process-highlights span {
  font-size: 0.74rem !important;
  line-height: 1.32 !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0.65rem !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline .promotoras-mini-metric {
  grid-template-columns: 34px minmax(0, 1fr) !important;
  min-height: 104px !important;
  padding: 0.78rem !important;
  border: 1px solid rgba(214, 168, 90, 0.16) !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, 0.026) !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline .promotoras-inline-icon {
  width: 30px !important;
  height: 30px !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline .promotoras-mini-metric strong {
  font-size: 0.8rem !important;
  line-height: 1.2 !important;
}

body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline .promotoras-mini-metric small {
  margin-top: 0.28rem !important;
  font-size: 0.69rem !important;
  line-height: 1.32 !important;
}

@media (max-width: 1180px) {
  body[data-page="/promotoras/"] .promotoras-focus-header,
  body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-split-grid.is-problem,
  body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-split-grid.is-packs,
  body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-editorial-copy,
  body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-editorial-copy,
  body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-editorial-copy {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-readable,
  body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-readable,
  body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-readable {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-cards,
  body[data-page="/promotoras/"] .promotoras-solution-cards,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-readable,
  body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-readable,
  body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-readable,
  body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-readable,
  body[data-page="/promotoras/"] .promotoras-pack-options,
  body[data-page="/promotoras/"] .promotoras-process-highlights {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/promotoras/"] .promotoras-focus-intro,
  body[data-page="/promotoras/"] .promotoras-focus-summary,
  body[data-page="/promotoras/"] .promotoras-focus-cards,
  body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-readable,
  body[data-page="/promotoras/"] .promotoras-solutions-header .promotoras-readable,
  body[data-page="/promotoras/"] .promotoras-pack-copy .promotoras-readable,
  body[data-page="/promotoras/"] .promotoras-pack-options,
  body[data-page="/promotoras/"] .promotoras-process-copy .promotoras-readable,
  body[data-page="/promotoras/"] .promotoras-process-highlights,
  body[data-page="/promotoras/"] .promotoras-process-section .promotoras-timeline {
    grid-template-columns: 1fr !important;
  }

  body[data-page="/promotoras/"] .promotoras-focus-card > div {
    min-height: 132px !important;
  }

  body[data-page="/promotoras/"] .promotoras-problem-section .promotoras-large-media {
    min-height: 250px !important;
  }

  body[data-page="/promotoras/"] .promotoras-packs-section .promotoras-dossier-sheet {
    grid-template-columns: 1fr !important;
  }
}


/* ===== RESTAURADO desde stash 90d355e (2026-05-28): contacto cinematografico ===== */
/* ─── V7.15 contacto · cinematic redesign + stepper briefing ─────────────── */
/* Override V4.81 approved-home global typography for new ct-* blocks (bumped specificity to win over body[data-page]:not(...):not(...) main h1) */
body[data-page="/contacto/"] main#contenido.page-shell .ct-h1,
body[data-page="/contacto/"] main#contenido.page-shell .ct-h2,
body[data-page="/contacto/"] main#contenido.page-shell .ct-finale-h,
body[data-page="/contacto/"] main#contenido.page-shell .ct-phase-h,
body[data-page="/contacto/"] main#contenido.page-shell .ct-side-card h4 {
  max-width: none !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-weight: 900 !important;
  line-height: 0.92 !important;
  letter-spacing: -0.045em !important;
  text-wrap: balance !important;
  text-transform: uppercase;
}
body[data-page="/contacto/"] main#contenido.page-shell .ct-h1 { font-size: clamp(48px, 8vw, 104px) !important; }
body[data-page="/contacto/"] main#contenido.page-shell .ct-h2 { font-size: clamp(40px, 6.2vw, 80px) !important; }
body[data-page="/contacto/"] main#contenido.page-shell .ct-form-head .ct-h2 { font-size: clamp(34px, 4.4vw, 52px) !important; }
body[data-page="/contacto/"] main#contenido.page-shell .ct-finale-h { font-size: clamp(56px, 9vw, 116px) !important; line-height: 0.86 !important; letter-spacing: -0.055em !important; }
body[data-page="/contacto/"] main#contenido.page-shell .ct-phase-h {
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
  letter-spacing: -0.03em !important;
  text-transform: none;
}
body[data-page="/contacto/"] main#contenido.page-shell .ct-side-card h4 {
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  text-transform: none;
}
body[data-page="/contacto/"] main#contenido.page-shell .ct-h1 em,
body[data-page="/contacto/"] main#contenido.page-shell .ct-h2 em,
body[data-page="/contacto/"] main#contenido.page-shell .ct-finale-h em {
  font-family: "Playfair Display", Georgia, serif !important;
  font-style: italic !important;
  font-weight: 500 !important;
  text-transform: lowercase;
  letter-spacing: -0.02em !important;
}
/* Body text overrides (the global rule also wins on p/li/span colors) */
body[data-page="/contacto/"] main#contenido.page-shell .ct-hero-side p,
body[data-page="/contacto/"] main#contenido.page-shell .ct-section-head p,
body[data-page="/contacto/"] main#contenido.page-shell .ct-studio-text p,
body[data-page="/contacto/"] main#contenido.page-shell .ct-finale-content > p,
body[data-page="/contacto/"] main#contenido.page-shell .ct-form-head p,
body[data-page="/contacto/"] main#contenido.page-shell .ct-side-card p,
body[data-page="/contacto/"] main#contenido.page-shell .ct-after p,
body[data-page="/contacto/"] main#contenido.page-shell .ct-channel p {
  max-width: none !important;
  font-family: Inter, system-ui, sans-serif !important;
}

body[data-page="/contacto/"] {
  --ct-bg: #08070a;
  --ct-bg-elev: #050407;
  --ct-fg: #f4ecd9;
  --ct-fg-2: #f0e8d6;
  --ct-fg-3: #d4c9b3;
  --ct-fg-body: #c4bba9;
  --ct-fg-muted: #a8a094;
  --ct-fg-faint: #847b6a;
  --ct-amber: #e0a04a;
  --ct-amber-hover: #f0b256;
  --ct-amber-ink: #1a1207;
  --ct-border: rgba(255, 255, 255, 0.08);
  --ct-border-soft: rgba(255, 255, 255, 0.06);
  --ct-border-amber: rgba(224, 160, 74, 0.3);
  background: #08070a !important;
}
body[data-page="/contacto/"] .page-shell {
  padding: 0 !important;
  margin: 0 !important;
  max-width: none !important;
  width: 100% !important;
  color: var(--ct-fg-2);
  background: transparent;
}
body[data-page="/contacto/"] .page-shell > .breadcrumbs { display: none !important; }

/* Footer aligned with d3 system (home / promotoras / industria) — full-width with consistent inline padding.
   Specificity bumped with :not([data-page="/portfolio/"]) to win over `body[data-page]:not(...) .site-footer-main { max-width: 1320px !important }` (also 0,3,1). */
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer { width: 100% !important; max-width: none !important; padding-inline: 0 !important; }
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer::before,
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer::after { display: none !important; }
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer-main,
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer-inner,
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer > .v3-shell,
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer-bottom,
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer-cta,
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer-funding {
  max-width: none !important;
  width: 100% !important;
  margin-inline: 0 !important;
  padding-inline: clamp(20px, 3.2vw, 56px) !important;
}
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer-main {
  gap: 32px !important;
  grid-template-columns: max-content max-content max-content max-content max-content !important;
  justify-content: space-between !important;
  align-items: start !important;
}
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer-intro { max-width: 340px !important; min-width: 280px !important; }
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer-contact { max-width: 320px !important; min-width: 280px !important; }
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-footer-main > .site-footer-group { min-width: 120px !important; }
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-header { min-height: 84px !important; padding-inline: clamp(20px, 3.2vw, 56px) !important; }
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-header .brand-mark { font-size: clamp(1.85rem, 2vw, 2.4rem) !important; }
html body[data-page="/contacto/"]:not([data-page="/portfolio/"]) .site-nav a:not(.button) { font-size: 0.92rem !important; }

body[data-page="/contacto/"] .ct-mono {
  font-family: ui-monospace, "JetBrains Mono", "Cascadia Code", "Roboto Mono", monospace;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ct-fg-3);
}
body[data-page="/contacto/"] .ct-amber { color: var(--ct-amber); }
body[data-page="/contacto/"] .ct-muted { color: var(--ct-fg-faint); }

body[data-page="/contacto/"] .ct-shell {
  width: 100%;
  margin: 0;
  position: relative;
  z-index: 1;
}

/* ─ Buttons (pill style to match d3/promotoras/industria) ─ */
body[data-page="/contacto/"] .ct-btn-primary,
body[data-page="/contacto/"] .ct-btn-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 26px;
  border-radius: 999px;
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: -0.01em;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease, color 0.18s ease, filter 0.18s ease;
  border: 0;
}
body[data-page="/contacto/"] .ct-btn-primary {
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%);
  color: #0c0d0c;
  box-shadow: 0 7px 16px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 241, 196, 0.42);
}
body[data-page="/contacto/"] .ct-btn-primary:hover {
  background: linear-gradient(180deg, #fad082 0%, #f5c168 100%);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 241, 196, 0.55);
  transform: translateY(-1px);
  filter: brightness(1.04);
}
body[data-page="/contacto/"] .ct-btn-primary:active { transform: translateY(0); }
body[data-page="/contacto/"] .ct-btn-primary:disabled { opacity: 0.35; cursor: not-allowed; }
body[data-page="/contacto/"] .ct-btn-primary--big { padding: 18px 36px; font-size: 16px; }
body[data-page="/contacto/"] .ct-btn-ghost {
  background: transparent;
  color: var(--ct-fg-2);
  border: 1px solid rgba(255, 255, 255, 0.25);
  font-weight: 600;
}
body[data-page="/contacto/"] .ct-btn-ghost:hover { background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.55); color: var(--ct-fg); transform: translateY(-1px); }
body[data-page="/contacto/"] .ct-btn-ghost:disabled { opacity: 0.35; cursor: not-allowed; }
body[data-page="/contacto/"] .ct-btn-ghost--big { padding: 18px 36px; font-size: 16px; }
body[data-page="/contacto/"] .ct-btn-ghost--inv {
  background: rgba(0, 0, 0, 0.25);
  border-color: rgba(224, 160, 74, 0.4);
  color: var(--ct-amber);
}
body[data-page="/contacto/"] .ct-btn-ghost--inv:hover { background: rgba(0, 0, 0, 0.4); border-color: var(--ct-amber); }

/* ─ Hero (full-bleed, padding aligned with d3-hero of promotoras/industria) ─ */
body[data-page="/contacto/"] .ct-hero {
  position: relative;
  min-height: 100vh;
  padding: 96px 48px 110px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 40px;
  overflow: hidden;
  isolation: isolate;
}
body[data-page="/contacto/"] .ct-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
body[data-page="/contacto/"] .ct-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(0.8) contrast(1.05);
}
body[data-page="/contacto/"] .ct-hero-grad {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(8, 7, 10, 0.7) 0%, rgba(8, 7, 10, 0.35) 40%, rgba(8, 7, 10, 0.92) 100%),
    linear-gradient(90deg, rgba(8, 7, 10, 0.7), transparent 55%);
  pointer-events: none;
}
body[data-page="/contacto/"] .ct-hero-shell {
  width: 100%;
  margin: 0;
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 0;
  flex: 1;
}
body[data-page="/contacto/"] .ct-hero-header {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
body[data-page="/contacto/"] .ct-hero-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
body[data-page="/contacto/"] .ct-hero-body {
  display: flex;
  flex-direction: column;
  gap: 14px;
  max-width: 1180px;
}
body[data-page="/contacto/"] .ct-h1 {
  font-family: Inter, system-ui, sans-serif;
  font-size: clamp(48px, 8vw, 104px);
  line-height: 0.92;
  letter-spacing: -0.045em;
  font-weight: 900;
  margin: 0;
  color: var(--ct-fg);
  text-transform: uppercase;
  text-wrap: balance;
}
body[data-page="/contacto/"] .ct-h1 .ct-amber { color: var(--ct-amber); }
body[data-page="/contacto/"] .ct-hero-foot {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 80px;
  align-items: end;
}
body[data-page="/contacto/"] .ct-hero-side {
  display: flex;
  flex-direction: column;
  gap: 18px;
  max-width: 620px;
}
body[data-page="/contacto/"] .ct-hero-side p {
  font-family: Inter, system-ui, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: var(--ct-fg-3);
  margin: 0;
}
body[data-page="/contacto/"] .ct-hero-actions {
  display: flex;
  gap: 12px;
  margin-top: 4px;
  flex-wrap: wrap;
}
body[data-page="/contacto/"] .ct-hero-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  background: rgba(8, 7, 10, 0.55);
  backdrop-filter: blur(16px);
  border: 1px solid rgba(224, 160, 74, 0.25);
  border-radius: 4px;
  width: 100%;
  justify-self: end;
}
body[data-page="/contacto/"] .ct-hero-stats > div {
  padding: 20px 26px;
  border-right: 1px solid rgba(255, 255, 255, 0.06);
  display: flex;
  flex-direction: column;
  gap: 6px;
}
body[data-page="/contacto/"] .ct-hero-stats > div:last-child { border-right: 0; }
body[data-page="/contacto/"] .ct-hero-stats strong {
  font-family: Inter, system-ui, sans-serif;
  font-size: 30px;
  font-weight: 900;
  letter-spacing: -0.04em;
  color: var(--ct-fg);
  line-height: 1;
}
body[data-page="/contacto/"] .ct-hero-stats .ct-mono {
  font-size: 10px;
  max-width: 130px;
  line-height: 1.4;
}

/* ─ Sections (full-bleed with 48px lateral padding, matching d3-section / promotoras / industria) ─ */
body[data-page="/contacto/"] .ct-section { padding: 120px 48px; }
body[data-page="/contacto/"] .ct-section--dark {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.015), transparent);
  border-top: 1px solid var(--ct-border-soft);
  border-bottom: 1px solid var(--ct-border-soft);
}
body[data-page="/contacto/"] .ct-section-head {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 80px;
  align-items: end;
  margin-bottom: 56px;
  padding-bottom: 32px;
  border-bottom: 1px solid var(--ct-border);
}
body[data-page="/contacto/"] .ct-section-head > div { display: flex; flex-direction: column; gap: 16px; }
body[data-page="/contacto/"] .ct-section-head p {
  font-family: Inter, system-ui, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  color: var(--ct-fg-body);
  margin: 0;
  max-width: 540px;
}
body[data-page="/contacto/"] .ct-h2 {
  font-family: Inter, system-ui, sans-serif;
  font-size: clamp(40px, 6.2vw, 80px);
  font-weight: 900;
  letter-spacing: -0.045em;
  line-height: 0.92;
  text-transform: uppercase;
  margin: 0;
  color: var(--ct-fg);
  text-wrap: balance;
}
body[data-page="/contacto/"] .ct-h2 em,
body[data-page="/contacto/"] .ct-finale-h em {
  font-family: "Playfair Display", Georgia, serif;
  font-style: italic;
  font-weight: 500;
  text-transform: lowercase;
  letter-spacing: -0.02em;
}

/* ─ Form section ─ */
body[data-page="/contacto/"] .ct-form-section { padding: 96px 48px; }
body[data-page="/contacto/"] .ct-form-grid {
  display: grid;
  grid-template-columns: 1.55fr 1fr;
  gap: 40px;
  align-items: start;
}
body[data-page="/contacto/"] .ct-form {
  padding: 40px;
  border: 1px solid rgba(224, 160, 74, 0.16);
  background:
    linear-gradient(155deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012) 60%),
    rgba(14, 11, 8, 0.6);
  display: flex;
  flex-direction: column;
  gap: 28px;
  border-radius: 8px;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.38), inset 0 1px 0 rgba(255, 241, 196, 0.04);
}
body[data-page="/contacto/"] .ct-form-head {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--ct-border);
}
body[data-page="/contacto/"] .ct-form-head .ct-h2 { font-size: clamp(34px, 4.4vw, 52px); }
body[data-page="/contacto/"] .ct-form-head p {
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: var(--ct-fg-muted);
  margin: 0;
}

body[data-page="/contacto/"] .ct-stepper {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border: 1px solid var(--ct-border);
  border-radius: 4px;
  overflow: hidden;
}
body[data-page="/contacto/"] .ct-step {
  padding: 18px 16px;
  display: flex;
  gap: 12px;
  align-items: center;
  cursor: pointer;
  border-right: 1px solid var(--ct-border);
  transition: background 0.15s ease;
  position: relative;
}
body[data-page="/contacto/"] .ct-step:last-child { border-right: 0; }
body[data-page="/contacto/"] .ct-step:hover { background: rgba(255, 255, 255, 0.03); }
body[data-page="/contacto/"] .ct-step.is-active { background: rgba(246, 190, 83, 0.06); }
body[data-page="/contacto/"] .ct-step.is-active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 2px;
  background: var(--ct-amber);
}
body[data-page="/contacto/"] .ct-step.is-done .ct-step-n {
  background: var(--ct-amber);
  color: var(--ct-amber-ink);
  border-color: var(--ct-amber);
}
body[data-page="/contacto/"] .ct-step-n {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1.5px solid rgba(255, 255, 255, 0.18);
  font-family: ui-monospace, "JetBrains Mono", monospace;
  font-size: 11px;
  color: var(--ct-fg-3);
  flex-shrink: 0;
  transition: all 0.15s ease;
}
body[data-page="/contacto/"] .ct-step.is-active .ct-step-n {
  border-color: var(--ct-amber);
  color: var(--ct-amber);
}
body[data-page="/contacto/"] .ct-step-label {
  font-family: Inter, system-ui, sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: var(--ct-fg-2);
  letter-spacing: -0.005em;
}

body[data-page="/contacto/"] .ct-phases { display: contents; }
body[data-page="/contacto/"] .ct-phase {
  display: none;
  flex-direction: column;
  gap: 20px;
}
body[data-page="/contacto/"] .ct-phase.is-active { display: flex; }
body[data-page="/contacto/"] .ct-phase-h {
  font-family: Inter, system-ui, sans-serif;
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.05;
  margin: 0;
  color: var(--ct-fg);
  text-wrap: balance;
}

body[data-page="/contacto/"] .ct-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
body[data-page="/contacto/"] .ct-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
body[data-page="/contacto/"] .ct-field--text { grid-column: span 2; }
body[data-page="/contacto/"] .ct-field > span {
  font-family: Inter, system-ui, sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: var(--ct-fg);
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
body[data-page="/contacto/"] .ct-field > span em {
  font-style: normal;
  color: var(--ct-amber);
}
body[data-page="/contacto/"] .ct-field input,
body[data-page="/contacto/"] .ct-field textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 16px 18px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.018)),
    rgba(20, 16, 10, 0.6);
  border: 1px solid rgba(224, 160, 74, 0.18);
  color: var(--ct-fg);
  font-family: Inter, system-ui, sans-serif;
  font-size: 15px;
  border-radius: 6px;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.04) inset, 0 4px 18px rgba(0, 0, 0, 0.25);
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
  outline: none;
}
body[data-page="/contacto/"] .ct-field input::placeholder,
body[data-page="/contacto/"] .ct-field textarea::placeholder { color: rgba(244, 236, 217, 0.32); }
body[data-page="/contacto/"] .ct-field input:hover,
body[data-page="/contacto/"] .ct-field textarea:hover {
  border-color: rgba(224, 160, 74, 0.34);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.022)),
    rgba(24, 18, 11, 0.7);
}
body[data-page="/contacto/"] .ct-field input:focus,
body[data-page="/contacto/"] .ct-field textarea:focus {
  border-color: var(--ct-amber);
  background:
    linear-gradient(180deg, rgba(224, 160, 74, 0.08), rgba(255, 255, 255, 0.025)),
    rgba(28, 20, 12, 0.78);
  box-shadow:
    0 0 0 3px rgba(224, 160, 74, 0.18),
    0 1px 0 rgba(255, 241, 196, 0.08) inset,
    0 6px 24px rgba(0, 0, 0, 0.32);
}
body[data-page="/contacto/"] .ct-field textarea {
  line-height: 1.55;
  resize: vertical;
  min-height: 150px;
}
body[data-page="/contacto/"] .ct-field-help {
  font-style: normal;
  font-size: 12px;
  color: var(--ct-fg-faint);
}

body[data-page="/contacto/"] .ct-segment-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body[data-page="/contacto/"] .ct-segment-label {
  font-family: Inter, system-ui, sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: var(--ct-fg-3);
}
body[data-page="/contacto/"] .ct-segment {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border: 1px solid rgba(224, 160, 74, 0.16);
  border-radius: 6px;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)),
    rgba(20, 16, 10, 0.55);
}
body[data-page="/contacto/"] .ct-segment--five { grid-template-columns: repeat(5, 1fr); }
body[data-page="/contacto/"] .ct-segment button {
  cursor: pointer;
  padding: 14px 12px;
  font-family: Inter, system-ui, sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: var(--ct-fg-3);
  border: 0;
  border-right: 1px solid rgba(255, 255, 255, 0.06);
  background: transparent;
  text-align: center;
  transition: background 0.18s ease, color 0.18s ease;
}
body[data-page="/contacto/"] .ct-segment button:last-child { border-right: 0; }
body[data-page="/contacto/"] .ct-segment button:hover { background: rgba(255, 255, 255, 0.06); color: var(--ct-fg); }
body[data-page="/contacto/"] .ct-segment button.is-active {
  background: linear-gradient(180deg, rgba(224, 160, 74, 0.22), rgba(224, 160, 74, 0.1));
  color: var(--ct-fg);
  box-shadow: inset 0 0 0 1px rgba(224, 160, 74, 0.55);
}

body[data-page="/contacto/"] .ct-summary {
  border: 1px solid rgba(246, 190, 83, 0.22);
  background: rgba(246, 190, 83, 0.05);
  padding: 20px 24px;
  border-radius: 4px;
}
body[data-page="/contacto/"] .ct-summary dl { margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: 0; }
body[data-page="/contacto/"] .ct-summary dl > div {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 16px;
  padding: 8px 0;
  border-bottom: 1px dashed rgba(255, 255, 255, 0.08);
}
body[data-page="/contacto/"] .ct-summary dl > div:last-child { border-bottom: 0; }
body[data-page="/contacto/"] .ct-summary dt {
  font-family: ui-monospace, "JetBrains Mono", monospace;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: var(--ct-fg-faint);
  text-transform: uppercase;
}
body[data-page="/contacto/"] .ct-summary dd {
  font-family: Inter, system-ui, sans-serif;
  font-size: 13px;
  color: var(--ct-fg-2);
  margin: 0;
  line-height: 1.5;
}

body[data-page="/contacto/"] .ct-consent {
  font-family: Inter, system-ui, sans-serif;
  font-size: 12px;
  line-height: 1.55;
  color: var(--ct-fg-muted);
  margin: 0;
  padding: 12px 16px;
  border-left: 2px solid var(--ct-amber);
  background: rgba(246, 190, 83, 0.04);
}
body[data-page="/contacto/"] .ct-consent a { color: var(--ct-amber); text-decoration: underline; }

body[data-page="/contacto/"] .ct-form-nav {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
}
body[data-page="/contacto/"] .ct-form-next,
body[data-page="/contacto/"] .ct-form-send { justify-content: center; }
body[data-page="/contacto/"] .ct-form-foot {
  font-family: ui-monospace, "JetBrains Mono", monospace;
  font-size: 11px;
  color: var(--ct-fg-faint);
  text-align: center;
  padding-top: 4px;
}

/* ─ Sidebar ─ */
body[data-page="/contacto/"] .ct-side {
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: sticky;
  top: 96px;
}
body[data-page="/contacto/"] .ct-side-card {
  padding: 32px 28px;
  border: 1px solid var(--ct-border);
  background: rgba(255, 255, 255, 0.02);
  display: flex;
  flex-direction: column;
  gap: 16px;
  border-radius: 4px;
}
body[data-page="/contacto/"] .ct-side-card header {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--ct-border);
}
body[data-page="/contacto/"] .ct-side-card h4 {
  font-family: Inter, system-ui, sans-serif;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.15;
  margin: 0;
  color: var(--ct-fg);
  text-wrap: balance;
}
body[data-page="/contacto/"] .ct-side-card p {
  font-family: Inter, system-ui, sans-serif;
  font-size: 13px;
  line-height: 1.6;
  color: var(--ct-fg-body);
  margin: 0;
}
body[data-page="/contacto/"] .ct-side-card--amber {
  border-color: var(--ct-border-amber);
  background: rgba(246, 190, 83, 0.06);
}
body[data-page="/contacto/"] .ct-after {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
body[data-page="/contacto/"] .ct-after li {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--ct-border-soft);
}
body[data-page="/contacto/"] .ct-after li:last-child { border-bottom: 0; padding-bottom: 0; }
body[data-page="/contacto/"] .ct-after-n {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(246, 190, 83, 0.4);
  font-family: ui-monospace, "JetBrains Mono", monospace;
  font-size: 11px;
  color: var(--ct-amber);
  margin-top: 2px;
}
body[data-page="/contacto/"] .ct-after strong {
  display: block;
  font-family: Inter, system-ui, sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: var(--ct-fg-2);
  margin-bottom: 4px;
}
body[data-page="/contacto/"] .ct-after p {
  font-family: Inter, system-ui, sans-serif;
  font-size: 13px;
  line-height: 1.55;
  color: var(--ct-fg-muted);
  margin: 0;
}

/* ─ Channels grid ─ */
body[data-page="/contacto/"] .ct-channels {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  border: 1px solid var(--ct-border);
  border-radius: 4px;
  overflow: hidden;
}
body[data-page="/contacto/"] .ct-channel {
  padding: 32px 24px;
  border-right: 1px solid var(--ct-border);
  display: flex;
  flex-direction: column;
  gap: 12px;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
  min-height: 280px;
  position: relative;
  text-decoration: none;
  color: inherit;
}
body[data-page="/contacto/"] .ct-channel:last-child { border-right: 0; }
body[data-page="/contacto/"] .ct-channel:hover { background: rgba(224, 160, 74, 0.05); transform: translateY(-2px); }
body[data-page="/contacto/"] .ct-channel.is-featured { background: rgba(224, 160, 74, 0.06); }
body[data-page="/contacto/"] .ct-channel.is-featured::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--ct-amber);
}
body[data-page="/contacto/"] .ct-channel header { display: flex; justify-content: space-between; align-items: baseline; }
body[data-page="/contacto/"] .ct-channel-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(246, 190, 83, 0.4);
  color: var(--ct-amber);
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  border-radius: 2px;
}
body[data-page="/contacto/"] .ct-channel strong {
  font-family: Inter, system-ui, sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--ct-fg);
  letter-spacing: -0.02em;
  margin-top: 8px;
}
body[data-page="/contacto/"] .ct-channel-value {
  font-family: ui-monospace, "JetBrains Mono", monospace;
  font-size: 13px;
  color: var(--ct-amber);
  letter-spacing: 0.02em;
  word-break: break-word;
}
body[data-page="/contacto/"] .ct-channel p {
  font-family: Inter, system-ui, sans-serif;
  font-size: 13px;
  line-height: 1.55;
  color: var(--ct-fg-muted);
  margin: 0;
  flex: 1;
}
body[data-page="/contacto/"] .ct-channel-cta {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 20px;
  margin-top: 4px;
  border-radius: 999px;
  font-family: Inter, system-ui, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: -0.005em;
  text-transform: none;
  color: #0c0d0c;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 241, 196, 0.45);
  transition: background 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}
body[data-page="/contacto/"] .ct-channel:hover .ct-channel-cta {
  background: linear-gradient(180deg, #fad082 0%, #f5c168 100%);
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 241, 196, 0.55);
  filter: brightness(1.04);
}
body[data-page="/contacto/"] .ct-channel-cta::after {
  content: "→";
  font-weight: 800;
}

/* ─ Studio ─ */
body[data-page="/contacto/"] .ct-studio {
  display: grid;
  grid-template-columns: 1fr 1.25fr;
  gap: 64px;
  align-items: stretch;
  min-height: 480px;
}
body[data-page="/contacto/"] .ct-studio-text {
  display: flex;
  flex-direction: column;
  gap: 22px;
  padding: 8px 0;
}
body[data-page="/contacto/"] .ct-studio-text p {
  font-family: Inter, system-ui, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  color: var(--ct-fg-body);
  margin: 0;
  max-width: 480px;
}
body[data-page="/contacto/"] .ct-studio-meta {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  padding: 24px 0;
  border-top: 1px solid var(--ct-border);
  border-bottom: 1px solid var(--ct-border);
}
body[data-page="/contacto/"] .ct-studio-meta > div {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
body[data-page="/contacto/"] .ct-studio-meta strong {
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: var(--ct-fg-2);
  letter-spacing: -0.01em;
}
body[data-page="/contacto/"] .ct-studio-meta span:last-child {
  font-family: Inter, system-ui, sans-serif;
  font-size: 12px;
  color: var(--ct-fg-faint);
}
body[data-page="/contacto/"] .ct-studio-actions {
  display: flex;
  gap: 12px;
  margin-top: 8px;
  flex-wrap: wrap;
}
body[data-page="/contacto/"] .ct-studio-map {
  position: relative;
  border: 1px solid rgba(224, 160, 74, 0.25);
  background: var(--ct-bg-elev);
  /* height: 100% + min-height suelta el SVG de su intrínseco 10:9 y deja que el grid (align-items: stretch)
     decida la altura según la columna de texto, evitando que el mapa crezca a 800+px en monitores anchos. */
  height: 100%;
  min-height: 440px;
  max-height: 640px;
  overflow: hidden;
  border-radius: 4px;
}
body[data-page="/contacto/"] .ct-map-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}
/* duplicate rule removed — now defined above with position: absolute */
body[data-page="/contacto/"] .ct-map-pulse {
  transform-origin: 340px 230px;
  animation: ctmappulse 2.6s ease-out infinite;
}
body[data-page="/contacto/"] .ct-map-pulse--lg { animation-delay: 1.3s; }
@keyframes ctmappulse {
  0% { transform: scale(0.6); opacity: 1; }
  100% { transform: scale(1.6); opacity: 0; }
}

/* ─ Configurator embed ─ */
body[data-page="/contacto/"] .ct-section--configurator {
  background:
    radial-gradient(circle at 85% 12%, rgba(224, 160, 74, 0.08), transparent 28rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.012), transparent);
  border-top: 1px solid var(--ct-border-soft);
}
body[data-page="/contacto/"] .ct-configurator-frame {
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(224, 160, 74, 0.22);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 40px 100px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 241, 196, 0.05);
  background: var(--ct-bg-elev);
}
body[data-page="/contacto/"] .ct-configurator-bar {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 20px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.01));
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
body[data-page="/contacto/"] .ct-configurator-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  flex-shrink: 0;
}
body[data-page="/contacto/"] .ct-configurator-dot:first-child { background: var(--ct-amber); }
body[data-page="/contacto/"] .ct-configurator-url {
  flex: 1;
  text-align: center;
  font-size: 11px;
  color: var(--ct-fg-muted);
}
/* Inline CTA above the embedded configurator (home, promotoras, industria).
   Sits inside the intro paragraph as "¿Prefieres hablar primero? Habla con Grup3D →" */
.hp-inline-cta,
.d3-inline-cta,
.ind-inline-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: 6px;
  padding: 4px 0 5px;
  color: #e0a04a !important;
  text-decoration: none;
  font-weight: 700;
  border-bottom: 1px solid rgba(224, 160, 74, 0.4);
  transition: color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}
.hp-inline-cta:hover,
.d3-inline-cta:hover,
.ind-inline-cta:hover {
  color: #f0b256 !important;
  border-bottom-color: #f0b256;
}
.hp-inline-cta span,
.d3-inline-cta span,
.ind-inline-cta span {
  transition: transform 0.18s ease;
  display: inline-block;
}
.hp-inline-cta:hover span,
.d3-inline-cta:hover span,
.ind-inline-cta:hover span { transform: translateX(2px); }

/* Prominent "Abrir en pantalla completa" — same position (top bar, right) across the 4 pages that embed the configurador */
body[data-page="/contacto/"] .ct-configurator-expand,
.hp-config-embed-bar .hp-config-expand,
.d3-config-embed-bar .d3-config-expand,
.ind-config-embed-bar .ind-config-expand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
  padding: 10px 20px;
  border-radius: 999px;
  font-family: Inter, system-ui, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: -0.005em;
  color: #0c0d0c !important;
  text-decoration: none;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%);
  box-shadow: 0 7px 16px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 241, 196, 0.45);
  border: 0;
  transition: background 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}
body[data-page="/contacto/"] .ct-configurator-expand:hover,
.hp-config-embed-bar .hp-config-expand:hover,
.d3-config-embed-bar .d3-config-expand:hover,
.ind-config-embed-bar .ind-config-expand:hover {
  background: linear-gradient(180deg, #fad082 0%, #f5c168 100%);
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 241, 196, 0.55);
  filter: brightness(1.04);
}
body[data-page="/contacto/"] .ct-configurator-expand::before,
.hp-config-embed-bar .hp-config-expand::before,
.d3-config-embed-bar .d3-config-expand::before,
.ind-config-embed-bar .ind-config-expand::before {
  content: "⤢";
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
}
body[data-page="/contacto/"] .ct-configurator-iframe {
  /* Altura unificada con el resto de embeds del configurador (home, promotoras, industria).
     900px = altura natural del configurador (su .app-shell usa min-height: 100vh) en viewports de ~900px de alto. */
  width: 100%;
  height: 900px;
  border: 0;
  display: block;
  background: var(--ct-bg-elev);
}
@media (max-width: 1100px) {
  body[data-page="/contacto/"] .ct-configurator-iframe { height: 820px; }
}
@media (max-width: 720px) {
  body[data-page="/contacto/"] .ct-configurator-iframe { height: 720px; }
  body[data-page="/contacto/"] .ct-configurator-url { display: none; }
}

/* ─ Finale (legacy, kept for backwards-compat) ─ */
body[data-page="/contacto/"] .ct-section--finale { padding: 0; position: relative; }
body[data-page="/contacto/"] .ct-finale {
  position: relative;
  min-height: 680px;
  padding: 140px 48px;
  display: flex;
  align-items: center;
  overflow: hidden;
}
body[data-page="/contacto/"] .ct-finale-bg { position: absolute; inset: 0; }
body[data-page="/contacto/"] .ct-finale-bg img { width: 100%; height: 100%; object-fit: cover; display: block; filter: saturate(0.7); }
body[data-page="/contacto/"] .ct-finale-grad {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(8, 7, 10, 0.88) 0%, rgba(8, 7, 10, 0.55) 30%, rgba(8, 7, 10, 0.95) 100%),
    linear-gradient(90deg, rgba(8, 7, 10, 0.85), rgba(8, 7, 10, 0.4) 60%);
  pointer-events: none;
}
body[data-page="/contacto/"] .ct-finale-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 820px;
}
body[data-page="/contacto/"] .ct-finale-h {
  font-family: Inter, system-ui, sans-serif;
  font-size: clamp(56px, 9vw, 116px);
  font-weight: 900;
  letter-spacing: -0.055em;
  line-height: 0.86;
  text-transform: uppercase;
  margin: 0;
  color: var(--ct-fg);
  text-wrap: balance;
}
body[data-page="/contacto/"] .ct-finale-h em { color: var(--ct-amber); }
body[data-page="/contacto/"] .ct-finale-content > p {
  font-family: Inter, system-ui, sans-serif;
  font-size: 17px;
  line-height: 1.55;
  color: var(--ct-fg-3);
  margin: 0;
  max-width: 660px;
}
body[data-page="/contacto/"] .ct-finale-actions {
  display: flex;
  gap: 16px;
  margin-top: 16px;
  flex-wrap: wrap;
}

/* ─ Responsive ─ */
@media (max-width: 1100px) {
  body[data-page="/contacto/"] .ct-hero { padding: 96px 32px; min-height: auto; }
  body[data-page="/contacto/"] .ct-section { padding: 96px 32px; }
  body[data-page="/contacto/"] .ct-form-section { padding: 80px 32px; }
  body[data-page="/contacto/"] .ct-finale { padding: 96px 32px; min-height: 540px; }
  body[data-page="/contacto/"] .ct-hero-foot { grid-template-columns: 1fr; gap: 36px; }
  body[data-page="/contacto/"] .ct-hero-stats { grid-template-columns: repeat(2, 1fr); width: 100%; }
  body[data-page="/contacto/"] .ct-hero-stats > div:nth-child(2) { border-right: 0; }
  body[data-page="/contacto/"] .ct-form-grid { grid-template-columns: 1fr; }
  body[data-page="/contacto/"] .ct-side { position: static; }
  body[data-page="/contacto/"] .ct-section-head { grid-template-columns: 1fr; gap: 24px; }
  body[data-page="/contacto/"] .ct-channels { grid-template-columns: repeat(2, 1fr); }
  body[data-page="/contacto/"] .ct-channel { border-right: 1px solid var(--ct-border); border-bottom: 1px solid var(--ct-border); min-height: 240px; }
  body[data-page="/contacto/"] .ct-channel:nth-child(2n) { border-right: 0; }
  body[data-page="/contacto/"] .ct-studio { grid-template-columns: 1fr; gap: 32px; min-height: auto; }
  body[data-page="/contacto/"] .ct-studio-map { aspect-ratio: 16 / 11; min-height: 380px; max-height: 480px; }
}
@media (max-width: 720px) {
  body[data-page="/contacto/"] .ct-hero { padding: 80px 20px; }
  body[data-page="/contacto/"] .ct-section { padding: 72px 20px; }
  body[data-page="/contacto/"] .ct-form-section { padding: 64px 20px; }
  body[data-page="/contacto/"] .ct-finale { padding: 80px 20px; min-height: 480px; }
  body[data-page="/contacto/"] .ct-hero-top { flex-direction: column; align-items: flex-start; gap: 6px; }
  body[data-page="/contacto/"] .ct-form { padding: 24px; }
  body[data-page="/contacto/"] .ct-stepper { grid-template-columns: repeat(2, 1fr); }
  body[data-page="/contacto/"] .ct-step:nth-child(-n+2) { border-bottom: 1px solid var(--ct-border); }
  body[data-page="/contacto/"] .ct-step:nth-child(2n) { border-right: 0; }
  body[data-page="/contacto/"] .ct-fields { grid-template-columns: 1fr; }
  body[data-page="/contacto/"] .ct-field--text { grid-column: span 1; }
  body[data-page="/contacto/"] .ct-segment,
  body[data-page="/contacto/"] .ct-segment--five { grid-template-columns: repeat(2, 1fr); }
  body[data-page="/contacto/"] .ct-segment button { border-bottom: 1px solid var(--ct-border); }
  body[data-page="/contacto/"] .ct-segment button:nth-child(2n) { border-right: 0; }
  body[data-page="/contacto/"] .ct-hero-stats { grid-template-columns: 1fr; }
  body[data-page="/contacto/"] .ct-hero-stats > div { border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.06); }
  body[data-page="/contacto/"] .ct-hero-stats > div:last-child { border-bottom: 0; }
  body[data-page="/contacto/"] .ct-channels { grid-template-columns: 1fr; }
  body[data-page="/contacto/"] .ct-channel { border-right: 0; min-height: 200px; }
  body[data-page="/contacto/"] .ct-studio-meta { grid-template-columns: 1fr; }
  body[data-page="/contacto/"] .ct-form-nav { grid-template-columns: 1fr; }
}


/* ===== CTA de tarjetas -> aspecto boton primario (igual que .d3-btn-primary); antes .cs-module-cta era texto plano ===== */
html body[data-page] #contenido .cs-module-cta.cs-module-cta.cs-module-cta {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: fit-content !important;
  margin-top: 16px !important;
  padding: 14px 26px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #f7c66d 0%, #f3b851 100%) !important;
  color: #0c0d0c !important;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  text-decoration: none !important;
  box-shadow: 0 7px 16px rgba(0,0,0,0.18), inset 0 1px 0 rgba(255,241,196,0.42) !important;
  transition: transform .18s, box-shadow .18s, filter .18s !important;
}
html body[data-page] #contenido a:hover .cs-module-cta.cs-module-cta.cs-module-cta {
  box-shadow: 0 10px 22px rgba(0,0,0,0.24), inset 0 1px 0 rgba(255,241,196,0.55) !important;
  transform: translateY(-1px) !important;
  filter: brightness(1.04) !important;
}


/* ===== Finale CTA del portfolio a ancho completo (antes capado a 900px; ahora como hero/media) ===== */
html body[data-page="/portfolio/"] main#contenido .portfolio-page .pf-section--finale.portfolio-cta {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-inline: clamp(22px, 4vw, 48px) !important;
}

/* Enlaces internos contextuales en texto (subrayado ambar discreto) */
.g3d-ilink{color:inherit;text-decoration:underline;text-decoration-color:rgba(224,160,74,.55);text-decoration-thickness:1px;text-underline-offset:3px;transition:text-decoration-color .15s ease,color .15s ease}
.g3d-ilink:hover,.g3d-ilink:focus-visible{color:#e0a04a;text-decoration-color:#e0a04a}
