/* ────────────────────────────────────────────────────────────────────────────────────────────────────────────────── */
/* MEDIA QUERIES 																									  */
/* ────────────────────────────────────────────────────────────────────────────────────────────────────────────────── */


/***********************************************
Pantalla 3480x2160 16:9 4K
***********************************************/
@media only screen and (min-width:2651px) and (max-width: 3840px) {
	
	.show-mobile { display:none !important; }
	.show-tablet { display:none !important; }
	.show-screen { display:inherit; }
	.hide-mobile { display:inherit !important; }
	.hide-tablet { display:inherit !important; }
	.hide-screen { display:none !important; }
	
	th.show-screen { display:table-cell; }
	th.hide-mobile { display:table-cell !important; }
	th.hide-tablet { display:table-cell !important; }
	td.show-screen { display:table-cell; }
	td.hide-mobile { display:table-cell !important; }
	td.hide-tablet { display:table-cell !important; }	
	
	.bloqueGaleria {
		width: calc(10% - 20px);
		margin: 10px 0px 10px 0px;	
	}
	
	.bloqueBotones {
		display: none !important;
	}
	
	.bloqueCampoFormulario select {
		width: 100% !important;
	}

    #formularioLogin {
        width: 500px;
        margin-left: calc(100vw - 750px);
        margin-top: calc(100vh - 35%);
    }

	.fichaEmpleado {
		width: 19%;
		flex-basis: 19%;
	}
	.fichaEmpleado img.fotoEmpleado {
		top: -29%;
		left: calc(100% - 55%);
		width: 13%;
    }
    .fichaEmpleadoPropia img.fotoEmpleado {
		top: -36%;
	}
	.fichaEmpleado h1 {
		margin-top: 2.5rem;
		line-height: 1.2rem;
	}

	.calendario {
		flex-basis: 30%;
	}

	.calendarioEventosDiarios {
		width: 20%;
	}

	.tablaControlHorario {
		width: 30% !important;
	}

	.botonInforme {
		width: 8%;
	}

	.tablaResultadosCuotas {
		width: 20% !important;
	}

    .bloqueGaleria {
		width: calc(10% - 20px);
		margin: 10px 0px 10px 0px;	
	}

}


/***********************************************
Pantalla 2560x1440 16:9 2K
***********************************************/
@media only screen and (min-width:1921px) and (max-width: 2560px) {

	.show-mobile { display:none !important; }
	.show-tablet { display:none !important; }
	.show-screen { display:inherit; }
	.hide-mobile { display:inherit !important; }
	.hide-tablet { display:inherit !important; }
	.hide-screen { display:none !important; }
	
	th.show-screen { display:table-cell; }
	th.hide-mobile { display:table-cell !important; }
	th.hide-tablet { display:table-cell !important; }
	td.show-screen { display:table-cell; }
	td.hide-mobile { display:table-cell !important; }
	td.hide-tablet { display:table-cell !important; }

	.bloqueGaleria {
		width: calc(16.6% - 20px);
		margin: 10px 0px 10px 0px;	
	}
	
	.bloqueBotones {
		display: none !important;
	}

	.bloqueCampoFormulario select {
		width: 100% !important;
	}

    #formularioLogin {
        width: 400px;
        margin-left: calc(100vw - 600px);
    }

	.fichaEmpleado {
		width: 19%;
		flex-basis: 19%;
	}
	.fichaEmpleado img.fotoEmpleado {
		top: -23%;
		left: calc(100% - 55%);
		width: 15%;
    }
    .fichaEmpleadoPropia img.fotoEmpleado {
		top: -30%;
	}
	.fichaEmpleado h1 {
		margin-top: 2rem;
		line-height: 1.2rem;
	}

	.calendario {
		flex-basis: 23%;
	}

	.calendarioEventosDiarios {
		width: 30%;
	}

	.tablaControlHorario {
		width: 40% !important;
	}

	.botonInforme {
		width: 10%;
	}

	.tablaResultadosCuotas {
		width: 20% !important;
	}

    .bloqueGaleria {
		width: calc(16.6% - 20px);
		margin: 10px 0px 10px 0px;	
	}

}


/***********************************************
Pantalla 1920x1080 16:9 
***********************************************/
@media only screen and (min-width:1681px) and (max-width: 1920px) {

	.show-mobile { display:none !important; }
	.show-tablet { display:none !important; }
	.show-screen { display:inherit; }
	.hide-mobile { display:inherit !important; }
	.hide-tablet { display:inherit !important; }
	.hide-screen { display:none !important; }
	
	th.show-screen { display:table-cell; }
	th.hide-mobile { display:table-cell !important; }
	th.hide-tablet { display:table-cell !important; }
	td.show-screen { display:table-cell; }
	td.hide-mobile { display:table-cell !important; }
	td.hide-tablet { display:table-cell !important; }

	.bloqueGaleria {
		width: calc(20% - 20px);
		margin: 10px 0px 10px 0px;
	}
	
	.bloqueBotones {
		display: none !important;
	}

	.bloqueCampoFormulario select {
		width: 100% !important;
	}

	.botonInforme {
		width: 15%;
	}

	.fichaEmpleado {
		width: 23%;
		flex-basis: 23%;
	}
	.fichaEmpleado img.fotoEmpleado {
		top: -27%;
		left: calc(100% - 60%);
		width: 20%;
    }
    .fichaEmpleadoPropia img.fotoEmpleado {
		top: -35%;
	}
	.fichaEmpleado h1 {
		margin-top: 2rem;
		line-height: 1.2rem;
	}

	.tablaControlHorario {
		width: 50% !important;
	}
	
	.tablaResultadosCuotas {
		width: 30% !important;
	}

    .bloqueGaleria {
		width: calc(20% - 20px);
		margin: 10px 0px 10px 0px;
	}
    	
}


/***********************************************
Pantalla 1680x1050 16:10
***********************************************/
@media only screen and (min-width:1367px) and (max-width: 1680px) {

	.show-mobile { display:none !important; }
	.show-tablet { display:none !important; }
	.show-screen { display:inherit; }
	.hide-mobile { display:inherit !important; }
	.hide-tablet { display:inherit !important; }
	.hide-screen { display:none !important; }
	
	th.show-screen { display:table-cell; }
	th.hide-mobile { display:table-cell !important; }
	th.hide-tablet { display:table-cell !important; }
	td.show-screen { display:table-cell; }
	td.hide-mobile { display:table-cell !important; }
	td.hide-tablet { display:table-cell !important; }

	.bloqueGaleria {
		width: calc(20% - 20px);
		margin: 10px 0px 10px 0px;
	}
	
	.bloqueBotones {
		display: none !important;
	}
	
	.bloqueCampoFormulario select {
		width: 100% !important;
	}

	.bloqueFichaRepositorioInicio .iconoFichaRepositorioInicio {
		flex-basis: 12%;
	}
	.bloqueFichaRepositorioInicio .datosFichaRepositorioInicio {
		flex-basis: 88%;
	}

	#previoImagenContenedor {
		width: 55%;
	}

	.botonInforme {
		width: 18%;
	}

	.fichaEmpleado {
		width: 23%;
		flex-basis: 23%;
	}
	.fichaEmpleado img.fotoEmpleado {
		top: -24%;
		left: calc(100% - 60%);
		width: 20%;
    }
    .fichaEmpleadoPropia img.fotoEmpleado {
		top: -31%;
	}
	.fichaEmpleado h1 {
		margin-top: 2rem;
		line-height: 1.2rem;
	}

	.tablaControlHorario {
		width: 50% !important;
	}

	.tablaResultadosCuotas {
		width: 35% !important;
	}

    .bloqueGaleria {
		width: calc(20% - 20px);
		margin: 10px 0px 10px 0px;
	}

}


/***********************************************
Pantalla 1366x768 16:9
***********************************************/
@media only screen and (min-width:1281px) and (max-width: 1366px) {

	.show-mobile { display:none !important; }
	.show-tablet { display:none !important; }
	.show-screen { display:inherit; }
	.hide-mobile { display:inherit !important; }
	.hide-tablet { display:inherit !important; }
	.hide-screen { display:none !important; }
	
	th.show-screen { display:table-cell; }
	th.hide-mobile { display:table-cell !important; }
	th.hide-tablet { display:table-cell !important; }
	td.show-screen { display:table-cell; }
	td.hide-mobile { display:table-cell !important; }
	td.hide-tablet { display:table-cell !important; }

	.bloqueBotones {
		display: none !important;
	}

	.bloqueCampoFormulario select {
		width: 100% !important;
	}

    #formularioLogin {
        width: 250px;
        margin-left: calc(100vw - 340px);
        margin-top: calc(100vh - 40%);
    }
    #formularioLogin img {
        width: 100px;
    }

	.moduloGridHome {
		margin: 0;
	}
	#gridHome_Calendario {
		width: 35%;
	}
	#gridHome_Repositorio {
		width: 40%;
	}
	.bloqueFichaRepositorioInicio .iconoFichaRepositorioInicio {
		flex-basis: 14%;
	}
	.bloqueFichaRepositorioInicio .datosFichaRepositorioInicio {
		flex-basis: 86%;
	}

	#previoImagenContenedor {
		width: 70%;
	}

	.botonInforme {
		width: 20%;
	}

	.fichaEmpleado {
		width: 30%;
		flex-basis: 30%;
	}
	.fichaEmpleado img.fotoEmpleado {
		top: -25%;
		left: calc(100% - 60%);
		width: 20%;
    }
    .fichaEmpleadoPropia img.fotoEmpleado {
		top: -32%;
	}
	.fichaEmpleado h1 {
		margin-top: 2rem;
		line-height: 1.2rem;
	}

	.calendario {
		flex-basis: 30%;
	}

	.tablaControlHorario {
		width: 60% !important;
	}

	.tablaResultadosCuotas {
		width: 40% !important;
	}

    .bloqueGaleria {
		width: calc(20% - 10px);
		margin: 10px 0px 10px 0px;
	}

	/* index.php */

	.contenidoBanner div {
		padding: 0rem 3rem 0rem 0rem;
		flex-basis: auto;
	}

	.contenidoBanner img{
		padding-left: 2rem;
	}
}


/***********************************************
Pantalla 1280x720 16:9
***********************************************/
@media only screen and (min-width:1025px) and (max-width: 1280px) {

	.show-mobile { display:none !important; }
	.show-tablet { display:none !important; }
	.show-screen { display:inherit; }
	.hide-mobile { display:inherit !important; }
	.hide-tablet { display:inherit !important; }
	.hide-screen { display:none !important; }
	
	th.show-screen { display:table-cell; }
	th.hide-mobile { display:table-cell !important; }
	th.hide-tablet { display:table-cell !important; }
	td.show-screen { display:table-cell; }
	td.hide-mobile { display:table-cell !important; }
	td.hide-tablet { display:table-cell !important; }

	.bloqueBotones {
		display: none !important;
	}

	.bloqueCampoFormulario select {
		width: 100% !important;
	}

    #formularioLogin {
        width: 250px;
        margin-left: calc(100vw - 340px);
        margin-top: calc(100vh - 40%);
    }
    #formularioLogin img {
        width: 90px;
    }

	.moduloGridHome {
		margin: 0;
	}
	#gridHome_Calendario {
		margin: 0.5rem;
		width: 33%;
	}
	#gridHome_Repositorio {
		margin: 0.5rem;
		width: 40%;
	}
	.bloqueFichaRepositorioInicio .iconoFichaRepositorioInicio {
		flex-basis: 15%;
	}
	.bloqueFichaRepositorioInicio .datosFichaRepositorioInicio {
		flex-basis: 85%;
	}

	#previoImagenContenedor {
		width: 75%;
	}

	.botonInforme {
		width: 22%;
	}

	.fichaEmpleado {
		width: 30%;
		flex-basis: 30%;
	}
	.fichaEmpleado img.fotoEmpleado {
		top: -23%;
		left: calc(100% - 60%);
		width: 20%;
    }
    .fichaEmpleadoPropia img.fotoEmpleado {
		top: -30%;
	}
	.fichaEmpleado h1 {
		margin-top: 2rem;
		line-height: 1.2rem;
    }
    
	#flexClientesMto_1 {
		flex-basis: 60%;
	}
	#flexClientesMto_2 {
		flex-basis: 38%;
	}

	.calendario {
		flex-basis: 30%;
	}

	.tablaControlHorario {
		width: 70% !important;
	}
	
	.tablaResultadosCuotas {
		width: 45% !important;
	}

    .bloqueGaleria {
		width: calc(20% - 10px);
		margin: 10px 0px 10px 0px;
	}

	/* index.php*/
	.contenidoBanner div {
		padding: 0rem;
		flex-basis: auto;
	}

	.contenidoBannerReverse div {
		padding: 0rem;
		flex-basis: auto;
	}

	.contenidoBanner img{
		height: 20rem;
	}

	.contenidoBannerReverse img {
		height: 20rem;
		padding: 1rem 1rem 1rem 4rem;
	}
	#listaVentajas div{
		width: 30rem;
	}

	.contenidoBanner p{
		margin-right: 1.5rem;
	}

	.contenidoBannerReverse p{
		margin-left: 1.5rem;
	}
}


/***********************************************
Pantalla 1024x600 16:10
***********************************************/
@media only screen and (min-width:960px) and (max-width: 1024px) {

	.show-mobile { display:none !important; }
	.show-tablet { display:none !important; }
	.show-screen { display:inherit; }
	.hide-mobile { display:inherit !important; }
	.hide-tablet { display:inherit !important; }
	.hide-screen { display:none !important; }
	
	th.show-screen { display:table-cell; }
	th.hide-mobile { display:table-cell !important; }
	th.hide-tablet { display:table-cell !important; }
	td.show-screen { display:table-cell; }
	td.hide-mobile { display:table-cell !important; }
	td.hide-tablet { display:table-cell !important; }

	.bloqueBotones {
		display: none !important;
	}

	#mensajeResultados {
		width: 45%;
	}

	.bloqueCampoFormulario select {
		width: 100% !important;
	}

    #formularioLogin {
        width: 250px;
        margin-left: calc(100vw - 300px);
        margin-top: calc(100vh - 50%);
    }
    #formularioLogin:before {
        left: 67%;
    }
    #formularioLogin img {
        width: 90px;
    }

	#gridHome {
		padding: 0;

		flex-wrap: wrap;
		justify-content: center;
		align-items: stretch;
	}
	.moduloGridHome {
		margin: 0;
	}
	#gridHome_Calendario {
		margin: 0.5rem;
		width: 40% !important;
	}
	#gridHome_Repositorio {
		margin: 0.5rem;
		width: 55% !important;
	}

	#previoImagenContenedor {
		width: 100%;
	}
	.bRecortarFoto {
		line-height: 15px;
	}

	.botonInforme {
		width: 30%;
	}

	.fichaEmpleado {
		width: 45%;
		flex-basis: 45%;
	}
	.fichaEmpleado img.fotoEmpleado {
		top: -27%;
		left: calc(100% - 60%);
		width: 20%;
    }
    .fichaEmpleadoPropia img.fotoEmpleado {
		top: -36%;
	}
	.fichaEmpleado h1 {
		margin-top: 2rem;
		line-height: 1.2rem;
	}

	#calendarioMensual .cal_dia, #calendarioMensual .cal_dia_vacio {
		min-height: 6rem;
	}
	.calendario {
		flex-basis: 31%;
	}
	.bloqueSelectorAnio p#anioCalendario {
		font-size: 1.6rem;
	}
	
	.fichaCliente > h1 {
		font-size: 1.5rem;
	}
	.bloqueDatosFichaCliente_1, .bloqueDatosFichaCliente_2 {
		flex-basis: 50%;
	}
	.flexDatosEmpresa {
		flex-wrap: wrap;
	}
	.bloqueDatosFichaCliente_2 .flexDatosEmpresa > div {
		margin-left: 0;
		padding-left: 0;
		border-left: 0;
	
		flex-basis: 100%;
	}
    .bloqueDatosFichaCliente_2 .flexDatosEmpresa > div:nth-child(even) {
		margin-top: 1rem;
		padding-top: 1rem;
		border-top: 2px dashed #d8d8d8;
    }
    
    .bloqueSeccionEmpresa {
        flex-basis: 45%;
    }
    #flexClientesMto_1 {
		flex-basis: 60%;
	}
	#flexClientesMto_2 {
		flex-basis: 38%;
	}

	.tablaResultadosCuotas {
		width: 60% !important;
	}

    .bloqueGaleria {
		width: calc(25% - 10px);
		margin: 5px 0px 5px 0px;
	}

    .bloqueCobro {
        margin: 0 0.5rem 1rem 0.5rem;
    }

	/* index.php */
	.contenidoBanner img{
		height: 20rem;
	}

	.contenidoBannerReverse img{
		height: 20rem;
	}

	.contenidoBanner div {
		padding: 1rem 3rem 0rem 3rem;
		flex-basis: auto;
		width: 25rem;
	}

	.contenidoBannerReverse div {
		padding: 1rem 3rem 0rem 3rem;
		flex-basis: auto;
		width: 25rem;
	}

	.contenidoBanner p {
		line-height: 1.7em;
		width: 15rem;
	}

	#listaVentajas {
		display: flex;
		text-align: center;
		justify-content: center;
		margin: 3.5rem auto 0 auto;
		flex-direction: column;
		align-items: center;
		width: auto;
	}

	.ventajasIzquierda{
		margin: 0 !important;
	}

	.ventajasDerecha{
		margin: 0 !important;
	}

	.ventajasIzquierda div{
		border: none;
	}

	.ventajasDerecha div{
		border: none;
	}

	.contenedorContactanos {
		justify-content: right;
		align-items: flex-end;
		flex-direction: column;
		background-size: cover;
	}

	#contenedorFormularioContactanos form {
		width: 25rem;
		padding: 2rem;
		align-content: right;
	}

	#contenedorFormularioContactanos h1 {
		text-align: right;
		font-size: 2rem;
		width: 40rem;
	}


	.infoForm{
		padding-right: 1.5rem;
	}
}


/***********************************************
Tablet 
***********************************************/
@media only screen and (min-width:768px) and (max-width: 959px) {
	
	.show-mobile { display:none !important; }
	.show-tablet { display:inherit !important; }
	.show-screen { display:none !important; }
	.hide-mobile { display:inherit !important; }
	.hide-tablet { display:none !important; }
	.hide-screen { display:inherit !important; }	
	
	th.show-tablet { display:table-cell !important; }
	th.hide-mobile { display:table-cell !important; }
	th.hide-screen { display:table-cell !important; }	
	td.show-tablet { display:table-cell !important; }
	td.hide-mobile { display:table-cell !important; }
	td.hide-screen { display:table-cell !important; }	

    :root {
        --altura-cabecera: 80px;
    }

    .sliderMobile {
        width: 100%;
		max-width: 350px;
		margin: 0 auto 0 auto;
    }
    .sliderMobile img {
		display: none;
    }

    #bloqueFormulario {
        /*position: relative;*/
        /*top: auto;*/
        top: 3rem;
        /*right: auto;
        width: auto;*/
        /*height: calc(100vh - var(--altura-cabecera));*/
        height: auto;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
    }
    #formularioLogin {
        width: 350px;
        margin-left: 0;
        margin-top: 0;
		padding-bottom: 2rem;
    }

	#formularioLogin img{
		width: 70px;
		margin-top: 30px;
	}

    #formularioLogin:before {
        content: none;
    }

	#cabecera {
		align-items: center;
	}

	#contenedor {
	    width: 100%;
	    min-height: 100vh;
	    margin: 0px;
	}

	#mensajeResultados {
		width: 50%;
	}

	.botonInforme {
		width: 35%;
	}
	
	#bTitularBuscador {
		width: calc(100% - 570px);
	}

	#bLogin {
		width: calc(50% - 20px);
	}
	
	#bPassword {
		width: calc(50% - 20px);
	}
	
	#bConfirmacionPassword {
		width: calc(50% - 20px);
	}
	
	#bPermisos {
		width: calc(50% - 20px);
	}		
	
	.opcionMenu p {
	    line-height: 1.1rem; 
	    font-size: .75rem;
	}	
	
	.botonesTabla {
		width: 80px !important;
	}
	
	.colgadorSubTabla {
	    background-size: 70px auto;
	}
	
	td.botonesTabla img {
		width: 25px;
	    margin: 0px 5px 5px 5px !important;
	}	
	
	#previoImagenContenedor {
 	   width: 90%;
       margin: 10px auto 10px auto;
	}
	
	.bloqueBotones {
		display: none !important;
	}

	.bloqueCampoFormulario select {
		width: 100% !important;
	}

	#gridHome {
		padding: 0;

		flex-wrap: wrap;
		justify-content: center;
		align-items: stretch;
	}
	.moduloGridHome {
		margin: 1rem;
		width: 100% !important;
	}
	.bloqueFichaRepositorioInicio .iconoFichaRepositorioInicio {
		flex-basis: 12%;
	}
	.bloqueFichaRepositorioInicio .datosFichaRepositorioInicio {
		flex-basis: 88%;
	}

	.fichaEmpleado {
		padding-bottom: 2rem;
		width: 45%;
		flex-basis: 45%;
	}
	.fichaEmpleado img.fotoEmpleado {
		top: -21%;
		left: calc(100% - 60%);
		width: 20%;
    }
    .fichaEmpleadoPropia img.fotoEmpleado {
		top: -27%;
	}
	.fichaEmpleado h1 {
		margin-top: 1.5rem;
		font-size: 0.9rem;
		line-height: 1.2rem;
	}
	.botoneraEmpleado i {
		margin-left: 1rem !important;
		font-size: 1.5rem !important;
	}

	#bloqueFotoEmpleado {
		flex-basis: 35%;
	}
	#bloqueInformacionEmpleado {
		flex-basis: 63%;
	}
	#bloqueJornadaEmpleado {
		flex-basis: 35%;
	}
	#bloqueInformacionEmpresa {
		flex-basis: 63%;
	}

	.calendario {
		flex-basis: 47%;
	}
	.calendarioEventosDiarios {
		width: 80%;
	}
	.bloqueSelectorAnio {
		padding: 0.5rem;
	}
	.bloqueSelectorAnio p#anioCalendario {
		padding-left: 1rem;
		padding-right: 1rem;
		font-size: 1.1rem;
	}
	.bloqueInfoVacaciones {
		padding: 0.5rem;
	}
	.diasVacaciones {
		margin: 0 0.5rem;
	}
	#leyendaAgenda {
		padding: .5rem;
		padding-bottom: 0;
		flex-wrap: wrap;
	}
	#leyendaAgenda p {
        margin-right: 1rem;
		margin-bottom: .5rem;
		font-size: .7rem;
    }
    .pastillaEventoAgenda p {
        font-size: .6rem;
        line-height: .7rem;
    }

	.fichaCliente > h1 {
		font-size: 1.4rem;
	}
	.datosFichaCliente {
		flex-wrap: wrap;
	}
	.bloqueDatosFichaCliente_1 {
		margin-bottom: 1rem;
	}
	.bloqueDatosFichaCliente_1, .bloqueDatosFichaCliente_2 {
		flex-basis: 100%;
	}
	.flexDatosEmpresa {
		flex-wrap: wrap;
	}
	.bloqueDatosFichaCliente_2 .flexDatosEmpresa > div {
		margin-left: 0;
		padding-left: 0;
		border-left: 0;
	
		flex-basis: 100%;
	}
    .bloqueDatosFichaCliente_2 .flexDatosEmpresa > div:nth-child(even) {
		margin-top: 1rem;
		padding-top: 1rem;
		border-top: 2px dashed #d8d8d8;
	}
	
	.botoneraBloquesCliente {
		flex-wrap: wrap;
	}
	.botoneraBloquesCliente > div {
		margin: 0 0.5rem;
		width: 110px;
	}
    
    .bloqueSeccionEmpresa {
        flex-basis: 45%;
    }
    #flexClientesMto_1 {
		flex-basis: 60%;
	}
	#flexClientesMto_2 {
		flex-basis: 38%;
	}

	.tablaResultadosCuotas {
		width: 85% !important;
	}

    .bloqueConceptoPresupuesto p.numConcepto {
        margin-top: .5rem;
        margin-right: 0;
        margin-bottom: 1rem;
        margin-left: .5rem;
        width: 100%;
    }

    .bloqueSumaHoras {
        padding: 1.5rem;
        flex-basis: 45%;
    }
    p.horasTrabajadas {
        margin: 1rem;
    }
    p.horasDiferencia {
        margin: 1rem;
    }

    .bloqueGaleria {
		width: calc(33% - 15px);
		margin: 10px 0px 10px 0px;
	}

    .bloqueCobro {
        margin: 0 0rem 1rem 0rem;
        flex-basis: 100%;
    }

	/* index.php */

	.contenidoBloquePrincipal h1{
		width: 40rem;
	}

	#bannersPrincipales{
		width: 80%;
	}

	.contenidoBanner{
		flex-direction: column-reverse;
	}
	
	.contenidoBannerReverse{
		flex-direction: column-reverse;
	}

	.contenidoBanner img{
		height: 25rem;
	}

	.contenidoBannerReverse img{
		height: 25rem;
	}

	.contenidoBanner div{
		padding: 2rem;
		flex-basis: 0;
	}

	.contenidoBannerReverse div{
		padding: 2rem;
		flex-basis: 0;
	}

	.contenidoBanner p{
		width: auto;
	}

	.contenidoBannerReverse p{
		width: auto;
	}

	#listaVentajas{
		flex-direction: column;
		width: auto;
	}

	.ventajasIzquierda div {
		border: none;
	}

	.ventajasDerecha div {
		border: none;
	}

	.ventajasIzquierda {
		margin: 0 auto 0 auto;
	}

	.ventajasDerecha {
		margin: 0 auto 0 auto;
	}

	#contenedorFormularioContactanos form {
		width: 30rem;
	}

	.contenedorContactanos {
		flex-direction: column;
		text-align: center;
		background-image: none;
	}

	#bannerVentajas h1{
		margin: 1rem;
	}

	.efectoTag{
		width: auto;
	}

	/*  */

	.contenidoServicio{
		padding: 2rem;
	}

	.contenidoServicio .contenidoBloqueSeccion {
		background-color: rgb(255, 255, 255);
		padding: 2rem;
	}

	.contenidoBarraMenuInicioSesion {
		min-height: auto !important;
	}

	#barraMenu{
		min-height: auto;
	}

	#pie{
		top: 25rem;
	}



}


/***********************************************
Mobile (portrait)
***********************************************/
@media only screen and (max-width:767px) {
	
	.show-mobile { display:inherit !important; }
	.show-tablet { display:none !important; }
	.show-screen { display:none !important; }
	.hide-mobile { display:none !important; }
	.hide-tablet { display:inherit !important; }
	.hide-screen { display:inherit !important; }
	
	th.show-mobile { display:table-cell !important; }
	th.hide-tablet { display:table-cell !important; }
	th.hide-screen { display:table-cell !important; }	
	td.show-mobile { display:table-cell !important; }
	td.hide-tablet { display:table-cell !important; }
	td.hide-screen { display:table-cell !important; }
	td span.show-mobile { display:inline !important; }	

    :root {
        --altura-cabecera: 70px;
    }

    .sliderMobile {
        margin-top: 1rem;
        width: 100%;
    }
    .sliderMobile img {
        width: 100%;
    }

    #barraMenu {
        min-height: 75px;
    }
    .contenidoBarraMenu {
        min-height: 75px;
    }
    #bloqueFormulario {
        position: relative;
        top: 0;
        /*right: auto;
        width: auto;*/
        /*height: calc(100vh - var(--altura-cabecera));*/
        height: 45vh;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
		padding-bottom: 4rem;
    }
    #formularioLogin {
        width: 270px;
        margin-left: 0;
        margin-top: 1rem;
    }
    #formularioLogin:before {
        content: none;
    }
    #formularioLogin img {
        width: 80px;
    }
	
	.botonInforme {
		width: 85%;
	}

	.bVolver {
		margin-top: 1.5rem;
	}
	.bNuevo {
		font-size: 0.7rem !important;
		margin-top: .2rem;
		margin-bottom: .2rem;
	}

	#rutaSeccion {
		padding: 0 .5rem;
	}

	#cabecera {
		position: fixed;
		top: 0px;
		left: 0px;
		width: 100%;
		z-index: 9;
		padding: 5px 10px;
		height: 50px;
		align-items: center;
	}
	
	#cabecera img {
		margin-left: 3rem;
		height: 40px;
	}
	#cabecera img.logoGrupo {
		margin-left: 0;
		height: 25px;
	}
	
	#contenedor {
		margin: 0px;
		padding-top: 35px;
	    width: 100%;
	    min-height: 100vh;
	}
	
	#contenido {
	    margin: 5px;
	}

	#mensajeResultados {
		width: 80%;
	}
	
	.bloqueCampoFormulario {
        width: 100% !important;
	}
	.bloqueCampoFormulario input {
		width: 100%;
	}
	.bloqueCampoFormulario select {
		width: 100% !important;
	}
	.bloqueCampoFormulario textarea {
		width: 100%;
	}

	.fs-wrap {
		width: 100% !important;
	}

    .flexCharts {
        margin-bottom: 0;

        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start;
    }
    .flexCharts > div {
        margin-bottom: 2rem;
        width: 60%;
    }
	
	.bloqueEnlacesInicio {
        margin: 2rem 1rem 1rem 1rem;
        min-width: 0px;
        width: 100%;
    }
    .contenidoEnlacesInicio {
        padding-left: 0;
        flex-wrap: wrap;
    }
    .enlaceInicio {
		width: 110px;
        margin-bottom: 1.5rem;
    }

	#ayuda {
	    margin-bottom: 20px;
	    padding: 5px;
	} 	
	
	#ayuda img.iconoAyuda {
	    width: 30px;
	    height: 30px;
	}
	
	#ayuda p {
		width: calc(100% - 35px);
	    font-size: .8rem;
	}

	#botoneraNuevosRegistros .cl-switch .label {
		font-size: 0.8rem;
	}
	
	#bTitularBuscador {
		width: 100%;
	}
	
	#bFecha {
		width: 100%;
		margin-right: 0px;
	}
	
	#bFechaDesdeBuscador, #bFechaHastaBuscador {
		width: calc(50% - 5px);
		margin-right: 0px;
	}

	#bFechaDesdeBuscador input , #bFechaHastaBuscador input {
		width: 100%;
	}
	
	#bCategoria {
		width: 100%;
		margin-right: 0px;
	}	

	.botonBuscar, .botonVerTodo {
	    margin: 0.5rem .9rem 0 0.5rem;
	}
	
	.botonesTabla {
		width: 30px !important;
		vertical-align: top;
	}
	
	.menuBotones {
		display: block;
	}
		
	.botonesTabla div {
		display: none;
	}
	
	.colgadorSubTabla {
	    background-size: 35px auto;
	}
	
	td.botonesTabla img {
		width: 25px;
	    margin: 0px 5px 0px 5px !important;
	}		
	
	#bTags {
		width: 100%;
		margin-right: 0px;
	}	
	
	#bTag {
		width: calc(100% - 32px);
	}	
	
	#bVolver {
		margin-top: 30px;
	}	
	
	.filaPaginacion {
        justify-content: flex-end;
    }
	#numResultadosPaginacion {
		display: none;
	}
	.resultadosBusqueda {
	    display: none;
	}

	#gridHome {
		margin-top: 1rem;
		padding: 0;

		flex-wrap: wrap;
		justify-content: center;
		align-items: stretch;
	}
	.moduloGridHome {
		margin: 1rem;
		width: 100% !important;
	}
	.bloqueFichaRepositorioInicio .iconoFichaRepositorioInicio {
		flex-basis: 20%;
	}
	.bloqueFichaRepositorioInicio .iconoFichaRepositorio img {
		width: 100%;
		max-height: none;
	}
	.bloqueFichaRepositorioInicio .datosFichaRepositorioInicio {
		flex-basis: 80%;
	}
		
	.datosRecorte {
		display: none;
	}
	#previoImagenContenedor {
 	   width: 100%;
       margin: 10px auto 10px auto;
	}	
	
	#bLogin {
		width: 100%;
	}
	#bPassword {
		width: 100%;
	}
	#bConfirmacionPassword {
		width: 100%;
	}
	#bPermisos {
		width: 100%;
	}	

	#bloqueResultados .bloqueEmpleados:nth-child(odd){
		border-bottom: 1px solid #666666;
	}
	.fichaEmpleado {
		padding-bottom: 2rem !important;
		width: 100%;
		flex-basis: 100%;
	}
	.fichaEmpleado img.fotoEmpleado {
		top: -22%;
		left: calc(100% - 60%);
		width: 20%;
    }
    .fichaEmpleadoPropia img.fotoEmpleado {
		top: -29%;
	}
	.fichaEmpleado h1 {
		margin-top: 1.5rem;
		font-size: 0.9rem;
		line-height: 1.2rem;
	}
	.botoneraEmpleado i {
		margin-left: 1rem !important;
		font-size: 1.5rem !important;
	}

	.flexEmpleadosMto {
		flex-wrap: wrap;
	}
	#bloqueFotoEmpleado {
		flex-basis: 100%;
		order: 2;
	}
	#bloqueInformacionEmpleado {
		flex-basis: 100%;
		order: 1;
	}
	#bloqueInformacionEmpresa {
		flex-basis: 100%;
	}
	#bloqueJornadaEmpleado {
		flex-basis: 100%;
	}

	#leyendaAgenda {
		display: none;
	}
	#bloqueInfoAgenda {
		flex-wrap: wrap;
		justify-content: center;
	}
	.bloqueSelectorAnio {
		padding: 1rem;

		order: 2;
	}
	.bloqueSelectorAnio p#anioCalendario {
		padding-left: 1rem;
		padding-right: 1rem;
		font-size: 1.5rem;
	}
	.bloqueInfoVacaciones {
		margin-top: 1rem;
		padding: 0.5rem;
		width: 90%;
		
		order: 1;

		flex-wrap: wrap;
	}
	.diasVacaciones {
		margin: .3rem 0.5rem;
	}

	#calendarioMensual, #calendarioAnual {
		margin: 0 1rem;
	}
	#calendarioMensual .cal_dia, #calendarioMensual .cal_dia_vacio {
        padding: .2rem;
		min-height: 2rem;
	}
	#calendarioMensual .cal_dia > p {
        font-size: 0.6rem;
        line-height: 0.7rem;
	}
	.pastillaEventoAgenda p {
		display: none;
	}
	.pastillaEventoAgenda img {
		right: 0rem;
		top: 0rem;
		max-width: 7px;
	}
	.calendario {
		flex-basis: 100%;
	}

	.calendarioEventosDiarios {
		width: 90%;
	}

	.buscadorControlHorario {
		justify-content: center !important;
	}
	.contenidoBuscadorControlHorario {
		flex-basis: 100%;
	}
	.buscadorControlHorario > img {
		flex-basis: 100%;
		margin-top: 1rem;
	}
	.celdaDia {
		flex-basis: 25%;
	}
	.celdaFichajes {
		flex-basis: 53%;
	}
	.celdaTotal {
		flex-basis: 22%;
	}
	.pastillaFichaje {
		margin: .5rem 0.3rem .5rem 0;
	}

    .botoneraInformes {
        flex-wrap: wrap;
    }
    .botoneraInformes .boton {
        margin-bottom: .5rem;
	}
	
	#bloqueNombreCliente .fs-dropdown {
		width: 100% !important;
	}
	#bloqueCampoActividad .fs-dropdown {
		width: 325px !important;
	}
	#bloqueCampoCNAE .fs-dropdown {
		width: 325px !important;
	}
	#bloqueCampoIAE .fs-dropdown {
		width: 325px !important;
	}

	.fichaCliente {
		margin-top: 1rem;
	}
	.fichaCliente > h1 {
		font-size: 1.3rem;
	}
	.fichaCliente h1 span {
		margin-bottom: .5rem;
		font-size: .7rem;
	}
	.fichaCliente h1 span:before {
		content: "\A";
		white-space: pre;
	}
	.datosFichaCliente {
		flex-wrap: wrap;
	}
	.bloqueDatosFichaCliente_1 {
		margin-bottom: 1rem;
	}
	.bloqueDatosFichaCliente_1, .bloqueDatosFichaCliente_2 {
		flex-basis: 100%;
	}
	.flexDatosEmpresa {
		flex-wrap: wrap;
	}
	.bloqueDatosFichaCliente_2 .flexDatosEmpresa > div {
		margin-left: 0;
		padding-left: 0;
		border-left: 0;
	
		flex-basis: 100%;
	}
	.bloqueDatosFichaCliente_2 .flexDatosEmpresa > div:nth-child(even) {
		margin-top: 1rem;
		padding-top: 1rem;
		border-top: 2px dashed #d8d8d8;
	}
	.bloqueDatosFichaCliente_3 .flexDatosEmpresa > div {
		flex-basis: 100% !important;
	}
	.bloqueDatosFichaCliente_3 .flexDatosEmpresa > div {
		margin-left: 0;
		margin-top: 1rem;
		padding-left: 0;
		padding-top: 1rem;
		border-left: 0;
		border-top: 2px dashed #d8d8d8;
	}
	.bloqueDatosFichaCliente_3 .flexDatosEmpresa > div:first-child {
		margin-top: 0;
		padding-top: 0;
		border-top: 0;
	}
	
	.botoneraBloquesCliente {
		flex-wrap: wrap;
	}
	.botoneraBloquesCliente > div {
		margin: 0 0.5rem;
		width: 110px;
	}
    
    #tablaDocumentos, #tablaFacturas {
        margin-top: 3rem;
    }
    .bNuevaCarpetaCliente {
		position: relative !important;
        top: auto;
        right: auto;
		margin: 0 auto;
    }
    .bNuevoDocumentoCliente {
		position: relative !important;
        right: auto;
		margin: 0 auto;
        margin-bottom: 3rem;
    }

    .bloqueSeccionEmpresa {
        padding: .5rem 1rem;
        width: 100%;
    }
    .bloqueSeccionEmpresa .flex {
        flex-wrap: nowrap;
    }
    .bloqueServicioEmpresa .bloqueCampoFormulario {
        width: auto !important;
    }
    .bloqueServicioEmpresa p:first-child {
        line-height: 1.1rem;
    }
    .flexClientesMto {
        flex-wrap: wrap;
    }
    #flexClientesMto_1 {
		flex-basis: 100%;
	}
	#flexClientesMto_2 {
        margin-bottom: 20px;
		flex-basis: 100%;
	}

	.tablaResultadosCuotas {
		width: 100% !important;
	}

    .bloqueConceptoPresupuesto p.numConcepto {
        margin-top: 0.5rem;
        margin-right: 0rem;
        margin-bottom: 1rem;
        margin-left: .5rem;
    }
    .bloqueConceptoPresupuesto img {
        margin-top: .5rem;
        margin-left: .5rem;
        margin-bottom: .5rem;
    }
    .bloqueServicioAceptacion {
        margin-top: 1.5rem;
    }

    .contenedorBolsaHoras {
        flex-wrap: wrap;
    }
    .bloqueSumaHoras {
        padding: .5rem;
        float: none;
        flex-basis: 90%;
    }
    p.horasTrabajadas {
        margin: 1rem;
        font-size: 1.1rem;
        line-height: 1.2rem;
    }
    p.horasDiferencia {
        margin: 1rem;
        font-size: 1rem;
        line-height: 1.1rem;
    }

    .bloqueGaleria {
		width: 100%;
		margin: 5px 0px 20px 0px;
	}

    .bloqueCobro {
        margin: 0 0rem 1rem 0rem;
        flex-basis: 100%;
    }

	/* index.php */
	#intrasolPrincipal {
		background-position: center;
	}

	.contenidoBanner{
		flex-direction: column;
	}

	#bannersPrincipales{
		width: auto;
	}

	.contenidoBanner img {
		height: 12rem;
		padding: 0;
		padding: 0rem 0rem 1.5rem 0rem;
	}

	.contenidoBanner p {
		margin-bottom: 2rem;
		width: auto;
		margin-left: auto;
		margin-right: auto;
	}

	.contenidoBanner div {
		flex-basis: auto;
		padding: 0rem 1rem 0rem 1rem;
	}

	.contenidoBannerReverse{
		flex-direction: column;
	}

	.contenidoBannerReverse img {
		height: 15rem;
		padding: 0rem 0rem 1.5rem 0rem;	
	}

	.contenidoBannerReverse p {
		margin-bottom: 2rem;
		width: auto;
	}

	.contenidoBannerReverse div {
		flex-basis: auto;
		padding: 0rem 1rem 0rem 1rem;
	}

	.tituloBanner h1 {
		width: 15rem;
		text-align: center;
		padding-bottom: 1rem;
	}

	#botonesIntrasol {
		flex-direction: column;
	}

	.datosBarraMenu .imgBotsMenu{
		max-width: 30px;
	}

	.datosBarraMenu img {
		height: auto;
		width: 100%;
		max-width: 20px;
	}

	#listaVentajas{
		flex-direction: column;
		width: auto;
		margin: 0;
	}

	#listaVentajas div{
		width: auto;
		margin: 1rem 1rem 0 1rem;
		height: auto;
	}

	.ventajasIzquierda div {
		border: none;
	}

	.ventajasDerecha div {
		border: none;
	}

	.ventajasIzquierda {
		margin: 0 auto 0 auto;
	}

	.ventajasDerecha {
		margin: 0 auto 0 auto;
	}

	#bannerVentajas h1{
		padding: 0 1rem 0 1rem;
		font-size: 1.5rem;
	}

	.efectoTag{
		width: auto;
	}

	.contenedorContactanos {
		text-align: center;
		align-items: center;
		flex-direction: column;
		background-image: none;
	}

	.infoForm{
		padding: 1.5rem 1.5rem 0 1.5rem;
	}

	#contenedorFormularioContactanos h1{
		font-size: 1.5rem;
	}

	#contenedorFormularioContactanos form {
		width: 20rem;
		padding: 1.5rem;
		margin-left: auto;
		margin-right: auto;
	}


	/*  */

	.contenidoServicio{
		padding: .5rem;
	}

	.contenidoServicio .contenidoBloqueSeccion {
		background-color: white;
		padding: .5rem;
	}
	.contenidoBarraMenuInicioSesion {
		flex-direction: column;
	}

	.contenidoBarraMenuInicioSesion div{
		padding: .3rem;
	}

	.barraMenuInicioSesion{
		padding: 0;
	}

	.datosBarraMenu{
		background-color: #006633;
		width: 100%;
		border-radius: 0;
		padding: .5rem;
		justify-content: center;
		border-bottom: 2px solid #343434;
		margin-top: .5rem;
	}

	.contenidoServicio .contenidoBloqueSeccion td{
		padding: 0;
	}

	.contenidoServicio .contenidoBloqueSeccion td{
		padding: 0;
	}

	.contenidoServicio{
		padding: 0;
	}


    #pie {
	    position: relative;
    }

}


/***********************************************
Mobile (landscape)
***********************************************/
@media only screen and (min-width: 480px) and (max-width: 767px) {

	.show-mobile { display:inherit !important; }
	.show-tablet { display:none !important; }
	.show-screen { display:none !important; }
	.hide-mobile { display:none !important; }
	.hide-tablet { display:inherit !important; }
	.hide-screen { display:inherit !important; }
	
	th.show-mobile { display:table-cell !important; }
	th.hide-tablet { display:table-cell !important; }
	th.hide-screen { display:table-cell !important; }	
	td.show-mobile { display:table-cell !important; }
	td.hide-tablet { display:table-cell !important; }
	td.hide-screen { display:table-cell !important; }
	td span.show-mobile { display:inline !important; }
	
    .sliderMobile {
        display: none !important;
    }

    #bloqueFormulario {
        top: 2rem;
        height: 250px;
    }

	#pie{
		top: 25rem;
	}

    #formularioLogin img {
        width: 50px;
    }

	#mensajeResultados {
		width: 50%;
	}

	.filaPaginacion {
        justify-content: space-between;
    }
    .resultadosBusqueda {
        display: inherit;
	}
	
	.botonInforme {
		width: 45%;
	}

    .flexCharts {
        margin-bottom: 2rem;

        display: flex;
        flex-wrap: nowrap;
        justify-content: space-around;
        align-items: flex-start;
    }
    .flexCharts > div {
        margin-bottom: 0;
        width: 40%;
    }
    
    .bloqueEnlacesInicio {
        width: auto;
	}
	
	.bloqueFichaRepositorioInicio .iconoFichaRepositorioInicio {
		flex-basis: 12%;
	}
	.bloqueFichaRepositorioInicio .datosFichaRepositorioInicio {
		flex-basis: 88%;
	}
    
	#bLogin {
		width: calc(50% - 20px);
	}
	
	#bPassword {
		width: calc(50% - 20px);
	}
	
	#bConfirmacionPassword {
		width: calc(50% - 20px);
	}
	
	#bPermisos {
		width: calc(50% - 20px);
	}

	.fichaEmpleado {
		width: 45%;
		flex-basis: 45%;
	}
	.fichaEmpleado img.fotoEmpleado {
		top: -20%;
		left: calc(100% - 60%);
		width: 20%;
    }
    .fichaEmpleadoPropia img.fotoEmpleado {
		top: -25%;
	}
	.fichaEmpleado h1 {
		margin-top: 1.5rem;
		font-size: 0.9rem;
		line-height: 1.2rem;
	}

	.calendario {
		flex-basis: 47%;
	}

	.buscadorControlHorario {
		justify-content: space-between !important;
	}
	.contenidoBuscadorControlHorario {
		flex-basis: 85%;
	}
	.buscadorControlHorario > img {
		flex-basis: 15%;
		margin-top: 1rem;
    }
    
    #tablaDocumentos, #tablaFacturas {
        margin-top: 1.5rem;
    }
    .bNuevoDocumentoCliente {
        top: 1rem; 
	}
	
	.tablaResultadosCuotas {
		width: 70% !important;
	}

    .bloqueGaleria {
		width: calc(50% - 10px);
		margin: 10px 0px 10px 0px;
	}
	

	/* index.php */

	.contenidoBarraMenuInicioSesion {
		flex-direction: column;
	}

	.contenidoBarraMenuInicioSesion img {
		max-width: 150px;
	}


	.datosBarraMenu{
		background-color: #006633;
		width: 100%;
		border-radius: 0;
		padding: .5rem;
		justify-content: center;
		border-bottom: 2px solid #343434;
		margin-top: .5rem;
	}

	.barraMenuInicioSesion{
		padding: .5rem 0 0 0;
	}

	#bloqueFormulario{
		height: auto;
		padding-bottom: 4rem;
	}

	/*  */

	.contenidoServicio{
		padding: 2rem;
	}

	.contenidoServicio .contenidoBloqueSeccion {
		background-color: white;
		padding: 3rem;
	}

	/* #pie{
		position: static;
	} */
}
