* {outline:none;}

body
{
	margin-bottom: 75px;
}

a, a:focus, a:hover, a:active
{
	text-decoration: none;
}

/* evitar background amarillo autocompletado */
input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #fff inset !important;
}

/* quitar placeholder al hacer foco en un campo */
*::-webkit-input-placeholder { -webkit-transition: all .35s ease; }
*:-moz-placeholder { -moz-transition: all .35s ease; } /* FF 4-18 */
*::-moz-placeholder { -moz-transition: all .35s ease; } /* FF 19+ */
*:-ms-input-placeholder { transition: all .35s ease; } /* IE 10+ */

*:focus::-webkit-input-placeholder { color:transparent; }
*:focus:-moz-placeholder { color:transparent; } /* FF 4-18 */
*:focus::-moz-placeholder { color:transparent; } /* FF 19+ */
*:focus:-ms-input-placeholder { color:transparent; } /* IE 10+ */

.loading-screen h3
{
	font-family: 'Indie Flower', sans-serif;
}

#nav
{
	position: fixed;
	bottom: 0;
	top: auto;
	left: 0;
	width: 100%;
	padding: 0;
	z-index: 1000;
}

#menuPrincipal
{
	width: 100%;
	display: inline-flex !important;
	flex-wrap: wrap;
	padding: 10px 0;
	justify-content: space-between;
}

#menuPrincipal::before,
#menuPrincipal::after
{
	display: none;
}

#menuPrincipal .izq
{
	width: 500px;
	display: inline-block;
}

#menuPrincipal .logo
{
	width: 175px;
	display: inline-block;
	vertical-align: top;
	margin-right: 25px;
}

#menuPrincipal .logo img
{
	width: 100%;
}

#menuPrincipal .contacto
{
	width: 200px;
	display: inline-block;
	vertical-align: top;
}

#menuPrincipal .contacto p,
#menuPrincipal .contacto p a
{
	margin-bottom: 0;
	color: white;
	font-size: 13px;
	line-height: 1.5;
}

#menuPrincipal .contacto p:nth-child(2)
{
	letter-spacing: .6px;
}

#menuPrincipal .contacto p a
{
	font-size: 14px;
	letter-spacing: 1.4px;
	font-weight: 300;
}

#menuPrincipal .contacto p i
{
	font-size: 20px;
	vertical-align: middle;
	margin-bottom: 4px;
}

#menuPrincipal .links
{
	width: auto;
	display: inline-block;
	text-align: right;
	margin-top: 15px;
}

#menuPrincipal .links .nav li
{
	width: auto;
	display: inline-block;
	margin-left: 25px;
}

#menuPrincipal .links .nav li > a
{
	position: relative;
	font-weight: 500;
	padding: 0;
	margin: 0;
}

#menuPrincipal .links .nav li > a:hover,
#menuPrincipal .links .nav li > a:focus,
#menuPrincipal .links .nav li > a:active
{
	color: white;
	background-color: transparent;
}

#menuPrincipal .links .nav li > a::after
{
	position: absolute;
	content: '';
	background: white;
	height: 2px;
	width: 20px;
	bottom: -5px;
	left: 0;
	transition: all .55s ease;
}

#menuPrincipal .links .nav li:hover > a::after
{
	width: 100%;
}

#header a.header-scroll
{
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	outline: none !important;
	background: transparent !important;
	bottom: 125px;
	margin: 0;
	padding: 0;
	text-align: center;
}

#header a.header-scroll.mobile
{
	display: none;
}

#header a.header-scroll i
{
	-ms-transform: rotate(-90deg); /* IE 9 */
    -webkit-transform: rotate(-90deg); /* Safari */
    transform: rotate(-90deg);
	font-size: 60px;
	color: white;
	opacity: .8;
	transition: all .55s ease;
}

#header a.header-scroll:hover i
{
	opacity: .95;
	margin-top: 5px;
}

#header .carousel-control
{
	background: none !important;
	width: 10%;
	opacity: .7;
	transition: all .55s ease;
}

#header .carousel-control:hover
{
	width: 9%;
	opacity: 1;
}

#header .carousel-control .fa
{
	top: 45%;
}

#header .logo
{
	position: absolute;
	width: 300px;
	top: 60px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	z-index: 10;
}

#footer .footer-menu a
{
	transition: all .55s ease;
}

#footer ul a:hover
{
	color: white !important;
}

#intro em
{
	font-weight: bold;
}

#intro .section-divider
{
	color: #9ec554;
}

#calendario
{
	
}

#calendario h2
{
	margin: 50px 0;
}

#tiempo
{
	position: relative;
	padding: 100px 0 125px;
}

#tiempo h2
{
	font-size: 40px;
}

#tiempo .info
{
	position: relative;
	width: 650px;
	margin: 50px auto 0;
	padding: 50px 0;
	color: white;
	background: transparent;
}

#tiempo .info p
{
	font-weight: 400;
	padding-bottom: 15px;
	font-size: 22px;
}

#tiempo::after
{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,.5);
	z-index: -1;
}

#tiempo .page-scroll .fa
{
	margin-top: 0;
}

#tiempo .aemetDesktop iframe
{
	height: 250px !important;
}

#tiempo .aemetMobile
{
	display: none;
}

@media all and (max-width: 991px) {
	#tiempo .aemetMobile
	{
		display: block;
	}
}

#nosotros
{
	background: #eee;
}

#nosotros h2
{
	margin: 50px auto 0;
}

#nosotros h3
{
	color: inherit;
	font-size: 18px;
	font-weight: 600;
	line-height: 22px;
	text-align: left;
	margin: 50px 0 10px;
}

#nosotros .portlets
{
	width: 100%;
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 75px;
}

#nosotros .portlet
{
	position: relative;
	width: 22%;
	background: white;
	padding: 25px;
	margin: 25px 0 50px;
	text-align: center;
	cursor: pointer;
	-webkit-box-shadow: 1px 1px 15px 1px rgba(0,0,0,0.5);
	-moz-box-shadow: 1px 1px 15px 1px rgba(0,0,0,0.5);
	box-shadow: 1px 1px 15px 1px rgba(0,0,0,0.5);
	overflow: hidden;
}

#nosotros .portlet img
{
	width: 90px;
	margin: 0 auto;
}

#nosotros .portlet h4
{
	font-size: 18px;
	font-weight: 600;
	margin-top: 25px;
	text-transform: uppercase;
}

#nosotros .portlet .text
{
	position: absolute;
	background: white;
	left: 0;
	top: 105%;
	width: 100%;
	height: 100%;
	padding: 20px;
	transition: all .55s ease;
}

#nosotros .portlet .text > p
{
	position: absolute;
	width: 100%;
	height: auto;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	padding: 0 25px;
	font-size: 16px;
	font-weight: 600;
}

#nosotros .portlet .text > p a
{
	color: inherit !important;
	transition: all .55s ease;
}

#nosotros .portlet .text > p a:hover
{
	color: #9ec554 !important;
}

#nosotros .portlet:hover .text
{
	top: 0;
}

#nosotros .info
{
	padding-top: 10px;
	text-align: left;
}

#nosotros .info p
{
	font-size: 16px;
	padding-bottom: 10px;
}

#nosotros .info ul
{
	width: 100%;
	margin: 0 auto 15px;
	padding: 0;
}

#nosotros .info ul li
{
	list-style-type: none;
	list-style-image: none;
	text-align: left;
	font-size: 16px;
	padding-bottom: 10px;
}

#servicios
{
	background: white;
}

#servicios h2
{
	margin: 50px auto;
	max-width: 650px;
}

#servicios h3
{
	color: inherit;
	font-size: 18px;
	font-weight: 600;
	line-height: 22px;
	text-align: left;
	margin: 25px auto;
	max-width: 900px;
}

#servicios .list
{
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 900px;
	margin: 0 auto 125px;
}

#servicios .list > div
{
	width: 49%;
}

#servicios .list ul
{
	text-align: left;
    font-size: 16px;
    color: inherit;
}

#servicios .list ul li
{
	position: relative;
}

/*#servicios .list ul li::before
{
	position: absolute;
	content: '';
	background: #333;
	width: 8px;
	height: 8px;
	top: 9px;
	left: -20px;
	z-index: 10;
}*/

#servicios .list ul li img
{
	width: 35px;
	vertical-align: middle;
	margin-right: 15px;
}

#servicios .list ul li p
{
	display: inline-block;
	margin-bottom: 0;
}

#proyectos
{
	background: #eee;
}

#proyectos h2
{
	margin: 50px 0;
}

#contacto h3
{
	max-width: 650px;
	margin: 50px auto 0;
	text-align: left;
}

#contacto .trabaja
{
	margin-top: 25px;
}

#contacto .trabaja a
{
	font-weight: bold;
	transition: all .55s ease;
}

#contacto .trabaja a:hover
{
	color: #9ec554;
}

#bookForm .form-group .content
{
	position: relative;
	margin-bottom: 10px;
}

#bookForm .form-group .content::before
{
	position: absolute;
	content: '';
	background: #333;
	height: 1px;
	width: 100%;
	bottom: -5px;
	left: 0;
	z-index: 10;
}

#bookForm .form-group .content::after
{
	position: absolute;
	content: '';
	background: #9ec554;
	height: 2px;
	width: 0;
	bottom: -5px;
	left: 0;
	transition: all .55s ease;
	z-index: 11;
}

#bookForm .form-group:hover .content::after
{
	width: 100%;
}

#bookForm .result
{
	height: 20px;
	margin: 20px 0;
	transition: opacity 1s ease;
	opacity: 0;
	text-align: left;
}

#bookForm .result.sending
{
	color: #228aab;
	opacity: 1;
}

#bookForm .result.ok
{
	color: #22ab27;
	opacity: 1;
}

#bookForm .result.error
{
	color: #ab2222;
	opacity: 1;
}

#bookForm a.btn
{
	position: relative;
	background-color: #9ec553;
	transition: all .55s ease;
	padding-right: 50px;
}

#bookForm a.btn:hover
{
	background-color: #8fc525;
}

#bookForm a.btn::after
{
	position: absolute;
	right: 20px;
	top: 13px;
	content: '\E5CC';
	font-family: 'Material Icons';
	font-size: 27px;
	color: white;
	transition: all .55s ease;
}

#bookForm a.btn:hover::after
{
	right: 16px;
}

#footer
{
	position: relative;
}

#footer .footer-bottom
{
	background: transparent;
	color: #ccc;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 10;
}

#footer .footer-bottom p,
#footer .footer-bottom a
{
	font-size: 14px;
	color: rgba(255,255,255.7) !important;
}

#footer .footer-bottom p
{
	padding-left: 5px;
}

#map
{
	/*background: #eee;*/
	background: white;
	padding: 50px;
}

#map a
{
	font-weight: 500;
	color: inherit !important;
	transition: all .55s ease;
	text-decoration: none !important;
}

#map a:hover,
#map a:active,
#map a:focus
{
	color: #9ec554 !important;
}

#map h1
{
	color: inherit;
	font-size: 46px;
	margin: 0;
	padding: 0 50px;
	line-height: 1;
}

#map h1 span
{
	display: inline-block;
	width: 100%;
	font-family: 'Indie Flower', sans-serif;
	font-size: 50px;
}

#map ul
{
	padding: 50px;
	width: 100%;
	list-style-type: none;
	list-style-image: none;
}

#map ul li
{
	padding-bottom: 15px;
}

#map ul li p
{
	display: inline-block;
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
}

#map ul li a
{
	display: inline-block;
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
	color: inherit;
	transition: all .55s ease;
}

#map ul li a:hover,
#map ul li a:focus,
#map ul li a:active
{
	color: #9ec554;
}

#map ul li i
{
	display: inline-block;
	font-size: 24px;
	font-weight: 800;
	color: #2e2e32;
	padding-right: 10px;
	vertical-align: middle;
	opacity: .5;
}

#map ul li:first-child i
{
	vertical-align: top;
	font-size: 30px;
	padding-right: 5px;
}

#proyectos .portlets
{
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#proyectos .portlets::before,
#proyectos .portlets::after
{
	display: none;
}

#proyectos .portlet-img
{
	position: relative;
	width: 45%;
	margin-bottom: 50px;
}

#proyectos .portlet-img .img img
{
	width: 100%;
}

#proyectos .portlet-img .galeria::after
{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0,0,0,.5);
	z-index: 10;
	transition: all .55s ease;
	opacity: 0;
}

#proyectos .portlet-img:hover .galeria::after
{
	opacity: 1;
}

#proyectos .portlet-img .galeria .img::before
{
	content: '';
	position: absolute;
	height: 6px;
	width: 50px;
	background: white;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transition: all .75s ease;
	z-index: 15;
	opacity: 0;
}

#proyectos .portlet-img .galeria .img::after
{
	content: '';
	position: absolute;
	height: 50px;
	width: 6px;
	background: white;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transition: all .75s ease;
	z-index: 15;
	opacity: 0;
}

#proyectos .portlet-img:hover .galeria .img::before,
#proyectos .portlet-img:hover .galeria .img::after
{
	opacity: 1;
}

#proyectos .portlet-img .texto
{
	position: absolute;
	background: white;
	padding: 15px;
	right: -6%;
	bottom: -25px;
	width: 50%;
	z-index: 20;
	box-shadow: 0 2px 2px 5px rgba(0,0,0,.5);
	-webkit-box-shadow: 2px 2px 5px rgba(0,0,0,.5);
}

#proyectos .portlet-img .texto .fecha
{
	font-weight: 800;
	font-size: 16px;
	color: #9ec554;
}

#proyectos .portlet-img .texto .info
{
	font-size: 15px;
	margin-bottom: 0;
	text-transform: uppercase;
	font-weight: 600;
    text-align: center;
}

.furgo
{
	position: fixed;
	bottom: 85px;
	z-index: 100;
	left: -100%;
	animation-name: animacionFurgo;
    animation-duration: 20s;
    animation-delay: 6s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
}

.furgo img
{
	width: 30vw;
}

@keyframes animacionFurgo
{
	0% { left: -100%; }
	100% { left: 200%; }
}

/** AVISO LEGAL **/

#avisoLegal .modal-content
{
	background: rgba(255,255,255,.95);
}

#avisoLegal .modal-body
{
	background: white;
	padding: 25px 50px;
}

#avisoLegal .modal-body p
{
	text-align: left;
	font-size: 14px;
}

#avisoLegal .modal-body h3
{
	font-size: 20px;
	text-align: left;
	margin: 35px 0 10px;
}

#avisoLegal .modal-body h2.titulo
{
	text-align: center;
	margin-top: 50px;
	text-transform: uppercase;
}

.popup-modal .section-subheading
{
	margin-bottom: 0;
}


/** POLÍTICA DE COOKIES **/

.popupTexto .modal-content
{
	background: rgba(255,255,255,.95);
}

.popupTexto .modal-body
{
	background: white;
	padding: 25px 50px;
}

.popupTexto .modal-body p
{
	text-align: left;
	font-size: 14px;
}

.popupTexto .modal-body ul
{
	margin-top: -10px;
	padding-bottom: 15px;
}

.popupTexto .modal-body ul li
{
	list-style-type: circle;
	margin-bottom: 20px;
	text-align: left;
	font-size: 14px;
}

.popupTexto .modal-body ul li span
{
	display: inline-block;
	width: 100%;
}

.popupTexto .modal-body h3
{
	font-size: 20px;
	text-align: left;
	margin: 35px 0 10px;
}

.popupTexto .modal-body h2.titulo
{
	text-align: center;
	margin-top: 50px;
	text-transform: uppercase;
}

#politicaCookies .modal-body h2.titulo
{
	margin-bottom: 35px;
}


/** GALERIA **/

#galeriaProyectos .modal-content
{
	background: rgba(255,255,255,.95);
}

#galeriaProyectos .modal-body
{
	background: white;
	padding: 25px 50px;
}

#galeriaProyectos .modal-body p
{
	text-align: left;
	font-size: 14px;
}

#galeriaProyectos .modal-body h2
{
	font-family: 'Indie Flower', sans-serif;
	font-weight: 800;
	font-size: 50px;
}

#galeriaProyectos .modal-body h3
{
	font-size: 20px;
	text-align: center;
	text-transform: uppercase;
	margin: 25px 0 10px;
}

#galeriaProyectos .modal-content
{
	padding: 15px 0;
}

#galeriaProyectos .close-modal .lr,
#galeriaProyectos .close-modal .rl
{
	height: 45px;
}

#galeriaProyectos .imgs
{
	margin-top: 25px;
	width: 100%;
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#galeriaProyectos .imgs > div
{
	width: 100%;
	padding: 20px;
}

#galeriaProyectos .imgs > div.mitad
{
	width: 50%;
}

#galeriaProyectos .imgs img
{
	width: 100%;
	margin-bottom: 0;
}


/** CALENDARIO **/

#calendario {
	background: #eee;
}

#calendario .contenido
{
	padding: 25px 0 75px;
	display: inline-flex;
	flex-wrap: wrap;
	width: 100%;
}
	
#calendario .fila
{
	position: relative;
	width: 100%;
	display: inline-flex;
	flex-wrap: wrap;
	height: 200px;
}

#calendario .fila .izq
{
	position: relative;
	width: 40%;
}

#calendario .fila .mid
{
	position: relative;
	width: 20%;
}

#calendario .fila .der
{
	position: relative;
	width: 40%;
}

#calendario .fila ul
{
	list-style-type: none;
	margin: 0;
	padding: 0;
	text-align: left;
}

#calendario .fila .titulo h4
{
	position: absolute;
	left: auto;
	right: auto;
	top: 20%;
	width: 200px;
	height: 50px;
	padding-top: 15px;
	color: white;
	text-transform: uppercase;
	margin: 0;
}

#calendario .fila .izq.titulo h4
{
	right: 30px;
}

#calendario .fila .der.titulo h4
{
	left: 30px;
}

#calendario .fila .titulo h4::after
{
	content: '';
    position: absolute;
    left: auto;
    right: auto;
    top: 7px;
    width: 35px;
    height: 35px;
    background: #6acad9;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

#calendario .fila:nth-child(1) .titulo h4 { background: #c881ec; }
#calendario .fila:nth-child(2) .titulo h4 { background: #69cad9; }
#calendario .fila:nth-child(3) .titulo h4 { background: #a4ee13; }
#calendario .fila:nth-child(4) .titulo h4 { background: #d3b831; }

#calendario .fila:nth-child(1) .titulo h4::after { background: #c881ec; left: -18px; }
#calendario .fila:nth-child(2) .titulo h4::after { background: #69cad9; right: -18px; }
#calendario .fila:nth-child(3) .titulo h4::after { background: #a4ee13; left: -18px; }
#calendario .fila:nth-child(4) .titulo h4::after { background: #d3b831; right: -18px; }

#calendario .fila .mid .linea
{
	content: '';
	position: absolute;
	top: 0;
	left: 30%;
	width: 20px;
	height: 100%;
	background: white;
	z-index: 5;
}

#calendario .fila:nth-child(1) .mid .linea { background: #c881ec; }
#calendario .fila:nth-child(2) .mid .linea { background: #69cad9; }
#calendario .fila:nth-child(3) .mid .linea { background: #a4ee13; }
#calendario .fila:nth-child(4) .mid .linea { background: #d3b831; }

#calendario .fila:first-child .mid .linea::before
{
	content: '';
	position: absolute;
	width: 20px;
	height: 20px;
	left: 0;
	top: -8px;
	background: #c881ec;
	border-radius: 50%;
	z-index: 10;
}

#calendario .fila:last-child .mid .linea::before
{
	content: '';
	position: absolute;
	width: 20px;
	height: 20px;
	left: 0;
	bottom: -8px;
	background: #d3b831;
	border-radius: 50%;
	z-index: 10;
}

#calendario .fila .mid ul
{
	position: absolute;
	left: 46%;
	height: 100%;
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-around;
	flex-direction: column;
}

#calendario .fila:nth-child(1) .mid ul { color: #c881ec; }
#calendario .fila:nth-child(2) .mid ul { color: #69cad9; }
#calendario .fila:nth-child(3) .mid ul { color: #a4ee13; }
#calendario .fila:nth-child(4) .mid ul { color: #d3b831; }

#calendario .fila .mid ul li
{
	position: relative;
}

#calendario .fila .mid ul li::before
{
	content: '';
	position: absolute;
	height: 5px;
	width: 15px;
	left: -25px;
	top: 8px;
	z-index: 15;
}

#calendario .fila:nth-child(1) .mid ul li::before { background: #c881ec; }
#calendario .fila:nth-child(2) .mid ul li::before { background: #69cad9; }
#calendario .fila:nth-child(3) .mid ul li::before { background: #a4ee13; }
#calendario .fila:nth-child(4) .mid ul li::before { background: #d3b831; }

#calendario .fila .lista ul
{
	position: absolute;
	font-size: 16px;
	font-weight: bold;
	left: auto;
	right: auto;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 5;
}

#calendario .fila .izq.lista ul
{
	right: 0;
	text-align: right;
}

#calendario .fila .der.lista ul
{
	left: 0;
	text-align: left;
}

#calendario .fila .lista ul li
{
	padding-bottom: 5px;
}

#calendario .fila .lista ul li::before
{
	content: '\E876';
	position: relative;
	padding-right: 10px;
	font-family: 'Material Icons';
	font-size: 13px;
	vertical-align: bottom;
	color: inherit;
	display: none;
}

#menuPrincipal .contacto p.mobile
{
	display: none;
}

#page-404
{
	overflow-y: hidden;
}

#page-404 #footer
{
	position: absolute;
	bottom: 100px;
	left: 0;
	width: 100%;
	height: auto;
	z-index: 20;
}

#page-404 #header .logo
{
	top: 50px;
}

#page-404 header .item .slide-content h1
{
	font-size: 12vw;
	line-height: 10vw;
}

#page-404 header .item .slide-content p
{
	font-size: 3vw;
}

#page-404 header .item .slide-content a
{
	position: relative;
	display: inline-block;
	margin-top: 25px;
	padding-left: 20px;
	transition: all .55s ease;
}

#page-404 header .item .slide-content a::after
{
	position: absolute;
	right: 12px;
	top: 14px;
	content: '\E5CC';
	font-family: 'Material Icons';
	font-size: 27px;
	color: white;
	transition: all .55s ease;
}

#page-404 header .item .slide-content a:hover::after
{
	right: 8px;
}

@media all and (max-width: 1200px)
{
	p,
	#nosotros .info p,
	#servicios .list ul
	{
		font-size: 14px;
	}

	.section-heading,
	h3.section-subheading,
	#intro .section-subheading span
	{
		font-size: 26px;
	}

	#nosotros h3,
	#servicios h3
	{
		font-size: 16px;
		line-height: 20px;
	}

	#nosotros .portlet h4
	{
		font-size: 16px;
	}

	#nosotros .portlet img {
		width: 75px;
	}

	#servicios .list ul li img {
		width: 30px;
	}

	#proyectos .portlet-img .texto .fecha {
		font-size: 14px;
	}

	#nosotros .portlet .text > p {
		font-size: 14px;
	}

	#nav .container
	{
		width: 100%;
		padding: 0 50px;
	}

	.navbar-default .nav li a
	{
		font-size: 16px;
		letter-spacing: 0;
	}

	#menuPrincipal .izq
	{
		width: 450px;
	}

	#menuPrincipal .contacto
	{
		width: auto;
	}

	#menuPrincipal .contacto p
	{
		font-size: 14px;
	}

	#menuPrincipal .contacto p a
	{
		font-size: 14px;
	}

	#header .logo
	{
		width: 300px;
	}

	header .item .slide-content h2
	{
		font-size: 45px;
		line-height: 55px;
	}

	#header a.header-scroll i
	{
		font-size: 50px;
	}

	#nosotros .info ul
	{
		width: 100%;
	}

	#nosotros .info ul li
	{
		font-size: 14px;
	}

	#calendario .fila .lista ul {
		font-size: 14px;
	}

	#calendario .fila .der.titulo h4 {
		font-size: 16px;
	}
}


@media all and (max-width: 991px)
{
	body
	{
		margin-bottom: 0;
		margin-top: 55px;
	}

	#nosotros .portlet
	{
		width: 46%;
	}

	#nosotros .portlet img
	{
		margin: 0;
		width: 50px;
		margin-right: 20px;
	}

	#nosotros .portlet h4
	{
		display: inline-block;
	}

	#nosotros .portlet .text
	{
		position: relative;
		top: 0;
		height: auto;
		display: inline-block;
		width: 100%;
	}

	#nosotros .portlet .text > p
	{
		position: relative;
		top: 0;
		transform: none;
		-webkit-transform: none;
		-ms-transform: none;
		padding: 0 18px;
	}

	#servicios .list,
	#servicios .list > div
	{
		width: 100%;
	}

	#servicios .list > .der
	{
		margin-top: -15px;
	}

	#map h1
	{
		font-size: 40px;
		line-height: 40px;
		padding: 0;
	}

	#map h1 span
	{
		font-size: 44px;
	}

	#map ul
	{
		padding: 25px 0;
	}

	#homepage_map
	{
		width: 90%;
		height: 300px;
	}

	#calendario .fila .mid ul
	{
		left: 50%;
	}

	#calendario .fila .mid ul li::before
	{
		left: -20px;
	}

	#calendario .fila .lista ul
	{
		font-size: 14px;
	}

	.aemetDesktop
	{
		display: none;
	}

	#footer .container > p,
	#footer .container > ul
	{
		display: inline-block;
		width: 100%;
		text-align: center;
		margin-top: 20px;
	}

	#tiempo
	{
		padding: 50px 0 150px;
	}

	#menuPrincipal
	{
		padding: 5px 0;
	}

	#menuPrincipal .izq
	{
		width: 250px;
	}

	#menuPrincipal .logo
	{
		width: 140px;
	}

	#menuPrincipal .contacto > p:not(.mobile)
	{
		display: none;
	}

	#menuPrincipal .contacto p.mobile
	{
		display: block;
		padding-top: 3px;
	}

	#menuPrincipal .contacto p.mobile i
	{
		font-size: 36px;
	}

	#menuPrincipal .links
	{
		float: right;
		margin-top: 12px;
	}

	#menuPrincipal .links .nav li > a::after
	{
		display: none;
	}

	#nav .container
	{
		padding: 0 25px;
	}

	#nav
	{
		height: 55px !important;
		bottom: auto;
		top: 0;
	}

	.navbar-default .nav li a
	{
		font-size: 16px;
	}

	#galeriaProyectos .modal-body
	{
		padding: 25px 10px;
	}

	#header .carousel-control,
	#header .carousel-control:hover
	{
		width: 50px;
	}

	#header a.header-scroll.mobile
	{
		display: block;
	}

	#header a.header-scroll.desktop
	{
		display: none;
	}

	.furgo
	{
		display: none;
	}

	#page-404
	{
		position: relative;
	}

	#page-404 header
	{
		min-height: 600px;
	}

	#page-404 #header .logo
	{
		top: 100px;
	}

	#page-404 header .item .slide-content h1
	{
		font-size: 100px;
		line-height: 100px;
	}

	#page-404 header .item .slide-content p
	{
		font-size: 35px;
	}

	#page-404 #footer
	{
		bottom: 0;
		display: none;
	}

	#page-404 header .item .slide-content a
	{
		font-size: 16px;
	}

	#header .logo {
		top: 120px;
	}
}


@media all and (max-width: 767px)
{
	#menuPrincipal .links
	{
		display: none;
	}

	#menuPrincipal
	{
		padding: 5px 10px;
	}

	#menuPrincipal .izq
	{
		width: 100%;
	}

	#menuPrincipal .contacto
	{
		float: right;
	}

	#galeriaProyectos .imgs > div
	{
		padding: 10px;
	}

	header .item .slide-content h2
	{
		font-size: 35px;
		line-height: 40px;
	}

	#nosotros h2,
	#servicios h2,
	#proyectos h2
	{
		margin: 25px 0;
	}

	#proyectos h2
	{
		margin-bottom: 50px;
	}

	#nosotros .portlet .text
	{
		padding: 10px;
	}

	#nosotros .portlet h4
	{
		font-size: 16px;
	}

	#servicios .list
	{
		margin-bottom: 75px;
	}

	#proyectos .portlet-img
	{
		width: 75%;
		margin: 0 auto 50px;
	}

	#contacto h3
	{
		margin: 25px auto 0;
	}

	#contacto input[type="text"],
	#contacto input[type="email"],
	#contacto textarea,
	#contacto .signup_form p
	{
		font-size: 14px;
	}

	#homepage_map
	{
		width: 100%;
	}

	#map
	{
		padding: 25px 0 50px;
	}

	#map .row > div
	{
		text-align: center;
	}

	#contacto .signup_form
	{
		margin-top: 50px;
		margin-bottom: 0;
	}

	#intro .section-subheading
	{
		margin: 50px auto 90px;
	}

	header .item
	{
    	height: 100vh !important;
	}

	#intro .section-heading
	{
		margin-top: 50px;
	}

	section .page-scroll .fa
	{
		font-size: 30px;
	}

	#nosotros h3
	{
		margin: 25px 0 10px;
	}

	#calendario .contenido
	{
		margin: 0;
		padding: 0 0 25px;
	}

	#calendario h2
	{
		margin: 25px 0;
	}

	#calendario .fila
	{
		height: auto;
	}

	#calendario .fila .mid
	{
		display: none;
	}

	#calendario .fila .izq,
	#calendario .fila .der
	{
		width: 100%;
	}

	#calendario .fila .izq.lista ul,
	#calendario .fila .der.lista ul
	{
		position: relative;
		left: 0;
		right: auto;
		text-align: center;
	}

	#calendario .fila .lista
	{
		order: 2;
	}

	#calendario .fila .titulo
	{
		order: 1;
	}

	#calendario .fila .lista ul
	{
		position: relative;
		left: 0;
		right: auto;
		text-align: center;
		top: 0;
		transform: none;
		-webkit-transform: none;
		-ms-transform: none;
		padding: 15px 0 25px;
	}

	#calendario .fila .titulo h4
	{
		position: relative;
		width: 100%;
		left: 0;
		margin: 0 auto;
		max-width: 500px;
		right: auto;
		top: 0;
   	}

   	#calendario .fila .titulo h4::after
	{
		display: none;
	}

	#calendario .fila .der.titulo h4
	{
		left: 0;
	}

	#calendario .fila .izq.titulo h4
	{
		right: auto;
		left: 0;
	}

	#servicios
	{
		padding: 10px 40px;
	}

	#galeriaProyectos .close-modal
	{
		right: 10px;
	}
}		


@media all and (max-width: 600px)
{
	#nosotros .portlet
	{
		width: 100%;
	}

	#nav .container
	{
		padding-right: 0;
	}

	#nosotros .portlet
	{
		margin: 10px 0;
	}
}


@media all and (max-width: 500px)
{
	p, #nosotros .info p, #servicios .list ul
	{
		font-size: 14px;
	}

	.section-heading,
	h3.section-subheading,
	#intro .section-subheading span
	{
		font-size: 24px;
	}

	#header .logo
	{
		width: 250px;
	}

	#nosotros h3,
	#servicios h3
	{
		font-size: 16px;
		line-height: 20px;
	}

	#nosotros .portlet h4
	{
		font-size: 16px;
	}

	#nosotros .info ul li
	{
		font-size: 14px;
	}

	#servicios .list ul li img
	{
		width: 10%;
	}

	#servicios .list ul li p
	{
		width: 82%;
		vertical-align: middle;
	}

	#servicios h2
	{
		margin: 15px auto;
	}

	#proyectos .portlet-img .texto
	{
		padding: 10px;
	}

	#tiempo
	{
		padding-bottom: 200px;
	}

	#map ul li p,
	#map ul li a
	{
		font-size: 15px;
	}

	header .item .slide-content h2
	{
		font-size: 30px;
		line-height: 35px;
	}

	#header a.header-scroll
	{
		bottom: 50px;
	}

	#header a.header-scroll i
	{
		font-size: 35px;
	}

	#servicios
	{
		padding: 10px 25px;
	}

	#avisoLegal .modal-body,
	#politicaCookies .modal-body
	{
		padding: 35px 25px 15px;
	}

	#avisoLegal .modal-content,
	#politicaCookies .modal-content
	{
		padding: 25px 0;
	}

	#avisoLegal .close-modal,
	#politicaCookies .close-modal
	{
		right: 10px;
		top: 35px;
	}

	#avisoLegal .close-modal .lr,
	#avisoLegal .close-modal .rl,
	#politicaCookies .close-modal .lr,
	#politicaCookies .close-modal .rl
	{
		height: 45px;
	}

	#nosotros .portlet
	{
		padding: 15px 0;
	}

	#page-404 header .item .slide-content a
	{
		font-size: 14px;
	}

	#page-404 header .item .slide-content p
	{
		font-size: 26px;
	}

	#page-404 .footer-bottom p
	{
		margin-bottom: 0;
	}
}