/* ============================================================================
   SECCIONES v3 — colegios · empresas (7760) · equipo · contacto
   (FASE 5 rediseño 2026) Port de layoscamp-redesign/pages/secciones.css
   sobre los node templates reales, TODO scopeado a .page-2026.

   Ley de convivencia: tokens scopeados (nunca :root), !important SOLO contra
   legacy que ya lo usa (§22 Cormorant, AGY animaciones del page-hero,
   Premium Forms submit #222 — design-system-v2-extras.css). Estas páginas
   cargan style.css completo (global-styling), a diferencia de la home.
   ============================================================================ */

/* ============ §0 · TOKENS v3 (scopeados) ============ */
.page-2026 {
  --crema:        #FDF8EE;
  --crema-2:      #F8EFDC;
  --arena:        #F0E0C3;
  --terracota:    #D2603A;
  --agua:         #2A9D8F;
  --bosque:       #31562D;
  --bosque-2:     #026936;
  --bosque-deep:  #22401F;
  --sol:          #FBBB0E;
  --sol-glow:     rgba(251,187,14,.35);
  --ink:          #272725;
  --blanco:       #FFFFFF;

  --font-display: "Fraunces", Georgia, serif;
  --font-body:    "Outfit", "Helvetica Neue", Arial, sans-serif;

  --fs-h2:      clamp(1.45rem, 2.5vw, 2.05rem);
  --fs-eyebrow: clamp(.72rem, 1vw, .82rem);
  --lh-tight:   .96;
  --ls-display: -.02em;
  --ls-eyebrow: .22em;

  --space-xxl: 96px;
  --radius-xs: 8px; --radius-sm: 14px; --radius-md: 22px;
  --radius-lg: 30px; --radius-full: 999px;
  --sombra-suave: 0 22px 54px -18px rgba(49,86,45,.26), 0 8px 20px -8px rgba(39,39,37,.14);
  --sombra-pop:   0 38px 84px -26px rgba(49,86,45,.42), 0 14px 32px -12px rgba(39,39,37,.2);
  --spring:    cubic-bezier(.34,1.56,.64,1);
  --ease-zoom: cubic-bezier(.22,1,.36,1);
  --nav-h: 84px;
  --container: min(1240px, 92vw);

  font-family: var(--font-body);
  color: var(--ink);
}

/* El page-hero foto corre bajo el header glass (como la home) */
body:has(.page-2026) .header-spacer { display: none; }

/* Contenedor propio (el .container de Bootstrap en style.css impone
   max-width por breakpoint + padding — se redefine dentro del scope) */
.page-2026 .container-2026 { width: var(--container); margin-inline: auto; }

/* ============ §1 · BOTONES (scopeados, mismos acabados que el shell) ============ */
.page-2026 .btn-2026 {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 12px 24px; border: 0; border-radius: var(--radius-full);
  font-family: var(--font-body); font-weight: 600; font-size: .95rem; line-height: 1;
  cursor: pointer; text-decoration: none;
  transition: transform .35s var(--spring), box-shadow .35s ease, background-color .25s ease, color .25s ease;
}
.page-2026 .btn-2026:hover { transform: translateY(-2px); }
.page-2026 .btn-2026--lg { padding: 16px 30px; font-size: 1.02rem; }
.page-2026 .btn-2026--gold {
  background: var(--sol); color: var(--bosque-deep);
  box-shadow: 0 10px 30px -10px var(--sol-glow), 0 2px 8px rgba(39,39,37,.12);
}
.page-2026 .btn-2026--gold:hover { color: var(--bosque-deep); }
.page-2026 .btn-2026--ghost {
  background: transparent; color: var(--bosque);
  box-shadow: inset 0 0 0 1.5px var(--bosque);
}
.page-2026 .btn-2026--ghost:hover { background: var(--bosque); color: var(--crema); }
.page-2026 .btn-2026--glass {
  background: rgba(253,248,238,.14); color: var(--crema);
  box-shadow: inset 0 0 0 1.5px rgba(253,248,238,.55);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
}
.page-2026 .btn-2026--glass:hover { background: rgba(253,248,238,.26); color: var(--crema); }

/* ============ §2 · PAGE-HERO compacto (foto + scrim) ============ */
.page-2026 .page-hero {
  position: relative;
  min-height: clamp(400px, 52vh, 520px);
  display: flex; align-items: flex-end;
  color: var(--crema);
  overflow: hidden;
  background: var(--bosque-deep);
  isolation: isolate;
  padding: 0;
}
.page-2026 .page-hero__media { position: absolute; inset: 0; z-index: 0; }
.page-2026 .page-hero__media img {
  width: 100%; height: 100%; object-fit: cover; object-position: center;
}
.page-2026 .page-hero__scrim {
  position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background:
    linear-gradient(185deg, rgba(39,39,37,0) 26%, rgba(34,64,31,.68) 100%),
    radial-gradient(120% 90% at 18% 88%, rgba(34,64,31,.55) 0%, rgba(34,64,31,0) 60%),
    linear-gradient(180deg, rgba(34,64,31,.38) 0%, rgba(34,64,31,0) 30%);
}
.page-2026 .page-hero__content {
  position: relative; z-index: 2;
  width: var(--container); margin-inline: auto;
  padding: calc(var(--nav-h) + 56px) 0 clamp(48px, 8vh, 72px);
}
.page-2026 .hero__eyebrow {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: var(--fs-eyebrow); font-weight: 700;
  letter-spacing: var(--ls-eyebrow); text-transform: uppercase;
  color: rgba(253,248,238,.9);
  margin: 0 0 14px;
}
.page-2026 .hero__eyebrow::before {
  content: ""; width: 8px; height: 8px; border-radius: 50%;
  background: var(--sol); box-shadow: 0 0 0 3px rgba(251,187,14,.25);
}
.page-2026 .page-hero__sub {
  margin: 18px 0 0;
  max-width: 52ch;
  font-size: clamp(1rem, 1.5vw, 1.16rem);
  line-height: 1.55;
  color: rgba(253,248,238,.92);
}
.page-2026 .page-hero__cta { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; }

/* Breadcrumb sobre el scrim */
.page-2026 .page-hero .breadcrumb-v2 { margin-bottom: 18px; }
.page-2026 .page-hero .breadcrumb-v2__list {
  display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
  list-style: none; margin: 0; padding: 0;
  font-size: .82rem; color: rgba(253,248,238,.75);
}
.page-2026 .page-hero .breadcrumb-v2__item a { color: rgba(253,248,238,.9); font-weight: 600; text-decoration: none; }
.page-2026 .page-hero .breadcrumb-v2__item a:hover { text-decoration: underline; text-underline-offset: 3px; }
.page-2026 .page-hero .breadcrumb-v2__separator { color: rgba(253,248,238,.5); }
.page-2026 .page-hero .breadcrumb-v2__item--active { color: var(--crema); font-weight: 500; }

/* ============ §3 · BANDAS + CABECERAS DE SECCIÓN ============ */
.page-2026 .band { padding: clamp(56px, 8vw, 96px) 0; }
.page-2026 .band--crema { background: var(--crema); }
.page-2026 .band--crema2 { background: var(--crema-2); }
.page-2026 .band--white { background: var(--blanco); }

/* style.css:20110 fija TODO <header> por elemento (position:fixed top:0
   width:100%) — los headers de sección vuelven al flujo. */
.page-2026 header.section__head,
.page-2026 .section__head {
  position: static;
  top: auto; left: auto;
  width: auto;
  box-shadow: none;
  background: none;
  max-width: 720px;
  margin-bottom: clamp(28px, 4vw, 44px);
}
.page-2026 .section__head--center { margin-inline: auto; text-align: center; }
.page-2026 .eyebrow {
  display: block;
  font-size: var(--fs-eyebrow); font-weight: 700;
  letter-spacing: var(--ls-eyebrow); text-transform: uppercase;
  color: var(--terracota);
  margin: 0 0 12px;
}
.page-2026 .section__sub { margin: 14px 0 0; color: rgba(39,39,37,.72); line-height: 1.6; }

/* ============ §4 · VALUE CARDS ============ */
.page-2026 .values__grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px;
}
.page-2026 .values__grid--4 { grid-template-columns: repeat(4, 1fr); }
.page-2026 .value-card {
  background: var(--blanco);
  border: 1px solid rgba(49,86,45,.1);
  border-radius: var(--radius-md);
  padding: 26px 24px;
  transition: transform .35s var(--ease-zoom), box-shadow .35s ease, border-color .25s ease;
}
.page-2026 .band--white .value-card { background: var(--crema); }
.page-2026 .value-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--sombra-suave);
  border-color: rgba(49,86,45,.22);
}
.page-2026 .value-card .material-icons-round,
.page-2026 .value-card .material-icons-outlined {
  display: inline-grid; place-items: center;
  width: 52px; height: 52px; border-radius: var(--radius-sm);
  background: var(--crema-2); color: var(--terracota);
  font-size: 1.7rem;
  margin-bottom: 16px;
}
.page-2026 .value-card h3 {
  font-family: var(--font-body); font-size: 1.05rem; font-weight: 700;
  color: var(--bosque-deep); margin: 0 0 8px;
}
.page-2026 .value-card p { font-size: .9rem; line-height: 1.55; color: rgba(39,39,37,.72); margin: 0; }

/* ============ §5 · EDITORIAL ============ */
.page-2026 .editorial__body { max-width: 68ch; }
.page-2026 .editorial__body p { color: rgba(39,39,37,.8); }
.page-2026 .editorial__body p + p { margin-top: 16px; }
.page-2026 .editorial__body > :first-child p:first-child,
.page-2026 .editorial__body p.lead {
  font-family: var(--font-display);
  font-size: clamp(1.18rem, 1.9vw, 1.34rem);
  line-height: 1.5;
  color: var(--bosque-deep);
}

/* ============ §6 · LOGOS ============ */
.page-2026 .logos-grid {
  display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px;
  list-style: none; margin: 0; padding: 0;
}
.page-2026 .logos-grid > * { min-width: 0; }
.page-2026 .logo-cell {
  background: var(--blanco);
  border: 1px solid rgba(49,86,45,.1);
  border-radius: var(--radius-sm);
  aspect-ratio: 4 / 3;
  display: grid; place-items: center;
  padding: 16px;
  transition: box-shadow .35s ease, border-color .3s ease, transform .35s var(--ease-zoom);
}
.page-2026 .logo-cell img {
  max-width: 100%; max-height: 100%; min-width: 0;
  object-fit: contain;
  filter: grayscale(1); opacity: .68;
  transition: filter .35s ease, opacity .35s ease, transform .35s var(--ease-zoom);
}
.page-2026 .logo-cell:hover {
  box-shadow: var(--sombra-suave);
  border-color: rgba(49,86,45,.22);
  transform: translateY(-3px);
}
.page-2026 .logo-cell:hover img { filter: grayscale(0); opacity: 1; transform: scale(1.06); }

/* ============ §7 · EQUIPO ============ */
.page-2026 .team-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;
  list-style: none; margin: 0; padding: 0;
}
.page-2026 .team-card {
  background: var(--blanco);
  border-radius: var(--radius-md);
  overflow: hidden;
  box-shadow: 0 10px 34px -16px rgba(49,86,45,.22);
  transition: transform .4s var(--ease-zoom), box-shadow .4s ease;
}
.page-2026 .team-card:hover { transform: translateY(-5px); box-shadow: var(--sombra-pop); }
.page-2026 .team-card__media { aspect-ratio: 1 / 1; overflow: hidden; background: var(--crema-2); }
.page-2026 .team-card__media img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform .8s var(--ease-zoom);
}
.page-2026 .team-card:hover .team-card__media img { transform: scale(1.05); }
.page-2026 .team-card__avatar {
  width: 100%; height: 100%;
  display: grid; place-items: center;
  background:
    radial-gradient(90% 120% at 85% 0%, rgba(42,157,143,.25) 0%, rgba(42,157,143,0) 55%),
    var(--bosque);
  color: var(--crema);
  font-family: var(--font-display); font-style: italic; font-weight: 600;
  font-size: clamp(2.6rem, 5vw, 3.4rem);
  letter-spacing: .02em;
}
.page-2026 .team-card__body { padding: 18px 20px 22px; text-align: center; }
.page-2026 .team-card__name { font-size: 1.06rem; font-weight: 700; color: var(--bosque-deep); margin: 0; }
.page-2026 .team-card__role { margin: 3px 0 0; font-size: .86rem; color: rgba(39,39,37,.68); }

/* ============ §8 · FORM CARD + SKIN DEL WEBFORM REAL ============
   El markup es webform_flexbox de Drupal (no el .form-grid del mockup).
   Premium Forms (extras L624-682) fuerza inputs blancos y submit #222 con
   !important → se vence con !important scopeado (patrón anti-§22). */
.page-2026 .form-card {
  background: var(--blanco);
  border-radius: var(--radius-lg);
  box-shadow: var(--sombra-suave);
  padding: clamp(26px, 4vw, 46px);
}
.page-2026 .form-card--center { max-width: 880px; margin-inline: auto; }
.page-2026 .form-card__head { margin-bottom: 26px; }
.page-2026 .form-card__head h3 {
  font-family: var(--font-display);
  font-size: var(--fs-h2); font-weight: 600;
  line-height: var(--lh-tight); letter-spacing: var(--ls-display);
  color: var(--bosque-deep); margin: 0;
}
.page-2026 .form-card__head h3 em { font-style: italic; color: var(--terracota); }
.page-2026 .form-card__head p { margin: 10px 0 0; font-size: .95rem; color: rgba(39,39,37,.72); }

.page-2026 .webform-submission-form {
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
.page-2026 .webform-submission-form label {
  font-family: var(--font-body) !important;
  font-size: .85rem !important; font-weight: 600 !important;
  letter-spacing: 0 !important; text-transform: none !important;
  color: var(--bosque-deep) !important;
  margin-bottom: 7px;
}
.page-2026 .webform-submission-form input[type="text"],
.page-2026 .webform-submission-form input[type="email"],
.page-2026 .webform-submission-form input[type="tel"],
.page-2026 .webform-submission-form select,
.page-2026 .webform-submission-form textarea {
  font: inherit; font-size: .97rem !important; color: var(--ink) !important;
  width: 100%;
  padding: 13px 16px !important;
  border-radius: var(--radius-sm) !important;
  border: 1.5px solid rgba(49,86,45,.22) !important;
  background: var(--crema) !important;
  box-shadow: none !important;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.page-2026 .webform-submission-form textarea { resize: vertical; min-height: 130px; line-height: 1.5 !important; }
.page-2026 .webform-submission-form input:focus,
.page-2026 .webform-submission-form select:focus,
.page-2026 .webform-submission-form textarea:focus {
  outline: none !important;
  border-color: var(--bosque) !important;
  background: var(--blanco) !important;
  box-shadow: 0 0 0 3px rgba(49,86,45,.16) !important;
}
.page-2026 .webform-submission-form input[type="checkbox"] {
  width: 18px; height: 18px; accent-color: var(--bosque);
}
.page-2026 .webform-submission-form .form-item { margin-bottom: 14px; }
.page-2026 .webform-submission-form .description { font-size: .8rem; color: rgba(39,39,37,.6); }
/* La variante con #edit-actions es obligatoria: Premium Forms (extras L956)
   usa ese ID → (1,x,x) invencible por clases; empatamos ID y ganamos por
   orden de carga (410). */
.page-2026 .webform-submission-form .form-actions .button,
.page-2026 .webform-submission-form .form-actions .form-submit,
.page-2026 .webform-submission-form .form-actions input.form-submit[type="submit"],
.page-2026 #edit-actions input[type="submit"],
.page-2026 #edit-actions button[type="submit"] {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  width: auto !important;
  padding: 14px 30px !important;
  border: 0 !important; border-radius: var(--radius-full) !important;
  background: var(--sol) !important;
  color: var(--bosque-deep) !important;
  font-family: var(--font-body) !important; font-weight: 600 !important; font-size: .98rem !important;
  cursor: pointer;
  box-shadow: 0 10px 30px -10px var(--sol-glow), 0 2px 8px rgba(39,39,37,.12) !important;
  transition: transform .35s var(--spring), box-shadow .35s ease;
}
.page-2026 .webform-submission-form .form-actions .button:hover,
.page-2026 .webform-submission-form .form-actions .form-submit:hover,
.page-2026 .webform-submission-form .form-actions input.form-submit[type="submit"]:hover,
.page-2026 #edit-actions input[type="submit"]:hover,
.page-2026 #edit-actions button[type="submit"]:hover {
  transform: translateY(-2px);
  background: var(--sol) !important;
  color: var(--bosque-deep) !important;
}
/* Filas 2-col del webform_flexbox reales */
.page-2026 .webform-flexbox { margin: 0 -8px; }
.page-2026 .webform-flex { padding: 0 8px; }

/* ============ §9 · CONTACTO ============ */
.page-2026 .contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: clamp(24px, 3.4vw, 44px);
  align-items: start;
}
.page-2026 .info-stack { display: grid; gap: 14px; }
.page-2026 .info-card {
  display: flex; align-items: flex-start; gap: 16px;
  background: var(--blanco);
  border: 1px solid rgba(49,86,45,.1);
  border-radius: var(--radius-md);
  padding: 20px 22px;
  transition: transform .35s var(--ease-zoom), box-shadow .35s ease;
}
.page-2026 .info-card:hover { transform: translateY(-2px); box-shadow: var(--sombra-suave); }
.page-2026 .info-card__icon {
  display: grid; place-items: center;
  width: 46px; height: 46px; flex-shrink: 0;
  border-radius: var(--radius-sm);
  background: var(--crema-2); color: var(--terracota);
  font-size: 1.45rem;
}
.page-2026 .info-card__body { min-width: 0; flex: 1; }
.page-2026 .info-card__label {
  font-size: .78rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(39,39,37,.55);
  margin: 0 0 2px;
}
.page-2026 .info-card__value { font-weight: 600; color: var(--bosque-deep); margin: 0; overflow-wrap: anywhere; }
.page-2026 .info-card__value a { color: inherit; }
.page-2026 .info-card__value a:hover { color: var(--terracota); }

.page-2026 .schedule { margin: 4px 0 0; display: grid; gap: 5px; width: 100%; list-style: none; padding: 0; }
.page-2026 .schedule li { display: flex; justify-content: space-between; gap: 16px; font-size: .9rem; }
.page-2026 .schedule li span:first-child { color: rgba(39,39,37,.68); }
.page-2026 .schedule li span:last-child { font-weight: 600; color: var(--bosque-deep); }

/* Mapa (iframe backend-driven, estilizado como tarjeta) */
.page-2026 .map-embed {
  overflow: hidden;
  border-radius: var(--radius-md);
  box-shadow: var(--sombra-suave);
  line-height: 0;
}
.page-2026 .map-embed iframe { display: block; width: 100%; border: 0; }

/* ============ §10 · CTA CARD (empresas) ============ */
.page-2026 .cta-card-2026 {
  position: sticky; top: calc(66px + 18px);
  background:
    radial-gradient(90% 120% at 85% 0%, rgba(42,157,143,.18) 0%, rgba(42,157,143,0) 55%),
    var(--bosque-deep);
  color: var(--crema);
  border-radius: var(--radius-md);
  padding: 28px;
  box-shadow: var(--sombra-suave);
}
.page-2026 .cta-card-2026 h2 {
  font-family: var(--font-display); font-size: 1.5rem; font-weight: 600;
  letter-spacing: var(--ls-display); color: var(--crema); margin: 0 0 10px;
}
.page-2026 .cta-card-2026 p { color: rgba(253,248,238,.88); font-size: .95rem; line-height: 1.55; margin: 0 0 20px; }

.page-2026 .editorial-grid {
  display: grid; grid-template-columns: minmax(0, 1fr) 360px;
  gap: clamp(28px, 4vw, 56px);
  align-items: start;
}

/* ============ §11 · OVERRIDES anti-legacy (mismo patrón que anti-§22) ============ */
/* §22 fuerza Cormorant y AGY fuerza tamaño/animación sobre .page-hero__title;
   .section-title (si se reusa) ídem. */
.page-2026 .page-hero__title {
  font-family: var(--font-display) !important;
  font-size: clamp(2.35rem, 4.8vw, 3.4rem) !important;
  font-weight: 600; line-height: var(--lh-tight);
  letter-spacing: var(--ls-display);
  color: var(--crema);
  max-width: 16ch;
  text-wrap: balance;
  text-shadow: 0 2px 30px rgba(34,64,31,.45);
  margin: 0;
  animation: none !important;
  opacity: 1 !important;
}
.page-2026 .page-hero__title em { font-style: italic; font-weight: 500; color: var(--sol); }
.page-2026 .section__title {
  font-family: var(--font-display) !important;
  font-size: var(--fs-h2); font-weight: 600;
  line-height: var(--lh-tight); letter-spacing: var(--ls-display);
  color: var(--bosque-deep);
  margin: 0;
}
.page-2026 .section__title em { font-style: italic; font-weight: 500; color: var(--terracota); }

/* ============ §12 · RESPONSIVE + MOTION ============ */
@media (max-width: 992px) {
  .page-2026 .logos-grid { grid-template-columns: repeat(4, 1fr); }
  .page-2026 .team-grid { grid-template-columns: repeat(2, 1fr); }
  .page-2026 .values__grid { grid-template-columns: repeat(2, 1fr); }
  .page-2026 .values__grid--4 { grid-template-columns: repeat(2, 1fr); }
  .page-2026 .contact-grid { grid-template-columns: 1fr; }
  .page-2026 .editorial-grid { grid-template-columns: 1fr; }
  .page-2026 .cta-card-2026 { position: static; }
}
@media (max-width: 640px) {
  .page-2026 .page-hero { min-height: 380px; }
  .page-2026 .page-hero__cta .btn-2026 { width: 100%; justify-content: center; }
  .page-2026 .logos-grid { grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .page-2026 .logo-cell { padding: 10px; }
  .page-2026 .team-grid { grid-template-columns: 1fr; }
  .page-2026 .team-card__media { aspect-ratio: 4 / 3.4; }
  .page-2026 .values__grid,
  .page-2026 .values__grid--4 { grid-template-columns: 1fr; }
  .page-2026 .schedule li { font-size: .86rem; }
}
@media (prefers-reduced-motion: reduce) {
  .page-2026 .logo-cell, .page-2026 .logo-cell img,
  .page-2026 .team-card, .page-2026 .team-card__media img,
  .page-2026 .info-card, .page-2026 .value-card,
  .page-2026 .btn-2026 { transition: none; }
  .page-2026 .btn-2026:hover, .page-2026 .value-card:hover,
  .page-2026 .team-card:hover, .page-2026 .info-card:hover { transform: none; }
}

/* ============================================================================
   v3fix B5 (2026-07-22) — heroes de secciones.
   ============================================================================ */
/* Reveal legacy que dejaba el título/sub desplazado (translateY residual →
   colisión título-subtítulo en equipo/contacto). */
.page-2026 .page-hero__title { transform: none !important; }
.page-2026 .page-hero__sub { transform: none !important; }

/* Scrim reforzado: el subtítulo era ilegible sobre fotos claras (colegios). */
.page-2026 .page-hero__scrim {
  background:
    linear-gradient(185deg, rgba(39,39,37,0) 22%, rgba(34,64,31,.78) 100%),
    radial-gradient(120% 90% at 18% 88%, rgba(34,64,31,.6) 0%, rgba(34,64,31,0) 60%),
    linear-gradient(180deg, rgba(34,64,31,.42) 0%, rgba(34,64,31,0) 32%) !important;
}

/* ── v3fix B9 (2026-07-22): teléfono del webform en .page-2026 ─────────────
   El padding premium (16px !important) dejaba el placeholder debajo de la
   bandera de intl-tel-input (38px) → hueco estándar de la librería. */
.page-2026 .webform-submission-form .iti--allow-dropdown input[type="tel"] {
  padding-left: 52px !important;
}

/* v3fix B9b: el legend del composite webform_telephone salía con tipografía
   de fieldset por defecto (Inter 17.6px) — se alinea con los labels. */
.page-2026 .webform-submission-form .webform-type-webform-telephone > legend .fieldset-legend {
  font-family: 'Outfit', 'Helvetica Neue', Arial, sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  color: #22401F;
}
.page-2026 .webform-submission-form .webform-type-webform-telephone > legend {
  margin-bottom: 7px;
  padding: 0;
}
