/*******************************/
/* Generales
/*******************************/

body {
	font-family: "lato",sans-serif;
	font-style: normal;
	font-weight: 300;
	font-size: 16px;
	line-height: 130%;
 	color: #333;
 	background-color: #FFF;
}

h2 {
	margin: 0 0 20px 0;
	font-size: 20px;
	color: #000 !important;
}

@media (min-width: 768px) {
	body {
		font-size: 18px;
	}
	h2 {
		font-size: 26px;
	}
}

a {
	font-weight: 400;
	color: #AE0B3E;
}

a:hover,
a:focus {
  color: #DDD !important;
  text-decoration: none;
}

.btn-gde {
	display: inline-block;
	padding: 15px 40px;
	text-align: center;
	font-size: 15px;
	font-weight: 300;
	text-transform: uppercase;
	color: #FFF !important;
	border: 0;
	background: #AF173F;
}

a.btn-ch {
	display: inline-block;
	padding: 8px 15px 10px 15px;
	font-size: 14px;
	font-weight: 300;
	text-transform: uppercase;
	color: #FFF !important;
	-webkit-border-radius: 0;
	   -moz-border-radius: 0;
	     -o-border-radius: 0;
			border-radius: 0;
	background-color: #AF173F;
}

.sm {
	margin-bottom: 0 !important;
}

.bloque {
	padding-top: 40px;
	padding-bottom: 40px;
}

@media (min-width: 768px) {
	.bloque {
		padding-top: 70px;
		padding-bottom: 70px;
	}
}

.bloque h2 {
	font-size: 40px;
	margin: 0;
	padding: 0;
}

.npt {
	padding-top: 0;
}

.telefono,
.telefono-footer {
    display: inline-block;
    margin-top: 10px;
    padding-left: 40px;
    line-height: 32px;
    font-size: 14px;
    color: #FFF;
    background: url(../img/portada/ico-tel-header.png) center left no-repeat;
}

.telefono-footer {
    margin-top: 0;
    padding-left: 30px;
    background: url(../img/portada/ico-tel-footer.png) center left no-repeat !important;
}

.cotizacion {
    display: inline-block;
    margin-top: 10px;
    padding: 5px 10px;
    font-weight: 300;
    text-transform: uppercase;
    font-size: 12px;
    color: #FFF;
    background: #AF173F;
}

.cotizacion:hover,
.cotizacion:focus {
    color: #FFF !important;
}

.marcacion {
	display: inline-block !important;
}


/*******************************/
/* Header
/*******************************/

.header {
	position: relative;
	padding: 25px 0;
}

/* Logo */
.logo {
    position: absolute;
    margin-top: 15px;
}

/* Menu */
.menu-top {
	position: absolute;
	position: fixed;
	z-index: 800;
	width: 100%;
	background-color: rgba(0,0,0,0.75);
}

.contenedor-menu-principal {
	display: block;
	text-align: left;
}

	.menu-top a.btn-menu {
		display: inline-block;
	  	padding: 10px;
	  	font-size: 30px;
	  	color: #FFF;
	}

	.menu-top a.btn-menu:hover,
	.menu-top a.btn-menu:focus {
		color: #AE0B3E !important;
	}

	.menu-top ul.menu {
		display: none;
		margin: 0;
		padding: 0;
		list-style-type: none;
		font-size: 0;
		/*background-color: #213781;*/
	}

	.menu-top ul.menu.visible {
		display: block;
	}

	.menu-top ul.menu > li {
		display: block;
		text-align: left;
	}

	.menu-top ul.menu > li > a {
		display: block;
		margin: 0;
		padding-left: 10px;
		padding-right: 10px;
		font-size: 14px;
		line-height: 35px;
		color: rgba(255,255,255,1);
		text-transform: uppercase;
	}

	.menu-top ul.menu > li:hover > a,
	.menu-top ul.menu > li > a:focus {
		color: rgba(255,255,255,0.5) !important;
	}

	.menu-top ul.menu > li.active > a,
	.menu-top ul.menu > li.current-menu-item a,
	.menu-top ul.menu > li.current-menu-parent > a,
	.menu-top ul.menu > li.current_page_parent > a {
		color: #FFF !important;
		background-color: rgba(0,0,0,0.3);
	}

	/* Segundo nivel */ 
	.menu-top ul.menu > li > ul {
		display: block;
		margin-left: 12px;
		padding: 0 10px;
		text-align: left !important;
	}

	.menu-top ul.menu > li > ul > li {
		display: block !important;
		margin: 0;
		text-align: left !important;
	}

	.menu-top ul.menu > li > ul > li > a {
		display: block;
	  	padding: 5px 0; 
	  	font-size: 14px;
	  	font-weight: 200;
	  	color: #FFF;
	}

	ul.menu > li > ul > li > a:hover,
	ul.menu > li > ul > li.active > a,
	ul.menu > li > ul.sub-menu > li.current-menu-item > a {
		color: rgba(255,255,255,0.3) !important;
	}

	ul.menu > li.llamanos {
		display: block;
		font-size: 16px;
		color: #FFF;
		line-height: 50px;
		text-align: center;
	}

	@media (min-width: 992px) {
		.menu-top .contenedor-menu-principal {
			margin-bottom: 0;
			text-align: center;
		}
		.menu-top a.btn-menu {
			display: none;
		}
		.menu-top ul.menu {
			display: block;
			margin: 0;
			border: 0;
			text-align: left;
			background-color: transparent;
		}
		.menu-top ul.menu > li {
			display: inline-block;
			position: relative;
			vertical-align: middle;
			text-align: center;
		}
		.menu-top ul.menu > li:first-child {
			margin-left: 0;
		}
		.menu-top ul.menu > li > a {
			padding-left: 20px;
			padding-right: 20px;
			line-height: 55px;
			color: #FFF;
		}
		.menu-top ul.menu > li:hover > a,
		.menu-top ul.menu > li > a:focus {
			color: rgba(255,255,255,0.3) !important;
			background-color: rgba(0,0,0,0.02);
		}
		.menu-top ul.menu > li.active > a,
		.menu-top ul.menu > li.current-menu-item a,
		.menu-top ul.menu > li.current-menu-parent > a,
		.menu-top ul.menu > li.current_page_parent > a {
			color: #000 !important;
			background-color: #AE0B3E;
		}
		/* Segundo nivel */
		.menu-top ul.menu > li > ul {
			display: none;
			padding: 0;
			margin-top: -3px;
			margin-left: 0;
			min-width: 200px;
			border-top: 3px solid #AE0B3E;
			background-color: #1D387A;
		}
		.menu-top ul.menu > li > ul > li > a {
			padding: 10px;
			color: #FFF !important;
			border-top: 1px solid rgba(255,255,255,0.2);
		}
		.menu-top ul.menu > li > ul > li:first-child > a {
			border-top: none;
		}
		.menu-top ul.menu > li > ul > li:hover > a,
		.menu-top ul.menu > li > ul > li.active > a,
		ul.menu > li > ul.sub-menu > li.current-menu-item > a {
			background-color: #13265B;
		}
		.menu-top ul.menu > li:hover > ul {
			display: block;
			position: absolute;
			left: 0;
			z-index: 150;
		}
	}

	@media (min-width: 1200px) {
		.menu-top ul.menu > li > a {
			padding-left: 30px;
			padding-right: 30px;
		}
		.menu-top ul.menu > li.active > a,
		.menu-top ul.menu > li.current-menu-item a,
		.menu-top ul.menu > li.current-menu-parent > a,
		.menu-top ul.menu > li.current_page_parent > a {}
	}

	/*@media (min-width: 1200px) {
		.menu-top ul.menu > li > a {
			padding-left: 30px;
			padding-right: 30px;
		}
	}*/


/*******************************/
/* Portada
/*******************************/

.portada {
    position: relative;
    z-index: 99;
    width: 100%;
    height: auto;
    opacity: 0;
    background: url(../img/portada/hero-1.webp) 50% 50% no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}


/*******************************/
/* Bloques
/*******************************/

.ubicacion-bloque {
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.ubicacion-bloque h2 {
    margin: 0;
    padding: 0;
    line-height: 300px;
    font-size: 40px;
    color: #FFF !important;
    text-align: center;
}


/*******************************/
/* Servicios
/*******************************/

.ubicacion-bloque.ubicacion-servicios {
    background: url(../img/portada/servicios.webp) 50% 50% no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.servicios {
    background: url(../img/portada/fondo-bloques.jpg) center top no-repeat;
}

    .servicios .container-fluid {
        margin-bottom: 40px;
        padding: 0;
    }

.servicios .detalle-bloque {
    padding: 15px 15px 0 15px;
    background: #FFF;
}

.servicios .detalle-bloque ul {
    margin: 20px 0 !important;
    padding: 0;
    list-style-type: none;
}

    .servicios .detalle-bloque ul li {
        margin: 0;
        padding: 0 0 0 15px;
        background: url(../img/portada/vineta.png) left center no-repeat;
    }

    .servicios .detalle-bloque ul li span {
        display: inline-block;
        margin-bottom: 5px;
        padding-bottom: 5px;
        width: 110px;
        font-weight: 400;
        border-bottom: 1px solid rgba(0,0,0,0.1);
    }


/*******************************/
/* Salones
/*******************************/

.ubicacion-bloque.ubicacion-salones {
    background: url(../img/portada/fondo-salones3.webp) 70% 70% no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.salones {}

    .salones .container-fluid {
        margin-bottom: 40px;
        padding: 0;
    }

/* Carrusel */
.carousel {
    margin-bottom: 0;
    padding: 0;
}

.carousel-control {
	left: -12px;
    height: 40px;
	width: 40px;
    background: none repeat scroll 0 0 #222222;
    border: 4px solid #DDD;
    border-radius: 23px 23px 23px 23px;
    margin-top: 70px;
}
.carousel-control.right {
	right: -12px;
}

.carousel-indicators {
    right: 50%;
    top: auto;
    bottom: -30px;
    margin-right: -19px;
}

.carousel-indicators li {
    background: #c0c0c0;
}

.carousel-indicators .active {
    background: #AF173F;
}

.salon {
    font-size: 14px;
}

.salon img {
    display: inline-block;
    margin-bottom: 10px;
    padding: 4px;
    background: #FFF;
}


/*******************************/
/* Contacto
/*******************************/

.contacto {
    background: rgba(221,221,221,0.3);
}

.contacto h2 {
	margin: 0 0 40px 0;
	padding: 0;
	font-size: 40px;
	text-transform: uppercase;
}

/* Forma */
#forma {}

/* CF7 */
div.wpcf7-response-output {
  margin: 35px 0 0 0 !important;
  padding: 0 !important;
  background: #F00;
}

span.wpcf7-not-valid-tip {
  font-size: 11px;
  font-style: italic;
}

div.wpcf7-validation-errors {
    border: 2px solid #FAEBCC;
    background: #FCF8E3;
    color: #8A6D3B;
    font-size: 16px;
    line-height: 140%;
}

div.wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 10px !important;
}

div.wpcf7-mail-sent-ok {
    border: 2px solid #D6E9C6;
    color: #3C763D;
    background: #DFF0D8;
}

/* Formularios */
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
select[multiple] {
	-webkit-appearance: none;
	   -moz-appearance: none;
	-webkit-border-radius: 2px;
	   -moz-border-radius: 2px;
	     -o-border-radius: 2px;
			border-radius: 2px;
}

.form-group {
	margin-bottom: 20px;
}

.form-group label {
	margin-bottom: 0px !important;
	font-weight: normal;
	font-size: 12px;
}

.form-control {
	height: 50px;
	border: 2px solid #EEE;
	-webkit-box-shadow: none;
	   -moz-box-shadow: none;
			box-shadow: none;
}

.form-control:focus {
	border-color: #CCC;
	-webkit-box-shadow: none;
	   -moz-box-shadow: none;
			box-shadow: none;
}

select.form-control {
	border-width: 2px;
}

select.form-control:focus {
	border-color: #CCC;
	-webkit-box-shadow: none;
	   -moz-box-shadow: none;
			box-shadow: none;
}

.checkbox label {
	margin-bottom: 15px;
}

label span.requerido {
	color: #F00;
}

button.btn-gde {
	color: #B25900;
	background: none !important;
}

button.btn-gde:hover {
	color: #6F3975 !important;
}


/*******************************/
/* Dirección
/*******************************/


.direccion h2 {
    margin-bottom: 40px;
}

.direccion .row {}

    .direccion .btn-ch {
        margin-top: 30px;
    }

@media (min-width: 768px) {
    .direccion .row {
        position: relative;
    }
    .direccion .btn-ch {
        position: absolute;
        top: 0;
        right: 0;
        margin-top: 0;
    }
}


/*******************************/
/* Mapa
/*******************************/

.mapa {
	text-align: center;
}

	.mapa .container-fluid,
	.mapa .row-fluid .col-sm-12 {
		padding: 0;
	}


/*******************************/
/* Footer
/*******************************/

.footer {
	font-size: 16px;
	color: #FFFFFF;
	-webkit-font-smoothing: antialiased;
	line-height: 130%;
	text-align: center;
	background: #1F1F1F;
}

.footer a {
	font-weight: 300;
	color: #AE0B3E;
}

.footer a:hover,
.footer a:focus {
	color: #DDD !important;
}

.footer h2 {
	margin-bottom: 25px;
	font-size: 22px;
	color: #FFF !important;
}

.footer .telefono {
	font-size: 22px;
}

/* Contáctanos */
.footer .contactanos {
	margin-top: 30px;
	margin-bottom: 30px;
}

@media (min-width: 768px) {
	.footer .contactanos {
		margin: 0;
	}
}

/* Redes */
.footer .redes {}

	ul.redes {
		margin: 15px 0 0 0;
		padding: 0;
		list-style-type: none;
		font-size: 0;
	}

		ul.redes li {
			display: inline-block;
			margin: 0 5px;
		}