
/*
    Grid
*/

.main {
	z-index: 3;
	position: relative;
	margin-bottom: 230px;
	background-color: #fff;
}
.section {
	position: relative;
}
.main.margin-bot-none {
	margin-bottom: 0;	
}
.main.margin-above {
	margin-top: 100vh;
}
.padd-edges {
	margin-left: 10px;
	margin-right: 10px;
}
.margin-bot {
	margin-bottom: 10px;
}
.hero {
	width: 100%;
	height: 100vh;
	z-index: 1;
	position: relative;
}
.hero-fix {
	width: 100%;
	height: 100%;
	z-index: 1;
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	/*background-size: cover;*/
	background-size: cover;
	background-attachment: fixed;
}
.by-video-home {
    position: relative;
    width: 100%;
    height: calc(100vh - 130px);
    z-index: 1;
    background-color: #fff;
}
.by-video-home video {
    position: relative;
    width: 100%;
    margin-top: 0px;
    height: calc(100vh - 130px);
    object-fit: cover;
    z-index: 1;
}
.by-vid-button {
	font-family:'Sohne', Arial, Helvetica, sans-serif;
	font-weight:300;
    border: 0;
    cursor: pointer;
    position: relative;
    color: #fff;
    background-color: transparent;
    font-size: 15px;
    line-height: 50px;
    z-index: 3;
    right: 60px;
    margin-top: -90px;
    float: right;
}
.meet-video {
    margin: 0 auto;
    max-width: 1200px;
    margin-top: 55px;
}
.meet-video video {
    width: auto;
    max-width: 1200px;
}
.text-line-ani.align-text-left {
    text-align: left;
    margin: 0 auto;
    max-width: 1200px;
    width: auto;
}
.by-more-button {
    margin: 0 auto;
    text-align: center;
}
.by-more-button a {
    margin-top: 40px;
	font-size: 13px;
	letter-spacing: 3px;
	color: #fff;
    border: 1px solid #231f20;
    border-radius:0;
    background-color: #231f20;
	width: 350px;
	padding-top: 14px;
	padding-bottom: 12px;
	padding-left: 0;
	cursor: pointer;
    display: inline-block;
}
.by-more-button a:hover {
    color: #111;
    background-color: #fff;
    border: 1px solid #111;
}

@media (hover: none) and (pointer: coarse) {

.hero-fix {
	background-attachment: inherit;
}

}

.hero-fix-auto {
	width: 100%;
	height: auto;
	z-index: 1;
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
}
.hero-bg-fix {
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
}
.fit-img-always {
}
.fit-img-always img {
	width: 100%;
	height: 100vh;
	object-fit: cover;
	background-attachment: fixed;
	overflow: auto;
}
.block {
	font-size: 0;
}
.ib {
	display: inline-block;
}
.vt {
	vertical-align: top;
}
.vm {
	vertical-align: middle;
}
.vb {
	vertical-align: bottom;
}
.max {
	max-width: 1000px;
	margin: 0 auto;
}
.w50 {
	width: 50%;
}
.feature-left {
	width: 28%;
}
.feature-right {
	width: 72%;
}
.location-left {
	width: 72%;
}
.location-right {
	width: 28%;
}
.text-feature {
	padding-top: 140px;
	padding-left: 12%;
	padding-right: 9%;
}
.text-feature-max {
	/*max-width: 430px;*/
}
.centered {
	display: table;
	vertical-align: middle;
	width: 100%;
	height: 100%;
	text-align: center;
}
.centered-middle {
	display: table-cell;
	vertical-align: middle;
}

.text-line-ani {
	width: auto;
	height: 80px;
}
.text-line-ani .caption {
	font-family:'Publico Banner', Cambria, "Hoefler Text", "Liberation Serif", Times, "Times New Roman", "serif";
    font-weight: normal;
    font-style: italic;
	font-size: 14px;
	color: #000000;
	letter-spacing: 0.3px;
	line-height: 60px;
}
.x-line {
	width: 20px;
	height: 64px;
	margin-right: 20px;
}
.x-line span {
	display: block;
	width: 100%;
	height: 1px;
	background-color: #000000;
	margin-top: 37px;
}
.bg-grey {
	background-color: #faf7f3;
}
.padd-big {
	padding-top: 160px;
	padding-bottom: 160px;
	padding-left: 8%;
	padding-right: 8%;
}
.padd-big.left-right-0 {
	padding-left: 0;
	padding-right: 0;
}
.padd-big.less-bot {
	padding-bottom: 110px;
}
.padd-big.top0 {
    padding-top: 0;
}
.padd-big.bot0 {
	padding-bottom: 0;
}
.padd-rego {
	padding-top: 180px;
	padding-bottom: 180px;
	padding-left: 6%;
	padding-right: 6%;
}
.padd-team {
	padding-top: 60px;
}
.gallery0,
.gallery1 {
	margin: 0 auto;
	width: 70%;
	min-width: 468px;
	max-width: 468px;
}
.gallery2 {
	z-index: 5;
	position: relative;
}
.gallery1 .owl-nav,
.gallery2 .owl-nav {
	z-index:5;
	width:100%;
	height:0;
	top:50%;
}
.gallery1 .owl-prev,
.gallery2 .owl-prev {
	width:50px;
	height:32px;
	color:transparent;
	display:block;
	background-image: url(../images/arrow-left.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:50px;
	-moz-background-size:50px;
	z-index:5;
	position: relative;
	top:0;
	float: left;
	margin-top: -55px;
}
.gallery1 .owl-next,
.gallery2 .owl-next {
	width:50px;
	height:32px;
	color:transparent;
	display:block;
	background-image: url(../images/arrow-right.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:50px;
	-moz-background-size:50px;
	z-index:5;
	position: relative;
	float: right;
	margin-top: -55px;
}
.gallery1 p,
.gallery2 p {
	text-align: center;
	font-family:'Publico Banner', Cambria, "Hoefler Text", "Liberation Serif", Times, "Times New Roman", "serif";
    font-weight: normal;
    font-style: italic;
	color: #000000;
	font-size: 14px;
	line-height: 60px;
}
.below-gallery {
	padding-top: 90px;
}
.text-hover {
	padding-left: 50%;
	padding-right: 8%;
	padding-bottom: 8%;
}
.team-text {
	margin: 0 auto;
	max-width: 1050px;
}
.col-team-left,
.col-team-right {
	padding-top: 45px;
}
.col-team-left {
	width: 48%;
}
.col-team-right {
	width: 48%;
	margin-left: 4%;
}
.video {
	max-width: 1050px;
	margin: 0 auto;
	padding-top: 90px;
}
.line-bot {
	position: absolute;
	width: 100%;
	height: 10px;
	background-color: #fff;
	bottom: 0;
	left: 0;
}
.blockquote {
	border-top: 1px solid #000;
	padding-top: 4px;
	margin-top: 22px;
	margin-bottom: 15px;
	width: 80%;
	margin-left: 10%;
}
.blockquote span.block-title {
	font-family:'Publico Banner', Cambria, "Hoefler Text", "Liberation Serif", Times, "Times New Roman", "serif";
    font-weight: normal;
    font-style: italic;
	font-size: 14px;
	color: #000000;
	letter-spacing: 0.3px;
	line-height: 24px;
	padding-bottom: 16px;
	display: block;
}
.blockquote span.number {
	display: inline-block;
	width: 30px;
	font-size: 15px;
	line-height: 23px;
}
.blockquote span.title {
	display: inline-block;
	font-size: 13px;
	line-height: 19px;
}

/* Video */

.waypoint-video {
	height: 1px;
}
.space-video-top {
	height: 140px;
}
.space-video-top.space-video-top-sml {
	height: 60px;
}
.space-video-top-off {
	height: 0;
}
.video-padd-top {
	padding-bottom: 6%;
}
.zoom-video2 {
	position: relative;
	width: 1060px;
	height: 600px;
	top: 0;
	left: 50%;
	margin-left: -530px;
	-o-transition:1s;
	-ms-transition:1s;
	-moz-transition:1s;
	-webkit-transition:1s;
	transition:1s;
}
.zoom-video2 video {
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	background-size: 100% 100%;
  	background-image:;
  	background-position: center center;
  	background-size: contain;
   	object-fit: cover;
   	z-index:1;
	opacity: 0;
}
.video-zoomed {
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	margin-left: 0;
	-o-transition:1s;
	-ms-transition:1s;
	-moz-transition:1s;
	-webkit-transition:1s;
	transition:1s;
}
.video-zoomed video {
	opacity: 1;
	margin-top: -2px;
}
.but-vid a {
	position: absolute;
	width: 1060px;
	height: 600px;
	top: 0;
	left: 50%;
	margin-left: -530px;
	opacity: 1;
	z-index: 3;
	cursor: pointer;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.but-vid-close {
	width: 50px;
	height: 50px;
	position: absolute;
	top: 100px;
	right: 40px;
	cursor: pointer;
	z-index: 3;
	background-image: url(../images/icon-close.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size:50px;
	-moz-background-size:50px;
}
.vid-off {
	opacity: 0;
	height: 0;
}
.vid-on {
	opacity: 1;
	height: 50px;
}
.video-space {
	display: block;
	padding-bottom: 60px;
}
.gallery-padd-bot {
	height: 90px;
	display: block;
}

.padd-big.padd-video {
	padding-left: 2%;
	padding-right: 2%;
}
.video-boxes {
	font-size: 0;
	padding-top: 20px;
	/*max-width: 1120px;*/
	max-width: 1440px;
	margin: 0 auto;
    padding-bottom: 2%;
}
.video-box {
	background-color: #fff;
	font-size: 18px;
	margin-left: 1.5%;
	margin-right: 1.5%;
	width: 46%;
	display: inline-block;
	vertical-align: top;
}
.video-box a {
	display: block;
}
.video-box a:hover {
    opacity: 0.9;
}
.video-info {
	text-align: center;
	color: #fff;
	background-color: #111;
	padding-top: 50px;
	padding-bottom: 50px;
}
.video-info p {
	font-size: 15px;
	line-height: 27px;
	color: #fff;
}
.video-popup-team-1.off,
.video-popup-team-2.off,
.video-popup-team-3.off,
.video-popup-team-4.off {
	position: fixed;
	top: 0;
	left: 100%;
	right: -50%;
	bottom: 0;
	z-index: 4;
}
.video-popup-team-1,
.video-popup-team-2,
.video-popup-team-3,
.video-popup-team-4 {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 4;
	background-color: #000;
	text-align: center;
}
.video-popup-team-1 video,
.video-popup-team-2 video,
.video-popup-team-3 video,
.video-popup-team-4 video {
    width: 100%;
    height: 100vh;
    object-fit: contain;
}
.video-popup-team-1-close a,
.video-popup-team-2-close a,
.video-popup-team-3-close a,
.video-popup-team-4-close a {
	width: 40px;
	height: 40px;
	position: absolute;
	top: 30px;
	right: 30px;
	background-image: url(../images/icon-close-video.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:40px;
	-moz-background-size:40px;
	z-index: 4;
}
.space-above-video {
    height: 50px;
}



.des {
	display: block;
}
.mob {
	display: none;
}

@media screen and (max-width: 1400px) {

.main {
	margin-bottom: 400px;
}
.by-video-home {
    height: auto;
}
.by-video-home video {
    margin-top: 48px;
    height: auto;
    object-fit: cover;
}

}

@media screen and (min-width: 1439px) {

.video-popup-team-1 video,
.video-popup-team-2 video,
.video-popup-team-3 video,
.video-popup-team-4 video {
    object-fit: cover;
}

}

@media screen and (min-width: 1921px) {

}

@media screen and (min-width: 1441px) {

.blockquote {
	width: 80%;
	margin-left: 15%;
}

}

@media screen and (min-width: 1301px) {

.but-vid a:hover {
	width: 1070px;
	height: 610px;
	margin-top: -5px;
	left: 50%;
	margin-left: -535px;
}

}

@media screen and (max-width: 1300px) {

.zoom-video2 {
	width: 84%;
	height: 500px;
	top: 0;
	left: 8%;
	margin-left: 0;
}
.video-zoomed {
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	padding-top: 0;
	margin-left: 0;
	-o-transition:1s;
	-ms-transition:1s;
	-moz-transition:1s;
	-webkit-transition:1s;
	transition:1s;
}
.but-vid a {
	width: 84%;
	height: 500px;
	top: 0;
	left: 8%;
	margin-left: 0;
}
.but-vid-close {
	top: 70px;
	margin-top: 0;
	right: 20px;
	height: 70px;
}

}

@media screen and (max-width: 1440px) {

.location-left {
	width: 100%;
	padding-bottom: 6%;
}
.location-right {
	width: 100%;
	padding-bottom: 6%;
}
.blockquote {
	width: 40%;
	margin-left: 5%;
	margin-right: 5%;
	display: inline-block;
	vertical-align: top;
}

}


@media screen and (min-width: 768px) and (max-width: 1200px) {

.video-box {
	margin-left: 1.5%;
	margin-right: 1.5%;
	margin-bottom: 1%;
	width: 47%;
}

}

@media screen and (min-width: 1024px) and (max-width: 1440px) {

.text-hover {
	padding-left: 25%;
	padding-right: 8%;
	padding-bottom: 8%;
}
.gallery0,
.gallery1 {
	width: 60%;
	min-width: 368px;
	max-width: 368px;
}

}

@media screen and (min-width: 1024px) {

.below-gallery-1024 {
	margin-top: 90px;
}
.fit-img img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
}
.fit-img.fit-top img {
	object-position: top;
}



.hero.hero-min {
	min-height: 960px;
}
.hero.hero-min .fit-img img {
	min-height: 960px;
}

.align-mid0 {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
.align-mid {
	padding-bottom: 9%;
}
.margin-left-50 {
	margin-left: 50%;
}
.margin-left-28 {
	margin-left: 28%;
}
.hero.hero-form-min {
	min-height: 800px;
}

}

@media screen and (max-width: 1023px) {

.des {
	display: none;
}
.mob {
	display: block;
}
.gallery-padd-bot {
	height: 20px;
}

.below-gallery {
	padding-top: 20px;
}
.w50 {
    width: 100%;
}
.hero.to-auto-1023 {
	height: auto;
}
.feature-left {
	width: 100%;
}
.feature-right {
	width: 100%;
}
.text-feature {
	padding-top: 40px;
	padding-left: 10%;
	padding-right: 10%;
	padding-bottom: 11%;
}
.padd-50-col {
	padding-top: 9%;
	padding-bottom: 11%;
}
.padd-team-1023 {
	padding-bottom: 30px;
}
.col-team-left,
.col-team-right {
	padding-top: 0;
}
.col-team-left {
	width: 100%;
}
.col-team-right {
	width: 100%;
	margin-left: 0;
}


}

@media screen and (min-width: 768px) and (max-width: 1023px) {



}

@media screen and (max-width: 767px) {

.main {
	margin-bottom: 580px;
}
.page-template-page-portal .main {
	margin-bottom: 410px;
}
.padd-big {
	padding-top: 110px;
	padding-bottom: 110px;
}
.padd-big.less-bot {
	padding-bottom: 80px;
}
.space-video-top {
	height: 80px;
}

.padd-big.padd-video {
	padding-left: 0;
	padding-right: 0;
}
.padd-rego {
	padding-top: 120px;
	padding-bottom: 120px;
}
.text-hover {
	padding-left: 15%;
	padding-right: 8%;
	padding-bottom: 8%;
}
.gallery0,
.gallery1 {
	width: 60%;
	min-width: 300px;
	max-width: 300px;
}
.video {
	padding-top: 60px;
}
.but-vid-close {
	top: 0;
	right: 20px;
	height: 70px;
}
.hero-disclaimer {
	min-height: 600px;
}
.blockquote {
	width: 90%;
	margin-right: 0;
}
.text-feature br {
	display: none;
}

.video-popup-team-1-close a,
.video-popup-team-2-close a,
.video-popup-team-3-close a,
.video-popup-team-4-close a {
	top: 10px;
	right: 6px;
}
.video-boxes {
	padding-top: 0;
    padding-bottom: 0;
}
.video-box {
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 0;
	width: 100%;
}
.video-info {
	padding-top: 25px;
	padding-bottom: 25px;
}
.video-popup-team-1 video,
.video-popup-team-2 video,
.video-popup-team-3 video,
.video-popup-team-4 video {
	height: 90%;
	width: 90%;
}

.by-vid-button {
    font-size: 15px;
    right: 40px;
    margin-top: -70px;
}
.text-line-ani .caption.make-smaller {
	font-size: 12px;
	letter-spacing: 0.1px;
    margin-bottom: -4px;
}


}

@media screen and (min-width: 481px) and (max-width: 767px) {

.zoom-video2 {
	height: 400px;
}
.but-vid a {
	height: 400px;
}

}

@media screen and (max-width: 480px) {

.padd-big {
	padding-top: 100px;
	padding-bottom: 100px;
}
.padd-big.less-bot {
	padding-bottom: 60px;
}
.padd-rego {
	padding-top: 80px;
	padding-bottom: 70px;
}
.video {
	padding-top: 40px;
}
.text-feature {
	padding-top: 30px;
	padding-left: 10%;
	padding-right: 10%;
	padding-bottom: 11%;
}
.zoom-video2 {
	height: 240px;
}
.zoom-video2 video {
	opacity: 1;
}
.video-hide-mob {
	display: none !important;
}

.but-vid {
	display: none;
}
.but-vid a {
	height: 260px;
}
.but-vid-close {
	margin-top: 0;
	right: 0;
	height: 50px;
}
.space-video-top {
	height: 50px;
}
.space-video-top-off {
	height: 50px;
}
.video-padd-top {
	padding-bottom: 50px;
}


}