body{
	color:#000;
	font-family:'Montserrat', sans-serif;
	font-size:20px;
	font-weight: 400;
	line-height:1.65em;
	margin:0;
	position: relative;
}

@font-face {
    font-family: Writeline;
    font-weight: 400;
    src: url("font/Writeline.ttf");
}



body.page-node-type-page,
body.path-user{
	color: #fff;
}



/*body.mm-wrapper{
	background:#333;
}*/
.layout-container{
	background:#000;
	box-shadow:0 0 20px rgba(0,0,0,.5);
	margin:0 auto;
	max-width:3000px;
	overflow:hidden;
	position: relative;
	padding-right: 30px;
	min-height: 100vh;
}


/*.layout-container:before{
	position: fixed;
    content: "";
    width: 30px;
    height: 100vh;
    background: #00d7e6;
    top: 0;
    right: 0;
    z-index: 3;
}
*/
body.page-node-type-case-study .layout-container,
body.page-node-type-article .layout-container{
	background: #fff;
}


/*.region-banner .wrp,
.admin-tabs,
main:not(:has(.show-side)) .max-wrap,*/
.max-wrap
{
	max-width:1600px;
	margin:100px auto;
	padding:0 100px;
}



main:has(.show-side),
.path-search main,
.path-user main{
	display:flex;
	max-width: 1600px;
	margin: 0 auto;
	padding: 0 100px 100px;
}
.path-user h1{color: #fff; margin: 0 0;
	font-family: "Fraunces", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-variation-settings:"SOFT" 80, "WONK" 1;
	font-size:85px; 
	line-height:1em;}

.path-user .region-banner{min-height: unset;}
.path-user  .region-banner .max-wrap{width: 100%;}

.path-user label{color: #fff;}


main:has(.show-side) .max-wrap{
	padding:0;
}

.max-wrap:has(.wide){
	max-width: unset;
	padding: 0 0 0 0;
}
.region-banner{
	margin-top: -130px;
	min-height: 750px;
	/*background:#eee;*/
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-position: right;
	overflow:hidden;
	position: relative;
	padding:200px 0 150px;
	/*z-index: 5;*/
}
body:has(.minimize-banner) .region-banner{
    min-height: 0;
    padding: 250px 0 100px;
}

.region-banner .banner-img img{display: none;}

.region-banner .banner-collage img{
	position: absolute;
	width: auto;
	height:calc(100% - 60px);
	left:50%;
	top: 30px;
}

/*.region-banner .wrp{
	height: 100%;
	padding: 130px 0 0;
	box-sizing: border-box;
}*/

.region-banner .max-wrap{
	margin: 0 auto;
}

.front .region-banner{
	height: unset;
	padding: 0;
	display: block;
}

.region-banner .wrapper{
/*	display: flex;
	flex-wrap: wrap;
	height: 595px;*/
}

.region-banner .wrapper img{
	display: none;
}

.region-banner .view-content .copy{
	max-width:1200px;
	position: relative;
	z-index: 3;
}

.region-banner .view-content .copy .top{
	margin: 0 0 20px;
	line-height: 1.1em;
	font-size:18px;
	font-weight: 500;
	text-transform: uppercase;
}

.region-banner .view-content .copy .top .read{
	display: inline-block;
}

.region-banner .view-content .copy .top .date{
	display: inline-block;
	padding-right:15px;
	margin-right:15px;
	border-right:1px solid #333;
}


body.page-node-type-case-study .region-banner{
	height: unset;
	display: block;
	margin-top: 0;
	padding: 100px 0 0;
}

body.page-node-type-case-study .region-banner .client{
	font-size: 23px;
	text-transform: uppercase;
	letter-spacing: .12em;
	line-height: 1.1em;
	font-weight: 700;
	padding: 0 0 25px;
	margin: 0 0 50px;
	border-bottom: 2px solid #000;
}

body.page-node-type-case-study .region-banner .wrapper{
	display: flex;
	flex-wrap: wrap;
	margin: -1.25rem;
}

body.page-node-type-case-study .region-banner .wrapper .left{
	width: 66.666%;
	box-sizing: border-box;
	padding: 1.25rem;
}

body.page-node-type-case-study .region-banner .wrapper .right{
	width: 33.333%;
	box-sizing: border-box;
	padding: 1.25rem;
}
body.page-node-type-case-study .region-banner .wrapper .left h1{
	font-family: "Fraunces", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-variation-settings:"SOFT" 80, "WONK" 1;
	font-size:clamp(85px,6vw,125px); 
	line-height:.9em;
	display: block;
	margin: 0;
	max-width: 1000px;
	padding-bottom: 10px;

}

body.page-node-type-case-study .region-banner .wrapper .left h1 span{
	display: block;
	font-family: Writeline;
	color: #00d7e6;
	font-weight: 400;
	text-transform: lowercase;
	font-size: .75em;
	line-height: 1em;
}

body.page-node-type-case-study .region-banner .wrapper .right .title{
	font-family:'Montserrat', sans-serif;
	letter-spacing: .12em;
	font-weight: 600;
	font-size: 22px;
	text-transform: uppercase;
	color: #000;
	margin: 0;
	padding-right: 40px;
}

body.page-node-type-case-study .region-banner .accordion .item{
	border-color: #000;
	border-width: 1px;
	padding: 15px 0;
}

body.page-node-type-case-study .region-banner .accordion .item:first-of-type{
	border-top: none;
}

body.page-node-type-case-study .region-banner .accordion .item .content{
	color: #000;
	font-size: 16px;
	padding: 20px 0 0;
}

body.page-node-type-case-study .region-banner .wrapper .right .title:before{
	position: absolute;
	content: "";
	background: url(img/accord-arrow.png);
	background-size: 100%;
	aspect-ratio: 1/1;
	width: 28px;
	margin-top:-14px;
}

body.noscroll{overflow: hidden;}


.front .region-banner{
	padding: 0;
	background: unset;
}
.layout-content{
	flex:1;
}
.layout-content .primary-img img{
	display:none;
	margin-bottom:40px;
	border-radius: 2em;
	width:100%;
}
.region-sidebar-second:not(:has(.show-side)){
	display:none;
}
.region-sidebar-second{
	padding:100px 0 0 150px;
	width:400px;
}

div[data-drupal-messages]{
	background: #eee;
	font-size:16px;
	padding: 30px;
	margin-bottom: 30px;
}


main:has(.show-side) .layout-content{
	width: calc(100% - 550px);
}


.fresh-search form.search-form + h3{ display:none; }

/* DEFAULT ELEMENTS ----------------------------------------- */

h1{

}

body:not(:has(.banner-collage)) #mt-trigger{
	background:transparent;
}

body.page-node-type-page .view-content h1{
	font-family:'Montserrat', sans-serif;
	color: #00d7e6;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

body.page-node-type-article .region-banner{
	min-height: 0;
	padding:250px 0 15px;
}

body.page-node-type-article .layout-content a:not(.btn){ 
	color:#267C87; 
	font-weight:500; 
	text-decoration:underline; 
}


body.page-node-type-article h1,
body.page-node-type-page .view-content .sub-head p{
	margin: 0 0;
	font-family: "Fraunces", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-variation-settings:"SOFT" 80, "WONK" 1;
	font-size:85px; 
	line-height:1em;
}
body.page-node-type-article h1{ max-width:1100px; }

body.page-node-type-page .view-content .sub-head p em{
	position: relative;
	font-style: normal;
	transform-origin: bottom;
}

body.page-node-type-page .view-content .sub-head p em:before{
	position: absolute;
	content: "";
	aspect-ratio: 720/96;
	width: 100%;
	min-width: 200px;
	background: url(img/underline.png);
	background-size: 100%;
	bottom: -22%;
	right: 50%;
	transform: translateX(50%);
	z-index: -1;
}


/*body.page-node-type-page  h1{
	font-family:'Montserrat', sans-serif;
	color: #00d7e6;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.front body.page-node-type-page  h1{
	font-family: unset;
	color: unset;
	font-size: unset;
	font-weight: unset;
	letter-spacing: unset;
	text-transform: unset;
}


.front body.page-node-type-page .region-banner p{
	margin: unset;
	font-family: unset;
	font-size: unset;
	font-variation-settings: unset;
	font-weight: unset;
}

body.page-node-type-page .region-banner p em{
	font-style: normal;
	position: relative;
}*/

.intro-txt{
	margin-top:30px;
	max-width:750px;
}
h2{
	font-family: "Fraunces", serif;
	font-optical-sizing: 9px;
	font-weight: 600;
	font-variation-settings:"SOFT" 80, "WONK" 1;
	font-size:clamp(50px, 5vw,70px);
	line-height:1em;
	margin:0 0 30px;
	overflow: visible !important;
}
h3{
	font-family: "Fraunces", serif;
	font-optical-sizing: 9px;
	font-weight: 600;
	font-variation-settings:"SOFT" 80, "WONK" 1;
	font-size:48px;
	line-height:.9em;
	margin:0 0 25px;
	overflow: visible !important;
}
h4{
	font-optical-sizing: 9px;
	font-weight: 700;
	font-variation-settings:"SOFT" 80, "WONK" 1;
	font-size:22px;
	line-height:1.25em;
	margin:0 0 20px;
	overflow: visible !important;
}
h5{
	font-optical-sizing: 9px;
	font-weight: 600;
	font-variation-settings:"SOFT" 80, "WONK" 1;
	font-size:18px;
	font-weight:700;
	line-height:.9em;
	margin:0 0 15px;
	overflow: visible !important;
}

h2 em, h3 em, h4 em, h5 em{
	font-family: Writeline;
	color: #00d7e6;
	font-weight: 400;
	font-size: 1em;
	/*line-height: 1.3em;*/
	font-optical-sizing: auto;
	text-transform: lowercase;
	font-style: normal;
	position:relative;
	top:.1em;
	overflow: visible !important;
	
}

/*.page-node-type-case-study h2 em,
.page-node-type-case-study h3 em,
.page-node-type-case-study h4 em,
.page-node-type-case-study h5 em{
	font-family: "Fraunces", serif;
	font-optical-sizing: 9px;
	font-weight: 600;
	font-variation-settings:"SOFT" 80, "WONK" 1;
	font-size: 1em;
	line-height:.9em;
	text-transform: unset;
	font-style: normal;
}
*/
p{
	margin:0 0 30px;
}
ul{
	margin:0 0 35px;
	padding-left:30px;
}

li{
	margin:0 0 10px;
}

article ul{
	padding-left: 0;
	list-style: none;
}

article ul li{
	padding-left: 17px;
	position: relative;
}

article ul li:before{
	position: absolute;
	content: "";
	aspect-ratio: 1/1;
	width: 8px;
	border-radius: 1px;
	background: #00d7e6;
	top:11px;
	left: 0;
}
ul.plain li:before{ display:none; }
ul.plain li{ padding-left:0; margin:0 0 15px; }
ul.big li{ font-size:24px; margin:0 0 15px; }

article .contextual-links li:before{display: none;}


a, .ck-content a{ 
	color:#00d7e6;
	font-weight: 600;
	text-decoration: none;
}
a:hover{
	text-decoration: none;
}
img{ 
	height:auto;
	max-width:100%;
}
hr{
	margin:60px 0;
}

hr:first-child { margin-top:0; }
hr:last-child { margin-bottom:0; }

figcaption{
	font-size:14px;
	font-style:italic;
}
table{
	border:none;
	border-color:#ccc;
	font-size:.85em;
	margin:40px 0;
	width:100% !important;
}
table tr:nth-child(odd) {
	background: #f6f6f6;
}
table td{
	padding:5px 12px;
}

/* REUSABLE CUSTOM CLASSES ----------------------------------- */

p.big{ 
	font-size:26px;
	line-height:1.5em;
	margin-bottom:30px;
}
p.small{
	font-size:15px;
	line-height:1.4em;
}

p.round img{
	border-radius: 2em;
}

p.sub{
	color: #00bfd0;
	font-weight: 500;
	font-size: 20px;
	letter-spacing: .12em;
	text-transform: uppercase;
	margin: 0 0 10px;
}

.page-node-type-case-study p.sub{
	color: #000;
}

h2.big,
.sub-title h1{
	font-size:85px;
	margin-bottom:30px;
}
/*ul.custom{
	padding-left:5px;
}
ul.custom li{
	list-style:none;
	margin-bottom:15px;
	padding-left:30px;
	position:relative;
}
ul.custom li:before{
	background: #00d7e6;
	background-size:100%;
	content:"";
	display:inline-block;
	height:20px;
	left:0;
	position:absolute;
	top:3px;
	width:20px;
	border-radius: 2px;
}*/
ul.double{
	columns:2;
	column-gap:40px;
}
ul.triple{
	columns:3;
	column-gap:40px;
}
a.btn,
.button,
.button--primary,
.field--name-field-link-to-website a{
	background:#00d7e6;
	border:none;
	border-radius:0;
	box-sizing: border-box;
	color:#000;
	display:inline-block;
	border-radius: 3em;
	font-size:18px;
	letter-spacing: .12em;
	line-height:1.3em;
	margin:10px 0 10px;
	min-width:170px;
	padding:1em 1.5em;
	text-align:center;
	text-decoration:none;
	text-transform:uppercase;
	font-weight: 700;
}

.field--name-field-link-to-website a{
	margin: 30px auto 0;
	display: block;
	width: fit-content;
	color: #fff;
}
a.btn.second{
	background:#666;
}
/*a.btn:hover,
.button:hover,
.button--primary:hover{
	opacity:.8;
}*/
ul.double{
	columns:2;
}
ul.nav{
	list-style: none;
	padding:0 0 0 30px;
}
ul.nav li{
	display:inline-block;
}
ul.nav li:before{ 
	color:#aaa; 
	content:"|"; 
	padding:0 .5em 0 .3em; 
}
ul.nav li:first-child:before{ 
	content:normal; 
}
ul.nav a{
	text-decoration:none;
}

/* Modular Columns ----------------------- */

.paragraph--type--multi-column-content.lg-3 .image{
	aspect-ratio: 2 / 1;
	margin:0 0 30px;
	overflow:hidden;
}
.paragraph--type--multi-column-content.lg-3 .image img{
    margin-top:-7%;
}
.paragraph--type--multi-column-content.lg-2 .image{
    float: right;
    width: 33%;
    aspect-ratio: 1 / 1;
    margin: 0 0 30px 30px;
    overflow: hidden;
}
.paragraph--type--multi-column-content.lg-2 .image img{
	max-width:none;
	height:100%;
	width:auto;
	margin-left:-21%;
}

.line-top {
	border-top: 2px solid #000;
}

.paragraph--type--single-block{
/*	max-width: 1400px;
	margin: 0 auto;*/
	margin: ;
}

.paragraph--type--single-block.img-left .item{
    padding-left: calc(38% + 80px);
    position: relative;
}
.paragraph--type--single-block.img-left .image {
    width: 38%;
    position: absolute;
    margin: 0 80px 0 0;
    left: 0;
}

.paragraph--type--single-block.img-right .item{
    padding-right: calc(38% + 80px);
    position: relative;
}
.paragraph--type--single-block.img-right .image {
    width: 38%;
    position: absolute;
    margin: 0;
    right: 0;
}

/*.paragraph--type--large-video .replace img{
	display: none;
}*/

.paragraph--type--large-video .replace{display: none;}

.paragraph--type--large-video .glightbox-media-video {
	overflow: hidden;
	border-radius: 2em;
}

.paragraph--type--large-video .glightbox-media-video img{
	display: none;
}

.wide .Large-video .glightbox-media-video{
	aspect-ratio: unset;
	height: 900px;
	width: 100%;
	border-radius: unset;
}


.paragraph--type--image-grid-text{
		display: grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: repeat(2, 1fr);
grid-column-gap: 2.5em;
grid-row-gap: 2.5em;
}

.paragraph--type--image-grid-text .image{
	border-radius: 2rem;
	background-size: cover;
	background-position: center;
}

.paragraph--type--image-grid-text .image img{
	display: none;
}

.paragraph--type--image-grid-text.first .text{
	order: 1;
}

.paragraph--type--image-grid-text.first .image{
	order: 2;
}



.paragraph--type--image-grid-text.second .image:nth-of-type(1){
	order: 1;
}

.paragraph--type--image-grid-text.second .text{
	order: 2;
}

.paragraph--type--image-grid-text.second .image:nth-of-type(2){
	order: 3;
}

.paragraph--type--image-grid-text.second .image:nth-of-type(3){
	order: 4;
}


.paragraph--type--image-grid-text.third .image:nth-of-type(1){
	order: 1;
}

.paragraph--type--image-grid-text.third .image:nth-of-type(2){
	order: 2;
}

.paragraph--type--image-grid-text.third .text{
	order: 3;
}


.paragraph--type--image-grid-text.third .image:nth-of-type(3){
	order: 4;
}


.three-swiper-a .swiper-button-next,
.four-swiper-a .swiper-button-next,
.five-swiper-a .swiper-button-next{
	width: 35px !important;
	height: 35px !important;
	background: url(img/right-arrow.png);
	background-size: 100%;
}

.three-swiper-a .swiper-button-prev,
.four-swiper-a .swiper-button-prev,
.five-swiper-a .swiper-button-prev{
	width: 35px !important;
	height: 35px !important;
	background: url(img/left-arrow.png);
	background-size: 100%;
}

.three-swiper-a .swiper-button-next:after,
.four-swiper-a .swiper-button-next:after,
.five-swiper-a .swiper-button-next:after,
.three-swiper-a .swiper-button-prev:after,
.four-swiper-a .swiper-button-prev:after,
.five-swiper-a .swiper-button-prev:after{
	display: none;
}


/*.paragraph--type--gallery-with-copy{display: flex; flex-wrap: wrap;   margin: -1.25rem  -1.25rem 1.25rem;}*/

.paragraph--type--gallery img{border-radius: 2em;}

.paragraph--type--gallery-with-copy .single-gal{ overflow: visible !important; margin: 0 0 50px;}

.paragraph--type--gallery-with-copy .single-gal .swiper-button-next{
	top: 100%;
	margin-top: 0;
	right: 40% !important;
	width: 35px !important;
	height: 35px !important;
	background: url(img/right-arrow.png);
	background-size: 100%;
}

.paragraph--type--gallery-with-copy .single-gal .swiper-button-prev{
	top: 100%;
	margin-top: 0;
	left: 40% !important;
	width: 35px !important;
	height: 35px !important;
	background: url(img/left-arrow.png);
	background-size: 100%;
}
.paragraph--type--gallery-with-copy .single-gal .swiper-button-prev:after,
.paragraph--type--gallery-with-copy .single-gal .swiper-button-next:after{
	display: none;
}

.paragraph--type--gallery-with-copy  .swiper-slide{
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 2em;
	overflow: hidden;
	aspect-ratio: auto 800 / 800;
}

.paragraph--type--gallery-with-copy  .swiper-slide a.glightbox,{
	aspect-ratio: auto 800 / 800;
		width: 100%;
}


.paragraph--type--gallery-with-copy.rectangle .swiper-slide{
    aspect-ratio: auto 800 / 525;
}

.paragraph--type--gallery-with-copy.rectangle .swiper-slide a.glightbox{
	aspect-ratio: auto 800 / 525;
		width: 100%;
}

.paragraph--type--gallery-with-copy  .swiper-slide img{
	width: 100%;
}


.square-vid video{
	border-radius: 2em;
	width: 100%;
}




.stats .field__item .paragraph--type--statistic{
	padding: 1em 0;
	border-bottom: 2px solid #000;
	display: flex;
}

.stats .field__item:last-of-type .paragraph--type--statistic{
	border-bottom: none;
}

.stats .field__item:first-of-type .paragraph--type--statistic{
	padding: 0 0 1em;
}



.stats .field__item .paragraph--type--statistic .number{
	font-family: "Fraunces", serif;
	font-optical-sizing: 9px;
	font-weight: 600;
	font-variation-settings:"SOFT" 80, "WONK" 1;
	font-size: 90px;
	line-height:.9em;
	margin: 0 0;
	font-variant: small-caps;
	width: 230px;
}

.stats .field__item .paragraph--type--statistic .label{
	text-transform: uppercase;
	color: #737373;
	font-size: 17px;
	letter-spacing: .12em;
	line-height: 1.2em;
	margin: 0 0;
	max-width: 250px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.paragraph--type--mockup-box{
	display: flex;
	flex-wrap: wrap;
	background:#eee;
	box-sizing: border-box;
	padding:80px;
	border-radius: 2em;
	margin: -1.25rem 0 !important;
}

.paragraph--type--mockup-box.img-left{
	flex-direction: row-reverse;
}

.paragraph--type--mockup-box .text,
.paragraph--type--mockup-box .mockup{
	width: 50%;
	box-sizing: border-box;
	padding: 1.25rem;
}

.paragraph--type--mockup-box .text *{
	color: #fff !important;
}

.paragraph--type--mockup-box .mockup img{
	transform: scale(1.25);
}

.paragraph--type--mockup-box.img-left.side .mockup img{
	margin-left: -20%;
}

.paragraph--type--mockup-box.img-right.side .mockup img{
	margin-right: -20%;
}

.paragraph--type--mockup-box.img-left.top .mockup img{
	margin-top: -15%;
	margin-left: -10%;
}

.paragraph--type--mockup-box.img-right.top .mockup img{
	margin-top: -15%;
	margin-right: -10%;
}

.paragraph--type--image-and-video{
	display: flex;
	flex-wrap: wrap;
}

.paragraph--type--image-and-video .image,
.paragraph--type--image-and-video .square-vid{
	width: 50%;
	box-sizing: border-box;
	padding: 1.25rem;
}

.paragraph--type--image-and-video .image img{
	border-radius: 2em;
}

.paragraph--type--image-and-video .square-vid video{
	aspect-ratio: 1/1;
	width: 100%;
    height: auto;
    border-radius: 2em;
}


.item .paragraph--type--project{ aspect-ratio: 1/1;	width: 100%; perspective: 1500px; position: relative;}

.item .paragraph--type--project .card-cont {
  position: absolute;
  width: 100%;
  height: 100%;
	transition: transform 0.6s;
  transform-style: preserve-3d;
}

 .item:hover .paragraph--type--project .card-cont{
  transform: rotateY( 180deg );
  /*transition: transform 0.5s;*/
}

.item  .paragraph--type--project .card-cont .front,
.item  .paragraph--type--project .card-cont .back {
  position: absolute;
  height: 100%;
  width: 100%;
   backface-visibility: hidden;
/*  box-sizing: border-box;
  padding: 1em;*/
  display: block;
  border-radius: 2em;
}

.item  .paragraph--type--project .card-cont .front img{display: none;}

.item  .paragraph--type--project .card-cont .front{background-size: cover;}

.item  .paragraph--type--project .card-cont .back{transform: rotateY( 180deg );
	width: 100%;
	height: 100%;   border-radius: 2em; overflow: hidden;}

	.item  .paragraph--type--project .card-cont .back .image{	position: absolute;
	width: 100%;
	height: 100%; top: 0; left: 0;}


.item .paragraph--type--project .card-cont .back .image:nth-of-type(1){animation: fade1 3s infinite;}

.item .paragraph--type--project .card-cont .back .image:nth-of-type(2){animation: fade2 3s infinite;}

.item .paragraph--type--project .card-cont .back .image:nth-of-type(3){animation: fade3 3s infinite;}


/*Before v After ------------------------------------------- */

.compare img{
	display: block;
	max-width: 100%;
}

.compare{
	max-width: 1600px;
	margin: 50px auto;
	display: grid;
	place-content: center;
	position: relative;
	overflow: hidden;
	border-radius: 2rem;
	border: 5px solid #00d7e6;
	--position: 5%;
}

.compare .image-container{
	max-width: 1600px;
	max-height: 900px;
}

.compare .image-container img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: left;
}

.compare .image-container .image-before{
	position: absolute;
	inset: 0;
	width: var(--position);
}

.compare .slider{
	position: absolute;
	inset: 0;
	cursor: pointer;
	width: 100%;
	height: 100%;
	opacity: 0;
}

.compare .slider-line{
	position: absolute;
	inset: 0;
	width: 5px;
	height: 100%;
	background: #fff;
	z-index: 10;
	left: var(--position);
	transform: translateX(-50%);
	pointer-events: none;
}

.compare .slider:focus-visible ~ .slider-button{
	outline: 5px solid black;
	outline-offset: 3px;
}

.compare .slider-button{
	position: absolute;
	background: #ccc;
	padding: .75rem;
	border-radius: 100vw;
	border: 3px solid #fff;
	display: grid;
	place-items: center;
	top: 50%;
	left: var(--position);
	transform: translate(-50%, -50%);
	pointer-events: none;
	z-index: 11;
	box-shadow: 1px 1px 1px hsl(0, 50%, 20% / .5);
}



/*.Large-video .glightbox-media-video img{
	display: none;
}*/

.gslide-media.gslide-video{max-width: 1600px !important;}

/*Accordian code ----------------------------------- */

/*.accordion{max-width: 1400px; margin: 0 auto;}*/

.accordion .item{
  cursor: pointer;
  display: block;
  padding: 40px 0 15px 0;
  color: #fff;
  border-bottom: 2px solid #00d7e6;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.accordion .item:first-child{
	border-top:2px solid #00d7e6;
}

.accordion .item  .content {
    margin: 0;
    padding: 0;
    /*background: #fff;*/
    margin: 0 !important;
    /*border-top: 1px solid #fff;*/
    display: none;
  color:#fff;
}

.full-width-wrp:has(.light) .accordion .item  .content{
	color: #000;
}

.accordion .item  .content:first-child {
    padding: 10px 20px;
    font-size: 18px;
}

.accordion .item .title{
	padding-right: 90px;
	position: relative;
	font-size: 36px;
	color: #fff;
}

.accordion .item .title:before {
    position: absolute;
    content: "";
    background: url(img/accord-arrow-w.png);
    aspect-ratio: 1/1;
    width: 65px;
    right: 0px;
    top: 50%;
    margin-top: -32.5px;
    transition: .3s;
    background-size: 100%;
}

.full-width-wrp:has(.light) .accordion .item .title{
	color: #000;
	margin: 0 0 25px;
}

.full-width-wrp:has(.light) .accordion .item .title:before{
	background: url(img/accord-arrow.png);
	background-size: 100%;
}

.accordion .item.open .title:before  {
    transform: rotate(45deg);
    transition: .3s;
}
.accordion .item  .content .image {
	display: block;
    float: right;
    width: 38%;
    margin: 0 0 60px 60px;
}

.accordion .image{
	display: none;
}



/*photo gallery carousels ------------------------- */

.swiper{ box-sizing: border-box; overflow:visible !important; }

.swiper-button-prev, .swiper-rtl .swiper-button-next { left:-40px !important; }
.swiper-button-next, .swiper-rtl .swiper-button-prev{ right:-40px !important; }

.three-swiper-p .swiper-pagination,
.four-swiper-p .swiper-pagination,
.five-swiper-p .swiper-pagination{
	bottom: -30px !important;
}

/*.three-swiper-p .swiper-slide, .three-swiper-a .swiper-slide, .four-swiper-p .swiper-slide, .four-swiper-a .swiper-slide, .five-swiper-p .swiper-slide, .five-swiper-a .swiper-slide{
	margin-right: 1.5rem;
}*/

.flex-grid.paragraph--type--photo-gallery{
	/*max-width: 1400px;
	margin: 0 auto !important;*/
}

.paragraph--type--photo-gallery a.glightbox{
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 2em;
	overflow: hidden;
	aspect-ratio: auto 800 / 800;
}

.paragraph--type--photo-gallery a.glightbox img{height: 100%;}




.paragraph--type--photo-gallery.rectangle a.glightbox{
    aspect-ratio: auto 800 / 525;
        display: flex;
    flex-direction: column;
    justify-content: center;
}

.paragraph--type--large-image img{
	border-radius: 2em;
}


.paragraph--type--large-image.wide img{
	border-radius: 0;
}


/*Video Icons ----------------------------- */

.colorbox-media-video{
	position: relative;
}

.glightbox-media-video{
	position: relative;
	display: block;
	aspect-ratio: 16/9;
	width: 100%;
	background-size: cover;
}

.colorbox-media-video:before,
.glightbox-media-video:before {
    position: absolute;
    content: "";
    background: url(img/vid-btn.png);
    background-repeat: no-repeat;
    opacity: .5;
    width: 200px;
    height: 200px;
    background-size: 100%;
    top: 50%;
    margin-top: -100px;
    left: 50%;
    margin-left: -100px;
}


/* FOOTER ----------------------------------------- */

/*.region-footer{
	background:#333;
	color:#fff;
	font-size:15px;
	padding:10px 0;
}*/

/*.footer{
	font-size:15px;
	padding:40px;
}*/

.footer .field__item{
	display: flex;
/*	max-width: 1600px;
	margin: 0 auto;*/
}

.footer .left{
	width: 50%;
	display: flex;
}


.footer .left .logo-foot{width: 50px; padding: 0 15px 0 0;}



.footer .left span.adr,
.footer .left span.tel,
.footer .left a.email{
	display: inline-block;
    font-size: 12px;
    font-weight: 700;
    line-height: 12px;
    text-transform: uppercase;
    line-height: 50px;
}

.footer .left a{color: #000 !important;}

body.page-node-type-page .footer .left a{color: #fff !important;}

.footer .left a.email{ display:none; }




.footer .left .org, .footer .left .email, .footer .left .country-name{
	display: none;
}

.footer .left .street-address, .footer .left .postal-code{
	    padding-right: 10px;
    border-right: 1px solid #000;
    margin-right: 10px;
}

body.page-node-type-page .footer .left .street-address,
body.page-node-type-page .footer .left .postal-code{
	border-right: 1px solid #fff;
}

.footer .right{
	width: 50%;
	display: flex;
	justify-content: flex-end;
}

.footer .social-media{
	padding: 0 30px 0 0;
	margin: -10px 30px 0 0;
	border-right: 1px solid #000;
	display: flex;
	list-style: none;
	justify-content: flex-end;
}

body.page-node-type-page .footer .social-media{
	border-right: 1px solid #fff;
}

.footer .social-media li{
	/*height: 20px;*/
	display: flex;
	flex-direction: column;
	justify-content: center;
	/*width: 40px;*/
	padding: 0 0 0 10px;
	margin: 0 0 0 10px;
}

.footer .social-media li:first-of-type{
	padding: 0;
	margin: 0;
}

.footer .social-media li a{
	display: block;
	width: 100%;
	height: 25px;
}

.footer .social-media li a svg{
	height: 25px;
	transition: fill ease .5s;
}


.footer .social-media li a:hover svg{
	fill: #00d7e6;
	transition: fill ease .5s;
}

body.page-node-type-page .footer svg{
	fill: #fff;
}


.footer .other-triad{
	margin: 0;
	padding: 0;
	display: flex;
	list-style: none;
}

.footer .other-triad li{
	height: 40px;
	width: fit-content;
	padding: 0 0 0 10px;
	margin: 0 0 0 10px;
}

.footer .other-triad li:first-of-type{
	padding: 0;
	margin: 0;
}

.footer .other-triad li a{
	display: block;
	width: 100%;
	height: 100%;
}

.footer .other-triad li a svg{
	height: 50px;
}

.footer .other-triad li a:hover svg{
	fill: #00d7e6;
	transition: fill ease .5s;
}
body.page-node-type-article .footer .field--name-body{
	border-top:1px solid #000;
	padding-top:100px;
	margin-top:-100px;
}




.box{
	background:#eee;
	box-sizing:border-box;
	margin:0 0 50px;
	padding:50px;
}
.box.dark{
	background:#333;
	color:#fff;
}
.box > :last-child { 
	margin-bottom:0;
}
.spine{
	border-left:3px solid #ddd;
	padding-left:40px;
}
.center{
	text-align:center;
}
.wide{
	box-sizing:border-box;
	width:100%;
}
.align-right{
	margin:0 0 30px 30px;
	max-width:35%;
}
.align-left{
	margin:0 30px 30px 0;
	max-width:35%;
}
.full-width-wrp{
	background:#eee;
	padding:50px 0;
}

.full-width-wrp .box-wrap *,{
	color: #fff;
}
/*body.page-node-type-page .full-width-wrp{
	background: url(img/duo.jpg);
	background-repeat: no-repeat;
}*/

.full-width-wrp:has(.duo){
		background: url(img/duo.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}

.full-width-wrp:has(.dark){
	background:#00d7e6;
	color:#000;
}
.full-width-wrp:has(.dark) *{
	color:#000;
}

.page-node-type-case-study .full-width-wrp:has(.dark) *{
	color: #fff;
}



.full-width-wrp:has(.light){
	background:#fff;
	color:#000;
}
.full-width-wrp:has(.light) *{
	color:#000;
}

.page-node-type-case-study .full-width-wrp:has(.light) *{
	color: #000;
}


.full-width-wrp:has(.light) * h2 em, 
.full-width-wrp:has(.light) * h3 em, 
.full-width-wrp:has(.light) * h4 em, 
.full-width-wrp:has(.light) * h5 em{
	color: #00d7e6;
}


.full-width-wrp:has(.light) * p.sub{
	color: #00bfd0;
}


.box-wrap{
	background:#eee;
	box-sizing: border-box;
	padding:80px;
	border-radius: 2em;
	/*margin: -1.25rem 0 !important;*/
}



.box-wrap.dark{
	background: #333;
	color:#fff;
}
.box-wrap.dark *{
	color:#fff;
}
.box-wrap .item *:last-child{
	margin-bottom:0;
}
.indv-box .item .paragraph{
	background:#eee;
	box-sizing: border-box;
	height:100%;
	padding:40px;
}
.indv-box.dark .item .paragraph{
	background:#333;
	color:#fff;
}
.indv-box.dark .item .paragraph *{
	color:#fff;
}

.page-node-type-case-study .box-wrap.dark *,
.page-node-type-case-study .box-wrap.dark p.sub{
	color: #fff;
}

.page-node-type-case-study .full-width-wrp:has(.light) h2 em, .page-node-type-case-study .box-wrap.light h2 em,
.page-node-type-case-study .full-width-wrp:has(.light) h3 em, .page-node-type-case-study .box-wrap.light h3 em,
.page-node-type-case-study .full-width-wrp:has(.light) h4 em, .page-node-type-case-study .box-wrap.light h4 em,
.page-node-type-case-study .full-width-wrp:has(.light) h5 em, .page-node-type-case-study .box-wrap.light h5 em{color: #000 !important;}

.page-node-type-case-study .full-width-wrp:has(.dark) h2 em, .page-node-type-case-study .box-wrap.dark h2 em,
.page-node-type-case-study .full-width-wrp:has(.dark) h3 em, .page-node-type-case-study .box-wrap.dark h3 em,
.page-node-type-case-study .full-width-wrp:has(.dark) h4 em, .page-node-type-case-study .box-wrap.dark h4 em,
.page-node-type-case-study .full-width-wrp:has(.dark) h5 em, .page-node-type-case-study .box-wrap.dark h5 em{color: #fff !important;}





.outlined{
	border: 2px solid #00d7e6;
	border-radius: 2rem;
	padding: 80px;
	position: relative;
}

/*.outlined:before{
	position: absolute;
	content: "";
	width: 2px;
	height: calc(100% + 160px);
	top: -80px;
	background: #00d7e6;
	right: 0;
}*/

.outlined .item{
position: relative;
}

/*.outlined .item:before{
	position: absolute;
	content: "";
	width: 2px;
	height: calc(100% + 160px);
	top: -80px;
	background: #00d7e6;
	right: 0;
}

.outlined .item:last-of-type::before{
	display: none;
}
*/


.paragraph--type--website .content{
	text-align: center;
	margin: 0 0 50px;
}

.paragraph--type--website .content:last-of-type{
	margin-bottom: 0;
}

.paragraph--type--website .content p{
	max-width: 900px;
	margin: 0 auto 30px;
}




.web-vid{
	aspect-ratio: 16/8;
	height: fit-content;
	border-radius: 2rem;
    border: 5px solid #00d7e6;
    overflow: hidden;
}

.web-vid video{
	aspect-ratio: unset !important;
	width: 100%;
	height: unset;
}

/* SIDEBAR MENU & ELEMENTS ----------------------------------- */

aside{
	font-size:16px;
}
aside .primary-img{
	margin:0 0 40px;
}

aside .primary-img img{border-radius: 2em;}
aside .block{
	margin-bottom:40px;
}
aside .box{
	padding:40px;
}
aside h2{
	font-size:24px;
}
aside h3{
	font-size:20px;
}
aside .btn{
	font-size:12px;
	margin:0;
	min-width:0;
}

.linkz a{
	display: block;
	border-radius: 30px;
	border: 2px solid #000;
	position: relative;
	padding: 2rem;
	box-sizing: border-box;
	color: #000;
	text-decoration: none;
	margin: 0 0 30px;
	font-weight: 500;
	font-size: 26px;
	line-height: 1.1em;
	min-height: 170px;
	 background: linear-gradient(to left, #fff 50%, #00d7e6 50%);
    background-size: 200% 100%;
    background-position: right bottom;
     transition: all ease 0.3s;
}

.linkz a:before{
	position: absolute;
	content: "";
	aspect-ratio: 1/1;
	width: 30px;
	background: url(img/news-b-arrow.png);
	background-size: 100%;
	bottom: 1.5rem;
	right: 1.5rem;
}

.linkz a span{
	display: block;
	width: 80%;
	width: calc(100% - 30px);
}

.linkz a:hover{
	background-position: left bottom;
}

.sub-menu{display: none;}

#sub-menu .sub-menu{display: block;}


.sub-menu h2{
	font-size:14px;
	margin-bottom:10px;
	text-transform:uppercase;
}
.sub-menu .menu{
	margin:0;
}
.sub-menu li{
	list-style:none;
	padding:0;
}
.sub-menu .menu a{ 
	border-top:1px solid #ccc;
	display: block;
	padding:10px 0;
	text-decoration:none;
}
.sub-menu .menu li:first-child a{ 
	border:none;
}

/* LIST VIEWS ---------------------------------------- */

.list-view .item{ 
	border-top:1px solid #ccc;
	padding:40px 0;
}

.list-view .item .wrap{
	text-decoration: none;
	display: block;
}

.list-view .item:first-child{ 
	border-top:none;
	padding-top:0;
}
.list-view .item .wrap .title{
	margin-bottom:20px;
}
.list-view .item .wrap .title{
	color:inherit;
	text-decoration: none;
}
.list-view .item .wrap .excerpt{
	margin-bottom:10px;
}

.list-view .item .wrap .more{
	display: block;
}
.gallery{
	margin:30px 0;
}
.gallery img{
	display:block;
}


.staff .item .wrap .text .name{
	font-size: .9em;
	line-height: 1.1em;
	margin: 5px 0 0;
}

.staff .item .wrap .text .role{
	font-size: .8em;
	line-height: 1.1em;
	font-weight: 400;
}

/* SOCIAL SHARING ---------------------------------------- */

.block-addtoany,
#block-brisket-addtoanysharebuttons{
	margin:0 0 30px;
}
.block-addtoany span.title{
	font-size:13px;
	left:3px;
	position: relative;
	top:1px;
}
.addtoany_list > a{
	padding:0 6px 0 0;
}
.a2a_kit .a2a_svg{
	//background-color:#999 !important;
	border-radius:0 !important;
	height:24px !important;
	padding:2px;
	width:24px !important;
}
.a2a_kit .a2a_svg path{
	fill:#fff;
}

/*Pager stuff ------------------------------------------- */

.pager__items { clear: both; text-align: center;}
.pager__item { display: inline; padding: 0.5em;}
.pager__item.is-active{ font-weight: bold;}

/* BREADCRUMB STYLES ---------------------------------------- */

.breadcrumb{
	font-size:16px;
	padding-bottom:10px;
}
.breadcrumb a{
	text-decoration: none;
}

/* ALERTS ---------------------------------------------------------- */

.pop-alert { display: none; }
.show-alerts .pop-alert{ display:block; }
.pop-alert { background: rgba(0, 0, 0, 0.7); height: 100%; padding:0; position: fixed; right: 0; top: 0; width: 100%; z-index: 20002; overflow: scroll; }
.pop-alert .view { position: absolute; z-index: 3000; top: 50%; left: 50%; margin-left: -300px; }
.pop-alert .view-content {top: 25%; position: absolute; left: 50%; margin-left: -300px;}
.pop-alert .view-content > div { box-sizing: border-box; width: 100%; max-width: 600px; padding: 20px; background-color: rgba(0,0,0,0.46); }
.pop-alert .inner { box-sizing: border-box; position: relative; width: 100%; background: #fff; padding: 50px 60px; text-align: center; }
.pop-alert .inner h2.title,
.pop-alert .inner h2.title a {font-size:36px; margin:10px 0; line-height: 1.1em; text-decoration: none;}
.pop-alert .inner p span{font-weight: 600;}
.pop-alert .inner p{margin: 0 0 10px;}
.pop-alert .link { margin: 0 0 40px; }

.pop-alert .inner .hide { position: relative; z-index: 1; color: #333; font-size: 16px; font-weight: 400; text-align: center; text-decoration: underline; cursor: pointer; margin-top: 20px;}
.hp-alert .inner .hide:hover {  }


/* FORM & ADMIN CLASSES ---------------------------------------- */

.floater{
	float: left;
    margin-right: 30px;
    width: 25%;
}

.floater-2{
	float: left;
    margin-right: 15px;
    width: calc(50% - 15px);
}

.webform-submission-form .floater-2 input[type="text"],
.webform-submission-form .floater-2 input[type="email"]{
	max-width: unset !important;
}


.floater-3{
	float: left;
	margin-right: 15px;
	width: calc(33.33% - 15px);
}

.floater-3.first{clear: left;}

.floater.last,
.floater-2.last,
.floater-3.last{
	margin-right: 0px;
}

.clear{clear: both;}

#mc_embed_signup .mc-field-group{
	margin: 1.5em 0;
	position: relative;
}

.mc-field-group label{
	position: absolute;
	right: -.25em;
	top: -.25em;
	font-size: 36px;
}



.webform-submission-form input[type="text"],
.webform-submission-form input[type="email"],
.webform-submission-form input[type="url"],
.webform-submission-form input[type="tel"],
.webform-submission-form textarea,
input.form-search,
#mc_embed_signup .mc-field-group input{
	-webkit-appearance: none;
	border-color: transparent;
	background: #fff;
	border-radius:2em;
	box-sizing: border-box;
	display:block;
	/*max-width:550px;*/
	width:100%;
	padding:.75em 1em;
	color: #000;
	position: relative;
}

.webform-submission-form .form-item:has(.required){
	position: relative;
}

.webform-submission-form .form-item:has(select){
	width: fit-content;
}

.webform-submission-form .form-item:has(.required):before{
	position: absolute;
	content: "*";
	color: #00d7e6;
	font-size: 36px;
	right: -.25em;
	top: -.25em;
}

.webform-address--wrapper{border: none; padding: 0;}
.webform-address--wrapper:before{display: none;}


.webform-submission-form select{
	border-color: transparent;
	background: #fff;
	border-radius:2em;
	box-sizing: border-box;
	padding:.75em 1em;
	color: #000;
	position: relative;
}



.webform-submission-form textarea{
	/*padding: 2em;*/
	/*max-width:800px;*/
}
.webform-submission-form select{
	display:block;
	margin-top:5px;
}
.webform-submission-form label{
	font-weight:bold;
}

.asterisk{color: #00d7e6;}

.webform-button--submit.hand{
	margin: 20px 0 0 auto;
	aspect-ratio: 800/422;
	width: 90%;
	display: block;
	position: relative;
	background: url(img/send-hand.png);
	background-size: 100%;
	/*background-image: url(img/hand.jpg);*/
	background-repeat: no-repeat;
	transition: all ease .3s;
	font-size: 0;
	right: 0;
}

.webform-button--submit.hand:hover{
	cursor: pointer;
	right: -20px;
	transition: all ease .3s;
}


.ui-tooltip-content {
    font-size: 15px;
    line-height: 1.5em;
    padding: 20px;
}
.tabs a{
	background:#eee;
	border:1px solid #aaa;
	color:#000;
	font-size:14px;
}
body.cke_editable{
	background:#fff;
}
.cke_ist .ck-list__item h1, .cke_ist .ck-list__item h2, .cke_ist .ck-list__item h3,
.cke_ist .ck-list__item h4, .cke_ist .ck-list__item h5, .cke_ist .ck-list__item h6,
.cke_ist .ck-list__item p.big, .cke_ist .ck-list__item p.small, .cke_ist .ck-list__item *{ 
	color:#333; 
	font-size:16px; 
	font-weight:400;
	margin:0;
	padding:0;
	text-transform:none; 
}
input.form-search{
	display:block;
	margin:15px 0 10px;
	padding:7px;
}
a.search-help-link{
	display:inline-block;
	font-size:.9em;
	margin:10px 0 20px;
}
.item-list ol{
	list-style:none;
	padding:0;
}
.item-list ol li{
	margin:0;
}
.item-list h3{
	font-size:20px;
	margin:0 0 10px;
	padding-top:15px;
}
.messages{
	margin-bottom:30px;
}
.path-search .region-content ol{
	margin-top:30px;
	padding:0;
}
.path-search .region-content li{
	list-style:none;
	border-top:1px solid #ccc;
	margin:0;
	padding:40px 0 15px;
}

/*Admin tabs --------------------------- */

.admin-tabs{
	margin:0 auto;
}

.admin-tabs ul{
    padding: 0;
    list-style: none;
}

.admin-tabs ul > li {
    display: inline-block;
    margin-right: 0.3em;
}

.admin-tabs ul a {
    background: #eee;
    border: 1px solid #aaa;
    color: #000;
    font-size: 14px;
        display: block;
    padding: 0.2em 1em;
    text-decoration: none;
}

.admin-tabs ul a:focus, .admin-tabs ul a:hover {
    background-color: #f5f5f5;
}

.admin-tabs ul a.is-active {
    background-color: #eee;
}

.form-item, .form-actions{
	margin-top: 1em;
    margin-bottom: 1em;
}

.form-composite > .fieldset-wrapper > .description, .form-item .description {
    font-size: 0.85em;
}

button, input, optgroup, select, textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}

/*.visually-hidden{
	background: #fff !important;
	color: #000 !important;
}*/




