:root {
	--primary-color: #FC0001;
	--secondary-color: #1D1F1E;
	--sectionbg: #F3F3F3;
	--box-border-color: #E6E6E6;
	--form-border-color: #CCCCCC;
	--light-text-color: #646A69;
	--sec-title-bg: #DADADA;
	--white-color:#ffffff;
}


/* only bigger screen landscape screen */
@media only screen and (min-width: 1025px) {
	a:hover { text-decoration: none; }
	#mainmenu ul li a:hover { opacity: 1; }
	.btn:hover { background-color: var(--primary-color); color: var(--white-color); }
	.btn.btn-black:hover { background-color: var(--secondary-color); }
	.btn:hover:before { background-position: 0 0; }
	.fmenu li a:hover { opacity: 1; }
	.designbytag a:hover { text-decoration: none; color: var(--primary-color); }
	.footertop .instagramtag:hover { background-color: rgba(255, 255, 255, 0.3); }
	.footertop .instagramtag:hover:before { background-position: 0 -48px; }
	.submitbtn:hover { background-color: var(--primary-color); color: var(--white-color); }
	.submitbtn:hover:after { background-position: 0 0; }
	.servicebox .servicelink:hover { color: var(--secondary-color); }
	.servicebox .servicelink:hover:before { background-position: 0 0; }
	.servicebox .servicelink:hover:after { content: ''; background-color: var(--secondary-color); }
	.ceoseccontent .specs li a:hover { color: var(--primary-color); }
	#mainmenu > ul { display:flex !important; }
}

/*==========================================================================================================*/
@media only screen and (max-width: 1290px) {
	.ceosecimg { flex: 0 0 calc(100% - 600px); max-width: calc(100% - 600px); }
	.ceoseccontent { flex: 0 0 600px; max-width: 600px;  width: 100%; padding-left: 6vh; }
	.missionvisionimg { flex: 0 0 calc(100% - 600px); max-width: calc(100% - 600px); }
	.missionvisioncontent { flex: 0 0 600px; max-width: 600px; }
}

/*==========================================================================================================*/
@media only screen and (max-width: 1024px) {
	body { font-size: 15px; min-width:320px; }
	img{ max-width: 100%; width:auto; height:auto; }
	.wrap { width:auto; padding:0 20px; }
	
	.default-grid.form-grid.cols2 .col { width:auto; float:none; }
	.buttonset .col a { margin:0 5px 8px 0; }
	.default-grid.cols4 .col { width:50%; }
	.cols2.default-grid.tab-grid .col { width:100%; }
	
	.image-block figure { width:45%; }

	#header { padding: 12px 0; }
	#mainmenu > ul { display:none; position:absolute; left:0; width:100%; top:100%; background:var(--secondary-color); z-index:5; border-radius: 0; }
	#mainmenu ul li { float:none; margin:0; padding:0; border-bottom:solid 1px rgba(255, 255, 255, 0.15); }
	#mainmenu ul li a { padding:8px 15px; display:block; color: var(--white-color);  border-radius: 0; }
	#mainmenu ul li.active a { background-color: rgba(255, 255, 255, 0.2); }
	#mainmenu ul li a:after { display:none; }
	
	/* Responsive Menu line icon*/
	#menu { display:block; width: 42px; height: 42px; background-color: var(--box-border-color); border-radius: 8px; padding: 8px 10px; }
	.menulines { display: inline-block; width: 22px; height: 3px; background: var(--secondary-color); position: relative; margin:0; -moz-transition:all 550ms cubic-bezier(0.450, 1.000, 0.320, 1.000); -ms-transition:all 550ms cubic-bezier(0.450, 1.000, 0.320, 1.000); -webkit-transition:all 550ms cubic-bezier(0.450, 1.000, 0.320, 1.000); transition:all 550ms cubic-bezier(0.450, 1.000, 0.320, 1.000); opacity:1; border-radius: 50px; }
	.menulines:before, .menulines:after { display: inline-block; width:22px; height: 3px; background: var(--secondary-color); position: absolute; left: 0; content:''; -moz-transition:all 550ms cubic-bezier(0.450, 1.000, 0.320, 1.000); -ms-transition:all 550ms cubic-bezier(0.450, 1.000, 0.320, 1.000); -webkit-transition:all 550ms cubic-bezier(0.450, 1.000, 0.320, 1.000); transition:all 550ms cubic-bezier(0.450, 1.000, 0.320, 1.000); -webkit-transform-origin: 0.28571rem center; -moz-transform-origin: 0.28571rem center; -ms-transform-origin: 0.28571rem center; transform-origin: 0.28571rem center; border-radius: 50px; }
	.menulines:before { top: 7px; }
	.menulines:after { top: -7px; }
	.menuopen .menulines { background:none; }
	.menuopen .menulines:before, .menuopen .menulines:after {  -webkit-transform-origin: 50% 50%;  -moz-transform-origin: 50% 50%;  -ms-transform-origin: 50% 50%; transform-origin: 50% 50%; top: 0; } 
	.menuopen .menulines:before { -webkit-transform: rotate3d(0, 0, 1, 45deg); transform: rotate3d(0, 0, 1, 45deg); } 
	.menuopen .menulines:after {  -webkit-transform: rotate3d(0, 0, 1, -45deg); transform: rotate3d(0, 0, 1, -45deg); }
	
	.md-none { display: block !important; }
	.sm-none { display: none !important; }

	h1,h2 { font-size:42px; line-height: 1.1; }
	h3 { font-size:36px; }
	h4, h5 { font-size:22px; }
	h6 { font-size:16px; }	

	.mainbannerimg { flex: 0 0 42vw; max-width: 42vw; }
	.mainbannercontent { flex: 0 0 calc(100% - 42vw); max-width: calc(100% - 42vw); }

	.secpadding { padding: 60px 0; }

	.footertop { flex-direction: column; gap: 20px; }
	.footerlogo { flex: 0 0 auto; max-width: auto; width: auto; }
	#footer { padding: 40px 0; }
	.footertop .instagramtag { padding: 14px 12px 14px 50px; }
	.footertop .instagramtag:before { width: 38px; height: 38px; }
	.fmenu { justify-content: center; }
	.fmenu li { margin: 0 2vw; }

	.contactusleft .cols3 { flex-wrap: wrap; }
	.contactusleft .cols3 .col { flex: 0 0 50%; max-width: 50%; margin: 0 0 20px; }

	#innerbanner:before { width: 100%; }
	#innerbanner:after { display: none; }
	.pagination { margin-bottom: 10px; }
	#innerbanner { padding: 40px 0; }

	#ceosection .wrap.dflex { flex-direction: column; justify-content: center; }
	.ceosecimg, .ceoseccontent { flex: 0 0 100%; max-width: 100%; }
	.ceosecimg img { max-width: 50%; width: 50%; display: block; margin: 0 auto; }
	.ceoseccontent { padding: 0; margin-top: 25px; text-align: center; }
	.ceoseccontent h3 span { display: table; margin: 10px auto 0; }
	.ceoseccontent .specs li { margin-bottom: 5px; }
	.ourvision, .ourmission { padding-left: 20px; border-width: 5px; }
	.ourvision p, .ourmission p { margin-bottom: 0; }
	.ourvision { margin-bottom: 30px; } 
	
	.mainbannercontent { flex: 0 0 calc(100% - 46vw); max-width: calc(100% - 46vw); }
	.mainbannerimg { flex: 0 0 46vw; max-width: 46vw; }
	
	.servicebox { padding: 20px; }
	.serviceimg.bgimg { height: 200px; }
	.whychooseuslisting li { font-size: 18px; }
	.whychooseuslisting li:nth-child(2n) { margin-left: 30px; }
	.whychooseusleft { padding-right: 0; }
	.contactformwrap { padding: 20px; }
	
	.serviceslistbox { flex-direction: column; padding: 24px; }
	.serviceslistbox .serviceimg { flex: 0 0 auto; max-width: 100%; height: 280px; margin: 0 0 20px; }
	.serviceslistbox .serviceslistboxcontent { padding-left: 0; flex: 0 0 auto; max-width: 100%; }
	.serviceslistbox .subservicelist li { margin-bottom: 10px; }
	.serviceslistbox:nth-child(even) .serviceslistboxcontent { padding: 0; }

	.worklistboximg { flex: 0 0 calc(100% - 500px); max-width: calc(100% - 500px); padding: 14px; }
	.worklistboxcontent { flex: 0 0 500px; max-width: 500px; }

	.missionvisionwrapper.dflex { flex-direction: column; }
	.missionvisionimg, .missionvisioncontent { flex: 0 0 100%; max-width: 100%; }
	.missionvisionimg img { max-width: 50%; width: 50%; display: block; margin: 0 auto; }
	.missionvisioncontent { padding: 20px; }
} 

/*==========================================================================================================*/
@media only screen and (max-width: 768px) {
	#contactus .contactusleft { padding: 0; margin: 0 0 15px; }
	#contactus .contactusleft, #contactus .contactformwrap { flex: 0 0 100%; max-width: 100%; }
	#contactus .contactformwrap { padding: 16px; }
	.inputgroup { margin-bottom: 15px; }
	.contactusleft .cols3 { margin: 0 -6px; justify-content: center; }
	.contactusleft .cols3 .col { flex: 0 0 33.333%; max-width: 33.333%; margin-bottom: 0; padding: 0 6px; }
	.servicescontent { flex: 0 0 calc(100% - 50%); max-width: calc(100% - 50%); }
	.serviceslisting { flex: 0 0 50%; max-width: 50%; }

	.worklistboximg { flex: 0 0 calc(100% - 400px); max-width: calc(100% - 400px); }
	.worklistboxcontent { flex: 0 0 400px; max-width: 400px; }
}

/*==========================================================================================================*/
@media only screen and (max-width: 767px) {
	
	
	.default-grid.cols3 .col { width:50%; }
	.default-grid.cols3 .col:nth-child(3) { clear:left; }
	.tabnav { display:none; }
	.tab-container { padding:0; border:none;}
	.tab-data { margin:0 0 30px; }
	.tab-data .tabnav { display:none; }
	.tab-container .tabMobiletrigger { background:#f3f3f3; border:medium none; font-size:15px !important; text-transform:uppercase; margin:0 0 7px; padding:16px 54px 16px 16px; position:relative; cursor:pointer; font-weight:bold; }
	.tabMobiletrigger:after { border-left:8px solid rgba(0, 0, 0, 0); border-right:8px solid rgba(0, 0, 0, 0); border-top:8px solid #848690; content:""; margin-top:-3px; position:absolute; right:19px; top:50%; }
	.tabMobiletrigger:before { background:rgba(0, 0, 0, 0.08); content:""; height:100%; position:absolute; right:0; top:0; width:54px; z-index:1; }
	.tabcontent { padding:15px 0; margin:0; }
	.tabMobiletrigger.rotate:after { border-top-color:#272c2f; -webkit-transform:rotate(180deg); -moz-transform:rotate(180deg); -ms-transform:rotate(180deg); transform:rotate(180deg); }
	
	.heading-listblock.cols2 .col, .dropcaps-box.cols2 .col { width:100%; float:none; }
	
	

	.secpadding { padding: 40px 0; }
	.sectitle { margin: 0 0 15px; }

	.wrap.dflex:not(#header > .wrap) { flex-direction: column; justify-content: center; }

	#mainbanner .wrap { flex-direction: column-reverse !important; }
	.mainbannerimg { flex: 0 0 100%; max-width: 100%; margin-bottom: 30px; }
	.mainbannerimg img { display: block; max-width: 50%; width: 50%; margin: 0 auto; }
	.mainbannercontent { flex: 0 0 100%; max-width: 100%; display: flex; width: 100%; flex-direction: column; justify-content: center; padding: 0; }
	.mainbannercontent .btn { width: 197px; margin: 0 auto; }
	.mainbannercontent .tagline, .mainbannercontent h1, .mainbannercontent p { text-align: center; }
	#mainbanner .scrolldown { display: none; }
	
	.btn { padding: 10px 40px 10px 16px; }
	.btn:before { right: 14px; }

	.aboutusimg { flex: 0 0 60vw; max-width: 60vw; margin: 0 0 30px; }
	.aboutuscontent { padding: 0; flex: 0 0 100%; max-width: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; }
	.sectitle .toptitle { display: table; font-size: 13px; margin: 0 auto 10px; }
	.aboutuscontent p { text-align: center; }
	p { margin: 0 0 15px; }

	.servicescontent { position: static; text-align: center; padding: 0; margin: 0 0 25px; }
	.servicescontent, .serviceslisting, .whychooseusleft, .whychooseusright { flex: 0 0 100%; max-width: 100%; }
	.sectitle h3, .sectitle h4 { text-align: center; }
	.servicebox { padding: 16px; }
	.serviceimg.bgimg { margin-bottom: 15px; }
	.servicebox { margin-bottom: 25px; }
	.whychooseusleft { padding: 0; margin: 0 0 20px; }
	.whychooseusleft .sectitle .toptitle { margin: 0 0 10px; }
	.whychooseusleft .sectitle h3, .sectitle h4 { text-align: left; }
	.whychooseuslisting li { font-size: 18px; padding: 12px 12px 12px 44px; margin: 0 0 15px; width: 100%; border-width: 1px; }
	.whychooseuslisting li:nth-child(2n) { margin-left: 0; }
	.whychooseuslisting li:before { width: 18px; height: 18px; top: 15px; left: 15px; }
	

	#footer { padding: 30px 0; }
	.footerbottom { flex-direction: column; gap: 15px; }
	
	.fmenu li { margin: 0 4vw 5px; }

	#innerbanner { padding: 30px 0; }
	
	.serviceslistbox { padding: 20px; }

	.worklistbox { flex-direction: column; padding: 0 0 30px; margin: 0 0 30px; }
	.worklistboximg, .worklistboxcontent { flex: 0 0 auto; max-width: inherit; width: auto; }
	.worklistboximg { height: 320px; border-radius: 8px; -webkit-border-radius: 8px; -moz-border-radius: 8px; -ms-border-radius: 8px; -o-border-radius: 8px; }
	.worklistboximg img { height: 100%; object-fit: contain; }
	.worklistboxcontent { padding-left: 0; margin: 20px 0 0; text-align: center; }

	.contactheadingline { margin-bottom: 15px; }

}
/*==========================================================================================================*/
/* only iphone4 landscape & Potriat 300 by 480*/
@media only screen and (max-width: 567px) {
	
	
	.default-grid.cols3 .col, .default-grid.cols2 .col, .default-grid.cols4 .col { width:auto; float:none; }
	table.res-table tr th { display:none; }
	table.res-table tr td { display:block; position:relative; padding-left:50%; }
	table.res-table td:before { content: attr(data-th) ": "; font-weight: bold; width: 50%; display:block; padding-right:10px; position:absolute; left:0; top:0; padding:10px 10px; } 
	table.res-table { border-top:0; }	
	#logo { width:200px; }
	
	.list-block.cols3 .col { width:100%; float:none; }
	.image-block figure { width:100%; float:none; padding-right:0; }
	.image-block.right-align figure { padding-left:0; }
	h1,h2 { font-size:36px; line-height: 1.1; }
	h3 { font-size:30px; }

	.sectitle { margin-bottom: 10px; }
	.whychooseusleft .sectitle .toptitle, .sectitle .toptitle { margin-bottom: 5px; }

	.btn { font-size: 13px; }

	.serviceimg.bgimg { height: 150px; }

	#contactus .contactusleft { margin-bottom: 0; }
	.contactusleft .cols3 .col { flex: 0 0 50%; max-width: 50%; margin: 0 0 15px; }
	.servicebox { margin-bottom: 20px; border-radius: 8px; -webkit-border-radius: 8px; -moz-border-radius: 8px; -ms-border-radius: 8px; -o-border-radius: 8px; }

	#innerbanner { padding: 22px 0; }

	.pagination li, .pagination li a { font-size: 13px; }
	.missionvisionimg img, .ceosecimg img { max-width: 80%; width: 80%; }

	.serviceslistbox .serviceimg { height: 200px; }

	#contactuspage .companylocations { flex-wrap: wrap; margin-bottom: 0; justify-content: center; }
	#contactuspage .companylocations .col { flex: 0 0 50%; max-width: 50%; margin-bottom: 20px; }
}
/*==========================================================================================================*/
/* only iphone landscape 340 by 478*/
@media only screen and (max-width: 480px) {
	.whychooseuslisting li { font-size: 16px; line-height: 1.2; }
	h1, h2 { font-size:30px; }
}
/*==========================================================================================================*/
/* only iphone portrait 300 by 479*/
@media only screen and (max-width: 479px) {
	.mainbannerimg img { display: block; max-width: 100%; width: 100%; margin: 0 auto; }
	.aboutusimg { flex: 0 0 100%; max-width: 100%; margin: 0 0 20px;  }
	.secpadding { padding: 30px 0; }
} 
@media only screen and (max-width: 380px) {
	.contactusleft .cols3 .col { flex: 0 0 100%; max-width: 100%; margin: 0 0 15px; }
	.g-recaptcha { transform: scale(0.8); position: relative; left: -31px; 	}
	.serviceslistbox .serviceimg { height: 180px; }
	.worklistboximg { height: auto; }
	#contactuspage .companylocations { flex-direction: column; }
	#contactuspage .companylocations .col { flex: 0 0 100%; max-width: 100%; margin-bottom: 20px; }
}
/*==========================================================================================================*/