/* Responsive Styles */
@media (max-width: 1199px) {/* md and down */
	
	/*
	:root {
		--headerHeight: 208px;
	}
	*/
	
/*
	nav.navbar.bootsnav .logo {
		margin-top: 5px;
		width: 100px;
	}
*/
	
	/* Main Slick Slider */
	.mainSlickSlider .caption {
		/*top: 0;*/
		/*right: 10%;*/
	}
	
	/* Grid */
	.col4{
		grid-template-columns: repeat(3,1fr)
	}

	.span3 {
		grid-column-start: span 2;
	}

	.span4 {
		grid-column-start: span 3;
	}
	
	/* Masonry */
	.masonry.col4,
	.masonry {
		column-count: 3;
	}

	.masonry.col3 {
		column-count: 2;
	}

	.masonry.col2 {
		column-count: 1;
	}
	
	/* Services Blocks */
	.serviceBlocks{
		grid-template-columns: repeat(2,1fr);
	}
	
}

@media (max-width: 991px) {/* sm and down */
	
	:target {
		top: -50px; 
	}

	:root {
		--headerHeight: 179px;
	}

	nav.navbar.bootsnav .logo,
	nav.navbar.bootsnav.scroll .logo {
		--logoSize: 90px;
		width: var(--logoSize);
		margin-top: 3px;
		left: calc(50% - (var(--logoSize)/2));
		/*clip: rect(0px, 80px, 50px, 0px);*/
	}

/*
	nav.navbar.bootsnav .menuBar {
		border-top: 1px solid var(--superMenuBarBGColor);
	}
*/

	nav.navbar.bootsnav .navbar-header {
		height: 50px;
	}

	nav.navbar.bootsnav .attr-nav {
		display: block;
		margin-top: 0;
	}

	/* Main Nav */
	
	nav.navbar.bootsnav .navbar-nav > li.featured {
		margin: -1px -15px 0 -15px;
	}
	
	nav.navbar.bootsnav .navbar-nav > li.featured a {
		padding: 10px 15px;
	}
	
	div#navbar-menu {
    background-color: var(--MSMenuBarBGColor);
	}
	
	nav.navbar.bootsnav ul.nav.navbar-nav > li > a {
		color: var(--MSmenuItemsColor);
	}

	nav.navbar.bootsnav ul.nav li.dropdown ul.dropdown-menu > li > a {
		border-bottom: solid 1px var(--mainColor);
	}
	
	nav.navbar.bootsnav ul.nav.navbar-nav > li.active > a,
	nav.navbar.bootsnav ul.nav.navbar-nav > li:focus > a,
	nav.navbar.bootsnav ul.nav.navbar-nav > li:hover > a {
		color: var(--MSmenuItemsHoverColor);
	}

	nav.navbar.bootsnav ul.nav li.dropdown ul.dropdown-menu > li > a {
		color: var(--MSsubMenuItemsColor);
	}

	nav.navbar.bootsnav ul.nav.navbar-nav > li.dropdown li:focus > a,
	nav.navbar.bootsnav ul.nav.navbar-nav > li.dropdown li:hover > a {
		color: var(--MSsubMenuItemsHoverColor);
	}

	
	/* Deletes Dropdown caret */
	.navbar.bootsnav .nav > li > a span.caret {
		display: none;
	}
	
	/* Fixes thick line on mobile menu */
	nav.navbar.bootsnav .navbar-nav > li > a {
		border-top: none;
		border-bottom: solid 1px var(--mainColor);
	}
	
	nav.navbar.bootsnav .navbar-nav > li:last-child > a {
		border: none;
	}
		
	
	.rbs,
	.responsiveBottomSpace {
		margin-bottom: 30px;
	}
	
	/* Navbar Social Styles */
	nav.navbar.bootsnav .attr-nav li.social {
		display: block;
	}

	nav.navbar.bootsnav .attr-nav > ul > li > a {
		padding: 16px 10px;
	}
	
/*
	.block.videoBlock {
		background: url('https://genexsites01.com/wp-content/uploads/2021/12/poligonBG.jpg') no-repeat center center /cover;
	}
*/
	
	/* Main Slick Slider */
	.mainSlickSlider .caption {
/*
		top: 0;
		right: 0;
*/
		justify-content: center;
		align-items: flex-end;
	}
	
/*
	.mainSlickSlider .captionContent {
		width: 100%;
	}
*/
	
	/* Flex Block */
	.flexBlock {
		flex-direction: column;
	}
	
	.flexBlock.bd figure.l {
		border-right: 7px solid #fff;
		border-bottom: 0 solid #fff;
	}

	.flexBlock.bd figure.r {
		border-left: 7px solid #fff;
		border-top : 0 solid #fff;
	}
	
	/*Grid*/
	.col3, .col4{
	grid-template-columns: repeat(2,1fr)
	}
	
	.span3,.span4 {
		grid-column-start: span 2;
	}

	/* Grid With Rule */
	.grid.rule.R3,
	.grid.rule.R4{
		grid-template-columns: repeat(2, 1fr);
	}
	
	.grid.rule.R3 > *:nth-child(3n){
		/*border-right: 1px solid #ccc;*/
		border-right: none;
	}
	
	.grid.rule.R3 > *:nth-child(2n),
	.grid.rule.R4 > *:nth-child(2n){
		border-right: none;
	}
	
	/* Masonry */
	.masonry.col4,
	.masonry {
		column-count: 2;
	}

	.masonry.col3 {
		column-count: 1;
	}
	
	/* Service Grid */
	.serviceGrid {
		grid-template-columns: 1fr;
	}

	.serviceGrid .serviceGridItem {
		grid-column: span 1 !important;
	}
	
	/* Service Blocks */
	.serviceBlocks{
		grid-template-columns: repeat(1,1fr);
	}

	/* Tiles */
	.tiles {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.tiles .tile {
		grid-column: span 1 !important;
	}
	
}

@media (max-width: 767px) {/* xs and down */
	
	#topBar .topBarLogo {
		width: 200px;
	}
	
	#menuToggle {
		top: 25px;
		left: 25px;
	}
	
	/* Main Nav */	
	div#navbar-menu {
		background-color: transparent;
	}

	nav.navbar.bootsnav .navbar-nav {
		background-color: var(--SSMenuBarBGColor);
	}

	nav.navbar.bootsnav ul.nav.navbar-nav > li > a {
		color: var(--SSmenuItemsColor);
	}

	nav.navbar.bootsnav ul.nav.navbar-nav > li.active > a,
	nav.navbar.bootsnav ul.nav.navbar-nav > li:focus > a,
	nav.navbar.bootsnav ul.nav.navbar-nav > li:hover > a {
		color: var(--SSmenuItemsHoverColor);
	}

	nav.navbar.bootsnav ul.nav li.dropdown ul.dropdown-menu > li > a {
		color: var(--SSsubMenuItemsColor);
	}

	nav.navbar.bootsnav ul.nav.navbar-nav > li.dropdown li:focus > a,
	nav.navbar.bootsnav ul.nav.navbar-nav > li.dropdown li:hover > a {
		color: var(--SSsubMenuItemsHoverColor);
	}
	
	nav.navbar.bootsnav .attr-nav > ul > li > a {
		padding: 16px 10px;
	}
	
	footer .footerContents .addressWrapper{
		margin: 30px auto;
	}
	
	footer .footerContents {
		text-align: center;
	}

	footer .footerContents ul.menu {
		padding-left: 0;
	}

	/* Main Slick Slider */
	.mainSlickSlider .caption {
		/*align-items: center;*/
		padding: 2rem 16px;
		position: relative;
		background-color: #000;
	}

	.mainSlickSlider .captionContent {
		padding: 0;
	}

	.mainSlickSlider .captionContent h2 {
		font-size: 3.5rem;
	}

	/* Flex Block */
	.flexBlock .contentWrapper {
		padding: 5rem 3rem;
	}
	
	/* dl Styles */
	.bodyWrapper main dl.h {
		display: block;
	}

	.bodyWrapper main dl.h:not(.icon) dt {
		text-align: initial;
	}
	
	.bodyWrapper main dl.h dd {
		margin-bottom: 5px;
	}
	
	blockquote {
		padding-left: 40px;
	}

	blockquote::before {
		font-size: 2.5rem;
		top: 5px;
		left: 5px;
	}

	/* News Archive */
	#news article img {
		margin-bottom: 3rem;
	}
	
	/* Custom Sidebar */
	.customSidebar.alt,
	.customSidebar {
		grid-template-columns: 1fr;
	}
	
	.customSidebar.alt .sidebar{
		order: -1;
	}
	
	.customSidebar aside.sidebar {
		margin-right: -15px;
		margin-left: -15px;
	}
	
	.customSidebar aside.menu {
		padding: 0;
	}
	
	.customSidebar .content {
		padding: 4rem 0;
	}

	/* Custom Sidebar Menu */
	.customSidebar .subMenuCustomSidebar {
		margin: 0 -15px;
	}
	
	nav.navbar.subMenuCustomSidebar h3 {
		margin: 0 15px;
	}
	
	/* dl Styles */
	.bodyWrapper main dl.h.icon dd a[href^="mailto:"] {
		font-size: 1.58rem;
	}
	
	/* Grid */
	.col2, .col3, .col4{
		grid-template-columns: repeat(1,1fr)
	}
	
	.span2, .span3, .span4 {
		grid-column-start: span 1;
	}
	
	/* Grid With Rule */
		
	.grid.rule > * {
		border-right: none;
		border-bottom: 1px solid #ccc;
		padding: 0px 30px 30px 30px;
	}
	
	.grid.rule > *:last-child{
		border-bottom: none;
		padding: 0px 30px 0px 30px;
	}
	
	.grid.rule.R3,
	.grid.rule.R4 {
		grid-template-columns: repeat(1, 1fr);
	}
	
	.grid.rule.R3 > *:nth-child(3n) {
		border-right: none;
	}
	

	@supports (-webkit-touch-callout: none) { /* CSS specific to iOS devices */

		.box.fBox .figure {
			max-height: 250px;
		}
		
	}
	

	/* Masonry */
	.masonry.col4,
	.masonry {
		column-count: 1;
	}

	/* Service Grid */
	.serviceGrid .serviceGridItem .bgOverlay .caption {
		width: 100%;
	}
	
	/* Services Blocks */
	.servicesBlocks{
		grid-template-columns: repeat(1,1fr);
	}
	
	/* Tiles */
	.tiles {
		grid-template-columns: 1fr;
	}
	
	/* Team Item Styles */
	.teamItem .caption {
		padding: 3rem 0;
	}
	
	/* Custom Block */	
	.customBlock.sideBar.first {
		margin: 40px -15px 0;
	}
	
	.customBlock.sideBar {
		margin: 0px -15px;
	}	
	
	.customBlock.sideBar.last {
		margin-bottom: -40px;
	}

}

@media (max-height: 900px) {
	.mainSlickSliderWrapper .mssLogoWrapper .logo {
		display: none;
	}
}

@media (max-width: 767px) and (orientation: landscape) {

	/* Main Slick Slider */
	#mainSlider .item,
	.mainSlickSlider .slide .image,
	#frontPageVideo {
		height: calc(170vh - var(--headerHeight));
	}

}

/* Mobile First */
@media (min-width: 768px) {/* sm and up */
	
	.subMenuCustomSidebar ul.nav.navbar-nav {
		float: none;
	}

	.subMenuCustomSidebar ul.nav.navbar-nav li {
		float: none;
	}

	/* Center SubMenu */
	nav.navbar.subMenu ul.nav.navbar-nav {
		float: none;
		display: flex;
		/*flex-flow: wrap;*/
		align-items: center;
		justify-content: center;
		text-align: center;
	}
	
	/* Custom Sidebar */
	.customContainerFull .customSidebar {
		margin-right: -15px;
		margin-left: -15px;
	}
	
	/* Custom Sidebar Menu */
	.subMenuCustomSidebar.navbar-default {
		margin: 0 -2rem;
	}

}

@media (min-width: 992px) {/* md and up */

	nav.navbar.bootsnav ul.nav.navbar-nav {
		margin-right: var(--menuRightPadding);
	}

	/* Navigation */
	/* Main Nav */	
	nav.navbar.bootsnav ul.nav.navbar-nav > li:not(:last-child)::after {
		content: "|";
		color: var(--mainColor);
		margin: 5px;
	}

	nav.navbar.bootsnav ul.nav.navbar-nav > li {
		display: flex;
		flex-wrap: nowrap;
		align-items: baseline;
		justify-content: center;
	}
	
	nav.navbar.bootsnav ul.nav.navbar-nav > li > a {
		padding: 30px 10px;
	}
	
	nav.navbar.bootsnav.scroll ul.nav.navbar-nav > li > a {
		font-size: 1.4rem;
		padding: 15px 10px;
	}

/*
	nav.navbar.bootsnav ul.nav.navbar-nav > li > a {
		border-left: 1px solid var(--mainColor);
	}

	nav.navbar.bootsnav ul.nav.navbar-nav > li:last-child > a {
		border-right: 1px solid var(--mainColor);
	}
*/

	nav.navbar.bootsnav ul.nav.navbar-nav > li > a::before {
		content: "";
		position: absolute;
		margin: 0 auto;
		/*top: 0;*/
		left: 0;
		right: 0;
		
		bottom: 15px;
		height: 2px;
		width: 0;
		background-color: var(--mainColor);
		
/*
		bottom: 0;
		width: 10px;
		border-top: 0;
		border-right: 20px solid transparent;
		border-bottom: 0 solid var(--mainColor);
		border-left: 20px solid transparent;
*/
		
		transition: all .3s;
	}
	
	nav.navbar.bootsnav.scroll ul.nav.navbar-nav > li > a::before {
		bottom: 7px;
	}

	nav.navbar.bootsnav ul.nav.navbar-nav > li:hover > a::before,
	nav.navbar.bootsnav ul.nav.navbar-nav > li:focus > a::before,
	nav.navbar.bootsnav ul.nav.navbar-nav > li.active > a::before {
		width: 80%;
		/*border-bottom: 15px solid var(--mainColor);*/
		/*background-color: transparent;*/
	}

	nav.navbar.bootsnav ul.nav.navbar-nav > li.featured > a::before {
		/*border-bottom: 15px solid var(--mainColor);*/
		background-color: #fff;
		background-color: transparent;
	}	

	/* Bootsnav dropdown Styles */
	nav.navbar.bootsnav li.dropdown ul.dropdown-menu {

/*
		display: block !important;
		opacity: 1 !important;
*/

		border-top: solid 5px var(--mainColor);
/*
		background-color: var(--lightMainColor);
		padding: 5px 15px;
		border-radius: 12px;
		border: none;
		margin-top: -10px;
		filter: drop-shadow(0px 0px 5px rgba(0,0,0,.4));
*/
	}
	
/*
	nav.navbar.bootsnav .navbar-nav > li.dropdown > ul.dropdown-menu::before {
		content: "";
		position: absolute;
		top:-10px;
		left: 30px;
		border-top: none;
		border-right: solid 10px transparent;
		border-bottom: solid 10px var(--lightMainColor);
		border-left: solid 10px transparent;
	}	
	
	nav.navbar.bootsnav li.dropdown ul.dropdown-menu::before {
		content: "";
		position: absolute;
		top: 16px;
		left: -10px;
		border-top: solid 10px transparent;
		border-right: solid 10px var(--lightMainColor);
		border-bottom: solid 10px transparent;
		border-left: none;
	}
	
	nav.navbar.bootsnav.scroll li.dropdown ul.dropdown-menu {
		margin-top: 0px;
	}
	
	nav.navbar.bootsnav li.dropdown ul.dropdown-menu ul.dropdown-menu {
		margin-top: -3px;
	}
*/
	
	nav.navbar.bootsnav li.dropdown ul.dropdown-menu > li > a {
		/*border-bottom: solid 1px var(--mainColor);*/
	}

	nav.navbar.bootsnav ul.nav.navbar-nav > li {
		transition: all .5s;
	}

	nav.navbar.bootsnav ul.nav.navbar-nav > li:focus,
	nav.navbar.bootsnav ul.nav.navbar-nav > li:hover,
	nav.navbar.bootsnav ul.nav.navbar-nav > li.active {
		background-color: var(--menuItemsHoverBGColor);
	}
	
	/* Navbar Social Styles */
	nav.navbar.bootsnav .attr-nav > ul > li > a {
		padding: 30px 15px 0;
	}
	
	nav.navbar.bootsnav.scroll .attr-nav > ul > li > a {
		padding: 13px 15px 0;
	}

}

@media (min-width: 1200px) {/* lg and up */
	
}
