/* =========================================================================
   Enred Child — Sistema visual de Enred Computers (enred-computers.com), empresa de Grupo Logon.
   RECETA 02 (Consultoría/IT) con registro ENRED: azul intenso + oscuro + gris (frío, técnico,
   operativo). SIN acento cálido — el CTA es azul sólido (#004D9D); sobre el hero oscuro va blanco.
   Paleta (Fase 1 §7): primario #004D9D · oscuro #002B5C · gris #9C9AA0 · claro #F5F6F8 · blanco.
   El grueso del estilo va en atributos D5; este CSS añade el polish no cómodo en atributos.
   ========================================================================= */
:root {
  --enred-primary:   #004D9D;   /* azul intenso — marca, botones, iconos, acentos */
  --enred-secondary: #002B5C;   /* azul oscuro — hero overlay, footer, banda de cifras */
  --enred-cta:       #004D9D;   /* color de acción = azul intenso (NO ámbar) */
  --enred-cta-hover: #003a7a;
  --enred-neutro:    #9C9AA0;   /* gris — UI neutra, separadores, iconos atenuados */
  --enred-bg-soft:   #F5F6F8;
  --enred-bg:        #FFFFFF;
  --enred-text:      #002B5C;
  --enred-muted:     #5b6470;
}

/* --- Tipografía base --- */
body,
.et_pb_text,
.et_pb_module { font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
h1, h2, h3, h4, h5, h6 {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  color: var(--enred-secondary); line-height: 1.2; font-weight: 700;
}

/* =========================================================================
   HERO  (.enred-hero) — gradiente de marca + patrón sutil + centrado
   ========================================================================= */
.enred-hero {
  position: relative; overflow: hidden;
  background: linear-gradient(135deg, var(--enred-secondary) 0%, var(--enred-primary) 100%) !important;
}
.enred-hero::before {
  content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .12;
  background-image:
    radial-gradient(circle at 1px 1px, rgba(255,255,255,.55) 1px, transparent 0);
  background-size: 26px 26px;
}
.enred-hero > .et_pb_row, .enred-hero .et_pb_row { position: relative; z-index: 1; }
.enred-hero h1 { color: #fff !important; }
.enred-hero .et_pb_text, .enred-cta .et_pb_text { color: rgba(255,255,255,.9); }

/* =========================================================================
   FILA DE BOTONES (.enred-btn-row) — columna flex: misma línea base, mismo alto,
   alineación coherente en TODOS los breakpoints (en móvil hacen wrap centrados).
   Hacer flex el contenedor evita la guerra de especificidad con el CSS de Divi:
   los botones son flex items, no dependen de su `display` propio. (§3.1, §6)
   ========================================================================= */
.enred-btn-row.et_pb_column,
.enred-btn-row {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 16px;
  margin-top: 8px;
}
.enred-btn-row--center { justify-content: center; }
.enred-btn-row--left   { justify-content: flex-start; }
.enred-btn-row--right  { justify-content: flex-end; }
.enred-btn-row .et_pb_button_module_wrapper,
.enred-btn-row .et_pb_button_module {
  display: inline-flex !important;
  margin: 0 !important;
  float: none !important;
}
/* Padding/altura uniformes para TODOS los botones de la fila (mismo alto y línea base):
   especificidad (0,2,1) para ganar a las reglas por estilo y al padding por defecto de Divi. */
.enred-btn-row a.et_pb_button { margin: 0 !important; padding: 13px 30px !important; line-height: 1.5 !important; }

/* =========================================================================
   BOTONES — CTA ámbar / outline blanco / primario / outline oscuro
   (refuerzo robusto de los atributos D5; clases puestas en cada módulo botón)
   ========================================================================= */
.enred-btn-cta a.et_pb_button, .enred-btn-cta .et_pb_button, a.et_pb_button.enred-btn-cta {
  background-color: var(--enred-cta) !important; color: #fff !important;
  border: 2px solid var(--enred-cta) !important; padding: .8em 1.9em !important;
  border-radius: 6px !important; font-weight: 700 !important; transition: all .2s ease;
}
.enred-btn-cta a.et_pb_button:hover, .enred-btn-cta .et_pb_button:hover {
  background-color: var(--enred-cta-hover) !important; border-color: var(--enred-cta-hover) !important;
}
.enred-btn-primary a.et_pb_button, .enred-btn-primary .et_pb_button {
  background-color: var(--enred-primary) !important; color: #fff !important;
  border: 2px solid var(--enred-primary) !important; padding: .8em 1.9em !important;
  border-radius: 6px !important; font-weight: 600 !important; transition: all .2s ease;
}
.enred-btn-primary a.et_pb_button:hover, .enred-btn-primary .et_pb_button:hover {
  background-color: var(--enred-secondary) !important; border-color: var(--enred-secondary) !important;
}
.enred-btn-outline-white a.et_pb_button, .enred-btn-outline-white .et_pb_button {
  background-color: transparent !important; color: #fff !important;
  border: 2px solid #fff !important; padding: .8em 1.9em !important;
  border-radius: 6px !important; font-weight: 600 !important; transition: all .2s ease;
}
.enred-btn-outline-white a.et_pb_button:hover, .enred-btn-outline-white .et_pb_button:hover {
  background-color: #fff !important; color: var(--enred-secondary) !important;
}
.enred-btn-secondary a.et_pb_button, .enred-btn-secondary .et_pb_button {
  background-color: transparent !important; color: var(--enred-secondary) !important;
  border: 2px solid var(--enred-secondary) !important; padding: .8em 1.9em !important;
  border-radius: 6px !important; font-weight: 600 !important; transition: all .2s ease;
}
.enred-btn-secondary a.et_pb_button:hover, .enred-btn-secondary .et_pb_button:hover {
  background-color: var(--enred-secondary) !important; color: #fff !important;
}
.enred-btn-white a.et_pb_button, .enred-btn-white .et_pb_button {
  background-color: #fff !important; color: var(--enred-secondary) !important;
  border: 2px solid #fff !important; padding: .8em 1.9em !important;
  border-radius: 6px !important; font-weight: 700 !important; transition: all .2s ease;
}
.enred-btn-white a.et_pb_button:hover, .enred-btn-white .et_pb_button:hover {
  background-color: var(--enred-cta) !important; border-color: var(--enred-cta) !important; color: #fff !important;
}

/* =========================================================================
   TARJETAS DE SERVICIO  (.enred-card = blurb)  — fondo blanco + sombra + hover
   ========================================================================= */
.enred-card.et_pb_blurb, .enred-card {
  background: #fff !important; border: 1px solid #eef2f7;
  border-radius: 14px !important; padding: 34px 30px !important;
  box-shadow: 0 12px 34px rgba(30,54,86,.08) !important;
  height: 100%; transition: transform .22s ease, box-shadow .22s ease;
}
.enred-card:hover { transform: translateY(-6px); box-shadow: 0 20px 48px rgba(30,54,86,.14) !important; }
.enred-card .et_pb_module_header, .enred-card h4, .enred-card .et_pb_blurb_container h4 {
  color: var(--enred-secondary) !important; font-weight: 700; font-size: 1.25rem; margin-top: 6px;
}
.enred-card .et_pb_blurb_description, .enred-card p { color: var(--enred-muted) !important; line-height: 1.7; }
/* Icono lineal en círculo suave de marca */
.enred-card .et_pb_main_blurb_image { margin-bottom: 14px; }
.enred-card .et-pb-icon {
  color: var(--enred-primary) !important; font-size: 44px !important;
  width: 84px; height: 84px; line-height: 84px !important; text-align: center;
  background: rgba(93,141,198,.12); border-radius: 50%; display: inline-block;
}
/* Igualar alturas de tarjetas en la fila */
.et_pb_row .enred-card-col { display: flex; }
.enred-card-col > .et_pb_module, .enred-card-col .enred-card { width: 100%; }

/* =========================================================================
   BANDA DE VALOR / PILARES  (.enred-band, .enred-pillar) — sobre color oscuro
   ========================================================================= */
.enred-band { background: var(--enred-secondary) !important; }
/* Pilares de banda / barra de iconos: SIEMPRE transparentes (que no hereden la tarjeta blanca). */
.enred-band .enred-pillar, .enred-iconrow .enred-pillar { background: transparent !important; box-shadow: none !important; border: 0 !important; }
.enred-band h2, .enred-band h6, .enred-band .et_pb_module_header { color: #fff !important; }
.enred-pillar .et-pb-icon { color: #fff !important; font-size: 46px !important; }
.enred-pillar .et_pb_module_header, .enred-pillar h4 { color: #fff !important; font-weight: 700; }
.enred-pillar .et_pb_blurb_description, .enred-pillar p { color: rgba(255,255,255,.82) !important; }
/* §4.1: centrar el ICONO de los 4 pilares igual que el título y el texto (ya centrados).
   La regla previa no llevaba !important y perdía contra el CSS de Divi (alineación izq.). */
.enred-band .enred-pillar .et_pb_main_blurb_image,
.enred-pillar .et_pb_main_blurb_image {
  display: block !important; text-align: center !important;
  margin-left: auto !important; margin-right: auto !important;
}
.enred-band .enred-pillar .et_pb_main_blurb_image .et-pb-icon,
.enred-pillar .et_pb_main_blurb_image .et-pb-icon,
.enred-pillar .et_pb_main_blurb_image .et_pb_image_wrap {
  display: inline-block !important; float: none !important; margin: 0 auto !important;
}

/* =========================================================================
   CTA DE CIERRE (.enred-cta) — degradado de marca + texto blanco
   ========================================================================= */
.enred-cta {
  background: linear-gradient(120deg, var(--enred-primary) 0%, var(--enred-secondary) 100%) !important;
}
.enred-cta h2, .enred-cta .et_pb_module_header { color: #fff !important; }
.enred-cta .et_pb_text, .enred-cta p { color: rgba(255,255,255,.92) !important; }

/* =========================================================================
   BANDA DE LOGOS  (.enred-logos) — alineado y grayscale opcional
   ========================================================================= */
.enred-logos .et_pb_image, .enred-logos .enred-logo { text-align: center; }
.enred-logos img { max-height: 56px; width: auto; display: inline-block; }
.enred-logos--gray img { filter: grayscale(1); opacity: .65; transition: all .25s ease; }
.enred-logos--gray img:hover { filter: none; opacity: 1; }

/* =========================================================================
   DIVISOR DE ACENTO bajo los H2 (módulo divider centrado)
   ========================================================================= */
.et_pb_section .et_pb_divider { margin: 0 auto; }

/* =========================================================================
   THEME BUILDER — Header (.enred-header) y Footer (.enred-footer) globales
   ========================================================================= */
/* §1.1: STICKY + ESTRECHADO. El header del TB se fija arriba (position:sticky en .et-l--header) y se
   estrecha al hacer scroll (clase body.enred-scrolled que pone enred-header.js). Transición ~0.35s
   (la referencia usa 0.4s). Normal: padding 8px / logo 150px; sticky: padding 2px / logo 116px. */
/* position:FIXED (no sticky): un ancestro #page-container tiene overflow:auto/hidden, que rompe el
   position:sticky relativo al viewport. Fixed lo evita; se compensa con un spacer (padding-top en
   #page-container = alto normal del header) para que el contenido no quede oculto bajo el header. */
.et-l--header, .et-l--header.et-l { position: fixed !important; top: 0; left: 0; right: 0; width: 100%; z-index: 1000; }
/* Spacer del header fijo. Se usa el selector de Divi (.et-tb-has-header #page-container) + body para
   ganar especificidad/!important a la regla de Divi que lo pone a 0 (sobre todo en móvil). */
#page-container,
body.et-tb-has-header #page-container, body.et-tb #page-container { padding-top: 92px !important; }
.enred-header { background: #fff !important; box-shadow: 0 2px 14px rgba(30,54,86,.06);
  padding-top: 8px !important; padding-bottom: 8px !important;
  transition: padding .35s ease, box-shadow .35s ease; }
.enred-header .et_pb_menu__logo img, .enred-header .enred-logo img {
  max-width: 134px; height: auto; transition: max-width .35s ease; }
/* Barra estrecha: anular el padding de fila/columna/contenedor del menú que la engordaba. */
.enred-header .et_pb_row, .enred-header .et_pb_row .et_pb_column { padding-top: 0 !important; padding-bottom: 0 !important; }
.enred-header .et_pb_menu_inner_container { padding-top: 0 !important; padding-bottom: 0 !important; }
body.enred-scrolled .enred-header { padding-top: 2px !important; padding-bottom: 2px !important;
  box-shadow: 0 4px 18px rgba(30,54,86,.12); }
body.enred-scrolled .enred-header .et_pb_menu__logo img,
body.enred-scrolled .enred-header .enred-logo img { max-width: 104px; }

/* §1.3: tipografía del menú y submenús en MAYÚSCULAS + ligero letter-spacing (Inter respira mejor). */
.enred-header .et_pb_menu .et-menu a,
.enred-header nav a { color: var(--enred-secondary) !important; font-weight: 600;
  text-transform: uppercase; letter-spacing: .5px; }
.enred-header .et_pb_menu .et-menu a:hover, .enred-header nav a:hover { color: var(--enred-primary) !important; }

/* §2.3: alinear verticalmente logo/menú/CTA — flex SOLO en la FILA (no en columnas ni <li>). */
.enred-header .et_pb_row { display: flex !important; align-items: center !important; flex-wrap: nowrap; }
.enred-header .et_pb_row .et_pb_column { margin-bottom: 0 !important; align-self: center; }
.enred-header .et_pb_button_module_wrapper { margin: 0 !important; }

/* §1.2: logo a la IZQUIERDA, menú EMPUJADO A LA DERECHA (separado del logo). El contenedor real
   es .et_pb_menu_inner_container (flex); se lleva a ancho completo y se reparte con space-between. */
.enred-header .et_pb_menu { display: flex !important; align-items: center; width: 100% !important; }
.enred-header .et_pb_menu_inner_container { display: flex !important; align-items: center;
  width: 100% !important; justify-content: space-between; }
.enred-header .et_pb_menu__menu { margin-left: auto !important; }
.enred-header .et_pb_menu .et-menu { justify-content: flex-end; }
.enred-header .et_pb_menu .et-menu > li { margin: 0 7px !important; }
.enred-header .et_pb_menu .et-menu > li:last-child { margin-right: 0 !important; }
.enred-header .et_pb_menu .et-menu > li > a { font-size: 14px !important; white-space: nowrap; }

/* §1.4 + §2.2: submenú VERTICAL, 1 línea por opción, y FONDO CEÑIDO AL TEXTO (ancho = contenido,
   no un mínimo fijo más ancho). li en block + nowrap; el panel (position:absolute) usa max-content. */
/* width:max-content para que el FONDO ciña el texto (= ancho del ítem más largo). Los <li> son
   display:block: ya llenan el panel SIN width:100% (que rompía el cálculo de max-content → 240px). */
.enred-header .et_pb_menu .et-menu .sub-menu { min-width: max-content !important; width: max-content !important; max-width: none !important; }
.enred-header .et_pb_menu .et-menu .sub-menu li {
  display: block !important; float: none !important; width: auto !important; white-space: nowrap !important;
}
.enred-header .et_pb_menu .et-menu .sub-menu li a {
  font-size: 13px !important; white-space: nowrap !important; text-transform: uppercase; letter-spacing: .5px;
  width: auto !important; /* Divi fija el enlace a 200px → lo liberamos para que el panel ciña el texto */ }

.enred-footer { background: var(--enred-secondary) !important; }
.enred-footer, .enred-footer p, .enred-footer li, .enred-footer .et_pb_text { color: rgba(255,255,255,.78) !important; }
.enred-footer h1, .enred-footer h2, .enred-footer h3, .enred-footer h4 { color: #fff !important; letter-spacing: 1px; }
.enred-footer a { color: rgba(255,255,255,.8) !important; text-decoration: none; }
.enred-footer a:hover { color: var(--enred-cta) !important; }
.enred-footer ul.enred-foot-links { list-style: none; margin: 0; padding: 0; }
.enred-footer ul.enred-foot-links li { margin: 0 0 6px; }
/* Logo del footer en chip blanco para contraste sobre el azul oscuro */
.enred-footer .enred-logo img { background: #fff; padding: 10px 14px; border-radius: 8px; max-width: 190px; }

/* =========================================================================
   TARJETAS VARIANTE ICONO-IZQUIERDA (.enred-card--iconleft) — §4.2 / §4.3
   Layout horizontal: icono | (título + texto). Original (icono arriba) intacta.
   ========================================================================= */
/* §4 (ajustes2): ARREGLO DEL SOLAPE icono↔texto. El blurb en modo horizontal de Divi posiciona la
   imagen con position:absolute / float y deja el texto debajo (se monta). Forzamos un FLEX real con
   gap y anulamos absolute/float, dando separación suficiente y robusta en los 3 breakpoints. */
.enred-card--iconleft .et_pb_blurb_content {
  display: flex !important; align-items: flex-start; text-align: left;
  gap: 24px; flex-wrap: nowrap; max-width: 100%;
}
.enred-card--iconleft .et_pb_main_blurb_image {
  position: static !important; float: none !important; margin: 0 !important;
  flex: 0 0 auto; width: auto;
}
.enred-card--iconleft .et_pb_main_blurb_image .et-pb-icon,
.enred-card--iconleft .et_pb_main_blurb_image .et_pb_image_wrap {
  position: static !important; float: none !important; margin: 0 !important;
}
.enred-card--iconleft .et_pb_blurb_container {
  position: static !important; text-align: left !important; flex: 1 1 auto;
  padding: 0 !important; margin: 0 !important;
}
.enred-card--iconleft .et_pb_module_header,
.enred-card--iconleft .et_pb_blurb_description,
.enred-card--iconleft p { text-align: left !important; }
/* En móvil: si el blurb apila, mantener separación vertical correcta. */
@media (max-width: 767px) {
  .enred-card--iconleft .et_pb_blurb_content { gap: 16px; }
}

/* =========================================================================
   CARRUSEL DE PARTNERS (.enred-partners) — banda de logos con autoscroll (marquee) — §5
   No hay módulo carrusel nativo D5 limpio; banda CSS del hijo (aceptada por el encargo).
   La pista se duplica x2 en el contenido → translateX(-50%) hace bucle continuo.
   ========================================================================= */
.enred-partners .enred-partners-viewport { overflow: hidden !important; }
.enred-partners-track.et_pb_column,
.enred-partners-track {
  display: flex !important; flex-wrap: nowrap !important; align-items: center;
  width: max-content !important; max-width: none !important; gap: 56px;
  animation: enred-marquee 32s linear infinite;
}
.enred-partners:hover .enred-partners-track { animation-play-state: paused; }
.enred-partners-track .et_pb_image,
.enred-partners-track .et_pb_module { margin: 0 !important; flex: 0 0 auto; }
/* Logos heterogéneos (Webempresa es BLANCO, ESET negro, TeamSystem multicolor): se normalizan
   a SILUETA oscura uniforme sobre el fondo claro (grayscale + brightness 0), opacidad al hover.
   Así los tres se ven nítidos y a un tamaño/tono homogéneo, independientemente de su color. */
.enred-partners-track .enred-partner-logo,
.enred-partners-track img {
  height: 46px !important; width: auto !important; max-width: 190px; object-fit: contain;
  filter: grayscale(1) brightness(0); opacity: .5; transition: opacity .25s ease;
}
.enred-partners-track a:hover .enred-partner-logo,
.enred-partners-track .enred-partner-link:hover img { opacity: .85; }
@keyframes enred-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .enred-partners-track { animation: none; } }

/* =========================================================================
   FOOTER — Banda Kit Digital (.enred-kitdigital) + Subfooter (.enred-subfooter) — §7
   ========================================================================= */
.enred-kitdigital { text-align: center !important; }
.enred-kitdigital .et_pb_image,
.enred-kitdigital .enred-kitdigital-img { text-align: center !important; }
.enred-kitdigital img {
  display: inline-block !important; max-width: 560px; width: 100%; height: auto;
  background: #fff; padding: 10px 16px; border-radius: 8px;
}
.enred-kitdigital .et_pb_text, .enred-kitdigital p { text-align: center !important; margin-top: 12px; }

/* §2 (ajustes2): subfooter = BANDA FINA. Padding mínimo + fila compacta (anula el padding/margen
   de la sección y de la fila Divi) + tipografía algo menor. Banda claramente diferenciada arriba. */
.enred-subfooter { border-top: 1px solid rgba(255,255,255,.14);
  padding-top: 6px !important; padding-bottom: 6px !important; }
.enred-subfooter .et_pb_row { padding-top: 4px !important; padding-bottom: 4px !important;
  margin-top: 0 !important; margin-bottom: 0 !important; }
.enred-subfooter .et_pb_column { margin-bottom: 0 !important; padding: 0 !important; }
.enred-subfooter .enred-subfooter-col { display: flex; align-items: center; }
.enred-subfooter .enred-subfooter-col:last-child { justify-content: flex-end; }
.enred-subfooter .et_pb_text, .enred-subfooter p { margin: 0; font-size: 13px; line-height: 1.4; }
.enred-subfooter .enred-legal-links a { color: rgba(255,255,255,.7) !important; }
.enred-subfooter .enred-legal-links a:hover { color: var(--enred-cta) !important; }

/* =========================================================================
   RESPONSIVE — apilar columnas, hero legible, CTA visible (Fase 2 §8/§11)
   ========================================================================= */
@media (max-width: 980px) {
  .enred-hero { padding-top: 90px !important; padding-bottom: 70px !important; }
  .enred-hero h1 { font-size: 2.0rem !important; line-height: 1.25 !important; }
  .et_pb_column { margin-bottom: 24px; }
  .enred-card { padding: 28px 24px !important; }
  /* §3.1/§6: los botones (en .enred-btn-row) siguen en flex, centrados y con wrap. */
  .enred-btn-row { justify-content: center !important; }
  .enred-btn-row.enred-btn-row--left { justify-content: center !important; }
  /* §2.4: al colapsar el header a móvil (hamburguesa), OCULTAR el CTA "Solicitar diagnóstico". */
  .enred-header .et_pb_button_module_wrapper,
  .enred-header .et_pb_button { display: none !important; }
  /* Subfooter y banda Kit Digital: apilar y centrar de forma legible en móvil. */
  .enred-subfooter .et_pb_column { text-align: center !important; }
  .enred-subfooter .et_pb_text { text-align: center !important; }
  .enred-subfooter .enred-legal-links { text-align: center !important; }
  /* §1.2 (ajustes2): en móvil el menú colapsa a hamburguesa; no forzar alineación derecha del nav. */
  .enred-header .et_pb_menu__menu { margin-left: 0 !important; }
  /* Spacer del header fijo en móvil = alto del header móvil (evita que tape el inicio del hero). */
  #page-container,
  body.et-tb-has-header #page-container, body.et-tb #page-container { padding-top: 64px !important; }
}

/* =========================================================================
   FORMULARIOS DE CONTACTO (.enred-form, módulo nativo Divi) — §3 (ajustes2)
   Heredan la estética de marca: campos con borde/foco Enred y botón de envío ámbar (CTA).
   ========================================================================= */
.enred-form .input,
.enred-form textarea.input,
.enred-form select.input {
  background: #fff !important; border: 1px solid #d7dee7 !important; border-radius: 8px !important;
  padding: 12px 14px !important; color: var(--enred-text) !important; font-size: 15px !important;
  width: 100%; box-shadow: none !important;
}
.enred-form .input:focus {
  border-color: var(--enred-primary) !important; outline: none !important;
  box-shadow: 0 0 0 3px rgba(93,141,198,.15) !important;
}
.enred-form ::placeholder { color: #9aa7b8 !important; opacity: 1; }
.enred-form .et_pb_contact_field { padding: 0 10px 18px !important; }
.enred-form .et_pb_contact_field label,
.enred-form .et_pb_contact_field_options_title { color: var(--enred-text) !important; font-weight: 600; }
.enred-form .et_pb_contact_captcha_question { color: var(--enred-text) !important; font-weight: 600; }
/* Botón de envío con el estilo del CTA ámbar de marca (sin la flecha por defecto de Divi). */
.enred-form .et_pb_button.et_pb_contact_submit {
  background-color: var(--enred-cta) !important; color: #fff !important;
  border: 2px solid var(--enred-cta) !important; border-radius: 6px !important;
  padding: .8em 2em !important; font-weight: 700 !important; transition: all .2s ease;
}
.enred-form .et_pb_button.et_pb_contact_submit:hover {
  background-color: var(--enred-cta-hover) !important; border-color: var(--enred-cta-hover) !important;
}
.enred-form .et_pb_button.et_pb_contact_submit:after,
.enred-form .et_pb_button.et_pb_contact_submit:before { display: none !important; }

/* =========================================================================
   ENRED — componentes propios: barra de iconos rápidos, planes, grid de fabricantes
   ========================================================================= */

/* Barra de servicios rápidos (.enred-iconrow): fila de icono+rótulo compactos, sobre claro. */
.enred-iconrow .enred-pillar,
.enred-iconrow .et_pb_blurb { background: transparent !important; box-shadow: none !important; border: 0 !important; padding: 8px 6px !important; }
.enred-iconrow .et-pb-icon { color: var(--enred-primary) !important; font-size: 30px !important; }
.enred-iconrow .et_pb_main_blurb_image { text-align: center !important; }
.enred-iconrow .et_pb_module_header, .enred-iconrow h4 { color: var(--enred-text) !important; font-size: .95rem !important; font-weight: 600; margin-top: 6px; }

/* Planes de mantenimiento (.enred-plan = blurb tarjeta): Básico / Profesional / Empresa, SIN precios. */
.enred-plan.et_pb_blurb, .enred-plan {
  background: #fff !important; border: 1px solid #e3e7ee !important; border-radius: 14px !important;
  padding: 30px 28px !important; box-shadow: 0 10px 30px rgba(0,43,92,.06) !important; height: 100%;
  transition: transform .2s ease, box-shadow .2s ease;
}
.enred-plan:hover { transform: translateY(-4px); box-shadow: 0 18px 44px rgba(0,43,92,.12) !important; }
.enred-plan .et_pb_module_header, .enred-plan h4 { color: var(--enred-primary) !important; font-size: 1.35rem !important; font-weight: 700; }
.enred-plan .et_pb_blurb_description { color: var(--enred-muted) !important; }
.enred-plan .et_pb_blurb_description ul { margin: 12px 0 0; padding-left: 1.1em; }
.enred-plan .et_pb_blurb_description li { margin-bottom: 6px; }
/* Plan destacado (Profesional): borde azul + realce */
.enred-plan--featured.et_pb_blurb, .enred-plan--featured {
  border: 2px solid var(--enred-primary) !important; box-shadow: 0 18px 48px rgba(0,77,157,.16) !important;
}
.enred-plan--featured .et_pb_module_header:after { content: " · recomendado"; color: var(--enred-neutro); font-size: .7em; font-weight: 600; }

/* Grid de marcas/fabricantes (placeholder hasta validar acuerdos): cajas neutras homogéneas. */
.enred-fab .et_pb_blurb, .enred-fab .enred-fab-item {
  background: var(--enred-bg-soft) !important; border: 1px dashed #cfd5de !important; border-radius: 10px !important;
  min-height: 64px; display: flex; align-items: center; justify-content: center;
  color: var(--enred-neutro) !important; font-weight: 600; text-align: center; padding: 16px !important;
}

/* Separador de acento Enred (azul) */
.et_pb_section .et_pb_divider { border-color: var(--enred-primary); }
