/* ************************ */
/*							*/
/*	custom theme			*/
/*							*/
/* ************************ */

@media (max-width: 1920px) {

	#main-slider .item-wrap{min-height:35rem;}

}

@media (max-width: 1199px) {
	/* md */
	#page-wrap{border-left:0px dashed red;}

	.mb-big-md{margin-bottom:3rem;}

	#main-nav > li > a{padding:1rem 1.3rem;}

	.news-wrap .right-wrap::before{right:calc((970px - 100vw)/2 - 15px)}
	.news-wrap .right-wrap{padding:3.8rem 3rem;}
	.news-wrap .video-description-block{padding:3.8rem 3rem;}

	.footer-nav span{padding:0 1rem;}

	.catalog-list .title{padding:1.5rem;}

	.section-header .right{padding-left:3rem;}

	.aff-video{height:calc((940px*0.58)/1.6);}

	#main-slider .slick-arrow{right: calc((100vw - 970px)/2 + 15px);}
	#main-slider .slick-arrow.slick-prev{right: calc((100vw - 970px)/2 + 15px + 2.5rem);}
	#main-slider:after{
		right: calc((100vw - 970px)/2 + 15px + 5rem);
		width: calc(970px / 12*5 - 10rem);
	}
	.portfolio-brands-section .content-block:before {
    left: calc((100vw - 970px)/-2 - 15px);
    width: calc((100vw - 970px)/2 + 15px);
	}
	.decor-wave-top {
    height: 14.3rem;
    top: -3.5rem;
	}
	.serving-section{padding-bottom: 4rem;}
	.serving-block .content-wrap {
    top: -4.5rem;
    left: -4.5rem;
    right: -4.5rem;
    bottom: -4.5rem;
	}

	.contact-panel{padding: 2rem;}

	.internal-masthead{padding-top: 12rem; padding-bottom: 5rem;}
	
	.footer-logo img{width:15rem;}
	

}

@media (max-width: 991px) {
	/* sm */
	#page-wrap{border-left:0px dashed green;}

	.pull-right { float: none!important;}

	html{font-size:14px;}

	.anchor-link{top:-1rem;}

	.container{ width:auto; padding-left:15px; padding-right:15px;}

	.vertical-center-md{ display:block;}

	.content-section{ padding-top:3rem; padding-bottom:3rem; }
	.content-section-airy{padding-top: 5rem; padding-bottom: 5rem;}
	.pb0{padding-bottom:0;}

	.indent-left{padding-left:15px;}
	.indent-right{padding-right:15px;}

	.mb-half-sm{margin-bottom:0.5rem;}
	.mb-half-semi-sm{margin-bottom:0.3rem;}
	.mb-big-sm{margin-bottom:3rem;}
	.mb-sm{margin-bottom:1.5rem;}
	.mb-semi-sm{margin-bottom:1.1rem;}

	#header{height:auto;}
	.navbar{ position:relative; }
	.navbar.affix{top:0; box-shadow:none;}
	.container > .navbar-header, .container-fluid > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-collapse{margin-left:0; margin-right:0;}
	.modal-open .navbar.navbar-default {padding-right: 0px;}
	.navbar.navbar-default .navbar-brand{margin-left:0; width: 7rem; transition:none;}
	.affix .navbar-brand{transform:none; margin-top:0;}
	
	.affix ~ #page-wrap .navbar-header{margin-top:0;}

	.navbar > .container, .affix.navbar > .container{height:auto;}
	.navbar-default{background-color: #000;}

	#modal-nav-wrap button.close{margin-bottom: 1rem; top:1rem;}

	#main-slider{margin-top: 0;}
	#main-slider .item-wrap{padding-top: 8rem; padding-bottom: 9rem;}
	.h1-display {font-size: 3.5rem;}
	.slick-dots{bottom:2rem;}
	.slick-arrow{background-size: auto 100%;}

	#main-slider .slick-arrow{right: 15px;}
	#main-slider .slick-arrow.slick-prev{right: calc(15px + 2.5rem);}
	#main-slider:after{
		right: calc(15px + 5rem);
		width: calc(100% / 12*5 - 10rem);
	}
	.portfolio-brands-section .content-block:before {left: -15px; width: 15px;}
	.portfolio-brands-section .content-block {padding: 5rem 3rem 11rem 0;}
	.brand-block-wrap{padding-top: 3rem; padding-bottom: 5rem;}

	.serving-section .row{display: block;}
	.decor-wave-top {
    height: 18.3rem;
    top: -7.5rem;
	}

	.serving-block .item .content-wrap .image-block{display: none;}
	.serving-block .content-wrap,.serving-block .content-wrap .content-block{
		position: relative;
		top: auto;
		bottom: auto;
		left: auto;
		right: auto;
		display: block;
		transform: none;
		opacity: 1;
	}
	.serving-block .content-wrap{background-color: rgba(0,0,0,0.3);}

	.serving-block .item:hover .area-link{
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: 100%;
		height: 100%;
	}

	.product-slider{margin-bottom: 4rem;}
	.product-slider .overlay{position: relative; left: auto; bottom: auto;}
	.product-slider .name{display: none;}
	.product-slider .slick-dots li button{background: #000;}
	.product-slider .slick-dots{bottom: -2rem;}

	.diverse-service-listing .item{width: calc(100% / 3 - 30px);}
	.map-section {padding-top: 10rem; padding-bottom: 5rem;}

	#footer {padding-top: 5rem;}
	.footer-logo{text-align: center;}
	.footer-logo a{display: inline-block;}
	.footer-first-column{text-align: center;}
	#footer .social-block{justify-content: center;}

	.copyright-section{flex-direction: column; align-items: center; justify-content: center;}
	.copyright-section .copyright-menu{margin-bottom: 0.5rem;}
	.copyright-section .copyright-menu:last-child{margin-bottom: 0;}

	.catalog-list > .inner-wrap{margin-left:-0.5rem; margin-right:-0.5rem;}
	.catalog-list .item{width:calc(33.33% - 1rem); margin:0 0.5rem; display: flex; flex-direction: column;}
	.catalog-list .item .image{flex:none;}
	.catalog-list .title{position: relative; flex-grow:1;}
	.catalog-list .title .description{ display: block;}
	.catalog-list .item:hover .image img{top:0;}

	.news-wrap .right-wrap::before{right:0;}
	.news-wrap .right-wrap{padding:3rem 2rem;}
	.news-wrap .video-description-block{padding:3rem 2rem;}

	#aff-slider{margin-left:-0.5rem; margin-right:-0.5rem;}
	#aff-slider .item{margin:1px 0.5rem;}

	#ind-list .panel-heading{padding:1.5rem;}
	#ind-list .panel-logo{margin-right:1.5rem;}
	#ind-list .panel-link{right:1.5rem;}
	#ind-list .panel-heading{padding-right:5rem;}
	#ind-list .panel-body{padding:1.5rem;}
	#ind-list .panel + .panel{margin-top:3rem;}

	#aff-listing .item{padding:3rem 2rem; width:calc(25% - 1rem); margin:0 0.5rem 1rem 0.5rem;}
	#aff-listing > .inner-wrap{margin:0 -0.5rem -1rem -0.5rem;}

	.aff-video{height:calc((100vw*0.58)/1.6);}

	.aff-contact .aff-logo{margin-top:-5rem;}
	.aff-card .card-panel{padding:1.5rem;}
	.aff-card .card-panel address > div{padding-right:1.5rem;}
	.left.aff-card .staff-contact{padding-left:1.5rem;}
	.aff-card .staff-contact .item{padding-right:1rem;}

	#prod-list .panel-title a{padding:1.5rem 4rem 1.5rem 1.5rem;}
	#prod-list .panel-title a .fa{right:1.5rem;}
	.prod-list-item > .inner-wrap > div:last-child{padding-left:2rem;}
	#prod-list .panel + .panel{margin-top:1rem;}
	#prod-list .panel-body{padding:2rem 0;}

	.cta-right-block{text-align: left;}

	#product-slider-thumbs > .inner-wrap{margin:0 -0.25rem -0.5rem -0.25rem;}
	#product-slider-thumbs .item{ width:calc(20% - 0.5rem); margin:0 0.25rem 0.5rem 0.25rem;}

	.internal-masthead{margin-top: 0; padding-top: 5rem; padding-bottom: 5rem;}
	
	.portfolio-brands-section .brand-block{padding:0; flex-direction: column; align-items: center;}
	.portfolio-brands-section .brand-block .item{width:60%;}

}


@media (max-width: 767px) {
	/* xs */
	#page-wrap{border-left:0px dashed blue;}

	.content-section{ padding-top:2.5rem; padding-bottom:2.5rem; }
	.content-section-airy {padding-top: 3.5rem; padding-bottom: 3.5rem;}

	.pb0{padding-bottom:0;}

	.btn{height:auto; white-space:normal;}

	h1{font-size:1.71rem /*24px*/;}
	h2, .h2-style{font-size:1.57rem /*22px*/;}
	h3, .h3-style{font-size:1.42rem /*20px*/;}
	h4, .h4-style{font-size:1.28rem /*18px*/;}
	h5, .h5-style{font-size:1.14rem /*16px*/;}
	h6, .h6-style{font-size:1.00rem /*14px*/;}

	.sup-header{font-size: 0.81rem;}

	h1, h2, h3, h4, h5, h6, .textbox p, .textbox ul, .textbox ol{margin-bottom:1rem;}
	.textbox img, .textbox .align-left, .textbox .align-right, .textbox figure{ float:none; width:auto; display:inline-block; margin-left:0; margin-right:0; max-width:100%; margin-bottom:1.35rem;}
	.textbox, .form-wrap, .accordion, .side-nav, .tabs-wrap{margin-bottom:2.5rem;}
	.text-image-wrap.align-left, .text-image-wrap.align-right{float:none; width:auto; max-width:100%; margin-right:0; margin-left:0; margin-bottom:1.35rem;}
	.text-image-wrap.align-left img, .text-image-wrap.align-right img, .text-image-wrap.align-left figure, .text-image-wrap.align-right figure{width:auto;}

	.mb-half, .mb-half-sm, .mb-half-xs{margin-bottom:0.5rem;}
	.mb-half-semi, .mb-half-semi-sm, .mb-half-semi-xs{margin-bottom:0.3rem;}
	.mb, .mb-sm, .mb-xs{margin-bottom:1rem;}
	.mb-semi, .mb-semi-sm, .mb-semi-xs{margin-bottom:0.73rem;}
	.mb-big, .mb-big-md, .mb-big-sm, .mb-big-xs{margin-bottom:2.5rem;}

	#main-slider .item-wrap {
    padding-top: 3rem;
    padding-bottom: 5rem;
		min-height: auto;
	}
	#main-slider:after {
    width: calc(100% - 5rem - 30px);
	}

	.portfolio-brands-section .content-block{
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
		padding-right: 0;
		margin-top: 0;
	}
	.portfolio-brands-section .content-block:after{
		content: '';
		background-color: #fff;
		position: absolute;
		right: -15px;
		width: 15px;
		top: 0;
		bottom: 0;
	}
	.portfolio-brands-section .brand-block{ flex-direction: row; margin-bottom:0; align-items: stretch;}
	.portfolio-brands-section .brand-block .item{width:50%;}

	.brand-block-wrap{padding-top: 2.5rem; padding-bottom: 2.5rem;}

	.serving-section-wrap{padding-top: 5rem;}
	.decor-wave-top {height: 15.3rem; top: 0;}
	.serving-block .inner-wrap .item {width: calc(100% / 2 - 1rem);}
	.diverse-service-listing .item {width: calc(100% / 2 - 30px); margin-bottom: 1.5rem;}
	.diverse-service-listing .inner-wrap{margin-bottom: -1.5rem;}
	.diverse-service-listing{margin-bottom: 3.5rem;}

	.map-section {padding-top: 4rem; padding-bottom: 3rem;}
	#footer {padding-top: 3.5rem;}
	.footer-column-section{
		margin-left: -1.5rem;
		margin-right: -1.5rem;
	}
	.footer-column{
		width: calc(100%/3 - 3rem);
		margin-left: 1.5rem;
		margin-right: 1.5rem;
	}


	.side-line .line{margin-right:0;}

	#aff-slider{margin-bottom:1.5rem;}
	#aff-slider .slick-dots{bottom:-2rem;}
	#aff-slider .slick-dots li button{background:#000;}
	#aff-slider .slick-dots li button:hover{border-color:#000;}
	#aff-slider .slick-dots .slick-active button, .slick-dots .slick-active button:hover{opacity:1; cursor:default; background-color:#000;}

	.serve-list .item{width:50%; padding:1.5rem;}

	.section-header{display: block;}
	.section-header .right{padding-left:0; text-align: left;}

	.catalog-list > .inner-wrap{ display: block; margin:0;}
	.catalog-list .item{width:auto; margin:0; display: block;}
	.catalog-list .item+.item{margin-top:1.5rem;}

	.news-wrap{display: block;}
	.news-wrap .left-wrap{display: block; width:auto;}
	.news-wrap .right-wrap{width:auto;}
	.news-wrap .video-block{padding:0; height:calc(100vw/1.6);}
	.news-wrap .video-description-block{padding:2.5rem 2rem;}
	.news-wrap .right-wrap{padding:2.5rem 2rem;}

	.vertical-center-sm{ display:block;}

	.accordion .panel-title a{padding:1rem 3rem 1rem 1.5rem;}

	.side-line .line{margin-bottom:0.45rem; margin-left:1rem;}



	.textbox ol{padding-left: 2.8rem;}
	.textbox ul{padding-left: 1.5rem;}
	.textbox ul li{background-position:0 0.45rem; }

	#ind-list .panel-logo{width:7rem;}
	#ind-list .panel + .panel{margin-top:2.5rem;}

	.breadcrumbs-section{padding:0.5rem 0;}
	.breadcrumbs-section ol{font-size: 0.81rem;}
	.breadcrumbs-section ol li + li::before{margin:0 0.3rem;}

	#aff-listing .item{width:calc(33.33% - 1rem); padding:2rem 1rem;}

	.aff-contact .aff-logo{margin-top:0; padding:0 3rem 0 0; width:50%;}
	.aff-contact{ display: flex; align-items: center;}
	.aff-video{height:calc(100vw/1.6);}

	.aff-card > .row > [class*='col-']{display: block;}
	.aff-card > .row{flex-direction:column;}
	.aff-card .card-text{width:auto;}
	.aff-card .card-panel{margin-top:0;}
	.left.aff-card .card-panel{margin-right:0;}
	.right.aff-card .card-panel{margin-left:0;}
	.aff-card .card-image{height:calc(100vw/1.6);}
	.aff-card > .row .col-image{order:0 !important;}
	.aff-card > .row .col-text{order:2;}
	.aff-card.right .staff-contact{padding-left:1.5rem;}

	.aff-card .card-panel address{display: block;}
	.aff-card .card-panel address > div{width:auto; padding-right:0;}



	.table-responsive .table tbody td{display:block;}
	.table-responsive .table tbody td:before { content: attr(data-th); font-weight: bold; display: inline-block; position:absolute; width: 7rem; left:0.6rem;}
	.table-responsive .table tbody > tr{ display:block; padding:0.5rem 0;}
	.table-responsive .table > thead{display:none;}
	.table-responsive .table > thead > tr > th, .table-responsive .table > tbody > tr > th, .table-responsive .table > tfoot > tr > th, .table-responsive .table > thead > tr > td, .table-responsive .table > tbody > tr > td, .table-responsive .table > tfoot > tr > td{border-top:0; padding:0.5rem 1rem 0.5rem 7rem;}
	.table-responsive > .table > thead > tr > th, .table-responsive > .table > tbody > tr > th, .table-responsive > .table > tfoot > tr > th, .table-responsive > .table > thead > tr > td, .table-responsive > .table > tbody > tr > td, .table-responsive > .table > tfoot > tr > td{white-space:normal;}

	.prod-list-item + .prod-list-item{margin-top:1rem;}
	#prod-list .panel-body{padding:1.5rem 0;}

	#product-slider-thumbs{display: none;}

	#product-slider{margin-bottom:3.5rem;}

	.jobs-listing.table > tbody > tr > td:last-child{text-align: left;}
	.job-info-table > tbody > tr > td{padding:4px;}
	.job-info-table > tbody > tr:first-child > td{padding-top:0;}
	.job-info-table > tbody > tr:last-child > td{padding-bottom:0;}


	.pull-right{float:none !important;}

	.contact-preview-wrap{display: block;}
	.contact-image{padding: 0; padding-bottom: 2rem;}

	.service-listing .item{width: calc(100% - 30px);}
	.aff-filter.flex-align-bottom .row{display: block;}

	.aff-filter.flex-align-bottom .btn {
    padding-left: 1.37rem;
    padding-right: 1.37rem;
		width: auto;
	}

	.internal-masthead{padding-top: 3rem; padding-bottom:3rem;}
}

@media (max-width: 479px) {
	#page-wrap{border-left:0px dashed yellow;}

	.news-wrap .video-description-block{padding:1.5rem;}
	.news-wrap .right-wrap{padding:1.5rem;}

	.serve-list > .inner-wrap{display: block;}
	.serve-list .item{width:auto;}

	.industry-carousel{display: none;}
	#ind-list .panel-heading{display: block; padding:1.5rem 4.5rem 1.5rem 1rem;}
	#ind-list .panel-logo{width:auto; margin-right:0; margin-bottom:1.5rem;}
	#ind-list .panel-body{padding:1.5rem 1rem;}

	#aff-listing > .inner-wrap{margin:0 -0.25rem -0.5rem -0.25rem;}
	#aff-listing .item{width:calc(50% - 0.5rem); margin:0 0.25rem 0.5rem 0.25rem}

	.aff-contact{display: block;}
	.aff-contact .aff-logo{padding:1rem; width:auto;}
	.aff-contact .aff-logo img{width:auto;}
	.aff-card .card-panel{padding:1.5rem 1rem;}
	.aff-card.left .staff-contact, .aff-card.right .staff-contact{padding-left:1rem; display: block;}
	.aff-card .staff-contact .item{width:auto; padding-right:0;}

	#prod-list .panel-title a{padding:1rem 3rem 1rem 1rem;}
	#prod-list .panel-title a .fa{right:1rem;}
	.prod-list-item > .inner-wrap{display: block;}
	.prod-list-item > .inner-wrap > div:last-child{padding-left:0; margin-top:1rem;}
	.prod-list-item + .prod-list-item{margin-top:2rem;}
	#product-slider .slick-dots li button{margin:0.1rem;}

	.accordion .panel-title a{padding-left:1rem;}
	.accordion .panel-body{padding-left:1rem; padding-right:1rem;}

	.date-info-slide{padding-right: 2rem; padding-left: 2rem;}
	#date-slider .slick-list.draggable::before{width: 70%;}


	.serving-section::before{top: 0rem;}
	.decor-wave-top {height: 5rem;}
	.serving-block .inner-wrap .item {width: calc(100% - 1rem);}
	.diverse-service-listing .item {width: calc(100% - 30px);}

	.footer-column{
    width: 100%;
    margin-left: 0;
    margin-right: 0;
		margin-bottom: 2rem;
	}
	.footer-column:last-child{margin-bottom: 0;}
	.footer-column-section{
		display: block;
		margin-left: 0;
		margin-right: 0;
	}
	.footer-menu ul{
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		margin-bottom: 0.5rem;
		margin-left: -0.5rem;
		margin-right: -0.5rem;
	}
	.footer-menu ul li+li{margin-top: 0;}
	.footer-menu ul li{margin-bottom: 0.5rem; margin-left: 0.5rem; margin-right: 0.5rem;}
	.footer-header{text-align: center; margin-bottom: 0.5rem;}
	.footer-header +.page-sep{margin-bottom: 0.5rem;  opacity: 0.3;}

	.two-column-listing ul{
		margin-left: 0;
		margin-right: 0;
	}
	.two-column-listing ul li{
		width: 100%;
		margin-left: 0;
    margin-right: 0;
	}

	.contact-listing .item {width: calc(100% - 30px);}
	.modal-body {padding: 1.5rem;}
	
	.portfolio-brands-section .brand-block .item a{padding:1rem;}
	
	.modal-body button.close{right:0.3rem; top:0.1rem;}

}

@media (max-width: 320px) {
	#page-wrap{border-left:0px dashed red;}
	
	.portfolio-brands-section .brand-block{flex-direction: column;}
	.portfolio-brands-section .brand-block .item{width:100%;}

}
