/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600;900&display=swap');

:root {
    
    --primario: rgba(0,0,0,.9); 
     --roboto: 'Roboto', sans-serif;
    --negro: #000;
    --blanco: #fff;
    --corpo: #2c9fb7;
    --corpo2: #2598a5;
    --bgcorpo: rgba(0, 29, 126, 0.8);
    --negroclarofondo: rgba(0,0,0,.7);
    --negromuyclarofondo: rgba(0,0,0,.1);
    --blancobg: rgba(255,255,255,0.5);
    --blancobgalpha: rgba(255,255,255,0.2);
    --blancobgnav: rgba(255,255,255,0.7);
    --bggrisclaro: rgba(204,204,204,.1);
    --bggris:#282b2e;
    --rojo: #FF0000;
    --bglines: #663399;
    --gris: #ccc;
    --tablaazul: #ECF0F9;
    --bordetabla:  #ebebeb;
    --backgroundtabla: #f8f8f8;
    --bordegrisagenda: rgba(153,153,153,.2);
    --tablehead: #B8CCE4;
    --tablerow: #DBE5F1;
    
}

body {
	font-family: var(--roboto);
	font-weight: 300;
	color: var(--primario);
    padding-top: 9.5em !important;
    text-align: justify;
  
}

body.home{
    padding-top: 7.8em !important;
}

.padd{
    padding-right: 2em;
}
.main {
	max-width: 1410px;
  
	margin-left: auto;
	margin-right: auto;
}

.span_ok {
	background-color: #CFFAC9;
	border: 1px solid #0C9;
	padding: 10px;
	display:block;
}

#gotoplink {
	position: fixed;
	bottom: 3%;
	right: 2%;
	display: none;
	color: var(--blanco);
	font-size: 1.5em;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    background-color: var(--corpo);
    text-decoration: none;
    z-index: 3000;
}

#head {
	position: fixed;
	left: 0;
	right: 0;
    top: 0;
	z-index: 3000;
     transition: 500ms ease all;
	
}

#head .flex {
	align-items: stretch;
	flex-grow: 3;
}
#head #logo {
    flex: 0.5;
    padding: 1.5em 0em;
     transition: 500ms ease all;

}

#head.scroll  #logo {
    flex: 0.5;
    padding: 1em 0em;
    

}

#head #logo img{
    height: 60px;
    width: auto;
}


#head #logo img.scroll{
    display: none;
}

#head #menu {
	flex: 1.5;
	display: flex;
	align-items: stretch;
}

#head #menu nav{
    display: flex;
    align-items: stretch;
    width: 100%;
}

#head #menu nav ul{
    display: flex;
    width: 100%;
    justify-content: flex-end;
  
}

#head {
    background-color: var(--blanco);
  
   
}

#head header{
      box-shadow: 0 1px 3px 0 rgb(0 0 0 / 20%);
}

.top_head{
    background-color: var(--corpo);
    color:var(--blanco);
       -webkit-transition: height 1s; /* Safari */
  transition: height 1s;
}

.scroll .top_head{
  height: 0;
}

.top_head a{
    color:var(--blanco);
    text-decoration: none;
}

.top_head .toleft{
    text-align: left;
    padding: 0.8em 0em;;
}

.top_head .toright{
    text-align: right;
     padding: 0.8em 0em;;
}

#head.scroll{
     box-shadow: 0 2px 8px 0 rgb(0 0 0 / 10%);
}

#head #logo img.scroll{
    display: block;
    
}


#head #menu nav ul li{
    display: flex;
    position: relative;
    z-index: 1;
    align-items: center;
    margin-left: 0.6em;
}

#head #menu nav ul li a{
    display: flex;
    align-items: center;
    padding: 0.5em 0;
    text-decoration: none;
    color: var(--negro);
    padding-left: 0.5em;
    padding-right: 0.5em;
    font-weight: 300;

    text-transform: uppercase;
    font-size: 0.9em;
}

#head #menu nav ul li.contacto a{
    display: flex;
    align-items: center;
    padding: 0.5em 0;
    text-decoration: none;
    color: var(--blanco);
    padding-left: 1em;
    padding-right: 1em;
    font-weight: 300;

    text-transform: uppercase;
    background-color: var(--corpo);
    border-radius: 20px;
}


#head #menu nav ul li a:hover{
     color:var(--corpo);
   
}

#head #menu nav ul li.selected a{
     color:var(--corpo2);
   
}

#head #menu nav ul li.contacto a:hover{
     color:var(--blanco);
   
}

#head #menu nav ul li.contacto.selected a{
     color:var(--blanco);
   
}



#nav{
    background-color: var(--corpo2);
    position: relative;
    padding-top: 6em;
    padding-bottom: 6em;
    cursor: default;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

#nav.plus{
    padding-top: 6.6em;
    padding-bottom: 6.6em;
}

#nav .solidcolor{
    background-color: var(--corpo);
    opacity: 0.9;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

#trigger-overlay {
    height: 50px;
    width: 50px;
    background: var(--corpo2);
    color: var(--blanco);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 15px;
    text-decoration: none;
}

#fotos_home{
    margin-top: 1em;
    position: relative;
    border-bottom: 1px solid var(--bordetabla);
}

#fotos_home h1{
    text-transform: uppercase;
    font-weight: 900;
}


#fotos_home img.movil {
    display: none;
}

#fotos_home img.pc{
 display: block;
}

#fotos_home img {
    width: 100%;
}

#fotos_home .caption {
    display: flex;
   
    justify-content: flex-end;
    z-index: 101;
    color:var(--blanco);    
    align-items: stretch;
       
}

#fotos_home .caption .content {
    position: absolute;
    color: var(--corpo);
    width: 50%;
    padding-right: 2em;
    padding-left: 2em;
    font-size: 1.2em;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    right: 0;
    bottom: 0;
    top: 0;
    flex-direction: column;
}
#fotos_home .caption .content h1{
    color:var(--blanco);
    text-shadow: 1px 1px 2px var(--negro);
}
#fotos_home .caption .content .frase{
    color:var(--blanco);
     text-shadow: 1px 1px 2px var(--negro);
}

#fotos_home .caption .content .quote h2 {

    font-size: 2em;
    font-weight: 600;
    text-transform: uppercase;
}

#fotos_home .caption .content .quote h2 span{

}

#fotos_home .caption .content .sub_quote{
    font-size: 1.4em;
    padding-bottom: 0.5em;
}
#fotos_home .caption .content .button a{
    display: inline-block;
    padding: 1em;
    border: 3px solid var(--blanco);
    color:var(--blanco);
    text-decoration: none;
    font-weight: 400;
    font-size: 1.2em;
    border-radius: 9px;
}


#fotos_home .botonera{
    padding-top: 1em;
    display: flex;
    flex-wrap: wrap;
}


#fotos_home .botonera a{
    
        display: flex;
    align-items: center;
    padding: 0.5em 0;
    text-decoration: none;
    color: var(--blanco);
    padding-left: 1em;
    padding-right: 1em;
    font-weight: 300;
    text-transform: uppercase;
    background-color: var(--corpo);
    border-radius: 20px;
    margin-left: 0.5em;
    margin-right: 0.5em;
}


#fotos_home .botonera a.repuestos{
    background-color: var(--gris);
}

#empresa_home  a {
    display: inline-block;
    align-items: center;
    padding: 0.5em 0;
    text-decoration: none;
    color: var(--blanco);
    padding-left: 1em;
    padding-right: 1em;
    font-weight: 300;
    text-transform: uppercase;
    background-color: var(--corpo);
    border-radius: 20px;
    font-size: 1.2em;
}

#empresa_home .flex{
    align-items: center;
}

#empresa_home .laimagen{
    text-align: right;
}

#empresa_secc .flex{
    align-items: center;
}

#empresa_secc .laimagen{
    text-align: right;
}


#empresa_secc .flex  a {
    display: inline-block;
    align-items: center;
    padding: 0.5em 0;
    text-decoration: none;
    color: var(--blanco);
    padding-left: 1em;
    padding-right: 1em;
    font-weight: 300;
    text-transform: uppercase;
    background-color: var(--corpo);
    border-radius: 20px;
    font-size: 1.2em;
}

.imagen_empresa{
    padding: 2em;
    position: relative;
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
}

.imagen_empresa:after{
    position: absolute;
    top: 3em;
    bottom: 1em;
    left: 1em;
    right: 1em;
    content: "";
    border:4px solid var(--corpo);
}

@-webkit-keyframes lines-moved {
    from {
        left: 0;
    }
    to {
        left: -2000px;
    }
}

.over_blue-lines{
    
    background-color: var(--bglines);
   margin-top: -0.5em;  
  

}

.over_blue-lines.relative{
      margin-top: 0em;  
    position: relative;
}

.over_blue-lines .flex{
    justify-content: center;
    align-items: center;
}

.over_blue-lines .frase{
    
    font-size: 1.3em;
    font-weight: 400;
    color:var(--blanco);
    padding: 2em;
    display: inline-block;
}

.over_blue-lines.relative .frase{
    
    font-size: 1.3em;
    font-weight: 400;
    color:var(--blanco);
    padding: 2em;
    padding-top: 2.4em;
    display: inline-block;
}


.over_blue-lines .boton{

    display: inline-block;
}

.over_blue-lines .boton a{
        padding: 0.5em;
    font-size: 1.3em;
    display: inline-block;
    background-color: var(--blanco);
    border-radius: 9px;
    font-weight: 400;
    color:var( --bglines);
    text-decoration: none;

}

.input {
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #ffffff;
	border: 1px solid #cccccc;
	-webkit-box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
	-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
	box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: var(--negro);
	padding: 8px 8px;
}
.textarea {
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #ffffff;
	border: 1px solid #cccccc;
	-webkit-box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
	-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
	box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: var(--negro);
	padding: 8px 8px;
}

.overlay {
    position: fixed;
    bottom: 0px;
    top: 0px;
    left: 0px;
    width: 0%;
    background: var(--corpo2);
    z-index: 3001;
    overflow: hidden;
    display: none;
    box-shadow: 1px 3px 3px rgb(0 0 0 / 50%);
    -webkit-transition-delay: 200ms;
    -moz-transition-delay: 200ms;
    transition-delay: 200ms;
}

.overlay.show {
    width: 80%;
    display: block;
      -webkit-transition: width 1s; /* Safari */
  transition: width 1s;
}

.overlay .overlay-close {
    position: absolute;
    right: 20px;
    top: 20px;
    z-index: 3002;
    color: var(--blanco);
    font-size: 1.4em;
    cursor: pointer;
}

.overlay .nav {
    text-align: left;
    position: relative;
    font-size: 1em;
    padding-top: 2%;
    padding-left: 2%;
    padding-right: 2%;
    padding-bottom: 20px;
}



.overlay .nav div.logonav {
    border-bottom: none;

}

.overlay .nav div {
    padding: 10px;
    border-bottom: 1px solid var(--blancobg);
      transition: 500ms ease all;
}

.overlay .nav div.me.selected{
    background-color: var(--corpo);
}

.overlay .nav div.me:hover{
    background-color: var(--blancobgalpha);
}

.overlay .nav div.logonav img {
    height: 60px;
}

.overlay a {
    color: var(--blanco);
    text-decoration: none;
    display: block;
}

.overlay .nav div.me.selected a{

}

.overlay .nav div.destacado a {
     color: var(--blanco);
}


#bienvenida_home{
    padding-top: 100px;
    padding-bottom: 100px;
    display: flex;
    
}

#bienvenida_home .contenedor{
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: flex-end;
}

#bienvenida_home .contenedor .izquierda{
    
    -webkit-transition-delay: 200ms;
    -moz-transition-delay: 200ms;
    transition-delay: 200ms;
    max-width: calc(50% - -0.001px);
    padding-left: 1%;
    padding-right: 1%;
    
}

.cabecera{
    
    line-height: 1.125rem;
    padding-left: 0.83em;
    position: relative;
    margin-bottom: 1em;
    z-index: 0;
    display: inline-block;
    
}
.cabecera:before{
    content: " ";
    display: block;
    background: var(--corpo2);
    width: 2.5rem;
    height: 2.5rem;
    position: absolute;
    top: -0.75rem;
    left: 0;
    z-index: -1;
}    


a.btn{
 
    text-decoration: none;
   background-color: var(--corpo2);
    color: var(--blanco);
    border-radius: 9px;
    display: flex;
    align-items: center;

    padding: 0.5em 0;  
    padding-left: 0.5em;
}

a.btn.inline{
 
    text-decoration: none;
   background-color: var(--corpo2);
    color: var(--blanco);
    border-radius: 9px;
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
    align-items: center;

    padding: 0.5em;  
    
}

#foot{
    
padding-bottom: 3em;
    padding-top: 3em;
    background-color: var(--backgroundtabla);
}

#foot .flex{
    justify-content: center;
}

#foot a{
    color:var(--corpo);
}



#foot_final{
    font-size: 0.9em;
    background-color: var(--bggris);
     padding: 20px 0 20px 0;
    color:var(--blanco);
     padding-left: 2em;
    padding-right: 2em;
}

#foot_final .legal_foot_final, #foot_final .reservas_foot_final {
    
    width: 50%;
}

#foot_final .reservas_foot_final {
  text-align: right;
}

#foot_final .reservas_foot_final a{
      padding: 0 10px;
    color: var(--blanco);
    text-decoration: none;
}

#foot_final .reservas_foot_final a:last-child{
    padding-right: 0;
}

.slide_seccion{
    background-size: cover;
    position: relative;
    background-position: center center;
    background-repeat: no-repeat;
   
}

.slide_seccion:before {
    background: var(--corpo);
    opacity: .7;
     position: absolute;
    content: "";
    display: block;
    left: 0px;
    top: 0px;
    right: 0px;
    bottom: -1px;
    overflow: hidden;
}

.slide_seccion .over_slide{
    padding-top: 16em;
    padding-bottom: 6em;
    display: flex;
}

.slide_seccion .cabecera a{
    color:var(--blancobgnav);
    position: relative;
    text-decoration: none;
}

.slide_seccion .cabecera a:after{
    content: " ";
    margin: 0 7px;
    background: var(--blancobgnav);
    letter-spacing: inherit;
    width: 4px;
    height: 1px;
    opacity: .2;
}

.slide_seccion .titulo_seccion{
    
    font-size: 3.75rem;
    color: var(--blanco);
        font-weight: bold;
    letter-spacing: -.03em;
    line-height: 1;
    position: relative;
    
}

#somos_home{
    padding-top: 4em;
    padding-bottom: 4em;
     padding-left: 2em;
    padding-right: 2em;
    overflow: hidden;
      background: #f6f6f6 url(../cdn/fondo_puntos.png) top center repeat;
}

#somos_home .flex{
    
    align-items: stretch;
}

#somos_home .presentacion{
    width: 60%;
    text-align: left;
    padding-right: 4em;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.titular{
    font-size: 3em;
    text-align: center;
    color: var(--blanco);
    font-weight: 600;
    position: relative;
    z-index: 999;
}

.subtitular{
    font-size: 1.3em;
    text-align: center;
   color: var(--blanco);
     position: relative;
    z-index: 999;
}

.titular span{
    color:var(--corpo);
}

#somos_home .imagen{
    width: 40%;
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: relative;
}

#somos_home .imagen img{
    z-index: 999;
    
}

#somos_home .imagen .svg{
    position: absolute;
    left: 4em;
    top: -2em;
    right: -4em;
    
    
}

.espacioseccion{
    padding-top: 60px;
    padding-bottom: 80px;
   
}

.titulo_contacto{
    text-align: center;
     padding-bottom: 60px;
}

.titulo_contacto h3{
   
    font-size: 2.50em;
    color: var(--negro);
    font-weight: 300;

}

#contacto .legal_mini{
    text-align: left;
    font-size: 0.8em;
}

#contacto .legal_mini a{
    color: var(--corpo);
}

#formulario_contacto{
     padding-top: 60px;
    padding-bottom: 60px;
    
}

.titulo_formulario{
    
     text-align: center;
     padding-bottom: 60px;
}

.titulo_formulario h3{
   
    font-size: 2.50em;
    color: var(--negro);
    font-weight: 300;

}

#frm_contacto {

    background-color: var(--blanco);
   
    margin-left: auto;
    margin-right: auto;
   
}

#formas_contacto {
    background-image: linear-gradient(to bottom, var(--bggris), var(--blanco));
}

.formas_contacto {
    padding-top: 5%;
    padding-bottom: 5%;
    display: flex;
    flex-wrap: wrap;
}

.formas_contacto .forma {
    width: 33%;
    text-align: center;
}

.formas_contacto .forma .icono {
    font-size: 2em;
    padding: 10px;
    color: var(--corpo2);
}

.formas_contacto .forma .titulo {
    font-size: 1.2em;
    padding: 10px;
    font-weight: 800;
}

.formas_contacto .forma .datos {
    padding: 10px;
}

#frm_contacto label {
    display: block;
    padding-bottom: 5px;
    padding-top: 5px;
}

#frm_contacto .input, #frm_contacto .textarea {
    display: block;
    margin-bottom: 5px;
    width: 100%;
    font-family: var(--roboto);
    font-size: 13px;
}

#map_canvas {
    width: 100%;
    height: 320px;
}

.error{
    border: 1px solid var(--rojo);
}



.posts-item-actions {
	text-align: center;
}
.social-buttons {
	width: 100%;	
    display: flex;
    flex-wrap: wrap;
}
.social-buttons .btn-large{
    margin-right: 0.8em;
}

.btn-facebook {
	background-color: #3b5998;
}
.btn-twitter {
	background-color: #6cb7f0;
}
.btn-linkedin{
	background-color: #0a66c2;	
}
.btn-large:hover {
	box-shadow: 0 5px 11px 0 rgba(0,0,0,.18), 0 4px 15px 0 rgba(0,0,0,.15);
}
.btn-large {
	text-decoration: none;
    padding: 0.5em;
    padding-left: 0.2em;
    padding-right: 0.3em;
	color: var(--blanco);
	text-align: center;
	cursor: pointer;
    will-change: opacity, transform;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
}



.lines_banner {
    background: url(../cdn/circle_line.png) top left repeat;
    position: absolute;
    height: 11px;
    width: 100%;
    z-index: 100;
    top: 0;
}

#banner_espectaculos{
    
    padding: 50px 0 50px 0;
    position: relative;
  
   padding-left: 2em;
    padding-right: 2em;

}

#banner_espectaculos .titular {

    text-align: center;
}


  #head #menu nav ul li.movil {
    display: none;
    
}    

.cabecera_migas{
    position: relative;
    text-align: center;
}

.cabecera_migas img.pc{
    display: inline;
}

.cabecera_migas img.movil{
    display: none;
}



#texto_secciones{
    padding: 4em 1em;
}

#texto_secciones.legal a{
    color:var(--corpo);
}

#texto_secciones.legal ul{
    margin-left: 2em;
}

#texto_secciones .grid_6{
    padding: 1em;
}


#texto_secciones h1 span{
    color:var(--corpo);
}


 a.corpo {
    color: var(--corpo);
}


label.click{
    cursor: pointer;
}

label.bold{
    font-weight: 600;
}

span.red{
    color:var(--rojo);
}

.btn_formulario_limpiar{
    text-decoration: none;
    background-color: var(--gris);
    color: var(--negro);
    border-radius: 9px;
    display: inline-block;
    padding: 0.5em;
    margin: 0.5em;
}

.btn_formulario_confirmar{
      text-decoration: none;
    background-color: var(--corpo);
    color: var(--blanco);
    border-radius: 9px;
    display: inline-block;
    padding: 0.5em;
     margin: 0.5em;
}

.error_condiciones{
    display: none;
    font-size: 0.9em;
}



.error_div{
    color:var(--rojo);
    padding: 0.1em;
}



.mini{
    
    font-size: 0.9em;
}


.texto_auxiliar{
    padding: 1em;

}

#homediv{
    position: relative;
    padding-top: 1em;
}

#over_video{
    position: relative;
    margin-left: auto;
    margin-right: auto;
    margin-top: -2em;
    background-color: var(--corpo2);
    text-align: center;
    z-index: 2000;
    max-width: 80%;

}

#over_video .titulo{
    font-size: 5em;
    font-weight: 600;
    color:var(--blanco);
    padding-left: 2em;
    padding-right: 2em;
}

#over_video .subtitulo{
   
    border-top: 1px solid rgba(204,204,204,0.3);
    font-size: 1.2em;
    padding-top: 0.5em;
    color:var(--blanco);
     padding-left: 2em;
    padding-right: 2em;
    padding-bottom: 1em;
}
#over_video .vermas{
     padding-top: 0.5em;
    padding-bottom: 0.5em;
    color:var(--blanco);
     padding-left: 2em;
    padding-right: 2em;
}

#over_video .vermas a{
    color:var(--blanco);
    font-size: 2em;
}

.divider{
    text-align: left;
    padding-top: 15px;
    padding-bottom: 15px;
}

.divider-separator{
    
    border-top: 1px solid var(--negromuyclarofondo);
    width: 100%;
    margin: 0 auto;
    margin-left: 0;
}

#lista_espectaculos{
    
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding-top: 2em;
    align-items: stretch;
}

.item_espectaculos{
    width: 31%;
    margin: 1%;
    border:1px solid var(--bordegrisagenda);
}

.item_espectaculos .inner{

    margin-bottom: 2em;
    display: flex;
    flex-wrap: wrap;
    
    align-items: center;
}

.item_espectaculos .imagen{
   
    z-index: 99;
    position: relative;
    overflow: hidden;
    width: 100%;
}

.item_espectaculos .imagen img{
   
     transition: 500ms ease all;
}

.item_espectaculos:hover .imagen img{
   
     transform: scale(1.1)
}

.item_espectaculos .texto{
    width: 100%;   
    padding: 2em;
    background-color: var(--blanco);
    z-index: 100;
    position: relative;
    
}

.item_espectaculos .texto .destacar{
    display: inline-block;
    padding: 1em;
    font-size: 1.1em;
    background-color: var(--corpo);
    color:var(--blanco);
    position: absolute;
    right: 0;
    top: -1em;
}

.item_espectaculos .texto .titulo{
    font-size: 2em;
    padding-bottom: 0.5em;
    background-color: var(--blanco);
    font-weight: 600;
}

.item_espectaculos .texto .subtitulo{

    padding-bottom: 1em;
    background-color: var(--blanco);
}

.item_espectaculos .texto .leermas a{

    display: inline-block;
    padding: 0.6em;
    color:var(--negro);
    background-color: var(--corpo2);
    text-decoration: none;
}

#banner_agenda {
    padding: 60px 0 50px 0;
    position: relative;
    padding-left: 2em;
    padding-right: 2em;
}

#banner_agenda .titular {
    text-align: center;
}

#lista_agenda{
    text-align: center;
 
    margin-left: auto;
    margin-right: auto;
    
}

#lista_agenda .year{
    font-size: 2em;
    font-weight: 600;
     padding-top: 2em;
}

#lista_agenda .dia{
    font-size: 1.6em;
     padding-top: 1em;
     padding-bottom: 1em;
 
}


#lista_agenda .mes{
    font-size: 1.6em;
     padding-top: 1em;
     padding-bottom: 1em;
    padding-left: 0.2em;
}


#lista_agenda .entrada{
    

         border: 1px solid var(--bordegrisagenda);
    display: flex;
    flex-wrap: wrap;
    padding: 0.6em;
    align-items: center;
    font-size: 0.9em;
    
}

#lista_agenda .entrada:nth-child(odd){
    
 background-color: var(--bggrisclaro);
     
    
}
#lista_agenda .entrada:nth-child(even){
    
 background-color: var(--blanco);
     
    
}


#lista_agenda .entrada .descripcion_fecha{
    display: inline-block;
    padding: 1em;
    background-color: var(--corpo);
    color:var(--blanco);
    margin-bottom: 0em;
    width: 20%;
}


#lista_agenda .entrada .boton{
    display: inline-block;
    padding: 1em;
  
    width: 20%;
}

#lista_agenda .entrada .descripcion_definicion{
    display: inline-block;
    padding: 1em;
  
    width: 60%;
}

#lista_agenda .entrada .nombre{
font-weight: 600;
    font-size: 1.2em;
}

#listado_agenda{
    padding-bottom: 5em;
}

#banner_agenda  .svg {
    position: absolute;
    left: 4em;   
    right: 4em;
    top: 4em;
    opacity: 0.5;
}

#banner_agenda .descripcion_definicion{
    width: 50%;
    text-align: left;
    padding-left: 1em;
}


#galeriahome{
    background-color: var(--backgroundtabla);
    padding: 4em;
    text-align: center;
}

#galeriahome img{
   padding: 0.5em;
    max-width: 200px;
}




.main_datos{
    max-width: 860px;
    padding: 2em;
    margin-left: auto;
    margin-right: auto;
}

.elvideo{
    text-align: center;
    padding-bottom: 2em;
}

#foot a.nolink{
    text-decoration: none;
}

.jcarousel {
    position: relative;
    overflow: hidden;
}

.jcarousel ul {
    width: 10000em;
    position: relative;

    /* Optional, required in this case since it's a <ul> element */
    list-style: none;
    margin: 0;
    padding: 0;
}

.jcarousel li {
    /* Required only for block elements like <li>'s */
    float: left;
}

.separator{
    height: 1em;
}

.langs span{
    cursor: pointer;
}

.grecaptcha-badge { 
    visibility: hidden !important;
}

.repading{
    padding: 1em;
}

#home_noticias{
    padding-top: 3em;
    padding-bottom: 3em;
}

#home_noticias .flex{
    align-items: center;
}

.diapositiva_home img{
    width: 100%;
}

.morado{
    color:var(--corpo2)
}

.overimage{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 1em;
    padding-bottom: 2em;
    font-size: 1.2em;
    background-color: var(--negroclarofondo);
    z-index: 2000;
}

.overimage a{
    color:var(--blanco);
    text-decoration: none;
}

.overimage .min{
    display: inline-block;
    font-size: 0.7em;
    color: var(--blanco);
    padding-top: 0.4em;
    margin-top: 0.4em;
    border-top: 2px solid var(--corpo2);
}

.lista_publicacion {
    padding-bottom: 1.2em;
    font-size: 1.2em;
    
}

.lista_publicacion a{
    color:var(--corpo);
    text-decoration: none;
}

.lista_publicacion a:hover{
    color:var(--corpo);
    text-decoration: underline;
}

.lista_publicacion i{
    color:var(--corpo2);
}

#puntos_home{
        background-color: var(--corpo);
    padding-top: 4em;
    padding-bottom: 11em;
    position: relative;
}

#puntos_home .hero-shape {
    position: absolute;
    bottom: 0px;
    left: 0px;
}

#puntos_home .flex{
    align-items: center;
}

#puntos_home .izquierda .subtitulo{
    font-size: 1.4em;
}

#puntos_home .izquierda .titulo{
    font-size: 3em;
    font-weight: 600;
    color: var(--blanco);
    position: relative;
    display: inline-block;
}

#puntos_home .izquierda .titulo:after{
    content: "";
    position: absolute;
    bottom: 0em;
    left: 0;
    right: 1em;
    height: 0.1em;
    background-color: var(--blanco);
}

#puntos_home .derecha{
    text-align: right;
}

#puntos_home .derecha .titulo {
    font-size: 1.4em;
    color: var(--blanco);
}

#puntos_home .derecha .texto {
    font-size: 1.1em;
 
}

.puntos {
    box-shadow: 0 4px 10px 0 rgba(74, 74, 74, .3), 0 4px 10px rgba(0, 0, 0, .08);
    background-color: var(--blanco);
    padding: 1em;
    
    z-index: 99;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.puntos .punto {
    width: 33%;
    padding: 0.8em;
}

.puntos .punto .primera_linea .elicono {
    width: 80px;
    max-width: 80px;
    height: 80px;
    background-color: var(--corpo2);
    color: var(--blanco);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2em;
    border-radius: 50%;
    overflow: visible;
    margin-left: auto;
    margin-right: auto;
}

.puntos .punto .primera_linea .eltexto {
    padding: 1em;
    font-weight: 600;
    font-size: 1.2em;
    text-transform: uppercase;
}

.puntos .punto   a{
    color:var(--defecto);
    text-decoration: none;
}

.puntos .punto .primera_linea {
    display: block;
    text-align: center;
}

.puntos .punto .segunda_linea {
    padding: 0em 0 1em 0;
}

a{
   color: var(--corpo2);

}

a.cmd {
    background-color: var(--corpo2);
    color: var(--blanco);
    text-decoration: none;
    padding: 0.5em;
    display: inline-block;
}

a.cmdr {
    background-color: var(--corpo2);
    color: var(--blanco) !important;
    text-decoration: none;
    padding: 0.5em;    
    display: flex;
    width: 2em;
    height: 2em;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}

#banner_contacto{
    padding: 4em 0em;
    background-image: url("../cdn/banner_contacto.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    color: var(--blanco);
    
}

#banner_contacto a {
    padding: 0.8em;
    background-color: transparent;
    border: 1px solid var(--blanco);
    color: var(--blanco);
    text-transform: uppercase;
    text-decoration: none;
    font-weight: 600;
    display: inline-block;
}

#banner_contacto h2{
    font-size: 2em;
}


#banner_agenda{
    text-align: center;
    background-color: var(--corpo2);
    color: var(--blanco);
}

#banner_agenda .flex{
    justify-content: center;
}

.listado_agenda{
    
}

.flex.horizontal{
    align-items: center;
}

.corpo2{
    color: var(--corpo2);
}

.noticia {
    width: 31%;
    margin: 1%;
    border: 1px solid var(--corpo2);
    background-color: var(--blanco);
    z-index: 99;
}

.noticia .contenido {
    padding: 1em;
    padding-bottom: 3em;
}

.noticia .descripcion {
    margin-bottom: 1em;
    margin-top: 1em;
}

.noticia .min{
   font-size: 0.9em;
}


#entradanoticia .imagen{
    padding-bottom: 2em;
}

#entradanoticia .titular_noticia{
    text-align: center;
    font-size: 1.4em;
}

.tabla_academicos td{
    padding: 0.5em;
}

.tabla_academicos tr{
    background-color: var(--tablerow);
    
}

.tabla_academicos tr.head{
    background-color: var(--tablehead);
    font-weight: 600;
}

#premios ol{
    margin-left: 1em;
}

#premios ol p:first-child{
    padding-bottom: 1em;
}

#agenda .subtitular{
    padding-bottom: 0px;
}

.cuadro_imagen{
    background-color: var(--bggrisclaro);
    border: 1px solid var(--bordegrisagenda);
   
    padding: 0.6em;
}

#head #menu nav ul li.menu {
    display: none;
}

.texto_saluda{
    flex:0.8;
}

.imagen_saluda{
    flex:0.2;
    text-align: center;
    padding-bottom: 2em;
}

#formularioelemento {
    padding: 4em;
    background-color: var(--corpo);
}

#formularioelemento .titulo {
    padding: 15px;
    text-align: center;
    font-size: 2em;
    color:var(--blanco);
    font-weight: 800;
 
  
}

#formularioelemento form {
    max-width: 640px;
    margin: auto;
    padding: 2em;
    border-radius: 1em;
}

#frm_contacto label {
    display: block;
    padding-bottom: 5px;
    padding-top: 5px;
}

#frm_contacto .input, #frm_contacto .textarea {
    display: block;
    margin-bottom: 5px;
    width: 100%;
   
    font-size: 13px;
}

#formularioelemento .btn {
    display: block;
   
}

#maquinaria_secc .flex{
    
}

#maquinaria_secc .flex ul{
    margin-left: 1em;
}

.listado_marcas{
    display: flex;
    flex-wrap: wrap;
}

.listado_marcas .apartado{
    width: 100%;
    padding: 1em;
    
}
.listado_marcas .apartado .titulo{
   background-color: var(--corpo);
    color:var(--blanco);
    padding: 1em;
    margin-bottom: 1em;
    
}

.listado_marcas .apartado .imagenes{
    text-align: center;
}

.listado_marcas .apartado .imagenes img{
    max-width: 120px;
}

#foot p{
    margin-bottom: 0.5em;
}

.entrada_servicio{
    width: 33%;
    padding: 2em;
    position: relative;
    text-align: center;
}

.entrada_servicio .imagen{
    margin-bottom: 2em;
    position: relative;
}

.entrada_servicio .imagen:before{
   
    position: absolute;
    top: 1em;
    bottom: -1em;
    left: -1em;
    right: -1em;
    content: "";
    border: 4px solid var(--corpo);
    pointer-events: none;

}

.entrada_servicio a.btn {
    text-decoration: none;
    background-color: var(--corpo2);
    color: var(--blanco);
    border-radius: 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5em;
    text-align: center;
}

.texto_marcas{
    display: flex;
    
}

.texto_marcas .texto{
    width: 50%;
    padding-right: 2em;
}

.texto_marcas .marcas{
    width: 50%;
}

.respuestos {
    margin-left: auto;
    margin-right: auto;
    font-size: 0.9em;
    border:1px solid var(--gris);
}

.respuestos td{
    padding: 1em;
}

.respuestos tr.head {
    background-color: var(--corpo) !important;
    color: var(--blanco);
    font-weight: 600;
}

.respuestos tr {
    background-color: var(--bggrisclaro);
}

.respuestos tr:nth-child(odd) {
    background-color: var(--blanco);
}

.tocenter{
    align-items: center;
}

.legal ul ,.legal ol{
    padding-left: 1em;
}

@media only screen and (max-width: 1140px) {
    
#head #menu nav ul li {
    display: flex;
    position: relative;
    z-index: 1;
    align-items: center;
    margin-left: 0.2em;
}
    

    
}


@media only screen and (max-width: 1024px) {
	
    .ocultarmovil{
        display: none;
    }
    
    #head #menu nav ul li.normal{
        display: none;
    }
    
   #head #menu nav ul li.menu{
        display: flex;
    }

    .top_head .toleft {
    text-align: left;
    padding: 0.8em 0em;
        width: 50%;
        font-size: 0.8em;
        
}
    
    .top_head .toright {
    

        padding: 0.8em 0em;
        width: 50%;
        font-size: 0.8em;
        text-align: right;
}
    
    #head #menu {
    flex: 1;
    display: flex;
    align-items: stretch;
}    
   
#head #logo {
    flex: 1;
    padding: 0.8em 0em;
}    
    
.puntos {
 
    margin-top: 0em;
   
}

    #puntos_home{
        padding-top: 1em;
    }
 
    .puntos .punto .primera_linea .elicono {
    width: 60px;
    max-width: 60px;
    height: 60px;
   
    font-size: 1.4em;
    
}
    
    .puntos .punto .primera_linea .eltexto {
    padding: 0.6em;

    font-size: 1em;
   
}
    
.lista_publicacion {
    padding-bottom: 1em;
    font-size: 1em;
}    
    
    
.overimage {

    padding: 0.5em;
    padding-bottom: 1em;
    font-size: 1em;
  
}   
    
#fotos_home .caption .content {
    padding-top: 0px;

    padding-left: 10vw;
    padding-right: 10vw;
    font-size: 1em;

}   
    
#head #menu nav ul li a#trigger-overlay {
   

    color: var(--blanco);

    border-bottom: unset;
}    
    
    
.noticia {
    width: 48%;
    margin: 1%;
    border: 1px solid var(--corpo2);
    background-color: var(--blanco);
    z-index: 99;
}    
    
    
.flex_saluda{
    flex-direction: column-reverse;
}    
  
.texto_saluda{
    flex:1;
}

.imagen_saluda{
    flex:1;
    
}      
    
    
body.home {
    padding-top: 5.7em !important;
}    
    
#fotos_home .caption .content {
    
    
    width: 100%;
    }
    
    
#fotos_home h1 {
   font-size: 1.4em;
}    
   
#puntos_home .izquierda .titulo {
    font-size: 2em;
   
}    
    
#puntos_home .izquierda .titulo:after {
   
    right: 0em;
 
}    
    
    
#fotos_home .caption .content .frase {
    display: none;
}    
    
    
#formularioelemento {
    padding: 1em;
  
}    
    
body {

    padding-top: 6.8em !important;
}    
    
    
.entrada_servicio {
    width: 100%;
    padding: 2em;
    position: relative;
    text-align: center;
}    
    
    
.texto_marcas .texto {
    width: 100%;
    padding-right: 0em;
}    
    
.texto_marcas .marcas {
    width: 100%;
}    
    
}

@media only screen and (max-width: 860px) {
  
    
#foot_final .legal_foot_final, #foot_final .reservas_foot_final {
    width: 100%;
    text-align: center;
    padding-bottom: 1em;
}
   
    
.puntos .punto {
    width: 100%;
    padding: 0.8em;
}    
   
#foot_final .reservas_foot_final {
    text-align: center;
}    
    
#fotos_home img.pc {
    display: none;
}    
    
#fotos_home img.movil {
    display: block;
}    
    
    
#fotos_home .caption .content {
 
    padding-left: 5vw;
    padding-right: 5vw;
  

}  
    
#fotos_home {
    margin-top: 0em;
    position: relative;
}    
    
.titular {
    font-size: 2em;
   
}    
    
#lista_agenda .entrada {
    flex-direction: column;
}    
    
#lista_agenda .entrada .descripcion_fecha {
    display: inline-block;
    padding: 1em;
    background-color: var(--corpo);
    color: var(--blanco);
    margin-bottom: 0em;
    width: 100%;
}    
   
#lista_agenda .entrada .descripcion_definicion {
    display: inline-block;
    padding: 1em;
    width: 100%;
}    
#lista_agenda .entrada .boton {
    display: inline-block;
    padding: 1em;
    width: 100%;
}    
    
#nav ul li:nth-child(3) {
   display: none;
}    
    
#entradanoticia .titular_noticia {
    text-align: center;
    font-size: 1em;
}    
    
#contacto .flex{
    flex-direction: column-reverse;
}    
    
#empresa_home .laimagen {
    text-align: center;
}    
    
#puntos_home {
        text-align: center;
    }    
    
#puntos_home .derecha {
   text-align: center;
    padding-top: 2em;
}    
    
}
@media only screen and (max-width: 480px) {
  
    
    .ocultarenmovil{
        display: none;
    }
    
    .noticia {
    width: 98%;
    margin: 1%;
    border: 1px solid var(--corpo2);
    background-color: var(--blanco);
    z-index: 99;
}    
    
    
    
         #head #logo img {
    height: auto;
    width: auto;
}    

    
#galeriahome{
 
    padding: 0.5em;
   
}

#galeriahome img{
   padding: 0.3em;
    max-width: 96px;
}
    
.top_head a {
   font-size: 1.3em;
}    

    
}
