/* Estilos generales */

	/* Fuentes */
		@font-face {
		    font-family: 'BodoniModa';
		    src: url('../fonts/LibreBodoni.ttf') format('truetype');
		    font-weight: normal; 
		    font-style: normal; 
		}

		@font-face {
		    font-family: 'Lato';
		    src: url('../fonts/JosefinSans.ttf') format('truetype');
		    font-weight: normal; 
		    font-style: normal; 
		}

		@font-face {
		    font-family: 'OpenSans';
		    src: url('../fonts/OpenSans.ttf') format('truetype');
		    font-weight: normal; 
		    font-style: normal; 
		}


		@font-face {
		    font-family: 'Montserrat';
		    src: url('../fonts/Montserrat.ttf') format('truetype');
		    font-weight: normal; 
		    font-style: normal; 
		}




		



	/*Correcciones a la plantilla original de Vanilla*/

		/* Body + row sin márgenes ni padding y ocupando todo el ancho de la pantalla */
		.body{
			padding: 0px!important;
			font-family: "OpenSans";
			background-color: #FDF4D5;
			color: #000000;
			font-size: 1.10rem;
			

		}
		.row{
			max-width: 100vw;
			padding: 0px;
			margin: 0px;
			grid-gap: 0; /* no queremos separación entre los divs */
		}

		.row-margin{
			max-width: 80rem!important; 
			margin: 0 auto 1.75rem auto!important;
			grid-gap: 0 2rem!important;
		}

		.row-margin-1{
			max-width: 80rem!important; 
			margin: 0 auto 1rem auto!important;
			grid-gap: 0 1rem!important;
		}

		.row-noGap{
			grid-gap: 0!important;
		}

		.row-gap2{
			grid-gap: 0 2rem;
		}

		button:hover, button:active, button[aria-pressed=true], button[aria-selected=true], button[aria-expanded=true]{
			background-color: #ffffff!important;
			color: #000000!important;
			border: 2px solid black;
		}
		
		p{
			max-width: none!important;
		}

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


	/* 100% del alto del div ajustado a la pantalla */
	.full-height {
		display: flex;
    	height: 100vh;
    	justify-content: center; /* Centra horizontalmente */
    	align-items: center; /* Centra verticalmente */
	}

	.height-100{
		height: 100vh;
	}

	.height-75{
		height: 75vh!important;
	}

	/* Div en la mitad vertical de otro div => Contenedor > full-height | Div texto > vertical-text */
	.vertical-text{
		width: 60%; 
	}

	/*Para hacer scroll-y*/
	.scroll-y{
		overflow-y: scroll;
	}

	/* Para imágenes de fondo del div */
	.background-image{
		background-size: cover;
		background-position: center; 
		background-repeat: no-repeat; 	
	}

	/* Div con color de fondo */
	.colored-div{
		background-color: #f8f8f8
	}

	
	/* Title */
	.title{
		font-family: "BodoniModa";
		margin-bottom: 0px;
		font-size: 2.5rem;
		
	}

		h1{
			font-size: 3rem!important;
		}

	.sub-title{
		font-family: "OpenSans";
		font-weight: bold;
		font-size: 1.5rem;
	}

	.sub-title-lato{
		font-family: BodoniModa; 
		text-transform: uppercase; 
		font-size: 1rem;
	}


	.mini-title{
		font-family: 'BodoniModa'; 
		text-transform: uppercase; 
		font-weight: bold; 
		font-size: 0.80rem
	}

	.mini-little-title{
		font-family: 'BodoniModa'; 
		text-transform: uppercase; 
		font-weight: bold; 
		font-size: 0.75rem;
	}

	
	

	/* Alinear exto */
	.center-align{
		text-align: center;
	}

	.right-align{
		text-align: right;
	}


	/* Elementos flotantes */
	.right{
		float: right;
	}

	.left{
		float: left;
	}

	/* Enlaces */
	a{
		cursor: pointer!important;
		color: initial!important;
	}

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


	/* Botones */
	.button{
		background-color: #000000;
		border: 2px solid #000000;
		text-transform: uppercase;
		color: #ffffff!important;
		font-family: "Lato";
		font-weight: 500;
		font-size: 1rem;
		margin: 0 1rem 1rem 0;
		padding-top: 8px;
		/*padding: calc(.375rem - 1px) 1rem;*/
		cursor: pointer;
	}

	.pointer{
		cursor: pointer!important;
	}


	/* Estilo de los elementos del form */
	input, textarea, select{
		border-radius: 0 !important;
	    border: 1px solid #000000 !important;
	    height: auto !important;
	    padding: 10px !important;
	    background-color: #ffffff !important;

	}



/*** NAV ****/

/* Corrección de la clase de la navegación de Vanilla Framework */
.p-navigation {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    background-color: #f8f8f8;
    position: relative; /* Para que el menú se pueda superponer encima del contenido */
    z-index: 1000; /* Asegura que el menú esté por encima del contenido */
}

.p-navigation__nav {
    flex: 1 !important;
    display: flex !important;
    justify-content: flex-end !important;
}

.p-navigation__items {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.p-navigation__dropdown--right {
    display: none; /* Ocultar por defecto */
}

.p-navigation__dropdown--right[aria-hidden="false"] {
    display: block; /* Mostrar cuando está activo */
}

.p-navigation__link, .p-navigation__dropdown-item {
    font-family: "Lato";
    text-transform: uppercase;
    font-size: 0.85rem;
}

.p-navigation__link:hover {
    background-color: transparent !important;
}

/* Estilos propios del nav */
.nav-25 {
    flex: 0 0 25% !important;
}

.nav-icon {
    height: 36px;
    margin-top: 6px;
    cursor: pointer;
}

.p-navigation__dropdown-item::before, .p-navigation__items::before, .p-navigation__link--search-toggle::before, .p-navigation__tagged-logo .p-navigation__link::before, .p-navigation__link--menu-toggle::before, .p-navigation__link::before{
    background: none;
}

.p-navigation__item--dropdown-toggle .p-navigation__link{
    padding-right: 3rem;
}

/* RESPONSIVE */
/* Tablet */
@media (max-width: 1035px) {

    
    .p-navigation {
        flex-direction: row !important;
        justify-content: space-between !important;
    }

    .p-navigation__nav {
        display: flex !important;
        justify-content: flex-end !important;
        flex: 1 !important;
    }

    .p-navigation__items {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    
    .nav-icon {
        order: -1; /* Asegura que el logo esté a la izquierda */
        margin-top: 6px;
    }

    
    .p-navigation__dropdown--right {
        position: absolute; 
        top: 100%; 
        right: 0; 
        background-color: #ffffff;
        z-index: 999; 
        box-shadow: 0 1px 1px 0 rgba(0,0,0,.15),0 2px 2px -1px rgba(0,0,0,.15),0 0 3px 0 rgba(0,0,0,.2);
    }

        .p-navigation__dropdown--right li{
            padding: 0;
            margin: 0;
        }

    
    .menu-toggle {
        display: block;
        cursor: pointer;
        font-size: 30px;
        padding: 10px;
        background: none;
        border: none;
    }

   
    .p-navigation__items.open {
        display: flex !important;
    }

}

/* Móvil */
@media (max-width: 768px) {
    .p-navigation {
        justify-content: space-between !important;
        padding: 10px;
    }

    .p-navigation__nav {
        display: flex !important;
        flex: 1 !important;
        justify-content: flex-end !important;
    }

    .nav-25 {
        flex: 0 0 25% !important;
    }

    .nav-icon {
        height: 30px; 
        margin-top: 6px;
    }   
   

    /* Hacer el menú desplegable visible en móviles */
    .p-navigation__dropdown--right {
        position: absolute;
        top: 100%;
        right: 0;
        background-color: #f8f8f8;
        box-shadow: 0 1px 1px 0 rgba(0,0,0,.15),0 2px 2px -1px rgba(0,0,0,.15),0 0 3px 0 rgba(0,0,0,.2);
        z-index: 999;
    }

    
    .p-navigation__items.open {
        display: flex !important;
        flex-direction: column !important;
    }

    .menu-toggle {
        display: block;
        cursor: pointer;
        font-size: 30px;
        padding: 10px;
        background: none;
        border: none;
    }
}


	