/* --- inline --- */
      .e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload),
				.e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload) * {
					background-image: none !important;
				}
				@media screen and (max-height: 1024px) {
					.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload),
					.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload) * {
						background-image: none !important;
					}
				}
				@media screen and (max-height: 640px) {
					.e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload),
					.e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload) * {
						background-image: none !important;
					}
				}
    

/* --- hfe-skip-link-style --- */
      .hfe-skip-link{position:absolute;left:-9999px;top:0;z-index:100000;padding:0.75em 1.5em;background:#fff;color:#0073aa;font-size:14px;text-decoration:underline;border-radius:0 0 3px 0;}
		.hfe-skip-link:focus{left:0;outline:2px solid #0073aa;outline-offset:-2px;}
    

/* --- inline --- */
          .elementor-60 .elementor-element.elementor-element-6bb6f96{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}
        

/* --- inline --- */
          .elementor-290 .elementor-element.elementor-element-5e51681{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}
        

/* --- inline --- */
            .elementor-46 .elementor-element.elementor-element-fa6b53b{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-46 .elementor-element.elementor-element-40b8701{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-46 .elementor-element.elementor-element-ae93211 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}
          


/* --- Negritas legibles ---
   css/theme/wordpress-unit-test.css pone strong, dt y th en #e7e7e7 (pensado para fondos oscuros):
   sobre fondo claro o lima no se leían (contraste 1,2:1). Heredan el color del texto que las rodea,
   así se ven bien en fondo claro y siguen claras en fondo oscuro. Las reglas con color propio no cambian. */
strong,
dt,
th {
  color: inherit;
}

/* --- Tarjetas de servicios (inicio y servicios.html): números visibles y borde neón ---
   El tema dejaba el número al 10 % de opacidad y separaba las tarjetas con una línea gris. */
.wpr-services-area .section-bottom-content {
  gap: 18px;
  padding: 18px;
  border: 0;
}
.wpr-services-area .section-bottom-content .service-wrapper {
  flex: 1 1 0;
  border: 1.5px solid #98ff03;
  border-radius: 20px;
  box-shadow: 0 0 0 1px rgba(152, 255, 3, 0.18), 0 0 18px rgba(152, 255, 3, 0.35), inset 0 0 14px rgba(152, 255, 3, 0.10);
  transition: box-shadow 0.35s ease, transform 0.35s ease;
}
.wpr-services-area .section-bottom-content .service-wrapper:hover {
  box-shadow: 0 0 0 1px rgba(152, 255, 3, 0.45), 0 0 34px rgba(152, 255, 3, 0.6), inset 0 0 22px rgba(152, 255, 3, 0.18);
  transform: translateY(-4px);
}
.wpr-services-area .section-bottom-content .service-wrapper .content .mid h2 {
  color: #111114;
}
.wpr-services-area .section-bottom-content .service-wrapper:hover .content .mid h2 {
  color: #98ff03;
  text-shadow: 0 0 22px rgba(152, 255, 3, 0.55);
}
@media (max-width: 1200px) {
  .wpr-services-area .section-bottom-content .service-wrapper { flex: 0 0 calc(50% - 9px); }
  .wpr-services-area .section-bottom-content .service-wrapper:nth-child(3),
  .wpr-services-area .section-bottom-content .service-wrapper:nth-child(4) { border-top: 1.5px solid #98ff03; }
}
@media (max-width: 576px) {
  .wpr-services-area .section-bottom-content { gap: 14px; padding: 14px; }
  .wpr-services-area .section-bottom-content .service-wrapper { flex: 0 0 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .wpr-services-area .section-bottom-content .service-wrapper:hover { transform: none; }
}

/* --- Submenú del menú principal: más ancho y con iconos ---
   El tema lo limitaba a 150 px y el texto se veía comprimido. */
.main-nav-area ul li.has-dropdown .sub-menu {
  min-width: 320px;
  padding: 10px !important;
  border-radius: 14px;
  box-shadow: 0 18px 40px -12px rgba(0, 0, 0, 0.18), 0 0 0 1px rgba(3, 7, 18, 0.06);
}
.main-nav-area ul li.has-dropdown .sub-menu li > a {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  white-space: nowrap;
  transition: background-color 0.2s ease;
}
.main-nav-area ul li.has-dropdown .sub-menu li > a:hover,
.main-nav-area ul li.has-dropdown .sub-menu li.active > a { background-color: #f3f4f6; }
.sub-icono {
  display: inline-grid;
  place-items: center;
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  background: rgba(152, 255, 3, 0.16);
  color: #111114;
  transition: background-color 0.2s ease;
}
.sub-icono svg { width: 18px; height: 18px; }
.main-nav-area ul li.has-dropdown .sub-menu li > a:hover .sub-icono { background: #98ff03; }
/* Menú móvil: mismos iconos, alineados con el texto */
.side-bar .sub-menu { display: flex !important; align-items: center; gap: 10px; }
.side-bar .sub-menu .sub-icono { width: 30px; height: 30px; }

/* Formulario de contacto del pie (js/contacto.js) */
.contacto-trampa { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.contacto-consentimiento { position: relative; margin: 4px 0 24px; }
.contacto-consentimiento input ~ label { font-size: 14px; line-height: 1.5; color: rgba(255, 255, 255, 0.75); }
.contacto-consentimiento input ~ label::before { top: 3px; }
.contacto-consentimiento input ~ label::after { top: 7px; }
.contacto-consentimiento input:checked ~ label::before { background-color: #98ff03; }
.contacto-consentimiento input:checked ~ label::after { border-color: #111114; }
.contacto-consentimiento input:focus-visible ~ label::before { outline: 2px solid #98ff03; outline-offset: 2px; }
.contacto-consentimiento a { color: inherit; text-decoration: underline; }
#form-contacto .invalido { border-bottom: 2px solid #ff6b6b !important; }
.contacto-estado { min-height: 1.5em; margin: 16px 0 0; }
.contacto-estado.error { color: #ff6b6b; }
.contacto-exito { font-size: 18px; line-height: 1.5; }
