/* medium screen */
@media only screen and (min-width: 1200px) and (max-width: 2560px) {
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
	/* general */
		.container,
		.banner-text-wrap,
		.grid-container{ width: 90%; }
		h1 { font-size: 2.5rem; }
		h2{ font-size: 2.35rem; }
		.margin {
			margin-top: 5.5em;
		}
		.half-width {
			max-width: 80%;
		}
	/* header */
		.header-desktop.container{ width: 95%; }
		.header-desktop .nav-left,
		.header.fixed-nav .logo-wrap:before{
			display: none;
		}
		.logo-wrap{ grid-column-end: 4; }
		.logo-wrap img{ padding: 0 1em 0 0; }
		.header.fixed-nav .logo-wrap img{ padding: 0; }
		.nav-wrap{ grid-column-start: 4; }
		.nav-wrap li a { font-size: 1rem; }
		.sub-menu-ul a { font-size: 1rem !important;}
		.header.fixed-nav .logo-wrap{text-align: left; width: 150%;}
		.mega-wrap{ top: 100px; }
	/* banner */
		.inner-banner-wrap{ margin: 0em 0 0; }
		/*.banner-wrap{ height: 540px; }*/
		.banner-text,.inner-banner-text{ font-size: 3rem; }
		.normal-banner-text p {font-size: 2rem;}
		
		.inner-banner-wrap1{ margin: 0em 0 0; }
		/*.banner-wrap1{ height: 540px; }*/
		.banner-text,.inner-banner-text{ font-size: 3rem; }
		.normal-banner-text p {font-size: 2rem;}
		
	/* footer */
		:root {
			--fheight: 500px;
		}
	/* automated smart home */
		.iframe{
			height: 315px;
		}
	/* services */
		.service-wrap .columns2 {
			gap: 3em;
		}
	/* about us */
		.meet-francois .iframe {
			margin: 0;
		}
}
/* tablet screen */
@media only screen and (min-width: 768px) and (max-width: 991px) {
	/* general */
		h2{ font-size: 2rem; }
		.margin {
			margin-top: 4em;
		}
		.columns3{
			column-count: 2;
		}
		.half-width {
			max-width: 100%;
		}
		.btn-wrap .btn{ display: block; }
		.section {
			padding: 5em 0;
		}
	/* header */
		.header-mobile{ display: block; }
		.header.fixed-nav .header-mobile, 
		.header.fixed-nav .header-mobile .container{ height: auto; }
		.header-mobile .navigation-wrap{ padding: 0 0.7em; }
		.header-desktop,
		.header.fixed-nav .logo-wrap:before{ display: none; }
		.header.fixed-nav .logo-wrap{text-align: left;}
		.header.fixed-nav .logo-wrap {
			grid-column: 1 / 3;
		}
		.sub-menu:before {
			position: absolute;
			right: 15px;
			content: '\e809';
			font-family: "fontello";
			width: 20px;
			color: #fffefa;
			font-weight: 100;
		}
		.nav-open .navigation-ul > li{
			width: 96%;
		}
		.navigation-ul a {
			display: inline-block;
		}
		.sub-menu ul{
			background-color: transparent;
			box-shadow: none;
		}
		.nav-btn a:before{ display: none; }
		.sub-menu ul,
		.sub-menu ul ul{
			position: relative;
			max-height: 300px;
			overflow: auto;
			width: 90%;
			left: 0;
			right: auto;
			top: 0;
		}
		.menu-icon:hover{ color: #fffefa; }
	/* banner */
		.banner-wrap { margin-top: 4.5em; }
		.slider_outer_wrap .simple_slider{ height: 550px !important; }
		.banner-text-wrap{ padding-top: 4em; }
		.banner-text-wrap .btn-wrap .btn{ display: inline-block; }
		.banner-text,.inner-banner-text{ font-size: 2.35rem; }
		.normal-banner-text p{ font-size: 1.5rem; }
		.inner-banner-hold { padding: 5em 0 4em; }
		.inner-banner-wrap{ margin: 0em 0 0; height: 300px; }
		.inner-banner-wrap1{ margin: 0em 0 0; height: 300px; }
	/* content */
		.content-video{ grid-column-end: -1; padding-left:2em; padding-right:2em; }
		.content-cont-wrap {
			margin-bottom: 3.5em;
		}
		.content-cont{
			padding: 0em 2em 4em;
			grid-column-start: 1;
			grid-row-start: 1;
		}
		.staff-carousel .image-wrap {
			height: 300px;
		}
		/*.social-media-icon {
        	width: 60%;
        }*/
	/* cta */
		.cta-content-holder{
			width: 100%;
		}
		.social-media-cont{
		    gap: 30px;
		}
	/* footer */
		:root {
			--fheight: auto;
		}
		.footer-wrapper{
			position: static;
		}
		.widget3,
		.footer-phone{ font-size: 1.15rem; }
		.footer-phone a{ font-size: 1.3rem; }
		.widget2{ padding-right: 1em; }
	/* automated smart home */
		.first-column,
		.second-column,
		.two-columns-wrap.alter .second-column,
		.two-columns-wrap.alter .first-column,
		.second-column-text {
			grid-column: 1 / -1;
		}
		.two-columns-wrap.alter .first-column{ grid-row: 1; }
		.two-columns-wrap.alter .second-column{ grid-row: 2; }
		.audio-wrap .columns2 { column-count: 1; }
	/* map wrap */
		.map-wrap iframe{
			height: 350px;
		}
	/* services */
		.service-wrap .columns2 { gap: 3em; }
		.service-wrap .grid-text { gap: 0; }
		#project-coordination{ margin-bottom: 3.85em; }
		.how-it-work-wrap{ margin-top: 1.5em; }
	/* about */
		.team-grid-wrap{
			margin-bottom: 3.85em;
		}
	/* contact */
		.contact-address img{ height: 130px; }
}

@media (min-width: 768px) and (max-width: 1366px) and (orientation: landscape) {
  .cta-wrapper{
	    background-attachment: scroll !important;
	}
}
/* all mobile screen */
@media only screen and (max-width: 767px) {
	/* general */
		.columns2, .columns3{ column-count: 1; }
		.section { padding: 3.85em 0; }
		.margin-top { margin-top: 2em; }
		h1{ font-size: 2.35rem; }
		h2 { font-size: 1.65rem; }
		h3{ font-size: 1.3rem; }
		.margin {
			margin-top: 3em;
		}
		.half-width {
			max-width: 100%;
		}
		.content-page-wrap{ overflow: hidden; }
		.heading{ font-size: 1.55rem; }
		.btn-wrap a{ width: 100%; }
		.fly_box .btn-wrap .btn{ display: block; border: none; font-size: 0.9rem; }
	/* header */
		.header-mobile{ display: block; }
		.header-desktop,
		.header.fixed-nav .logo-wrap:before{ display: none; }
		.header, 
		.header-mobile, 
		.header-mobile .container{ height:82px; min-height: auto; background: #fffefa; }
		.header-mobile .logo-wrap{ grid-column-end: 10; width: 115px; }
		.header.fixed-nav .header-mobile .container,
		.header.fixed-nav,
		.header.fixed-nav .header-mobile{ height: 72px; min-height: auto; }
		.header.fixed-nav .header-mobile .logo-wrap{ width: 100px; grid-column-end: 10; padding-bottom: 5px; }
		.header.fixed-nav .nav-wrap li.active > a{ color: #000;}
		.sub-menu:before {
			position: absolute;
			right: 15px;
			content: '\e809';
			font-family: "fontello";
			width: 20px;
			color: #fffefa;
			font-weight: 100;
		}
		.nav-open .navigation-ul > li{
			width: 90%;
		}
		.navigation-ul a {
			display: inline-block;
		}
		.sub-menu ul{
			background-color: transparent;
			box-shadow: none;
		}
		.sub-menu ul,
		.sub-menu ul ul{
			position: relative;
			max-height: 250px;
			overflow: auto;
			width: 90%;
			min-width: auto;
			left: 0;
			right: auto;
			top: 0;
			padding: 1em;
		}
		.nav-btn a:before{ display: none; }
	/* banner */
		.banner-wrap{ margin-top: 4.5em; }
		.banner-text-wrap{ padding-top: 3em; }
		.banner-text,.inner-banner-text{ font-size: 1.55rem; }
		.normal-banner-text p {
			font-size: 1.35rem;
			line-height: 1.15;
		}
		.banner-carousel .owl-prev, .banner-carousel .owl-next{ width: 20px; }
		.banner-text-wrap .btn-wrap{ margin: 0 auto; }
		.slider_outer_wrap .btns_wrap .btn{ width: 40px; height: 40px; }
		.inner-banner-hold { padding: 3em 0 3em; }
		.inner-banner-wrap{ margin: 4em 0 0; }
		.inner-banner-wrap1{ margin: 4em 0 0; }
	/* content */
		.content-video{ grid-column-end: -1; padding-left: 1.3em; padding-right: 1.3em; }
		.content-cont-wrap {
			margin-bottom: 3.5em;
		}
		.content-cont{
			padding: 0em 1.3em 4em;
			grid-column-start: 1;
			grid-row-start: 1;
		}
		.staff-carousel .image-wrap{ height: 300px; }
		.staff-carousel .owl-prev {
			left: -15px;
		}
		.staff-carousel .owl-next {
			right: -15px;
		}
		.social-media-cont{
			flex-wrap: wrap;
			gap: 15px;
		}
		.social-media-icon {
			width: 50px;
			height: 50px;
		}
		.map-wrap iframe, 
		.iframe,
		.two-columns-wrap img{ height: 300px; }	
	/* cta */
		.cta-content-holder{
			width: 100%;
		}
	/* footer */
		:root {
			--fheight: auto;
		}
		.footer-wrapper{
			position: unset;
		}
		.footer-top{
			grid-template-areas: 
				"about about about about about about about about about about about about"
				"info info info info info info info info info info info info"
				"c c c c c c c c c c c c";
			gap: 50px 0;
		}
		.footer-btm-holder{
			justify-content: center;
			line-height: 1.5;
		}
		.footer-btm{ padding: 1.5em 0; }
	/* automated smart home */
		.first-column,
		.second-column,
		.two-columns-wrap.alter .second-column,
		.two-columns-wrap.alter .first-column {
			grid-column: 1 / -1;
		}
		.two-columns-wrap.alter .first-column{ grid-row: 1; }
		.two-columns-wrap.alter .second-column{ grid-row: 2; }
		#c1{ width: 100%; }
	/* services */
		.service-wrap .columns2, .service-wrap .grid-text {
			gap: 0;
		}
		.second-column-text{ grid-column-start: 1; }
		#project-coordination{ margin-bottom: 3.85em; }
		.how-it-work-wrap{ margin-top: 1.5em; }
	/* about */
		.quotes-wrap blockquote{
			font-size: 1.1rem;
			margin-left: 0;
			margin-right: 0;
		}
		.team-grid-wrap{ margin-bottom: 3.85em; }
	/* careers */
		.pos_available_wrap .holder:last-child{ margin-bottom: 0; }
		.job_description {
			flex-direction: column;
			align-items: flex-start;
		}
		.job_title, .job_status, .job_location{ width: 100%; text-align: left; }
		.job_description > p { margin: 0; }
	/* contact */
		.contactpage-wrap .second-column{
			grid-row: 1;
			margin-bottom: 35px;
		}
		.two-columns-wrap.alter .second-column{ margin: 0; }
		.two-columns-wrap.alter .first-column{ grid-column-start: 1; padding-left: 0; }
		.contact-address img{ height: 130px; }
}
@media only screen and (max-width: 320px){
	.banner-text {
		font-size: 1.55rem;
	}
	.staff-carousel .image-wrap{ height: 300px; }
}
/* landscape scren */
@media only screen and (min-width: 480px) and (max-width: 767px) {
	.logo-carousel .image-wrap{
		padding: 1em;
	}
	.banner-text-wrap .btn-wrap .btn{ display: inline-block; width: auto; }
	.meet-francois .iframe {
		margin: 0;
	}
	.social-media-cont{ flex-direction: row; }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.cta-wrapper{
	    background-attachment: scroll !important;
	}
}
@media not all and (min-resolution:.001dpcm) { 
	@supports (-webkit-appearance:none) {
		.cta-wrapper{
    	    background-attachment: scroll !important;
    	}
	}
}
@media (min-width: 768px) and (max-width: 1366px) and (orientation: landscape) {
    .cta-wrapper{
	    background-attachment: scroll !important;
	}
}
@media only screen and (min-device-width: 480px) and (max-device-width: 767px) and (-webkit-min-device-pixel-ratio: 3){
    .cta-wrapper{
	    background-attachment: scroll !important;
	}
}