/* CSS Document */
html {scroll-behavior:smooth;}
body {font-family:'Open Sans',sans-serif; font-size:16px; color:#575756; background:#ededed; display:flex; min-height:100vh; flex-direction:column;}
.wrapper {flex:1; position:relative;}
a {transition:all 0.3s ease-out; text-decoration:none; color:#005083;}
a:hover, a:focus {text-decoration:none; color:#7dbee8;}
.btn:focus {color:#005083;}
.section {padding-bottom:96px; padding-top:96px;}
.content {background:#ededed; padding-bottom:66px;}
.semiBold {font-weight:600;}
p {margin-bottom:25px;}

/* Header */
header {background:#fff; height:125px;}
header .container {position:relative;}
.logo {width:144px; position:absolute; top:14px; left:15px;}
.logo img {max-width:100%; height:auto;}
.item-2 {display:none; color:#fff; text-align:center;}

/* Nav */
.navbar {padding:80px 0 0 15px; margin-left:160px; height:40px;}
.bg-light {background-color:#fff!important;}
.navbar-light .navbar-nav .nav-link {color:#005083; font-weight:600; margin-left:20px;}
.navbar-light .navbar-nav .nav-link:first-child {margin-left:0;}
.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .active .nav-link {color:#7dbee8;}
.navbar-nav {width:100%; justify-content:flex-end;}
.sticky {position:fixed; top:0; width:100%; z-index:998; -webkit-box-shadow:0px 2px 5px 0px rgba(0,0,0,0.6); -moz-box-shadow:0px 2px 5px 0px rgba(0,0,0,0.6); box-shadow:0px 2px 5px 0px rgba(0,0,0,0.6);}
.wrapper.padTop {padding-top:125px;}
.dropdown-item {white-space:normal; min-width:260px;}
.dropdown-item:focus, .dropdown-item:hover, .dropdown-item.active {color:#7dbee8; background-color:#fff;}

/* home */
body.home header {opacity:0; position:fixed; top:0; width:100%; z-index:998; transition:opacity 0.5s ease-out;}
body.home header.sticky {opacity:1; transition:opacity 2s ease-out;}
.section-video {height:auto; overflow:hidden; position:relative; background:#000;}
body.home .wrapper.padTop {padding-top:0;}
video {position:relative; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; height:auto; transform:translateX(-50%) translateY(-50%); display:block;}
.homeLogo {position:absolute; top:50%; left:50%; z-index:997; width:330px; transform:translateX(-50%) translateY(-50%);}
.scrollDown {position:absolute; bottom:20px; left:50%; width:45px; height:70px; z-index:997; color:#fff; transform:translateX(-50%);}
.scrollDown svg {width:30px; height:auto; position:absolute; bottom:0; left:50%; margin-left:-15px;}
.scrollDown svg polygon {fill:#66B2E4;}
.scrollDown:hover {cursor:pointer;}
.scrollDown:hover svg {-webkit-animation-play-state:paused; animation-play-state:paused;}
.scrollDown:hover svg polygon {fill:#fff;}
.section-intro {background-color:#005083; color:#fff; padding:100px 0; font-size:34px; font-weight:300; background-position:right bottom; background-size:130% auto; background-image:url(/images/air.svg?v=3); background-repeat:no-repeat;}
.section-intro p {margin-bottom:30px;}
.section-intro a {color:#7dbee8;}
.section-intro a:hover {color:#fff;}
.videoOverlay {background:#000; opacity:0.5; width:100%; height:100%; position:absolute; top:0; left:0; z-index:996;}
.section-about {position:relative; background:#fff;}
.aboutText {padding:80px 0;}
.aboutBackgroundImg {position:absolute; top:0; right:0; z-index:0; overflow:hidden; width:50%; height:100%; background:url(/images/about-gem-air-quality.jpg) no-repeat 50% 50%; background-size:cover;}
.aboutBackgroundImg img {display:none;}
.section-twitter {padding:100px 0; background:#005083; overflow:hidden; position: relative; background:-moz-linear-gradient(left,#005083 0%,#7dbee8 100%); background:-webkit-linear-gradient(left,#005083 0%,#7dbee8 100%); background:linear-gradient(to right,#005083 0%,#7dbee8 100%); filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#005083',endColorstr='#7dbee8',GradientType=1);}
.twitterTitle {font-size:76px; font-weight:300; color:#fff;}
.scrollDown svg {animation:bounce 3s linear infinite; -webkit-animation:bounce 3s linear infinite;}
.cloud {background:url(/images/cloud.svg) no-repeat; background-size:100% 100%; width:280px; height:180px; position:absolute; bottom:0; left:0; opacity:0.2; 
animation: animateCloud 35s linear infinite; -webkit-animation: animateCloud 35s linear infinite;}
.cloud1 {left:-400px; bottom:20%; animation-delay:0.4s; animation-duration:33s;}
.cloud2 {left:-620px; width:620px; height:320px; bottom:10%; animation-delay:9s; animation-duration:35s;}
.cloud3 {left:-400px; bottom:15%; animation-delay:24s; animation-duration:33s;}
.cloud4 {left:-440px; bottom:17%; width:440px; height:260px; animation-delay:50s; animation-duration:34s;}
.cloud5 {left:-400px; bottom:12%; animation-delay:78s; animation-duration:35s;}
.twitter {background:url(/images/twitter.svg) no-repeat; background-size:contain; width:30%; height:310px; position:absolute; bottom:-600px; left:20px; opacity:0.2;}
.section-twitter .container {position:relative;}
.section-twitter.animated .twitter {animation:tweet 3s forwards 1; -webkit-animation:tweet 3s forwards 1; animation-timing-function:ease-in-out;}
.section-air-quality {background-color:#e0f3ff; padding:60px 0; text-align:center;}
.airIcon {background:#fff; color:#005083; padding:15px; margin-bottom:25px; height:calc(100% - 25px); font-weight:600; line-height:20px; text-align:center;}
.airIcon img {width:auto; margin:0 auto 10px auto; height:auto; max-height:75px; display:block;}
.section-contact-us {background-color:#e0f3ff; padding:120px 0; text-align:center;}
	
@keyframes bounce {
	0%, 100% {bottom:0;}
	50% {bottom:100px;}
}

@-webkit-keyframes bounce {
	0%, 100% {bottom:0;}
	50% {bottom:100px;}
}

@keyframes animateCloud {
	0% {transform:translateX(0px);}
	100% {transform:translateX(calc(100vw + 400px));}
}

@-webkit-@keyframes animateCloud {
	0% {transform:translateX(0px);}
	100% {transform:translateX(calc(100vw + 400px));}
}

@keyframes tweet {
	0% {bottom:-600px;}
	100% {bottom:40%;}
}

/* Title */
.title {background:#005083; padding:40px 0 35px 0; min-height:110px;}
.mainTitle {color:#fff; font-weight:700; font-size:26px; text-transform:uppercase; margin:0; padding:0; letter-spacing:1px;}
.subTitle {text-transform:uppercase; margin:0; font-size:18px; color:#7dbee8; font-weight:700;}
.level3Title {color:#005083; font-size:34px; font-weight:300; margin-bottom:20px;}

/* Case Studies */
.contentCS {position:relative; background-position:top center; background-repeat:no-repeat; background-size:cover; min-height:100vh; padding-bottom:60px;}
.caseStudy {background-color:rgba(0,80,131,0.9); color:#fff; padding:20px; margin-bottom:30px;}
.caseStudyNav {display:flex; justify-content:space-between;}
.caseStudyNav.csStart {justify-content:flex-end;}
.caseStudyNav.csEnd {justify-content:flex-start;}
.caseStudyNav a {background:#7dbee8; color:#fff; width:140px; text-align:center; padding:3px 8px; transition:background 0.3s ease-out; display:block;}
.caseStudyNav a:hover {background:#005083;}
.csBreadcrumb {list-style:none; padding:0; margin:10px 0 0 0; font-weight:700; color:#8da4bb; font-size:14px;}
.csBreadcrumb a {color:#8da4bb;}
.csBreadcrumb a:hover {color:#fff;}

.contentCS.cs1 {background-image:url(/images/a1.jpg?v=2);}
.contentCS.cs2 {background-image:url(/images/a2.jpg?v=2);}
.contentCS.cs3 {background-image:url(/images/a3.jpg?v=2);}
.contentCS.cs4 {background-image:url(/images/e1.jpg?v=2);}
.contentCS.cs5 {background-image:url(/images/e2.jpg?v=2);}
.contentCS.cs6 {background-image:url(/images/e3.jpg?v=2);}

.contentCS.cs1 .csBreadcrumb li:nth-child(1) a,
.contentCS.cs2 .csBreadcrumb li:nth-child(1) a,
.contentCS.cs3 .csBreadcrumb li:nth-child(1) a {color:#fff;}

.contentCS.cs4 .csBreadcrumb li:nth-child(2) a,
.contentCS.cs5 .csBreadcrumb li:nth-child(2) a,
.contentCS.cs6 .csBreadcrumb li:nth-child(2) a {color:#fff;}

/* Mobile Nav */
.hamburger {display:none;}
#mobileNav {display:none;}

/* FAQs */
.card {background-color:#005083; border:none; border-radius:0; border-top:1px solid #fff; color:#fff;}
.card-header {background-color:#005083; border-bottom:none; padding:0;}
.card-header .btn {text-align:left; padding:5px; position:relative; border:none;}
.card-header .btn::before {content:""; position:absolute; top:0; right:0; height:100%; width:56px; background:#7dbee8; -webkit-font-smoothing:antialiased; color:#fff;}
.card-header .btn::after {font-family:"Font Awesome 5 Free"; font-weight:900; content:"\f067"; display:inline-block; font-style:normal; font-variant:normal; text-rendering:auto; font-size:24px; position: absolute; top:50%; right:16px; transform: translateY(-50%); color:#fff; transition:color 0.3s ease-out;}
.card-header .btn:hover::after {color:#005083;}
.card-header.active .btn::after {content:"\f068";}
.card-body {padding:0 25px 25px 25px;}
.subTitle .btn {text-transform:uppercase; color:#7dbee8; text-decoration:none; font-weight:700; padding:15px 70px 15px 25px; width:100%;}
.card-body a {color:#fff; text-decoration:underline;}
.card-body a:hover {color:#7dbee8;}

/* Affiliates */
.affiliateName {color:#005083}
.box {background:#fff; padding:20px; height:100%}
.affiliates .col-md-6 {margin-bottom:30px;}

/* Contact */
body.contact,
body.contact .content {background:#005083;}
.contactMainTitle {color:#fff; font-size:40px; margin-bottom:15px; text-align: center;}
.contactSubTitle {font-size:24px; font-weight:600; display:block; letter-spacing:1px;}
.contactInfoText {font-weight:600; color:#fff; display:block; margin-top:12px; margin-bottom:40px;}
.contact-form {background:url(/images/contact-gem-air-quality.webp) no-repeat 50% 50%; background-size:cover; color:#fff;}
.contact-info {padding:65px 0 40px 0; background:#005083; color:#fff;}
.contact-info i {font-size:44px; margin-bottom:30px; color:#fff; transition:all 0.3s ease-out;}
.contact-info a {color:#fff;}
.contact-info a:hover,
.contact-info a:hover i {color:#7dbee8;}
.contact-socialmedia {background:#005083; color:#fff;}
.contact-socialmedia a {color:#fff;}
.contact-socialmedia ul {list-style:none; margin:0; padding:0; font-size:34px;}
.contact-socialmedia ul li {display:inline-block; margin:0 10px;}
.contact-socialmedia a:hover {color:#7dbee8;}
.contactFormBox {background:#005083; color:#fff; padding:20px;}

/* Footer */
footer {position:absolute !important; bottom:0 !important; left:0 !important; background:#005083; padding:24px 0 0 0; width:100%; color:#fff; font-size:12px; height:66px; position:relative;}
footer ul.socialMedia {list-style:none; margin:0; padding:0; text-align:right; font-size:20px;margin-top:-5px;}
footer ul.socialMedia li {display:inline-block; margin:0 0 0 20px;}
footer ul.socialMedia li a {color:#fff;}
footer ul.socialMedia li a:hover {color:#7dbee8;}

/* Form */
label {display:none;}
.form-control {background:#ffff; border-color:#fff; border-radius:0;}
.form-control::placeholder {color:#58585a; opacity:1;}
.form-control:-ms-input-placeholder {color:#58585a;}
.form-control::-ms-input-placeholder {color:#58585a;}
.btn-primary {color:#005083; background-color:#7dbee8; border-color:#7dbee8; font-size:16px;}
.btn-primary:hover {color:#005083; background-color:#fff; border-color:#fff;}
.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle {color:#005083; background-color:#fff; border-color:#fff;}
.btn-primary.focus, .btn-primary:focus {box-shadow:none;}
.btn {border-radius:0;transition:all 0.3s ease-out;}
.success {color:#fff; background-color:#2ecc71;}
.success, .error {padding:1em; margin-bottom:12px; color:#fff;}
input.error {padding:.375rem .75rem; color: #ff7e00;}
#success_fail_info.error {background:#ff7e00; margin-top:20px;}
#success_fail_info.success {background:#35c786; margin-top:20px;}
label.error {padding:0; margin-bottom:0; border-radius:0; background-color:transparent; color:#ff7e00;}
.form-control.error {color:#ff7e00;}
.form-control:focus {border-color:#ff7e00; box-shadow:none;}
.charCount {display:block; text-align:right; font-size:0.85em; padding-top:4px;}
textarea {min-height:300px;}

/* Services */
body.services .content {background:#e0f3ff;}
body.services h1 {color:#fff; font-size:14px; line-height:18px; font-weight:700; text-transform:uppercase;}
.imgMontage {display:flex; flex-direction:column;}
.imgMontage img {max-width:100%; height:auto; box-shadow: 6px 7px 19px 0px rgba(0,0,0,0.35);}
.imgMontage img:nth-child(1) {max-width:390px; align-self:flex-end; margin-right:12%; position:relative; z-index:2;}
.imgMontage img:nth-child(2) {max-width:268px; margin-top:-55px; position:relative; z-index:1; margin-left:0;}
.imgMontage img:nth-child(3) {max-width:390px; align-self:flex-end; margin-top:-140px; margin-right:-40px;}
													
/* Air Quality Assessment */
.img-fit {object-fit:cover; width:100%; height:100%; height:360px;}
.section-alt {background-color: #e0f3ff;}
.box strong {font-weight:700 !important;}
.scroll-offset {scroll-margin-top:160px;}

@media (max-width:1200px) {
	/* Services */
	.imgMontage img:nth-child(2) {margin-top:-24px;}
	.imgMontage img:nth-child(3) {margin-top:-54px; margin-right:0;}
}

@media (max-width: 1024px) {
	.section-intro {background-size:180% auto;}
}

@media (min-width: 992px) {
	.navbar-expand-lg .navbar-nav .nav-link {padding-right:10px; padding-left:10px;}
}

@media (max-width: 992px) {
	/* Home */
	.section-intro {font-size:30px;}
	.aboutBackgroundImg {position:relative; right:auto; z-index:0; overflow:hidden; width:100%; height:auto; background:none;}
	.aboutBackgroundImg img {display:block;}
	.twitterTitle {font-size:60px; margin-bottom:30px;}
	.section-intro {background-size:220% auto;}
	.section-about .aboutText {text-align:center;}
	.section-contact-us {padding:80px 0;}
	/* Services */
	.imgMontage img:nth-child(2) {margin-top:-55px;}
	.imgMontage img:nth-child(3) {margin-top:-140px;}
	/* Mobile Nav */
	#mobileNav {display:block; font-size:24px; font-weight:300; transition:0.25s; float:none; text-align:left; width:0; position:fixed; right:0; padding-left:0; background:#7dbee8; height:100vh; top:0px; margin-top:0; padding-top:80px; z-index:999; transition:opacity 0.3s ease-out; opacity:0;}
	#mobileNav ul {list-style:none; padding:0; margin:0; text-align:center;}
	#mobileNav ul a {color:#005083; position:relative; text-transform:uppercase;}
	#mobileNav ul a:hover, #mobileNav ul a:focus, #mobileNav ul .active a {color:#fff;}
	#mobileNav .nav-item {margin-bottom:0;}
	body.menu-visible #mobileNav {right:0; width:100%; opacity:1;}
	.hamburger:focus {outline:none;}
	.hamburger {position:fixed; top:20px; right:20px; z-index:1000;}
	.hamburger.is-active {position:fixed;}
	.hamburger {outline:none; padding:0; width:44px; height:44px; border-radius:50%; display:none; cursor:pointer; transition-property:opacity,filter; transition-duration:0.15s; transition-timing-function:linear; font:inherit; color:inherit; text-transform:none; background-color:#005083; border:0; margin:0; overflow:visible; transition:all 0.3s ease-out;}
	.hamburger-box {margin-top:4px; width:24px; height:21px; display:inline-block; position:relative;}
	.hamburger-inner {display:block; top:50%; margin-top:-1px;}
	.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {width:24px; height:3px; background-color:#fff; border-radius:0; position:absolute; transition-property:transform; transition-duration:0.15s; transition-timing-function:ease;}
	.hamburger-inner::before, .hamburger-inner::after {content:""; display:block;}
	.hamburger-inner::before {top:-8px;}
	.hamburger-inner::after {bottom:-8px;}
	.hamburger:hover .hamburger-inner,.hamburger:hover .hamburger-inner::before,.hamburger:hover .hamburger-inner::after {background-color:#fff;}
	.hamburger:hover{background-color:#7dbee8; cursor:pointer;}
	.hamburger--spin .hamburger-inner {transition-duration:0.22s; transition-timing-function:cubic-bezier(0.55,0.055,0.675,0.19);}
	.hamburger--spin .hamburger-inner::before {transition:top 0.1s 0.25s ease-in,opacity 0.1s ease-in;}
	.hamburger--spin .hamburger-inner::after {transition:bottom 0.1s 0.25s ease-in,transform 0.22s cubic-bezier(0.55,0.055,0.675,0.19);}
	.hamburger--spin.is-active .hamburger-inner {transform:rotate(225deg); transition-delay:0.12s; transition-timing-function:cubic-bezier(0.215,0.61,0.355,1);}
	.hamburger--spin.is-active .hamburger-inner::before {top:0; opacity:0; transition:top 0.1s ease-out,opacity 0.1s 0.12s ease-out;}
	.hamburger--spin.is-active .hamburger-inner::after {bottom:0; transform:rotate(-90deg); transition:bottom 0.1s ease-out,transform 0.22s 0.12s cubic-bezier(0.215,0.61,0.355,1);}
	.hamburger {display:inline-block;}
	.bg-light {background-color:transparent!important;}
	#mobileNav .dropdown-menu {position:relative !important; transform:none !important; background:transparent; text-align:center; border:none;}
	#mobileNav .dropdown-item {color:#005083 !important;}
	#mobileNav .dropdown-item:hover, #mobileNav .dropdown-item.active {color:#fff !important; background:transparent !important;}
}

@media (max-width: 768px) {
	/* Home */
	.section-intro {font-size:24px; padding:70px 0;}
	.section-intro {background-size:250% auto;}
	.level3Title br {display:none;}
	.airIcon {min-height:200px;}
	/* Air Quality Assessment */
	.img-fit {height:300px;}
	/* Footer */
	footer ul.socialMedia li {margin:0 0 0 14px;}
	/* Case Studies */
	.contentCS.cs1 {background-image:url(/images/a1-mobile.jpg?v=2);}
	.contentCS.cs2 {background-image:url(/images/a2-mobile.jpg?v=2);}
	.contentCS.cs3 {background-image:url(/images/a3-mobile.jpg?v=2);}
	.contentCS.cs4 {background-image:url(/images/e1-mobile.jpg?v=2);}
	.contentCS.cs5 {background-image:url(/images/e2-mobile.jpg?v=2);}
	.contentCS.cs6 {background-image:url(/images/e3-mobile.jpg?v=2);}
	/* Services */
	.imgMontage img:nth-child(2) {margin-top:-24px;}
	.imgMontage img:nth-child(3) {margin-top:-54px;}
}

@media (max-width: 576px) {
	/* Home */
	.homeLogo {width:270px;}
	.aboutText {padding:40px 0;}
	.twitterTitle {font-size:40px;}
	.section-twitter {padding:40px 0;}
	.section-intro {background-size:300% auto;}
	.airIcon {min-height:10px;}
	/* Footer */
	footer, footer ul.socialMedia {text-align:center; margin-top:10px;}
	footer {padding:24px 0; height: auto;}
}

@media (max-width:480px) {
	/* Services */
	.imgMontage img {margin:0 0 20px 0 !important; align-self:flex-start !important; max-width:100% !important;}
}