@font-face {
	font-family: "Montserrat-Regular";
	src: url("/scosmart/javax.faces.resource/fonts/Montserrat/Montserrat-Regular.ttf.jsf");
}
@font-face {
	font-family: "Montserrat-SemiBold";
	src: url("/scosmart/javax.faces.resource/fonts/Montserrat/Montserrat-SemiBold.ttf.jsf");
}
@font-face {
	font-family: "OpenSans-Regular";
	src: url("/scosmart/javax.faces.resource/fonts/OpenSans/OpenSans-Regular.ttf.jsf");
}
@font-face {
	font-family: "OpenSans-Semibold";
	src: url("/scosmart/javax.faces.resource/fonts/OpenSans/OpenSans-Semibold.ttf.jsf");
}
@font-face {
	font-family: "OpenSans-Bold";
	src: url("/scosmart/javax.faces.resource/fonts/OpenSans/OpenSans-Bold.ttf.jsf");
}

body { /*modificado*/
   margin-top: 0 !important;
   padding-top: 0px !important;
   padding-left: 1% !important;
   padding-right: 1% !important;
   padding-bottom: 1% !important;
   border: none !important; 
   box-sizing: border-box;
   
}
tbody {
   margin-top: 0 !important;
   padding-top: 0px !important;
   padding-left: 0px !important;
   padding-right: 0px !important;
   padding-bottom: 0px !important;
   border: none !important;
}
.ui-panelgrid {
    width: 100% !important;
}

.borde-suave {
  padding: 0px;
  background: lightgray;
  box-shadow:  
    inset 2px 0 3px -3px rgba(72,166,250, 0.2),   /* izquierda */
    inset -2px 0 3px -3px rgba(72,166,250, 0.2);  /* derecha */
}
.borde-gradiente {
  position: relative;
  background: lightgray;
  padding: 0px;
  z-index: 0;
  overflow: hidden;
}
.borde-gradiente::before,
.borde-gradiente::after {
  content: '';
  position: absolute;
  top: 0;
  width: 4px;
  height: 100%;
  z-index: 1;
  pointer-events: none;
}

.borde-gradiente::before {
  left: 0;
  background: linear-gradient(to right, rgba(72,166,250,0.2), transparent);
}

.borde-gradiente::after {
  right: 0;
  background: linear-gradient(to left, rgba(72,166,250,0.2), transparent);
}

td {
   margin-top: 0 !important;
   padding-top: 0px !important;
   padding-left: 0px !important;
   padding-right: 0px !important;
   padding-bottom: 0px !important;
   border: none !important;	
}

.body_portal {
    background-color: rgb(251, 251, 251);
	background-position-x: 0%;
	background-position-y: 0%;
	background-repeat: repeat;
	background-attachment: scroll;
	background-image: url("/resources/images/silverline.png");
	background-size: auto;    
}
.container_home {
	font-family: "OpenSans-Regular";
    width: 100%;
    border-top: 0;
    border: none !important;
}
/* .container_top .tbody { */
.container_top {
    border: none !important;
    padding: 0px none !important;
    border-collapse: collapse;
    background-color: #0286BA;  
}
.container_content {
	/*width: 1263px;	
	height: 620px;*/
	width: 100%;
	height: 100%;	
    border: none !important;
    /*border: 0px;*/
    border-color: #0286BA;
    background-color: #f2f3f7;
    /*border-top-color: #bcc6ed; */
    
    overflow-y: auto;           /* Activa el scroll vertical */
    overflow-x: hidden;         /* Evita scroll horizontal innecesario */   
}
.container_footer {
	height: 100%;
	width: 100%;	
	color: #ffffff;
    background-color: #0286BA;
	font-family: "OpenSans-Regular";
	font-size: 12px;	
	text-align:center; 
	border-top: none !important;	
}
.pnlgrid_zero td {
   border-style: none;
   margin-top: 0 !important;
   padding-top: 0px !important;
   padding-left: 0px !important;
   padding-right: 0px !important;
   padding-bottom: 0px !important;
   border: none !important;	
   background-color: #0286BA;
}
	
.menubar { /*modificado*/
	text-align:center;
	padding-top: 0px !important;
	padding-bottom: 0px !important;
	padding-left: 0px !important;
	border: none !important;
	border-collapse: collapse;
	background-color: #0286BA;
}
.opcion_menu_bar {
	width: 135px;
    height:20px;	
    border-collapse: collapse;    
}
.opcion_menu_bar2 { /*modificado*/
	width: 100%;
    height:auto;	
    border-collapse: collapse;    
}
.menubar_services {
    background-image: url('/images/background_menu.png');
	text-align:center;
	width: 20%;
}
.forms_main { /*modificado*/
	background-color:  #f2f3f7;
	border: none !important;
	border-left-color: #0286BA;
	border-right-color: #0286BA;
	border-bottom-color: 0286BA;
	border-top-color: 0286BA;
}

.forms_body {
	/*padding-top: 12px;
	padding-left: 25px;
	padding-right: 20px;
	padding-bottom: 10px;*/
	padding-top: 2%;
	padding-left: 2%;
	padding-right: 2%;
	padding-bottom: 2%;	
	/* background-image: url("../resources/images/fondo.jpg"); */
	background-color:  #f2f3f7;
	/*width: 1259px;*/
	width: 100%;
	border: 1px;
	border-left-color: #0286BA;
	border-right-color: #0286BA;
	border-bottom-color: 0286BA;
	border-top-color: 0286BA;
	
overflow-y: auto;           /* Activa el scroll vertical */
    overflow-x: hidden;         /* Evita scroll horizontal innecesario */	
}
.forms_body2 {
	padding-top: 12px;
	padding-left: 25px;
	padding-right: 20px;
	padding-bottom: 10px;
	/* background-image: url("../resources/images/fondo.jpg"); */
	background-color:  #f2f3f7;
	width: 100%;
	border: 1px;
	border-left-color: #0286BA;
	border-right-color: #0286BA;
	border-bottom-color: 0286BA;
	border-top-color: 0286BA;
}
.forms_body3 .ui-carousel-prev .ui-carousel-next {
	padding-top: 12px;
	padding-left: 25px;
	padding-right: 20px;
	padding-bottom: 10px;
	/* background-image: url("../resources/images/fondo.jpg"); */
	background-color:  #f2f3f7;
	width: 1259px; /*100%;*/
	border: 1px;
	border-left-color: #0286BA;
	border-right-color: #0286BA;
	border-bottom-color: 0286BA;
	border-top-color: 0286BA;
}
.forms_serv_text {
  with: 80%;
}
.form_serv_img {
  width: 20%;	
}
.forms_data {
   line-height: 1.8;	
   width: 100%;
}
.titleform {
	font-family: "Montserrat-SemiBold";
	font-weight: bold;
	font-size: 22px;
	color: #113a4f;
	padding-top: 15px;
	padding-bottom: 5px;	
}
.subtitleform {
	font-family: "Montserrat-SemiBold";
	font-weight: bold;
	font-size: 18px;
	color: #0286BA;
	
}
.detailsform {
	font-family: "Montserrat-SemiBold";
	font-weight: bold;
	font-size: 16px;
	color: #0286BA;
}
.layers_bullet {
    font-family: "Montserrat-Regular";
	font-size: 14px;
	line-height: 1.6;
    content: "\2022"; /* Código Unicode para el bullet */
    color: blue;       /* Color del bullet */
    font-weight: bold;
    display: inline-block; 
    width: 1em;       /* Espacio entre el punto y el texto */	
}
.layers_text {
    font-family: "Montserrat-Regular";
    font-size: 14px;
    width: 100%;
    line-height: 1.6;
    word-wrap: break-word;
}
.col70 {
    width: 80% !important;
}
.col30 {
    width: 20% !important;
    text-align: center;
}
.layers_text_forms {
    font-family: "Montserrat-Regular";
    font-size: 11px;
    width: 100%;
    color: #332B2B;
    line-height: 1.6;
    word-wrap: break-word;	
}
.layers_text_alias {
    font-family: "Montserrat-Regular";
    font-size: 14px;
    line-height: 1.6;
}
.layers_text_privacidad {
    font-family: "Montserrat-Regular";
	font-size: 12px;
	color: gray;
}
.layers_text_paddingleft9 {
    font-family: "Montserrat-Regular";
	font-size: 14px;
	padding-left:12px;
	line-height: 1.6;
}
.layers_text_center {
    font-family: "Montserrat-Regular";
	font-size: 14px;
	text-align: center;
}
.layers_footer {
	font-family: "Montserrat-Regular";
	text-decoration: none;
	font-size: 10px;
	line-height: 1.2;	
	text-align:center;
	margin-left: 12px;
}
.layers_footer_title {
	font-family: "Montserrat-Regular";
	font-size: 18px;
	padding-bottom: 5px;
	font-weight: bold;
	line-height: 1.2;	
	text-align:center;
}
.image_circle {
	/*width: 115px;
	width: 115px;*/
	width: 50%;
	height: auto;	
    border-radius: 50%;
    border: 1px solid #f2f3f7 	
}
.image_circle2 {
	/*width: 115px;
	width: 115px;*/
	width: 30%;
	height: auto;	
    border-radius: 50%;
    border: 1px solid #f2f3f7 	
}
.image_circle3 {
	/*width: 115px;
	width: 115px;*/
	width: 35%;
	height: auto;	
    border-radius: 50%;
    border: 1px solid #f2f3f7 	
}
.image_geolocal {
	width: 60px;
	width: 60px;
    /* border-radius: 50%;
    border: 1px solid #f2f3f7 */
}
.logo_principal {
	width: 100%;
	max-width: 100%;
	height:auto;
    border: none;
    display: block;    
    background-color: #0286BA;
}
.image_redes {
	width: 39px;
    height:42px;
    border: none;
    background-color: #0286BA;
}
.image_home { /*modificado*/
	/*width: 1263px;	
    height:620px;*/
	width: 100%;
	max-width: 100%;
	display: block;
    height:auto;    
    border: none;
    background-color: #0286BA;	
}
.image_service_circle {
	width: 225px;
	width: 225px;
    border-radius: 50%;
    border: 1px solid #f2f3f7 
}
.image_planes_circle {
	width: 550px;
	width: 660px;
    border-radius: 3%;
    border: 1px solid #f2f3f7;
    display:block;
    margin: 0 auto;
}
.image_desaweb_circle {
	width: 750px;
	width: 860px;
    border-radius: 3%;
    border: 1px solid #f2f3f7;
    display:block;
    margin: 0 auto;
}
.head_separator {
	/*padding-top: 15px;
	padding-bottom: 5px;*/
	padding-top: 2%;
	padding-bottom: 2%;	
}
.separator_subtitle {
	padding-top: 5px;
}
.footer_separator1 {
    width: 550px;
    text-align: left;
}
.footer_separator2 {
    width: 625px;	
}
.col_portafolio {
    background-image: url('/images/background_menu.png');
	text-align:center;
	width: 230px;
}
/**/
.boton_contacto {
  font-family: "Montserrat-Regular";
  font-size:12px; 
  color: #FFFFFF;
  width:365px;
  height:35px;
  /* background-color: #dfe6f1; */
  background-color: #0286BA;
  margin: 5px;
  padding:10px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  line-height:9px;
  float:left;
  box-shadow: none;
  border-radius: 50px;
  border: 2px solid white;  
  font-weight: bold;
  text-align: center;
}
.boton_contacto:hover {
  font-family: "Montserrat-Regular";
  font-size:12px; 
  color: #FFFFFF;
  width:365px;
  height:35px;
  background-color: #12095C;
  margin: 5px;
  padding:10px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  line-height:9px;
  float:left;
  box-shadow: none;
  border-radius: 50px;
  border: 2px solid white;  
  font-weight: bold;
  text-align: center;
}
/*
.boton_contacto:hover {
  opacity: 0.50;
  -moz-opacity: .50;
  filter:alpha (opacity=50);
}*/
.boton_contacto a {
  text-decoration:none;
  padding:5px 5px 5px 0;
}
.boton_envios {
  font-family: "Montserrat-Regular";
  font-size:12px; 
  color: #FFFFFF;
  width:325px;
  height:35px;
  /* background-color: #dfe6f1; */
  background-color: #0286BA;
  margin: 5px;
  padding:10px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  line-height:9px;
  float:left;
  box-shadow: none;
  border-radius: 50px;
  border: 2px solid white;  
  font-weight: bold;
  text-align: center;
}
.boton_envios:hover {
  font-family: "Montserrat-Regular";
  font-size:12px; 
  color: #FFFFFF;
  width:325px;
  height:35px;
  background-color: #12095C;
  margin: 5px;
  padding:10px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  line-height:9px;
  float:left;
  box-shadow: none;
  border-radius: 50px;
  border: 2px solid white;  
  font-weight: bold;
  text-align: center;
  transition: left 0.4s ease-in-out;
  z-index: 0;  
}
/*.boton_envios:hover {
  opacity: 0.50;
  -moz-opacity: .50;
  filter:alpha (opacity=50);
}*/
.boton_envios a {
  text-decoration:none;
  padding:5px 5px 5px 0;
}
.boton_accesos {
  font-family: "Montserrat-Regular";
  font-size:9px; 
  color: #FFFFFF;
  width:175px;
  height:25px;
  background-color: #0286BA;
  margin: 5px;
  padding:10px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  line-height:4px;
  float:left;
  box-shadow: none;
  border-radius: 50px;
  border: 2px solid white;  
  text-align: center;
}
.boton_accesos:hover {
  opacity: 0.50;
  -moz-opacity: .50;
  filter:alpha (opacity=50);
}
.boton_accesos a {
  text-decoration:none;
  padding:5px 5px 5px 0;
}

.textEditor {
  font-family: "Montserrat-Regular";
  font-size:12px; 
  width:365px;
  /* height:20px; */
  background-color: #f4f7f9;
  padding:7px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  line-height:9px;
  float:left;
  box-shadow: none;
  border: 1px solid black;  
}
.textAreaEditor {
  font-family: "Montserrat-Regular";
  font-size:12px; 
  width:365px;
  height:85px;
  background-color: #f4f7f9;
  padding:7px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  line-height:9px;
  float:left;
  box-shadow: none;
  border: 1px solid black;  
}
.messagesErrors {
  font-family: "Montserrat-Regular";
  font-size: 12px;
  line-height: 1.6;
  color: #0286BA;
}
.col_contactospecialist {
  width:565px;	
}
.col_contactospecialistweb {
  width:665px;	
}
#animatedButton {
  position: relative;
  padding: 12px 24px;
  font-size: 16px;
  color: white;
  background-color: #333;
  border: none;
  overflow: hidden;
  cursor: pointer;
  transition: color 0.4s ease-in-out;
}

#animatedButton::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background-color: #00aaff;
  transition: left 0.4s ease-in-out;
  z-index: 0;
}

.miSelectRedondeado {
    border-radius: 10px !important;
    width: 225px; 
    overflow: hidden; /* opcional, para mantener el borde limpio */
}

/* El input visible del selectOneMenu */
.miSelectRedondeado .ui-selectonemenu-label {
    border-radius: 10px !important;
}

/* El botón del menú (flecha) */
.miSelectRedondeado .ui-selectonemenu-trigger {
    border-radius: 0 10px 10px 0 !important;
}

#animatedButton:hover::before {
  left: 0;
}

#animatedButton:hover {
  color: white;
}

#animatedButton {
  z-index: 1;
}

#animatedButton::before {
  z-index: 0;
}

/*
* Testimonios
*/
.sin-encabezado .ui-carousel-header  {
  display: none !important;
  padding: 10px;
}
.testimonio-card {
  background: #111;
        border: 1px solid #eaeaea;
        border-radius: 6px;
        
        /* 1. Reducimos el padding vertical (arriba/abajo) de 20px a 10px */
        padding: 5px 15px; 
        
        /* 2. Reducimos o eliminamos el min-height */
        min-height: 160px; 
        height: 160px;
        /* 3. Aseguramos que el contenido use menos espacio */
        display: flex;
        color: white;
        flex-direction: column;
        justify-content: center;
        box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.stars {
  color: #FFD700;
  margin-bottom: 0px;
}
.mensaje {
    font-size: 12px;
    line-height: 1.4;
    margin-bottom: 10px;
}
.cliente {
    display: flex;
    text-align: left;
    align-items: left;
    padding-left: 5px;
    gap: 10px;
}
.avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
}


.layers_footer_title {
  font-size: 14px;
  font-weight: bold;
  display: block;
  margin-bottom: 5px;
  color: #ffffff; /* Cambia al color de tu marca */
}
.link_foother_final {
  color:#ffffff;
  text-decoration:none;
  font-size:12px;
  opacity:0.8;	
}    


.logo-cliente {
    /* Filtro profesional: blanco y negro + transparencia */
    filter: grayscale(100%);
    opacity: 0.6;
    transition: all 0.4s ease;
    
    /* Uniformidad de tamaño */
    max-width: 140px; 
    max-height: 80px;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
}

.logo-cliente:hover {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.05); /* Un ligero zoom al pasar el mouse */
}


/* Asegura que la tabla ocupe todo el ancho */
.footer-grid {
    width: 100%;
    margin-bottom: 20px;
    vertical-align: top;
}

/* Alineación de las columnas */
.colsuno {
  /*padding-left: 25px;*/
  width: 20%;
}
.coldos {
  /*margin-left: 5%;*/	
  width: 20%;
}
.coltres {
  width: 30%;	
}
.col_footer {
  vertical-align: top;
  text-align: center;
  display: flex !important; /* Fuerza el comportamiento flex */
  flex-wrap: nowrap; /* Evita que el último icono baje */  
}
.col_footer2 {
  padding-left:30%;
  vertical-align: top;
  text-align: center;
  display: flex !important; /* Fuerza el comportamiento flex */
  flex-wrap: nowrap; /* Evita que el último icono baje */  
}

/* Contenedor de iconos en el footer */
.social-links-container {
    display: flex !important; /* Fuerza el comportamiento flex */
    flex-direction: row;
    flex-wrap: nowrap; /* Evita que el último icono baje */
    gap: 15px;
    align-items: center;
    padding-top: 10px;
}
.social-icon-item {
    width: 24px;
    height: 24px;
    display: block;
}
/* Tamaño de los iconos */
.social-icon-item svg {
    width: 24px;
    height: 24px;
}
/* Color inicial: Blanco */
.social-icon-item svg path {
    fill: #ffffff !important;
    transition: fill 0.3s ease;
}
/* Color al pasar el mouse: Gris */
.social-icon-item:hover svg path {
    fill: #b3b3b3 !important;
}
.footer-bottom {
    width: 100%;            /* Ocupa todo el ancho */
    text-align: center;     /* Centra el texto */
    padding: 20px 0;        /* Espacio arriba y abajo */
    display: block;         /* Asegura que se comporte como bloque */
    clear: both;            /* Evita interferencias de elementos flotantes previos */
    background-color: #0286BA; /* Manteniendo tu color corporativo */
    color: #ffffff;
    font-size: 12px;
}

.ui-accordion {
    margin-top: 0 !important;
    padding-top: 0 !important;
}