/* General
=============================================*/

@import url('https://fonts.googleapis.com/css2?family=Arimo:wght@400;700&family=Montserrat:wght@300;400;700&display=swap');

	html,body{
		margin: 0;
		padding: 0;
		font-family: 'Arimo', sans-serif;
	}

	header, article, aside, footer{
		width: 100%;
		float: left;
	}

	header::after, 
	article::after, 
	aside::after, 
	footer::after{
		clear: both;
		content: "";
		display: block;
	}

	.pad-20{
		padding: 20px 0;
	}

	.pad-40{
		padding: 40px 0;
	}

	.pad-80{
		padding: 80px 0;
	}

	.logo{
 		max-width: 100%;
	}

	.background-img{
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
		background-attachment: fixed;
	}


/* Menu
=============================================*/

	.nav{
	    float: right;
	    position: absolute;
	    top: 50%;
	    transform: translateY(-50%);
		width: 100%;
		color: #2e2e2e;
		padding: 0px 20px;
		text-transform: uppercase;
	}

	.nav a{
	    text-decoration: none;
	    color: #2e2e2e;
	}

/* Fonts
=============================================*/

	h1, h2, h3, h4, h5{
		font-family: 'Montserrat', sans-serif;
		text-align: left;
		text-transform: uppercase;
	}

	h1{
		font-size: 4rem;
		margin-bottom: 0.67em;
		font-weight: 600;
	}

	h2{
		font-size: 2.8rem;
		margin-bottom: 40px;
		font-weight: 600;
	}

	h3{
		font-size: 1rem;
		font-weight: 600;
	}

	h4{
		font-size: 1rem;
		background: #fed204;
		display: inline-block;
		padding: 4px 10px;
		font-weight: 600;

	}

	h5{
		font-size: 1.9rem;
		margin-bottom: 20px;
		font-weight: 600;
	}

	/* Links */

	a{
		color: rgba(0, 0, 0, 0.5);
		text-decoration: none;
	}

	a:hover{
		color: rgba(0, 0, 0, 0.5);
		text-decoration: none;
	}

	.white{
		color: #fff;
	}

	.gray{
		color: #888;
	}

	a.anchor{
		display: none;
	}

/* Sections
=============================================*/

	/* Topbar */

	.topbar,
	footer{
		padding: 10px 0 0;
		font-size: 14px;
	}

	.topbar p,
	footer p{
		margin-bottom: 14px;
	}

	.topbar .email,
	footer .email{
		margin-right: 0;
		font-family: 'Montserrat', sans-serif;
		font-size: 14px;
	}

	.topbar .number{
		font-family: 'Montserrat', sans-serif;
		font-size: 14px;
	}

	a{
		color: #fff;
		font-weight: 300;

	}

	/*Banner*/

	.banner text{
		position: absolute;
	}

	/* Content */

	.cotent{
		text-align: center;
	}

	/*Features*/

	.feature-inner{
		background: #fff;
		border: 1px solid #fff;
	}

	.feature-inner a{ 
		color: #2e2e2e;
		text-decoration: none; }

	.feature-inner a:hover{
		color: rgba(0, 0, 0, 0.5);
	}

	.feature img{
		max-width: 100%;
		width: auto;
		height: auto;
		vertical-align: middle;
		border: 0;
	}

	/*Quote*/

	.quote{
		background: #fff;
		display: inline-block;
	}

	.btn{
		background: #049dfe;
		border-radius: 0;
		color: #fff;
		border: 1px solid #fff;
	}

	.form-control::placeholder{
		color: #fff;
	}

	.form-control{
		color: #fff;
		background-color: #049dfe;
		border: 1px solid #fff;
		border-radius: 0;
	}

	textarea.form-control{
		height: calc(5em + .75rem + 2px);
	}

/* Modules
=============================================*/

	/* Gallery */

	.img-container{
		height: 250px;
		margin-bottom: 20px;
	}

	.img-container img{
		height: 100%;
		width: 100%;
		max-width: 100%;
		object-fit: cover;
	}

	.img-container img:hover{
		cursor: pointer;
	}

	/* Gallery Popup */

	.modal-dialog,
	.modal-content,
	.modal-body{
		width: 1000px;
		max-width: 90%;
		max-height: 90vh;
	}

	.modal img{
		height: 100%;
		width: 100%;
		max-width: 100%;
		object-fit: contain;
		object-position: 50% 50%;
	}

p.right-align-desktop{
	text-align: right;
}

nav button.open-menu,
nav button.close-menu{
	display: none;
}

@media screen and (max-width: 768px){

	h1, h2{
		font-size: 24pt;
	}

	.carousel-item{
		height: 180px;
	}

	p.right-align-desktop{
		text-align: left;
	}

	nav{
		position: fixed;
	  	background: transparent;
		top: 0;
	  	right: 0;
	  	left: 0;
	  	height: 34px;
	  	z-index: 900;
	}	

	nav .nav li a,
	nav .nav li a:hover,
	nav .nav li a:focus{
		color: #fff;
	}

	nav.closed ul.nav
	{
		display: none;
	}

	nav.open{
	  	z-index: 999;
	  	bottom: 0;
	  	height: 100vh;
	  	overflow-y: scroll;
	  	background: #049dfe;
	}

	nav button{
		background: none;
		color: #fff;
		border: none;
		float: right;
		font-size: 20px;
	}

	nav button.open-menu,
	nav button.close-menu{
	  	display: block;
	}

	nav ul.nav{
		height: auto;
		position: relative;
		top: 40px;
		transform: none;
	}

	nav .nav li{
		width: 100%;
	}

	nav .nav li a{
	  	display: block;
	  	width: 100%;
	  	float: left;
	  	text-align: center;
	}

}