/**
Theme Name: lexanitas theme
Author: blushbreak 
Author URI: https://blushbreak.com/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
txt Domain: lexanitas-theme
Template: astra
*/

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

:root{

    /*Tamños tipográficos*/
    --txt-legal: clamp(0.8rem, calc(0.31vw + 0.41rem), 0.84rem); 
    --txt-xs: clamp(1rem, calc(0.19vw + 0.94rem), 1.2rem);
    --txt-s: clamp(1.2rem, calc(0.37vw + 1.08rem), 1.6rem);
    --txt-m: clamp(1.44rem, calc(0.64vw + 1.23rem), 2.13rem);
    --txt-l: clamp(1.73rem, calc(1.03vw + 1.4rem), 2.84rem);
    --txt-xl: clamp(2.07rem, calc(1.59vw + 1.56rem), 3.79rem);
    --txt-2xl: clamp(2.49rem, calc(2.37vw + 1.73rem), 4.2rem);
    --txt-3xl: clamp(3.2rem, calc(3.47vw + 1.88rem), 5rem);

    /*Tamaños tipográficos*/

    /*Colores*/
        --negro: rgba(0,0,0,0.9) !important;
        --blanco: rgba(255,255,255,1);
        --gris-claro: #b1b1b1;
        --transparente: transparent;

}

*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;
   /* outline: 1px dotted #ea00ff;*/
}

html{
    overflow-x: hidden !important;
}



/*NORMALIZADORES*/

    h1, h2, h3, h4, h5, h6, p, span{
        font-family: Helvetica, Arial,  sans-serif !important;
    }

    h1{
        font-size: var(--txt-3xl) !important;
        line-height: 0.95 !important;
        font-weight: 500 !important;
        letter-spacing: 3px;
    }

    h2{
        font-size: var(--txt-2xl) !important;
        font-weight:400 !important;
        letter-spacing: 3px;
        line-height: 0.95 !important;
    }

    h3, .elementor-element-495749c .elementor-heading-title{
        font-size: var(--txt-l) !important;
        font-weight: 300 !important;
        line-height: 1.2 !important;
    }

    h4{
        font-size: var(--txt-m) !important;
        line-height: 1.2 !important;
        font-weight: 300 !important;
    }

    h5{
        font-size: var(--txt-s) !important;
        line-height: 0.95 !important;
        font-weight: 300 !important;
    }

    h6, p{
        font-size: var(--txt-xs) !important;
        font-weight: 300 !important;
        line-height: 1.2 !important;
        font-weight: 300 !important;

    }


    
    a{ 
        font-weight: 600;
        text-decoration: none !important;
        color: var(--negro);
        
    }

    a:hover{ 
        
        text-decoration: underline !important;
        font-weight: 600;
        color: var(--negro);
        
        
    }

    
    a.botones{
        text-decoration: none !important;
        display: inline-block;;
        text-align: center;
        min-width: 150px!important;
        min-height: 40px !important;
        border: 1px solid var(--negro);
        cursor: pointer;
        font-weight: 600;
        color: var(--negro);
        padding:  10px 0!important;
        
        
    }

    
    a.botones:hover {
        background-color:var(--negro);
        color: var(--blanco) !important;
        border: 1px solid var(--negro);
    }


    .elementor-widget-n-tabs .e-n-tab-title[aria-selected=false]{
        color: var(--negro) !important;
        background-color: var(--blanco)!important;
        border: 1px solid var(--negro)!important;
    }

	input[type="checkbox" i]:checked {
  		accent-color: black;
	}

/*CLASES UNIVERSALES*/

.txt-m{
	font-size: var(--text-m) !important;
}

    .caja-contacto{

        padding: 10px;
    }
    
    .elementor-button {
        display: inline-block;
        min-width: 150px;   
        min-height: 40px  !important;
        border: 1px solid var(--negro);
        background-color: var(--blanco)!important;
        color: var(--negro) !important;
 
    }

   

   .elementor-button:hover{
	   text-decoration:none !important;
        background-color: var(--negro)!important;
        color: var(--blanco) !important;
        
    }

  

    
    .legal{
        font-size: var(--txt-legal) !important;
        line-height: 1.2;
        margin: 0 !important;
    }



/*MODIFICACION DE TEMA PADRE [ASTRA]*/

    #ast-scroll-top{
        display: none !important; 
    }

/*MODIFICACION DE PLUGINS*/
	

	/*JOINCHAT*/
		.joinchat{
			z-index: 98 !important;
		}
		.joinchat__button{
			background:black;
		}

/*Cabecera*/
    header{
        width: 100%;
        background: var(--transparente);
        width: 100%;
        min-height: 80px;
        padding: 0;
        position: fixed !important;
        top: 0;
        left: 0;
        
    }
    

    .logoHeader{
        max-width: 250px !important;
    }

   

    header .elementor-icon svg {
        font-size: 25px;
        fill: var(--negro) !important;
        margin-top: 10px;
    }
    
    #menu1{
        z-index: 9999999;

    }


    #menu-lateral{
        /*flex*/

        background-color: var(--blanco);
        box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.10);
        position: absolute;
        top: 0;
        right: 0;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: flex-end;
        width: 80dvw;
        height: 100dvh;
        transition: transform 0.3s ease;
        transform: translateX(80dvw);
        padding: 30px 0;
        z-index: 99999999999;
        padding: 30px;

        
    }

    #menu-lateral a:hover{
        text-decoration: none !important;
    }

     #colisionador{
        /*flex*/
        width: 80dvw;
        
        position: fixed;
        top: 0;
        right: 20vw;
        height: 100dvh;
        z-index: 99999999999;
        display: none;
        
    }
   
    

    
    /*RECURSIVIDAD JS*/
        /*clase recursiva para cambiar el color de fondo del menu*/

		.move0{
        transform: translateX(0)!important ; 
        }

        .activarColisioner{
            display: block !important;

        }
    

    /*BOTONES*/

       header button{
            padding: 0;
            background: var(--transparente) !important;
            box-shadow: none;
            margin-top: 10px;
            
            
        }  

        header button a{
            width: 100%;
            height: 100%;
            font-weight: 900 !important;
        }

        #menu1{
            width: 100%;
        }

        .linea{
            background: var(--blanco)!important;
            width: 30px;
            height: 3px!important;
            margin: 5px 0;
       } 

       #linea1, #linea2{
         background: var(--negro)!important;
            
       }

       #burger2{
            transform: translateY(5px);
        }

        #navegacion{
            transform: translateX(20px);
        }

       #linea1{

			transform: rotate(45deg) !important;
           
      }
       #linea2{
            transform: rotate(-45deg) !important;
			position: relative !important;
			top: -8px !important;
           
      }

       .fa-solid{
        color: var(--blanco);
        font-size: 25px;
        margin-top: 10px;
       }
       
       
        #logoHeader2{
            display: none;
            transition: all 1s ease-out;       
         }

        header .elementor-button{
            background: var(--negro) !important;
            color: var(--blanco);
            border: 1px solid var(--negro);
            border-radius: 0;
        }
        
        header .elementor-button:hover{
            background: var(--transparente) !important;
            color: var(--negro);
            border: 1px solid var(--negro);
            border-radius: 0;
        }



/*SECCIONES*/
        /*formularios*/
        .infoForm .elementor-icon-list-text{
            font-size: var(--txt-m) !important;
            line-height: 1 !important;
        }

        ul.elementor-icon-list-items{
            width: max-content;
        }

        /*estilos comunes*/
        /*S1*/
            #s1{
                width: 100%;
                height: 100dvh;
               
            }

            #s1 h1,
            #s1 h2,
            #s1 h3,
            #s1 h4,
            #s1 h5,
            #s1 h6,
            #s1 p{
                font-weight: 900 !important;
            }           
        /*hacemos*/

			#hacemos #gridHacemos h3{
				font-size:var(--txt-s) !important;
			}

             .precio h6{
                font-size: var(--txt-l) !important;
                font-weight: 500 !important;
                line-height: 1.2 !important;
            }

			.listado{
                display: flex;
                justify-content: start;
            }

            .numListado{
                font-size: var(--txt-m);
                margin-right: 15px;
                vertical-align: start;
                padding: 0;
                transform: translateY(-6px);
                font-weight: 600;
            }

            
            #incluyeList .elementor-widget-container{
               
                height: fit-content;
                margin: 5px 0;
            }

        /*compliance*/

        /*incapaciades*/

        /*abonese*/

        /*formamos*/

        /*blogueamos*/

            .slick-arrow{
                display: none !important;
            }

        /*somos*/

        

        #somos h4{
            color: var(--negro);
            
        }

        #somos h5{
            /*font-size: var(--txt-m) !important;*/
            line-height: 0.95 !important;
            color: var(--negro);
            
        }
        #somos h3 .e-n-accordion-item-title-text{
            color: var(--negro) !important;
            
        }

        /*404*/

        #s404{
            width: 100%;
            height: 100dvh;
        }

        #s404 h2{
            font-size: var(--txt-xl) !important;
            font-weight: 400 !important;
        }

        #experiencia{
            color: var(--negro) !important;
        }

        
           
            
        


/*Pie de página*/

/*footer*/
   

    footer{
        width: 100%;
    
        
    }

    


    #mapaFooter{
        width: 100%;
        height: 500px;
       
    }

    #mapaFooter div{
        width: 100%;
        height: 100%;
       
    }

    #logoFooter{
        max-width: 80px;
        margin: 0 0 20px -20px;

    }
    

    footer #f1{

        
        width: 100%;
        min-height: 350px;
        padding: 0 30px !important;
        display: flex;
        justify-content: center;
        color: var(--negro) !important;
        font-size: 18px;
        letter-spacing: 1.5px;
        
    }


    footer #f3{

        font-size: var(--txt-legal) !important;
        color: var(--negro);
        width: 100%;
        min-height: 50px;
        padding: 10px 30px;
        
    }

    .infoExtra{
        
        width: 100%;
        /*background-color: #ececec;*/ /**/
        font-size: 10px !important;
        font-weight: 300;

    }

    .infoExtra a{
        text-decoration: none;
        font-size: 12px !important;

    }

    .infoExtra article{ 
        display: flex;  

    }

    .infoExtra p{
        margin: 0 5px 0 0 ;
        padding: 0;
        line-height: 20px;
    }


/*ESTILOS DEL BLOG*/
    /*CABECERA BLOG*/
        #menu-blog{
            width: 100%;

        }

        #menu-blog .volver a{
            color: var(--blanco)!important;
            fill: var(--blanco) !important;
           
        }

        #menu-blog .volver a:hover{
            color: var(--negro)!important;
            fill: var(--negro) !important;
            text-decoration: none !important;
            
         }

	/*ARCHIVE*/

        .titular-blog h2,
		.titular-blog h3,
		.titular-blog h4,
		.titular-blog h5,
		.titular-blog h6{
            font-weight: 300 !important;
            color: var(--negro);
        }
        
		.titular-blog h1{
            
			font-size: var(--txt-2xl) !important;
            color: var(--negro);
        }

        .titular-blog h2{
			font-size: var(--txt-l) !important;
            font-weight: 300 !important;
            color: var(--negro);
        }

        .titular-blog p{
            margin: 0 !important;
        }

        .titular-blog .elementor-button{
            width: fit-content !important;
            border-radius: 0;
        }


	/*SINGLE POST*/


	/*MODULO INDIVIDUAL*/
		.single-post{
           width: fit-content !important;
        }
        .single-post h3{
            font-size: var(--txt-m) !important;
        }

		.single-post h4{
            font-size: var(--txt-s) !important;
			margin:0 ;
        }
        .single-post p{
            font-size: var(--txt-xs) !important;
            line-height: 1.2;
            margin: 0;
        }

        .single-post .elementor-accordion .elementor-tab-title{
            background-color: transparent !important;
            
        }
        .single-post a {
            
        text-decoration: none  !important;
            color: var(--negro)!important; 
        }
        .single-post a:hover {
            
            text-decoration: underline  !important;
            
        }

		

/*POLITICA COOKIES*/
#cmplz-document{
    max-width: 1200px !important;
}

#politicaCookies h2{
	font-size: var(--txt-m) !important;
}
#politicaCookies h3{
	font-size: var(--txt-s) !important;
}
#politicaCookies h4{
	font-size: var(--txt-xs) !important;
}



/*--------------------- ORDENADOR --------------------*/

@media (min-width:1025px) {

    /*CLASES UNIVERSALES*/

    .caja-contacto{

        padding: 60px;
        
        
    }

    /*Cabecera*/
    header{
        width: 100%;
        padding: 0 60px;
    }

    header .fa-solid{
        cursor: pointer;
    }

    .logoHeader{
        max-width: 250px;
    }

    #menu-lateral{
        padding: 20px;
        width: 25dvw;
        transform: translateX(25dvw);
        
    }

    #menu-lateral a:hover{
        text-decoration: none;
        
    }

/*SECCIONES*/   
                /*formularios*/
                .infoForm .elementor-icon-list-text{
                    font-size: var(--txt-s) !important;
                    line-height: 1.5 !important;
                    
                }
                
                .elementor-error .elementor-field{  
                    border: 2px dotted var(--negro);
                }

                .elementor-message, .elementor-message-danger{
                    color: var(--negro) !important;
					text-transform: lowercase;
                }
        
        /*estilos comunes*/
        /*S1*/
        #s1{
            width: 100%;
            height: 100dvh;
        }
    /*hacemos*/

    /*compliance*/

    /*incapaciades*/

    /*abonese*/

    /*formamos*/
	
	
		.jet-listing-not-found {
			text-align: left;
			font-size: var(--txt-m) !important;
			font-weight: 400  !important;
            line-height: 1;
			color: var(--negro) !important;
			min-height: 200px;
		}
			
    /*blogueamos*/

        .slick-arrow{
            display: block !important;
        }

    /*somos*/

    	/*grid-ambitos de aplicación*/
			/*posicionar al centro*/
	#ambitoAP5{
				grid-column: 2 / 3;
    			grid-row: 3;
    			text-align: center;
		}
	
	#ambitoAP7{
				grid-column: 2 / 3;
    			grid-row: 2;
    			text-align: center;
		}
     /*404*/


    #s404 h2{
        max-width: 50%;
    }
	
	
    
/*PIE PAGINA*/

    footer #f1 a:hover{ 
        text-decoration: underline;
        font-weight: 600;
        color: var(--negro);
        
    }
   
    footer #f1{
        padding:  10px 20px !important;
        min-height: 150px;
        padding:  0 60px !important;
        display: flex;
        justify-content: space-between;
        align-items: center;

    }
    
    footer #f3{
        padding:  10px 60px !important;
    }

    footer #f3 a:hover{ 
        text-decoration: underline;
        font-weight: 600;
        color: var(--negro);
        
    }

        
    .infoExtra{

        width: 100%;
        height: 10px;
        justify-content: center;
        align-items: center; 

        /*flex*/
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .infoExtra article{
        /*flex*/
        display: flex;
    }
   
    footer .elementor-icon-list-items{
        display: flex;
        transform: translateX(30px);
        
    }
    footer .elementor-icon-list-item{
        margin-right: 30px !important;
        
    }
    


}