
/* VS V22 — limpieza final: sin página Aliados, header estable, tipografía verde más fina y contenido más arriba */

/* Header: franja negra translúcida arriba y sólida al hacer scroll */
#header,
#header.alt {
  height: 4.25em !important;
  line-height: 4.25em !important;
  background: rgba(10, 10, 10, 0.72) !important;
  border-bottom: 1px solid rgba(255,255,255,0.10) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 .85rem 2rem rgba(0,0,0,.12);
}
#header:not(.alt) {
  background: #0A0A0A !important;
  box-shadow: 0 .85rem 2.2rem rgba(0,0,0,.30);
}
#header.alt h1,
#header h1 {
  opacity: 1 !important;
  pointer-events: auto !important;
  left: 1.65rem !important;
  top: 50% !important;
  height: auto !important;
  line-height: 0 !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
}
#header .site-logo-link {
  height: auto !important;
  min-height: 4.25em !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}
#header .site-logo {
  height: 46px !important;
  max-height: 46px !important;
  display: block !important;
  margin: 0 !important;
  transform: none !important;
}
#header nav { height: 4.25em !important; line-height: 4.25em !important; }
#header nav > ul > li > a.menuToggle {
  height: 4.25em !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Menú: orden más claro y sin Aliados como página */
#menu ul li a { letter-spacing: .08em; }

/* Etiquetas verdes más finas, menos espaciadas y menos invasivas */
.vs-kicker,
.vs-subpage-intro .vs-kicker,
.vs-subpage-intro .vs-page-label,
.vs-page-label,
.vs-clients-compact .vs-kicker,
.vs-about-mini-copy .vs-kicker {
  color: rgba(0,207,104,.82) !important;
  font-weight: 500 !important;
  letter-spacing: .13em !important;
  font-size: .66rem !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
}
.vs-subpage-intro .vs-page-label { margin-top: .48rem !important; }

/* Subpáginas más arriba y con menos bloque vacío */
.vs-subpage-intro {
  padding: 5.55rem 0 .75rem !important;
}
.vs-subpage-intro h2 {
  font-size: clamp(1.9rem, 3.1vw, 3.15rem) !important;
  letter-spacing: .015em !important;
}

/* Servicios: menos aire superior y contenido más directo */
.vs-services-editorial {
  padding-top: 1.25rem !important;
  padding-bottom: 4rem !important;
}
.vs-service-section-head {
  max-width: 820px !important;
  margin-bottom: 1.65rem !important;
}
.vs-service-section-head h2 {
  font-size: clamp(1.35rem, 2.35vw, 2.15rem) !important;
  line-height: 1.14 !important;
  margin-bottom: .65rem !important;
}
.vs-service-section-head p {
  max-width: 700px;
  color: rgba(255,255,255,.62) !important;
  font-size: .98rem !important;
}
.vs-service-editorial-card {
  min-height: 21rem !important;
}
.vs-service-copy { padding: clamp(1.35rem, 2.5vw, 2.2rem) !important; }
.vs-service-copy .vs-service-number {
  color: rgba(0,207,104,.82) !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  font-size: .68rem !important;
}
.vs-service-copy h3 { margin-bottom: .7rem !important; }
.vs-service-copy p { margin-bottom: .9rem !important; }
.vs-service-focus {
  border-left-color: rgba(0,207,104,.78) !important;
  background: rgba(0,207,104,.045) !important;
  color: rgba(255,255,255,.72) !important;
}
.vs-service-bullets li { color: rgba(255,255,255,.58) !important; }
.vs-service-editorial-card figure img { min-height: 21rem !important; }

/* Nosotros: titular más pequeño, uniforme y equilibrado */
.vs-about-compact {
  padding: 6rem 0 2.2rem !important;
}
.vs-about-compact .inner {
  align-items: center !important;
  gap: 2.4rem !important;
}
.vs-about-mini-copy h2,
.vs-about-mini-copy h2 span {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
.vs-about-mini-copy h2 {
  font-size: clamp(1.75rem, 2.9vw, 2.9rem) !important;
  line-height: 1.12 !important;
  letter-spacing: .015em !important;
  margin: .55rem 0 .85rem !important;
  max-width: 35rem;
}
.vs-about-mini-copy p {
  color: rgba(255,255,255,.70) !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
  max-width: 34rem !important;
}
.vs-about-mini-grid img:first-child { height: 25rem !important; }
.vs-about-mini-grid img { height: 12.1rem !important; }
.vs-process span {
  font-weight: 600 !important;
  letter-spacing: .12em !important;
}
.vs-process span:nth-child(even) { color: rgba(0,207,104,.85) !important; }

/* Home aliados se queda como sección, no como página */
.vs-allies-home { scroll-margin-top: 5rem; }

@media screen and (max-width: 980px) {
  #header.alt h1, #header h1 { left: 1rem !important; }
  #header .site-logo { height: 40px !important; max-height: 40px !important; }
  .vs-subpage-intro { padding-top: 5.25rem !important; }
  .vs-about-mini-copy { text-align: left !important; }
  .vs-about-mini-copy h2, .vs-about-mini-copy p { margin-left: 0 !important; margin-right: 0 !important; }
}
@media screen and (max-width: 736px) {
  #header, #header.alt, #header nav { height: 3.65em !important; line-height: 3.65em !important; }
  #header .site-logo-link { min-height: 3.65em !important; }
  #header .site-logo { height: 34px !important; max-height: 34px !important; }
  #header nav > ul > li > a.menuToggle { height: 3.65em !important; padding: 0 1rem !important; }
  .vs-subpage-intro { padding: 4.65rem 0 .55rem !important; }
  .vs-subpage-intro h2 { font-size: clamp(1.75rem, 8vw, 2.35rem) !important; }
  .vs-service-section-head h2 { font-size: 1.45rem !important; }
  .vs-service-editorial-card figure img { min-height: 13.5rem !important; }
  .vs-about-compact { padding-top: 4.8rem !important; }
  .vs-about-mini-copy h2 { font-size: clamp(1.6rem, 8vw, 2.15rem) !important; }
  .vs-about-mini-grid img:first-child, .vs-about-mini-grid img { height: 14rem !important; }
}
