/*
Theme Name: Hello Elementor XF Child
Theme URI: https://xenonfactory.es
Template: hello-elementor
Author: Elementor Team & XenonFactory.es
Author URI: https://xenonfactory.es
Description: Versión básica de theme compatible con Elementor y editado por XenonFactory.es
Tags: flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 2.3.1.1613047641
Updated: 2021-02-11 13:47:21

*/

/* XF BASICS */

.elementor-text-editor p,
.elementor-widget-container p {
	margin-bottom: 2em;
}

.elementor-text-editor p:last-child,
.elementor-widget-container p:last-child { 
	margin-bottom: 0px;
}

/* BOTÓN BARRA COOKIES */
#cn-notice-buttons .button {
	padding: 5px 10px;
	border: 1px solid #fff;
	color: #fff
}


/* INVERTIR TEXTO CORREO */
.ltrText {
	unicode-bidi: bidi-override;
	direction: rtl
}

html, label, input[type=checkbox] {
	cursor: default;
}


/* LISTAS RGPD */
ol {
	padding-inline-start: 15px
}

ul {
	margin-block-start: -0.5em;
	margin-block-end: 1em;
}

#cmplz-document {
	max-width: 100%;
	text-align: justify;
}

#rgpd * {
	font-size: 13px;
}

#rgpd p {
	margin-bottom: 10px;
}
/*  */


/* HOME */
#h1home {
    width: 0px;
    height: 0px;
    overflow: hidden;
}
/* HOME */


.blur {
	backdrop-filter: blur(10px);
    /*background-color: hsl(var(--background) / .6);*/
}

#breadcrumbs a {
	text-decoration: none
}

.elementor-menu-toggle {
	padding: 0 !important;
}


.green svg {
	color: #06ae31;
}

.white svg {
	color: #ffF;
}

	.white:hover svg {
		color: #BF9D12;
	}

.white2 svg {
	color: #ffF;
	background-color: #163ec3;
	border-radius: 10px;
	padding: 10px;
}

.icn-crd-hm .elementor-icon {
	padding: 10px;
	transition-duration: 300ms;
	border-radius: 10px;
}

.icn-crd-hm:hover .elementor-icon {
	background-color: #163EC3;
	

}

.icn-crd-hm:hover .elementor-icon-box-icon svg {
	color: #fff;
}


@media (max-width: 767px) {
	.elementor-alert-title {
		margin-bottom: 20px !important;
	}
}



/*  C A L C U L A D O R A  */

/* SEL NUM. USUARIOS */
.equipos-label {
	display: block;
	font-weight: bold;
}

.verial-stepper {
  width: 100% !important;
  display: inline-flex;
  align-items: center;
  justify-content: center; /* centrado horizontal */
  gap: 12px;
  margin: 8px 0 16px;
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  padding: 16px 32px;
}

.verial-stepper button {
  width: 40px;
  height: 40px;
  border: 1px solid #BF9D12 !important;
  border-radius: 10px;
  background: #fff !important;
  color: #BF9D12 !important;
  font-size: 32px;
  line-height: 1;
}

.verial-stepper button:hover {
  	border: 1px solid #BF9D12 !important;
	background: #BF9D12 !important;
	color: #fff !important;
}

.verial-stepper output {
  min-width: 28px;
  text-align: center;
  font-weight: 700;
  color: #09265b;
}

.hidden-number {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
/* SEL NUM. USUARIOS */


/* CHECKBOX PYME PRO */
.verial-version {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 16px 0;
  font-weight: 600;
  color: #09265b;
  cursor: pointer;
}

/* Ocultar checkbox nativo */
#ver-pro {
  position: absolute;
  opacity: 0;
}

/* Estilo switch */
#ver-pro + label {
  position: relative;
  padding-left: 60px;
  cursor: pointer;
}

#ver-pro + label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2px;
  width: 44px;
  height: 22px;
  background: #d1d1cf;
  border-radius: 50px;
  transition: background 0.3s ease;
}

#ver-pro + label::after {
  content: "";
  position: absolute;
  left: 2px;
  top: 4px;
  width: 18px;
  height: 18px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 1px 4px rgba(0,0,0,.2);
  transition: transform 0.3s ease;
}

/* Estado checked */
#ver-pro:checked + label::before {
  background: #BF9D12;
}

#ver-pro:checked + label::after {
  transform: translateX(22px);
}


.verial-version label {
  font-weight: 600;
  color: #09265b;
}

#lnk-vrsn {
	display: block;
	text-align: right;
	margin: -10px 0 20px 0;
	color: #BF9D12;
	text-decoration: none;
}

	#lnk-vrsn:hover {
		color: #444
	}
/* CHECKBOX PYME PRO */

.is-hidden { display: none !important; }

.res-card {
	width: 100%;
	background: #fff;
	border: 1px solid #e6e6e6;
	border-radius: 10px;
	padding: 16px 32px;
	margin-bottom: 30px;
	box-shadow:0 1px 8px rgba(0,0,0,.04)
}

.res-card h4,
.res-card h5 {
	margin:0 0 6px 0
}

.res-card h4 {
	color: #4b84eb;
}

.res-card h5 {
	color: #09265b;
}

#equipos {
	width: 100px;
	padding: 8px;
	margin-right: 8px
}

.txt-info {
	max-width: 100%;
	font-size: 80%;
	font-style: italic;
	margin: -20px 0 30px 0;
	line-height: 1.1em;
}

/*  C A L C U L A D O R A  */




/* MOSTRAR TEXTO AL AMPLIAR IMG EN CAJA DE LUZ */
.lb-img-txt {
  position: relative;
  display: block;            /* asegura que ocupa toda el área */
  z-index: 0;                /* nueva base de apilamiento */
  border-radius: inherit;    /* respeta los radios si los hay */
  overflow: hidden;          /* evita desbordes del pseudo-elemento */
}

/* Overlay con el texto centrado */
.lb-img-txt::after {
  content: "Ampliar imagen";
  position: absolute;
  inset: 0;                  /* top/right/bottom/left: 0 */
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 600;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0,0,0,.45); /* mejora legibilidad */
  background: rgba(0,0,0,0);              /* transparente por defecto */
  opacity: 0;                /* oculto por defecto */
  transition: opacity .18s ease, background .18s ease;
  pointer-events: none;      /* NO bloquea el clic del enlace */
  z-index: 2;                /* por encima de fondos/overlay nativos */
  border-radius: inherit;    /* sigue el radio del contenedor */
}

/* Mostrar overlay en hover (ratón) y accesible en teclado */
.lb-img-txt:hover::after,
.lb-img-txt:focus-visible::after {
  opacity: 1;
  background: rgba(0,0,0,.38);
}
/* MOSTRAR TEXTO AL AMPLIAR IMG EN CAJA DE LUZ */


/* SECTORES */

/* -- ARCHIVO */
h3 .ae-term-title {
	color: #163ec3;
}


#busca-sectores {
	width: 320px;
	max-width: 100%;
	background-color: #fff;
    border: solid 1px #d2e0fa;
	color: #1f2124;
	border-radius: 3px;
    padding: .5rem 1rem;
}
	#busca-sectores:hover,
	#busca-sectores:focus {
		border-color: #BF9D12;
	}
/* -- ARCHIVO */


/* -- FICHA */

/* Aseguramos que el contenedor sea relativo */
.gall-foto .e-gallery-item {
  position: relative;
  overflow: hidden;
}

/* Creamos el pseudo-elemento para el icono */
.gall-foto .e-gallery-item::after {
  content: "\f00e"; /* Unicode del icono de lupa (Font Awesome search) */
  font-family: "Font Awesome 5 Free"; /* asegúrate de tener FA5 cargado */
  font-weight: 600;
  font-size: 24px;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none; /* no bloquear clics en la imagen */
  z-index: 2;
}

/* Fondo semitransparente para reforzar el efecto */
.gall-foto .e-gallery-item::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.4);
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 1;
}

/* Mostrar en hover */
.gall-foto .e-gallery-item:hover::after,
.gall-foto .e-gallery-item:hover::before {
  opacity: 1;
}


.item-sector {
	text-decoration: none !important;
}


#vid-sector {
  position: relative;
  width: 100%;       /* ocupar todo el ancho disponible */
  max-width: 700px;  /* tamaño máximo razonable en desktop */
  margin: 0 auto;    /* centrar */
  aspect-ratio: 16 / 9; /* mantener proporción moderna */
}

/* El iframe del vídeo ocupa todo el contenedor */
#vid-sector iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}
/* -- FICHA */

.msgok {
	padding: 5px;
	background-color: #09265B;
	color: #fff;
}

/* SECTORES */

