/*-----------------Fonts----------------*/

	@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,wght@0,200;0,300;0,400;0,600;0,700;0,800;0,900;1,200;1,300;1,400;1,600;1,700;1,800;1,900&display=swap');

/*-----------------Detalles----------------*/
	
	* {
		box-sizing: border-box;
		margin: 0;
		padding: 0;
	}

	html {
		scroll-behavior: smooth;
	}

	p {
		margin: 0;
	}

	section {
		margin-top: calc(2rem + 1vw);
		transition: opacity 0.3s ease-in-out;
	}

	body {
		transition: background-color 0.3s ease-in-out;
		overflow-x: hidden;
		font-family: 'Nunito Sans';
	}

	.noscroll {
		position: fixed;
		overflow: hidden;
	}

	.uppercase-header {
		margin: 3vw 0;
	}	

	.uppercase-header h2 {
		font-size: calc(.75rem + 1.75vw);
		font-weight: 700;
		text-transform: uppercase;
	}

	.divider-line {
		display: flex;
		justify-content: center;
	}

	.carousel-control-prev img {
		height: 10vw;
		max-height: 75px;
	}

	.carousel-control-next img {
		height: 10vw;
		max-height: 75px;
	}

	.noscroll {
		position: fixed;
		overflow: hidden;
	}

	.houndstooth-btn-green {
		background-color: #0c2c1f;
		border: 2px solid #0c2c1f;
		color: white;
		text-transform: uppercase;
		padding: .5vw 2vw;
		border-radius: .5rem;
		margin: .5vw;
	}

	.houndstooth-btn-green:hover {
		background-color: white;
		color: #0c2c1f;
		border: 2px solid #0c2c1f;
		text-decoration: none;
	}

	.houndstooth-btn-white {
		background-color: white;
		border: 2px solid white;
		color: #0c2c1f;
		text-transform: uppercase;
		padding: .5vw 2vw;
		border-radius: .5rem;
	}

	.houndstooth-btn-white:hover {
		background-color: #0c2c1f;
		color: white;
		border: 2px solid white;
		text-decoration: none;
	}

	.separador-houndstooth {
		min-height: calc(2rem + 2vw);
		background-color: #0c2c1f;
	}



	/*Basic Colors
	Red #c72d3a*/

/*-----------------Navigation----------------*/
	
	.navigation {
		position: fixed;
		top: 0;
		z-index: 1100;
		width: 100vw;
		background-color: #0c2c1f;
	}

	.navbar {
		padding-right: 5vw;
		transition: transform 0.4s, opacity 0.2s;
		background-color: #0c2c1f;
	}

	.nav-link img {
		min-width: calc(2.5rem + 2vw);
	}

	.nav-link.enabled {
		display: block;
	}

	.nav-link.disabled {
		display: none;
	}

	.is-hidden {
		opacity: 0;
	}

	.navbar-hide {
		pointer-events: none;
		opacity: 0;
	}

	.navbar-cover {
		padding-bottom: 0vw;
	}

	.navbar-brand {
		padding-left: 5vw;
		display: flex;
		align-items: center;
	}

	.navbar-brand a {
		cursor: pointer;
	}

	.brand-logo {
		width: calc(5rem + 3vw);
	}

	.navbar-nav {
		font-weight: 700;
		width: 100%;
		justify-content: space-around;
		margin-left: 15%;
	}

	.nav-item {
		display: flex;
		align-items: center;
	}

	.nav-item input {
		background: none;
		border: none;
		border-bottom: 3px solid white;
		margin-right: 1vw;
		color: #0c2c1f;
	}

	.nav-item button {
		background: none;
		border: none;
		color: white;
	}

	.navbar-nav a,button {
		font-family: 'Nunito';
		font-weight: 300;
		text-decoration: none;
		font-size: calc(.65rem + .65vw);
		cursor: pointer;
		color: white;
		transition: top 0.4s ease-in-out, padding-bottom 0.4s ease-in-out;
		position: relative;
	}

	.navbar-nav a.active {
		font-family: 'Nunito';
		font-weight: 700;
		top: -15%;
		padding-bottom: .05vw;
		border-bottom: 2px solid white;
	}

	.navbar-nav a:hover, .navbar-nav button:hover {
		color: gray;
		border-color: gray;
	}

	.proy-nav .nav-link {
		/*padding: .5vw 2vw !important;*/
	}

	.proy-nav:hover {
		background-color: lightgray;
		color: #0c2c1f;
		border-color: #0c2c1f;
	}

	.proy-nav:hover a {
		color: #0c2c1f;
		border-color: #0c2c1f;
	}

	.dropdown {
		position: relative;
		display: inline-block;
	}

	.dropdown-content {
		padding-top: .75vw;
		display: none;
		position: absolute;
		background-color: lightgray;
		min-width: 160px;
		box-shadow: 0 2vw 6vw 0 rgba(0, 0, 0, .2);
		z-index: 10;
	}

	.nav-hr {
		margin: .1vw 1vw;
		border: 1px solid #0c2c1f;
	}

	.dropdown-content a {
		color: #0c2c1f;
		text-decoration: none;
		display: block;
		padding: 1.25vw 6vw 1.25vw 3vw;
		font-size: calc(.65rem + .65vw);
	}

	.dropdown-content a:hover {
		background-color: #ddd;
	}

	.dropdown-content a.active {
		border-bottom: 0;
		padding: 1.25vw 6vw 1.25vw 3vw;
	}

	.dropdown:hover .dropdown-content {
		display: block;
	}

	.dropdown:hover .dropbtn {
		background-color: #3e8e41;
	}

	.lan-btn {
		margin: 0 .5vw;
	}

	.lan-btn.active {
		padding-bottom: .1vw;
		border-bottom: 3px solid white;
	}

	.lan-hr {
		height: 80%;
		 border: 1px solid white;
		 min-height: 30px;
	}

	.menu-toogler {
		width: 20vw;
	}
	
	/*-----------------Google Search Engine----------------*/
	    
	    .gsc-search-box {
	        border-bottom: 3px white;
	    }
	    
    	.gsc-control-cse {
            padding: 0 !important;
            background: none !important;
            border: none !important;
        }
        
        .gsc-input {
            background: none !important;
            background-size: contain !important;
        }

        .gsc-search-button:hover {
            background: white !important;
            border-radius: 5px;
        }
        
        .gsc-search-button-v2:hover svg {
            fill: #0c2c1f;
        }
        
        .gsc-search-button-v2 {
            padding: 6px 15px !important;
        }


/*-----------------Banner----------------*/

	.banner {
		background-color: black;
	}

	.banner-container {
		display: flex;
		flex-direction: column;
		min-height: calc(8rem + 10vw);
		justify-content: center;
		align-items: center;
	}

	.banner-title {
		font-weight: 700;
		font-size: calc(1.75rem + 1.25vw);
		color: white;
	}

/*-----------------Block Cuadrado----------------*/

	.block-container {
		width: 60vw;
		margin: 0 20vw;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 2vw;
	}

	.inner-container {
		transition: transform 0.4s ease-in-out;
		display: flex;
		align-self: center;
		justify-content: center;
	}

	.inner-container:hover {
		transform: scale(1.03,1.03);
		text-decoration: none;
	}

	.block-image {
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    flex-direction: column;
	    color: white;
	    background-color: rgba(0, 0, 0, 0.5);
	    background-position: center;
	    background-size: cover;
	    background-blend-mode: darken;
	    width: calc(13rem + 13vw);;
	    height: calc(13rem + 13vw);
	}

	.block-image h1 {
		font-size: calc(1rem + 2vw);
		text-align: center;
	}

	.block-image h3 {
		font-size: calc(.65rem + .75vw);
		text-align: center;
	}
	
/*-----------------Noticias Destacadas----------------*/

	.noticias-header {
		width: 80vw;
		margin: 0 10vw;
	}

	.noticias-header h2 {
		font-size: calc(1.5rem + 1.5vw);
		font-weight: 700;
	}

	.noticias-container {
		width: 80vw;
		margin: 0 10vw;
	}

	.noticias-card {
		border: none;
		padding: 1vw;
		display: flex;
	}

	.noticias-card .card-body {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	.noticias-card .card-text {
		max-height: 7rem;
		overflow: hidden;
	}

	.noticias-card .card-link {
		padding: 1vw 0;
	}

	.noticias-card .card-body, .noticias-card .card-title, .noticias-card .card-text, .noticias-card .card-link {
		width: 100%;
	}

	.noticias-image {
		width: 100%;
		min-height: calc(10rem + 5vw);
		background-size: cover;
		background-position: center;
	}

	.noticias-container .houndstooth-btn-green {
		margin: .5vw 0;
	}

/*-----------------Footer----------------*/
	
	footer {
		background-color: #0c2c1f;
		padding-top: calc(.5rem + .5vw);
		width: 100vw;
	}

	.footer-logo {
		display: flex;
		justify-content: center;
		margin: calc(1rem + 1vw) 0;
		width: 100%;
	}
	
	.footer-logo a {
		display: flex;
		justify-content: center;
	}

	.footer-logo img {
		max-width: 20vw;
		min-width: 200px;
		max-height: 5vw;
		min-height: 50px;
	}

	.footer-header h2 {
		font-weight: 700;
		font-size: calc(1.5rem + 1.5vw);
		text-transform: uppercase;
		text-align: center;
		color: white;
		margin-bottom: calc(.5rem + .5vw);
	}

	.footer-container {
		width: 100%;
	}

	.footer-container .map-container {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100vw;
		margin: 0;
		margin-bottom: calc(.5rem + .5vw);
	}

	.footer-container .googlemaps-placeholder {
		width: 100%;
		height: calc(25rem + 5vw);
		background-color: black;
	}

	.contacto-text {
		min-height: 10rem;
		color: white;
	}

	.contact-form {
		width: 100vw;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		padding: 0 15vw;
	}

	.contact-form button {
		min-width: 150px;
		width: 30vw;
		margin: 2vw 0;
	}

	.form-group {
		width: 100%;
		margin: 1vw 0;
	}

	.form-group input, textarea {
		width: 100%;
		border-radius: .25rem;
	}

	.form-group textarea {
		min-height: 150px;
	}

	.contacto-text a {
		font-size: calc(.65rem + .5vw);
		color: white;
	}

	.contacto-text a:hover {
		font-weight: 700;
		text-decoration: none;
	}

	.footer-container p {
		font-size: calc(.65rem + .5vw);
		color: white;
		text-align: center;
	}

	.aido-link {
		padding: 1vw 0 2vw 0;
	}

	.aido-link a {
		color: white;
		text-decoration: none;
	}

	.aido-link a:hover {
		font-weight: 900;
		text-decoration: underline;
	}


/*=====================================
=            Media Queries            =
=====================================*/
	@media (min-width: 1200px) {
		
	}

	@media (max-width: 1200px) {
		
	}

	@media (max-width: 992px) {

		.footer-container .googlemaps-placeholder {
			min-height: 35vw;
		}

	}

	@media (max-width: 768px) {

		.navbar-nav {
			margin-left: 10%;
			padding-bottom: 5vw;
		}

		.nav-item {
			max-width: 40vw;
		}

		.proy-nav .nav-link {
			padding: .5rem 0 !important;
			max-width: 30vw;
		}

		.dropdown-content a {
			width: 30vw;
		}

		.lan-hr {
			margin-top: 2vw;
		}

        .noticias-image {
			width: 80%;
		}

		.noticias-card .card-body {
			padding: 1.25rem 1.25rem 1.25rem 0;
		}
	}

	@media (max-width: 576px) {


		.slides-caption {
			position: absolute;
			top: 0%;
			transform: translateY(0%);
		}

		
	}

	


/*----------------Fixes-----------------*/
	/*---Firefox Bug Fix --*/
	.carousel-item {
	  transition: -webkit-transform 0.5s ease;
	  transition: transform 0.5s ease;
	  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
	  -webkit-backface-visibility: visible;
	  backface-visibility: visible;
	}

	/*--- Fixed Background Image --*/
	figure {
	  position: relative;
	  width: 100%;
	  height: 60%;
	  margin: 0!important;
	}

	.fixed-wrap {
	  clip: rect(0, auto, auto, 0);
	  position: absolute;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	}

	#fixed {
	  background-image: url('img/mac.png');
	  position: fixed;
	  display: block;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background-size: cover;
	  background-position: center center;
	  -webkit-transform: translateZ(0);
	          transform: translateZ(0);
	  will-change: transform;
	}

	/*--- Bootstrap Padding Fix --*/
	[class*="col-"] {
	    padding: 1rem;
	}