/* =========================================================
   ORBYTRA · CONTENEDOR GLOBAL
   1240px en escritorio estándar · 1320px en pantallas amplias
========================================================= */

:root {
  --orby-content-width: 1240px;
  --orby-content-gutter: 20px;
}

@media (min-width: 1600px) {
  :root {
    --orby-content-width: 1320px;
  }
}

/* Cabecera: más respiración al inicio; compacta al hacer scroll. */
body #page #masthead:not(.orbytra-header-scrolled) #ast-desktop-header .ast-primary-header-bar,
body #page #masthead:not(.orbytra-header-scrolled) #ast-mobile-header .ast-primary-header-bar {
  width: min(calc(var(--orby-content-width) + 80px), calc(100% - (var(--orby-header-side) * 2))) !important;
  background:
    linear-gradient(100deg, rgba(38, 16, 72, .16), rgba(7, 18, 34, .22) 47%, rgba(5, 38, 47, .16)),
    rgba(5, 12, 24, .12) !important;
  border-color: rgba(255, 255, 255, .22) !important;
  box-shadow:
    0 18px 54px rgba(0, 0, 0, .16),
    inset 0 1px 0 rgba(255, 255, 255, .18) !important;
  -webkit-backdrop-filter: blur(34px) saturate(145%);
  backdrop-filter: blur(34px) saturate(145%);
}

#masthead.orbytra-header-scrolled #ast-desktop-header .ast-primary-header-bar,
#masthead.orbytra-header-scrolled #ast-mobile-header .ast-primary-header-bar {
  width: min(var(--orby-content-width), calc(100% - (var(--orby-header-side) * 2))) !important;
}

/* Páginas de servicio */
.home-container,
.home-deployment > .home-container,
.home-final-cta__layout,
.strategy-container,
.strategy-framework .strategy-container,
.strategy-problems .strategy-container,
.creative-page .container,
.systems-container,
.workspace-departments__inner {
  width: min(var(--orby-content-width), calc(100% - (var(--orby-content-gutter) * 2))) !important;
  max-width: none !important;
}

/* Creative usa este bloque como referencia directa para su composición. */
.wonder-copy {
  max-width: var(--orby-content-width);
}

.dino-content,
.creative-page .dino-content {
  margin-left: max(var(--orby-content-gutter), calc((100vw - var(--orby-content-width)) / 2));
}

/* Footer */
.orbytra-footer__shell {
  width: min(var(--orby-content-width), calc(100% - (var(--orby-content-gutter) * 2)));
}

/* Home: arquitectura y CTA alineados al mismo eje de contenido. */
.orbytra-verticales__track {
  padding-right: max(var(--orby-content-gutter), calc((100vw - var(--orby-content-width)) / 2));
  padding-left: max(var(--orby-content-gutter), calc((100vw - var(--orby-content-width)) / 2));
  scroll-padding-inline: max(var(--orby-content-gutter), calc((100vw - var(--orby-content-width)) / 2));
}

.home-final-cta__panel {
  max-width: none;
  margin: 0;
}

@media (min-width: 641px) {
  /* Systems: elimina el 73,5 px intermedio del cálculo con 5vw. */
  .systems-heading h2,
  .systems-integrations__copy h2,
  .systems-process__copy h2 {
    font-size: 75px !important;
  }

  /* Primera sección compartida: una misma escala tipográfica en los servicios. */
  .home-system .home-heading h2,
  .strategy-intro .strategy-heading h2,
  .creative-page .intro .section-heading h2,
  .systems-solutions .systems-heading h2 {
    font-size: 75px !important;
    font-weight: 700 !important;
  }

  .home-system .home-heading > p:not(.home-eyebrow),
  .strategy-intro .strategy-heading > p:not(.strategy-eyebrow),
  .creative-page .intro .section-heading > p:not(.eyebrow),
  .systems-solutions .systems-heading > p:not(.systems-eyebrow) {
    font-size: 16px;
  }

  .home-system .home-system-item__label,
  .strategy-intro .strategy-recognition-item span,
  .creative-page .intro .line-card span,
  .systems-solutions .systems-card-tag,
  .home-system .home-system-item > p:last-child,
  .strategy-intro .strategy-recognition-item p,
  .creative-page .intro .line-card p,
  .systems-solutions .systems-solution-card > p:not(.systems-card-tag),
  .systems-solutions .systems-solution-card li {
    font-size: 16px;
  }

  .home-system .home-system-item h3,
  .strategy-intro .strategy-recognition-item h3,
  .creative-page .intro .line-card h3,
  .systems-solutions .systems-solution-card h3 {
    font-size: 24px !important;
  }

  .orbytra-verticales {
    padding-bottom: 45px;
  }

  .orbytra-verticales__track {
    padding-bottom: 72px;
  }

  .orbytra-verticales__controls {
    margin-top: -40px;
  }

  .home-deployment {
    padding-top: 45px;
  }

  .home-final-cta__panel h2 {
    max-width: 980px;
    margin-right: auto;
    margin-left: auto;
    font-size: 60px !important;
    line-height: 1.1;
  }
}

@media (max-width: 768px) {
  :root {
    --orby-content-gutter: 14px;
  }
}
