﻿@charset "utf-8";

:root {
	/* Colors */
	--primary:#8fbe3e;
	--secondary:#233080;
	--lines:#e4eaed;
	--table:#f6f7f7;
	--banner:#000000;
	--fields:var(--table);     
	--section-light:#f6f9fa; 
	--section-dark:#242d60;

	/* Text */
	--body-font:'Poppins', sans-serif;
	--text-light:#ffffff;
	--text-dark:#222222;
	--text-color:var(--text-dark);
	--heading-font:var(--body-font), sans-serif;
	--heading-color:var(--secondary);
	--link-color:var(--heading-color);
	
	/* Header */
	--header-background:#ffffff;
	--header-ontop-background:transparent;
	--header-border:transparent;
	--header-ontop-border:transparent;
	--logo-background:#ffffff;
	--icon-hover:rgba(29,100,132,0.09);
	--icon-ontop-hover:var(--icon-hover);
	--header-nav:rgba(29,100,132,0.09);

	/* Nav */
	--nav-hover:rgba(29,100,132,0.09);
	--nav-hover-text:var(--heading-color);
	--nav-sub-hover:var(--nav-hover);
	--nav-sub-hover-text:var(--heading-color);

	/* Modals */
	--modal-overlay:rgba(38,50,56,0.6);
		
	/* Content */
	--image-radius:0;
	--image-bevel:polygon(0 clamp(8px, 2.08vw, 40px), clamp(8px, 2.08vw, 40px) 0, 100% 0, 100% calc(100% - clamp(8px, 2.08vw, 40px)), calc(100% - clamp(8px, 2.08vw, 40px)) 100%, 0 100%);
 
	/* Buttons */
	--btn-radius:2.22em;
	--primary-text:var(--text-light);
	--secondary-text:var(--text-light);
	
	/* Scrollbar */
	--scrollbar-thumb:var(--primary);
	--scrollbar-track:rgba(0,0,0,0.05);

	/* Footer */
	--footer-left:var(--section-dark);	
	--footer-right:#ffffff;
}

/* -------- Icons ------------ */
.btn-nav:after,
.header-button:before,
.close:before,
.checkbox input[type="checkbox"]:checked + label:before,
.btn-sub:after,
.btn-scroll:before,
.scroll-top:before,
.splide__arrow:after,
.btn__arrow:after, .btn__arrow-text:after,
.btn__icon:after,
.btn__social:after,
.image-menu__btn:after,
.block-tab-header:after,
.expand-header:after,
.lightbox a:after,
.number button:before,
.news-more a:after,
.news .page-navigation li.previous a:before,
.news .page-navigation li.next a:before,
ul.tx-indexedsearch-browsebox li:first-child:not(.tx-indexedsearch-browselist-currentPage) a:before,
ul.tx-indexedsearch-browsebox li:last-child:not(.tx-indexedsearch-browselist-currentPage) a:before,
.browse-menu a:after,
#cursor:after,
.tx-indexedsearch-search-submit input[type="submit"],
.tx-indexedsearch-icon:before,
.video-play:after,
.btn__circle:after,
.btn__close,
input[type="checkbox"] + label:before {background-image:url(../images/icons.svg);}

/* -------- Text ------------ */
html, body  {font-size:18px; font-size:clamp(16px, 18px, 1.125vw); font-weight:300; line-height:1.555; color:var(--text-color);}

h1, .h1 {font-size:100px; font-size:clamp(40px, 5.2vw, 100px); font-weight:700; line-height:1.1;  text-wrap:balance; color:var(--heading-color);}
h2, .h2 {font-size:72px; font-size:clamp(30px, 3.75vw, 72px);  font-weight:700; line-height:1.2;  text-wrap:balance; color:var(--heading-color);}
h3, .h3 {font-size:48px; font-size:clamp(24px, 2.5vw, 48px);   font-weight:700; line-height:1.25; text-wrap:balance; color:var(--heading-color);}
h4, .h4 {font-size:36px; font-size:clamp(21px, 1.875vw, 36px); font-weight:700; line-height:1.33; text-wrap:balance; color:var(--text-color);}
h5, .h5 {font-size:36px; font-size:clamp(21px, 1.875vw, 36px); font-weight:300; line-height:1.33; text-wrap:balance; color:var(--text-color);}
h6, .h6 {font-size:24px; font-size:clamp(18px, 1.333vw, 24px); font-weight:300; line-height:1.5;  color:var(--text-color);}
p       {font-size:1rem; font-weight:300; line-height:1.555; color:var(--text-color);}

span.h1, span.h2, span.h3, span.h4, span.h5, span.h6 {display:block; color:inherit; margin:0;}

strong {font-weight:700;}

sup {font-size:0.5em;}

blockquote {font-size:36px; font-size:clamp(18px, 1.875vw, 36px); border:none; padding:1.38em 0 1.38em 1.66em; font-weight:700; color:var(--heading-color); box-sizing:border-box; max-width:17.8em;}
blockquote:before {content:""; display:block; font-size:0.278em; width:1em; border-radius:0; position:absolute; left:0; top:0; bottom:0; background:var(--primary);}

.font-light 	{font-family:var(--body-font); font-weight:300;}
.font-semibold  {font-family:var(--body-font); font-weight:600;}
.font-bold    	{font-family:var(--body-font); font-weight:700;}

.small {display:inline-block; font-size:0.888888rem; line-height:1.2; font-family:var(--body-font); font-weight:300; margin:8px 0 0 0;}
.large {display:inline-block; font-size:1.5em;}

.color-primary   {color:var(--primary);}
.color-secondary {color:var(--secondary);}
.color-black     {color:var(--text-dark);}
.color-grey      {color:#757575;}

.indent-small  {margin-left:1rem;}
.indent-medium {margin-left:2rem;}
.indent-large  {margin-left:3rem;}

.float-left {position:relative; float:left; margin-top:0; z-index:1;}

/* -------- Lists ------------ */
.ce-bodytext ul li,
.ce-bodytext ol li {padding-top:0.48em; padding-bottom:0.48em;}

.ce-bodytext ul li:before {width:0.75em; height:0.75em; border-radius:0; transform:rotate(45deg);}

.text-white .ce-bodytext ul > li:before {background:var(--primary);}
.text-white .ce-bodytext ol > li:before {color:var(--primary);}

/* -------- Table ------------ */
.ce-bodytext-block:has(.ce-table) {overflow-x:scroll;}

/* -------- Forms ------------ */
.bg-light {--fields:#ffffff;}
.powermail_field .h5 {font-size:clamp(18px, 1.333vw, 24px);}

.checkbox input[type="checkbox"],
.radio input[type="radio"] {font-size:34px; top:5px;}
.checkbox input[type="checkbox"] + label:before,
.radio input[type="radio"] + label:before {font-size:34px; top:5px;}
.checkbox input[type="checkbox"] + label,
.radio input[type="radio"] + label {padding:9px 0 9px 50px;}
.radio input[type="radio"] + label:before {border-width:9px;}
.radio input[type="radio"]:checked + label:before {background:var(--secondary);}

/* -------- Header ------------ */
.header-ontop #header {background:none; --header-background:var(--header-ontop-background);}
#header, 
.modal-header {font-size:150px; font-size:clamp(54px, 7.8125vw, 150px); height:1em; background:none; margin:0.2em 0;}

#header.header-white,
.modal-header.header-white {--nav-hover:rgba(255,255,255,0.09); --nav-hover-text:#ffffff; --icon-hover:rgba(255,255,255,0.09); --icon-ontop-hover:rgba(255,255,255,0.09); --header-nav:rgba(255,255,255,0.09);}

.header-logo {filter:drop-shadow(4px 4px 12px rgba(0,0,0,0.1));}
.header-logo a {height:1em; padding:0.05em 0.4em; margin:0; clip-path:polygon(0 0, 100% 0, 100% calc(100% - 0.26em), calc(100% - 0.26em) 100%, 0 100%);}

.header-buttons {flex:1 0 auto; display:flex; justify-content:flex-end; font-size:1em; padding-left:16px;}
.header-button {display:flex; flex-direction:column; align-items:center; justify-content:center; width:1em; height:1em; padding:0; border-radius:var(--header-radius); transition:background-color 0.7s;}
.header-button span {font-size:clamp(11px, 0.9375vw, 18px); line-height:1.2; font-weight:600; color:var(--heading-color);}
.header-button:before {position:relative; margin:0; left:auto; top:auto; font-size:clamp(40px, 0.4em, 60px);}
.header-buttons .btn__primary {align-self:center; font-size:clamp(14px, 0.9375vw, 18px);}
.header-button.header-phone {flex-direction:row; padding:0 0.25em 0 0.15em;}
.header-button.header-phone span {font-size:clamp(18px, 1.25vw, 24px); line-height:1.2;}
.header-button.header-phone:before {left:auto; top:auto; margin:0;}
.header-button.close {background:#eaf1f4; border-radius:var(--header-radius) 0 0 var(--header-radius);}

.header-button:last-child {background:var(--primary);}
.header-button:last-child:before {background-position-y:-2em;}
.header-button:last-child span {color:var(--text-light);}
#header .header-button:last-child:hover {background:var(--primary); background:color-mix(in srgb, var(--primary), var(--secondary) 10%);}

#header-sticky {font-size:100px; font-size:clamp(54px, 5.2vw, 100px); height:1em; top:-1em;}
#header-sticky .header-logo {filter:none;}
#header-sticky .header-logo a {height:1em; padding:0.05em 0.2em;}
#header-sticky .nav,
#header-sticky .header-buttons {background:none;}
#header-sticky .header-button {padding:0; width:1em; height:1em;}
#header-sticky .header-button:before {top:auto; font-size:clamp(40px, 0.5em, 50px);}
#header-sticky .header-button span {font-size:clamp(11px, 0.833vw, 16px);}
#header-sticky .header-button.header-phone {padding:0 0.25em 0 0.15em;}
#header-sticky .header-button.header-phone:before {top:auto;}
#header-sticky .header-button.header-phone span {font-size:clamp(14px, 1.04vw, 20px);}


/* -------- Modals ------------ */
.modal-header.header-white .header-button:before {background-position-y:-2em;}
.modal-header.header-white .header-button span {color:var(--text-light);}

.modal-small {padding:8px;}
.modal-small .modal-box {max-width:1620px; clip-path:var(--image-bevel);}

.modal-width-medium .modal-box {max-width:960px;}
.modal-width-small .modal-box {max-width:480px;}
.modal-width-large .modal-box {max-width:1620px;}
.modal-width-small .btn__close {background-color:transparent; margin:0;}

.overlay-video .modal-box {padding:0;}
.overlay-video .modal-box .content-padding {position:relative; width:100%;}

/* -------- Nav ------------ */
.nav {padding-left:16px;}
.nav > ul {font-size:1em; height:1em; display:flex; flex-wrap:wrap-reverse; gap:100vw 0;}
.nav > ul > li > a {--nav-radius:var(--header-radius);}
.nav ul li a {font-size:24px; font-size:clamp(14px, 1.25vw, 24px); line-height:clamp(50px, 7.8125vw, 150px); font-weight:600; color:var(--nav-hover-text); padding:0 1.25em; transition:background-color 0.7s;}
.nav ul li ul {margin-top:10px; width:320px;}
.nav ul li:hover > ul,
.nav ul li ul li:hover > ul {overflow:visible;}
.nav ul li ul:before {content:""; display:block; position:absolute; left:0; right:0; top:-10px; height:10px;}
.nav ul li ul li ul:before {left:0; right:auto; top:0; bottom:0; width:30px; height:auto;}
.nav ul li ul li a {font-size:1rem; line-height:1.2; padding-top:1.62em; padding-bottom:1.62em; font-weight:600; color:var(--heading-color); transition:background-color 0.7s;} 
.nav ul li ul li a:after {display:none;}


#header-sticky .nav > ul > li > a {font-size:clamp(16px, 1.04vw, 20px); line-height:clamp(50px, 5.2vw, 100px);}

/* -------- Nav Side ------------ */
.nav-side {border-top:min(1.5625vw, 30px) solid transparent;}
.nav-side .content-padding {margin:40px 0;}
.nav-side .content-padding > ul {max-width:38%;}
.nav-side ul li {--btn-hover:var(--primary); text-align:left; font-size:48px; font-size:clamp(24px, 48px, 2.5vw);}
.nav-side ul li a {position:relative; overflow:hidden; border:none; font-size:1em; font-weight:700; line-height:1.208; padding:0.458em 2.08em 0.458em 0.625em;}
.nav-side ul li:hover > a,
.nav-side ul li.nav-open > a {background:none;}
.nav-side ul li a:hover {background:var(--nav-hover);}
.nav-side ul li ul li {font-size:0.8em;}
.nav-side ul li ul li a {font-size:1em; font-weight:500; line-height:1.33; padding:0.375em 2.08em 0.375em 1.66em;}
.nav-side ul li ul li ul li {font-size:1em;}
.nav-side ul li ul li ul li a {font-weight:300; padding-left:2.5em;}

.btn-sub {font-size:1.5em; width:1em; height:1em; margin:0.207em;}
.btn-sub:after {left:50%; top:50%; margin:-0.5em; border-radius:50%; background-position:-2em -10.33em;}
.btn-sub:hover:after {background-color:var(--nav-hover);}
.sub.nav-open > .btn-sub::after {background-position-x:-0.33em;}
.nav-side ul li ul li .btn-sub {font-size:1.48em; height:1em;}

.nav-images {margin:50px 43.75% 30px 0; border-radius:0 var(--image-radius) var(--image-radius) 0; overflow:hidden;}

/* -------- Content ------------ */
@view-transition {
  navigation: auto;
}

#body {height:auto; min-height:100%;}
#content {flex:1;}

.image img {clip-path:var(--image-bevel);}

/* Cursor */
#cursor.cursor-prev.cursor-white,
#cursor.cursor-next.cursor-white {background-color:var(--primary); border:none;}

/* Widths */
.content-medium {max-width:clamp(1080px, 78.125vw, 1500px);}

/* Sections */
.bg-dark {position:relative; z-index:1; background:var(--section-dark);}
.bg-light {background:var(--section-light) url(../images/bg-light.svg) no-repeat left top; background-size:min(100%, 1920px) auto;}
.bg-green {position:relative; overflow:hidden; background:url(../images/bg-green.jpg) no-repeat center; background-size:cover;}

/* Headers */
.content-padding > header:not(.block-layout-text-scroll header) {margin:0 0 1rem 0;}

/* Columns */
.body-cell > .columns-wrap {margin:clamp(40px, 5.2vw, 100px) 0;}

/* Callout */
.callout {text-wrap:balance;}
.grid .callout > div,
.grid .callout > div > div,
.grid .callout > div > div > div {height:100%;}
.grid .callout .content-padding > div {padding:clamp(40px, 2.6vw, 50px) clamp(16px, 2.6vw, 50px);}

.callout > div >  .content-padding > div {background:#ffffff; box-sizing:border-box; border-radius:var(--image-radius); box-shadow:4px 4px 16px rgba(0,0,0,0.1); padding:clamp(40px, 2.6vw, 50px) clamp(16px, 2.6vw, 50px); margin:0;}
.bg-light .callout > div >  .content-padding > div {background:#ffffff;}
.callout .ce-bodytext-block {background:none; box-shadow:none; padding:0; margin:0;}
.group-slider .callout .content-padding {padding:clamp(10px, 36px, 1.875vw);}

.callout-dark > div >  .content-padding > div {background:var(--section-dark); position:relative; overflow:hidden;}

/* Lightbox */
.lightbox a:after {font-size:clamp(36px, 2.6vw, 50px); margin:0.5em; border:5px solid transparent; border-radius:8px; background-color:rgba(0,0,0,0.2);}

/* Video */
.video-wrap {overflow:hidden; margin:0 auto;}
.video-poster:before {background:rgba(0,0,0,0.4); opacity:1;}
.video-play {background:var(--primary); border:none; transition:transform 0.3s, background 0.3s; z-index:1;}
.video-play:hover {transform:scale(1.06);}
.video-poster .video-title {font-family:var(--heading-font); font-weight:400; text-wrap:balance;}

/* Caption */
.image-slide .image-caption {clip-path:polygon(0 0, 100% 0, 100% calc(100% - clamp(8px, 2.08vw, 40px)), calc(100% - clamp(8px, 2.08vw, 40px)) 100%, 0 100%);}

/* Textpic */
.ce-gallery:only-child {margin:0;}
.ce-textpic.ce-left.ce-nowrap .ce-gallery {padding-left:0; padding-right:50px; width:50%; max-width:50%; flex-basis:50%;}
.ce-textpic.ce-right.ce-nowrap .ce-gallery {padding-left:50px; padding-right:0; width:50%; max-width:50%; flex-basis:50%;}
.ce-textpic.ce-left.ce-nowrap .ce-bodytext {padding-left:50px; width:50%; max-width:50%; flex-basis:50%;}
.ce-textpic.ce-right.ce-nowrap .ce-bodytext {padding-right:50px; width:50%; max-width:50%; flex-basis:50%;}
.ce-gallery .ce-row {gap:8px;}

/* Textpic Card */
.layout-text-card.ce-intext.ce-left.ce-nowrap .ce-bodytext-block,
.layout-text-card.ce-intext.ce-right.ce-nowrap .ce-bodytext-block,
.layout-text-card-small.ce-intext.ce-left.ce-nowrap .ce-bodytext-block,
.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-bodytext-block {box-shadow:8px 8px 10px rgba(0,0,0,0.1);}

/* Icon Gallery */
.layout-icon-gallery .ce-gallery {position:relative;}
.layout-icon-gallery .ce-outer,
.layout-icon-gallery .ce-inner {float:none;}
.layout-icon-gallery .ce-row {position:relative; overflow:visible; text-wrap:balance; display:block; text-align:center; font-size:0; line-height:0;}
.layout-icon-gallery .ce-gallery .ce-row .ce-column {display:inline-block; vertical-align:top; font-size:200px; font-size:clamp(144px, 16.66vw, 320px); flex:1 0 auto; width:1em; padding:0.1em; box-sizing:border-box;}
.layout-icon-gallery .image {vertical-align:top; max-width:1.6em; margin:0 auto; overflow:visible;}
.layout-icon-gallery .image__wrap {display:flex; align-items:center; justify-content:center; width:0.67em; height:0.67em; max-width:180px; max-height:180px; box-shadow:0 0 0 clamp(4px, 0.625vw, 12px) var(--primary); border-radius:var(--image-radius); margin:0 auto; background:#ffffff; overflow:hidden;}
.layout-icon-gallery .image-caption {text-align:center; font-size:clamp(12px, 0.9375vw, 1rem); margin-top:10px; text-wrap:balance;}
.layout-icon-gallery .image-title {font-family:var(--heading-font); font-weight:400; font-size:clamp(1rem, 1.875vw, 2em); line-height:1.2; margin-bottom:16px;}

/* -------- Buttons ------------ */  
/* Basic */
.btn__primary, .btn__secondary, .btn__tertiary, button[type="submit"] {z-index:0; font-size:18px; font-size:clamp(16px, 0.9375vw, 18px); min-width:10em; line-height:1.2; padding:clamp(1em, 1.52vw , 1.622em) 2em; font-weight:600; border:none; text-wrap:balance; transition:background 0.3s;}
.btn__primary:before, .btn__secondary:before, .btn__tertiary:before, button[type="submit"]:before {display:none;}

.btn__primary:hover,
.btn-primary-white .btn__primary:hover,
button[type="submit"]:hover,
.btn-primary-white button[type="submit"]:hover {background:color-mix(in srgb, var(--primary), var(--secondary) 10%); color:var(--text-light);}

.bg-green .btn__primary {background:#ffffff; color:var(--text-dark);}
.bg-green .btn__primary:hover,
.bg-green .btn-primary-white .btn__primary:hover {background:#e9eaf2; color:var(--text-dark);}

.btn__secondary:hover,
.btn-secondary-white .btn__secondary:hover {background:color-mix(in hsl, var(--secondary), black 20%); color:var(--text-light);}

.btn__tertiary {border:1px solid currentColor; color:var(--heading-color);}
.btn__tertiary:hover {color:var(--heading-color); background:var(--icon-hover);}
.text-white .btn__tertiary:hover {color:var(--text-light); background:rgba(255,255,255,0.09);}

/* Icon */
.btn__icon {font-size:clamp(18px, 1.25vw, 24px); line-height:1.2; font-weight:600; padding:1.06em 1em 1.06em 2.88em; color:var(--text-color); transition:background 0.7s;}
.btn__icon:after {font-size:2.5em; left:0.16em; top:0.16em; transition:none;}
.btn__icon:hover {background:var(--icon-hover);}
.btn__icon .small {font-size:0.888888rem;}

.btn-hours:after {background-position:-0.33em -17em;}
.btn-date:after {background-position:-2em -17em;}

.text-white .btn__icon:hover {background:rgba(255,255,255,0.09);}
.text-white .btn-hours:after,
.text-white .btn-date:after {background-position-y:-18.66em;}

p.btn__icon {display:block; cursor:auto;}
p.btn__icon:hover,
.text-white p.btn__icon:hover {background:none;}

/* Social */
.btn__social {margin:clamp(2px, 0.416vw, 8px);}
.btn__social:before {background:var(--icon-hover); width:100%; height:100%; left:0; top:0; margin:0;}
.btn__social:after {font-size:clamp(40px, 3.125vw, 60px); margin:0.16em; transition:filter 0.2s;}
.btn__social:hover:before {transform:none; background:var(--primary);}
.btn__social:hover:after {filter:brightness(0) invert(1);}

.text-white .btn__social:before {background:#ffffff;}
.text-white .btn__social:hover:before {background:var(--primary);}
.text-white .btn__social:after {background-position-y:-7em;}

/* Circle */
.btn__circle {width:clamp(80px, 160px, 8.33vw); height:clamp(80px, 160px, 8.33vw);}
.btn__circle:before {font-size:clamp(80px, 160px, 8.33vw); border-color:var(--heading-color);}
.text-white .btn__circle:before {border-color:var(--text-light);}

.btn-text {color:var(--heading-color);}

.btn__circle.btn-video {width:clamp(100px, 200px, 10.416vw); height:clamp(100px, 200px, 10.416vw);}
.btn__circle.btn-video:before {font-size:clamp(100px, 200px, 10.416vw);}

.btn-video:before {background-image:url(../images/btn-video.svg);}
.text-white .btn-video:before {background-image:url(../images/btn-video_white.svg);}

.btn-text {font-size:clamp(14px, 1rem, 0.9375vw); line-height:1.2;}

/* Arrow */
.btn__arrow-text {color:var(--heading-color);}

/* Browse Menu */
.browse-menu a span {font-weight:700;}

/* -------- Banner ------------ */
.banner__wrap .banner {border-bottom:10px solid #ffffff; margin-bottom:26px; box-shadow:0 16px 0 var(--primary);}

.banner {z-index:auto; padding:0; overflow:hidden;}
.banner__text {padding-top:max(60px, 10%); padding-bottom:max(80px, 12%);}
.margin-top-large > div > .banner__text {padding-top:max(100px, 15%);}
.margin-bottom-large > div > .banner__text {padding-bottom:(100px, 18%);}
.banner__text-block {text-wrap:balance;}

.banner .content-1920 {max-width:none;}
.banner .content-large {max-width:1920px;}

.splide .banner .content-padding,
.splide .banner .banner__content,
.splide .banner .banner__text {height:100%;}

/* -------- Image Slider ------------ */
.padding-left-none .ce-left .splide__track {padding-left:150px !important;}
.padding-right-none .ce-right .splide__track {padding-right:150px !important;}
.padding-left-none .ce-left .splide__slide {padding-left:50px;}
.padding-right-none .ce-right .splide__slide {padding-right:50px;}

/* -------- Image Menu ------------ */
.image-menu__wrap {overflow:visible;}
.block-type-site_clevgen_menu_image {overflow-x:clip;}
.banner .block-type-site_clevgen_menu_image {overflow:visible;}

.image-menu {margin:clamp(-20px, -1.04vw, -8px);}
.image-menu__item {padding:clamp(8px, 1.04vw, 20px); margin:0;}
.image-menu__card {display:flex; flex-direction:column; padding:0; box-shadow: 2px 2px 9px rgba(0,0,0,0.1);}
.image-menu__image {flex:0 0 auto; position:relative; width:100%; padding-bottom:74%;}
.image-menu__text {display:flex; justify-content:center; flex:1 0 auto; font-size:clamp(1rem, 1.25vw, 24px); position:absolute; bottom:0; width:100%; min-height:5em; background:rgba(38,50,56,0.6); padding:16px clamp(60px, 6.25vw, 120px) 16px 8%; border-radius:0; transition:background 0.3s;}
.image-menu__text:before {display:none;}
.image-menu__card:hover .image-menu__text {color:var(--text-dark);}
.image-menu__card p {color:var(--text-light); font-size:1em; font-weight:600; margin:0;}
.image-menu__btn {display:flex; align-items:center; justify-content:center; font-size:120px; font-size:clamp(60px, 6.25vw, 120px); width:1em; height:100%; position:absolute; right:0; top:0; padding:0; margin:0; background-color:var(--primary); border-radius:var(--image-radius); border-top-right-radius:0;}
.image-menu__btn:after {font-size:0.5em; background-position-y:-5.33em;}

.image-menu__card:hover .image-menu__btn {background:none;}
.image-menu__card:hover .image-menu__btn:after {background-position-y:-5.33em;}
.image-menu__card:hover .image-menu__text {background:rgba(38,50,56,0.8);}
.image-menu__card:hover .image-menu__btn {background-color:var(--primary);}

.image-menu-secondary .image-menu.splide {margin:0; display:block;}

/* -------- POE ------------ */
.poe {position:relative; z-index:2; display:flex; justify-content:center; flex-wrap:wrap; gap:10px; padding:0 10px; font-size:48px; font-size:clamp(24px, 2.5vw, 48px); margin:0; box-sizing:border-box;}
.poe__item {position:relative; flex:1; min-width:10em; box-sizing:border-box; padding:0; font-size:1em; min-height:4em;}
.poe__item a {position:relative; word-break:normal; overflow:hidden; z-index:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:2.2em 0.8em 2.2em 0.8em; box-sizing:border-box; min-height:100%; background-color:var(--section-dark); font-size:1em; color:#ffffff; text-align:center; transition:background 0.3s;}
.poe__title {display:block; position:relative; z-index:1; font-family:var(--heading-font); font-size:1em; font-weight:700; line-height:1;}
.poe__image {position:absolute; left:0; right:0; top:0; bottom:0; transform:scale(1.14); opacity:0.2; mix-blend-mode:luminosity; background-size:cover; background-position:center; transition:transform 0.5s, opacity 0.5s;}

.poe__item:hover a {text-decoration:none; background:color-mix(in srgb, var(--section-dark), var(--primary) 10%);}
.poe__item:hover .poe__image {transform:none;}

/* -------- Card Menu ------------ */
.card-menu-card a {background:none; color:var(--heading-color); border-color:currentColor;}
.bg-dark .card-menu-card a {color:#ffffff;}
.bg-dark .card-menu-card a:hover {background:rgba(255,255,255,0.09);}

/* -------- Grid ------------ */
.grid {justify-content:center;}

.group-tabs__btns a {border-radius:20px;}
.group-tabs__btns a:hover {color:var(--text-color); background:var(--section-light);}
.group-tabs__btns a.active {background:var(--primary); color:var(--primary-text);}

.grid-2up .block {width:50%; flex:0 0 50%; max-width:50%; margin:16px auto;}

.columns-middle .col {vertical-align:middle;}

/* -------- Tabs ------------ */
.tabs {background:#ffffff;}
.tab {font-size:clamp(1rem, 1.25vw, 24px); line-height:1.2; padding:1.483em; color:var(--heading-color);}
.tab:before {width:100%; border-top:1px solid var(--lines); top:-1px;}
.tab.active {background:var(--section-dark);}
.block-tab-header p {color:var(--heading-color); padding-top:1.483em; padding-bottom:1.483em;}

.tabs-content {padding-left:0; padding-right:0;}
.block-tab-content {padding-left:16px; padding-right:16px;}

/* -------- Accordion ------------ */
.expand > .content-1920 > .content-padding {margin:clamp(16px, 2.6vw, 50px) 0;}

.expand-box {background:#ffffff; border:1px solid var(--lines); font-size:clamp(1rem, 1.25vw, 24px); border-radius:2.08em;}
.expand-header p {color:var(--heading-color); font-weight:700; font-size:1em; line-height:1.2; padding-top:1.483em; padding-bottom:1.483em; border-width:0; border-radius:2.08em; box-shadow:0 1px 0 var(--lines);}
.expand-content,
.expand-open .expand-content {padding-left:clamp(16px, 2.6vw, 50px); padding-right:clamp(16px, 2.6vw, 50px);}
.expand-content:after {display:none;}

/* -------- News ------------ */
.mediaelement img {border-radius:var(--image-radius); clip-path:polygon(0 clamp(8px, 2.08vw, 40px), clamp(8px, 2.08vw, 40px) 0, 100% 0, 100% calc(100% - clamp(8px, 2.08vw, 40px)), calc(100% - clamp(8px, 2.08vw, 40px)) 100%, 0 100%);}

/* -------- Profiles ------------ */
.profile__card,
.profile__card-minimal {max-width:clamp(360px, 25vw, 480px); min-height:100%; box-sizing:border-box; background:#ffffff; box-shadow:4px 4px 16px rgba(0,0,0,0.1); border-radius:var(--image-radius); padding:clamp(24px, 2.6vw, 50px); margin:0 auto;  text-align:center; overflow:hidden;}
.profile__card:hover {box-shadow:4px 4px 16px rgba(0,0,0,0.1);}
.profile__card:before {content:""; display:block; font-size:clamp(60px, 5.2vw, 100px); width:0.6em; height:0.6em; position:absolute; right:0; top:0; margin:0.3em; background:url(../images/icons.svg) no-repeat -4.2em -8.2em; background-size:6em auto; opacity:0.3;}
.profile__image {margin-top:0;}
.profile__image img {mix-blend-mode:multiply;}
.profile__teaser {padding-top:4%;}
.profile__name {color:var(--heading-color);}
.profile__position {font-size:1rem;}
.profile__department {position:relative; background:none; color:var(--heading-color); font-size:1rem; font-weight:600; top:auto; left:auto; margin:0; opacity:0.5; text-transform:uppercase;}

.overlay-profile {align-items:center; justify-content:center; padding:clamp(50px, 5.2vw, 100px) 0;}
.overlay-profile .modal-box {height:80vh; padding:0; margin:auto 7.8%;}
.profile__columns {display:flex; height:100%;}
.profile__left {flex:0 0 40%; height:100%; padding:0;}
.profile__right {flex:0 0 60%; height:100%; box-sizing:border-box; padding:clamp(16px, 100px, 5.2vw); padding-right:clamp(16px, 50px, 2.6vw);}
.overlay-profile .profile__image {display:block; position:relative; width:100%; max-width:none; height:100%; border-radius:0; box-sizing:border-box; margin:0;}
.overlay-profile .profile__image img {display:block; position:absolute; width:100%; height:100%; object-fit:cover; object-position:center top; mix-blend-mode:normal;}
.profile__text {padding:0 20px 0 0; margin:0 10% 0 0; position:relative; top:0; max-height:100%; box-sizing:border-box; overflow-y:auto;}

/* -------- Footer ------------ */
#footer {z-index:1; border-top:10px solid #ffffff; margin-top:26px; box-shadow:0 -16px 0 var(--primary);}
.footer-top {position:relative; z-index:11;}

.scroll-wrap {padding:0 clamp(16px, 3.125vw, 60px) 0 clamp(16px, 7.8125vw, 150px);}
.scroll-top {font-size:clamp(60px, 150px, 7.8125vw); top:-60px; margin:-0.5em 0 0 0;}
.scroll-top:before {background-position-y:-1.33em;}
.scroll-top:after {z-index:-1; border:none; background:#ffffff; box-shadow:4px 4px 12px rgba(0,0,0,0.1);}

.footer-mid {background:var(--section-dark) url(../images/bg-footer.svg) no-repeat left bottom; background-size:cover;}
.footer-mid .columns {padding:0 clamp(16px, 3.125vw, 60px) clamp(40px, 5.2vw, 100px) clamp(16px, 7.8125vw, 150px); gap:clamp(24px, 2.08vw, 40px);}
.footer-mid .columns .content-padding {padding:0;}
.footer-mid .columns {display:flex; margin:0 auto;}
.footer-mid .col {flex:1 1 auto; display:block; background:none; padding-top:clamp(40px, 5.2vw, 100px);}
.footer-mid .grid .block {padding-top:0; padding-bottom:0; margin:0;}

.footer-mid .footer-right {flex:0 1 36.8%; display:flex; filter:drop-shadow(4px 4px 12px rgba(0,0,0,0.1)); padding-top:0;}
.footer-right-inner {flex:1; display:flex; flex-direction:column; justify-content:center; padding:clamp(32px, 4.16vw, 80px); box-sizing:border-box; margin-top:-60px; background:#ffffff; clip-path:polygon(0 0, 100% 0, 100% 100%, clamp(20px, 5.2vw, 100px) 100%, 0 calc(100% - clamp(20px, 5.2vw, 100px)));}

.footer-links {display:block; margin:20px 0; text-wrap:balance;}
.footer-links ul li {font-size:clamp(14px, 24px, 1.25vw);}
.footer-links ul li a {display:inline-block; position:relative; z-index:0; font-size:1em; line-height:1.2; color:var(--heading-color); padding:1.06em; overflow:hidden; transition:background 0.7s;}
.footer-links ul li a:hover,
.text-white .footer-links ul li a:hover {background:rgba(255,255,255,0.09);}
.footer-links.footer-links-large {margin:20px 0;}
.footer-links.footer-links-large ul li {margin:0;}
.footer-links.footer-links-large ul li a {font-size:36px; font-size:clamp(21px, 1.875vw, 36px); line-height:1.2; padding:0.511em 1em;}

.footer-bottom {background:#ffffff;}
.footer-bottom .col {padding:20px 0;}
.website a {background:none;}
.copyright {color:var(--tertiary); font-weight:400;}
.website span {color:var(--tertiary); font-weight:400;}


/* -------- Media Queries ------------ */
@media screen and (max-width:1920px) {
	/* -------- Header ------------ */
	.header-logo a {border-radius:0 var(--header-radius) var(--header-radius) 0;}
	.header-nav {border-radius:var(--header-radius) 0 0 var(--header-radius);}
	/* -------- Content ------------ */
	.video-poster:after {font-size:16.25vw;}
}

@media screen and (max-width:1800px) {
	/* -------- Content ------------ */
	.ce-textpic.ce-left.ce-nowrap .ce-gallery {padding-right:40px;}
	.ce-textpic.ce-right.ce-nowrap .ce-gallery {padding-left:40px;}
	.ce-textpic.ce-left.ce-nowrap .ce-bodytext {padding-left:40px;}
	.ce-textpic.ce-right.ce-nowrap .ce-bodytext {padding-right:40px;}
	/* -------- Image Slider ------------ */
	.padding-left-none .ce-left .splide__track {padding-left:120px !important;}
	.padding-right-none .ce-right .splide__track {padding-right:120px !important;}
	.padding-left-none .ce-left .splide__slide {padding-left:2.78vw;}
	.padding-right-none .ce-right .splide__slide {padding-right:2.78vw;}
}

@media screen and (max-width:1600px) {
	/* -------- Content ------------ */
	.ce-textpic.ce-left.ce-nowrap .ce-gallery {padding-right:30px;}
	.ce-textpic.ce-right.ce-nowrap .ce-gallery {padding-left:30px;}
	.ce-textpic.ce-left.ce-nowrap .ce-bodytext {padding-left:30px;}
	.ce-textpic.ce-right.ce-nowrap .ce-bodytext {padding-right:30px;}
	/* -------- Image Slider ------------ */
	.padding-left-none .ce-left .splide__track {padding-left:80px !important;}
	.padding-right-none .ce-right .splide__track {padding-right:80px !important;}
}

@media screen and (max-width:1300px) {
	/* -------- Nav ------------ */
	.nav {display:none;}
	/* -------- Nav Side ------------ */
	.nav-side .content-padding > ul {max-width:400px;}
	.nav-images {margin-right:520px;}
	/* -------- Content ------------ */
	.ce-textpic.ce-left.ce-nowrap .ce-gallery {padding-right:20px;}
	.ce-textpic.ce-right.ce-nowrap .ce-gallery {padding-left:20px;}
	.ce-textpic.ce-left.ce-nowrap .ce-bodytext {padding-left:20px;}
	.ce-textpic.ce-right.ce-nowrap .ce-bodytext {padding-right:20px;}
	/* -------- Accordion ------------ */
	.expand-header:after {right:16px;}
	.expand-header p {padding-left:16px; padding-right:50px;}
	.expand-content,
	.expand-open .expand-content {padding-left:16px; padding-right:16px;}
}

@media screen and (max-width:1080px) {
	/* -------- Grid ------------ */
	.grid-2up {display:block;}
	.grid-2up .block {display:block; width:100%; flex:0 0 100%; max-width:480px;}
	/* -------- Profile ------------ */
	.overlay-profile .modal-box {max-height:none; max-width:480px; height:auto; margin:auto 16px;}
	.profile__columns {display:block;}
	.profile__left {position:relative; display:block; width:auto; height:0; padding-bottom:80%;}
	.overlay-profile .profile__image {position:absolute;}
	.profile__right {display:block; width:auto; padding:0;}
	.profile__text {display:block; width:auto; padding:0; margin:16px; height:auto; top:auto;}
}

@media screen and (max-width:960px) {
	/* -------- Text ------------ */
	.col:first-child .align-right {text-align:left;}
	.ce-bodytext-block img {display:block; margin:0 auto;}
	.ce-right .overhang {margin-right:0;}
	.indent-small {margin-left:0.6rem;}
	.indent-medium {margin-left:1.2rem;}
	.indent-large {margin-left:1.8rem;}
	/* -------- Modals ------------ */
	.btn__close {font-size:40px;}
	.modal-box {height:auto; max-height:none;}
	.modal-scrollbox.scrollbar {height:auto; max-height:none;}
	.modal-box .columns {max-width:none;}
	.modal-box .col {max-width:none; padding:20px 0;}
	.modal-box .col .block {max-width:480px; margin:0 auto;}
	/* -------- Nav Side ------------ */
	.nav-side .content-padding {margin:8% 0;}
	.nav-side .content-padding > ul {margin:0 auto;}
	.nav-images {display:none;}
	/* -------- Content ------------ */
	#body {background-size:960px auto, auto;}
	.ce-textpic.ce-left.ce-nowrap .ce-gallery,
	.ce-textpic.ce-right.ce-nowrap .ce-gallery,
	.ce-textpic.ce-left.ce-nowrap .ce-bodytext,
	.ce-textpic.ce-right.ce-nowrap .ce-bodytext {padding:0; width:auto; max-width:480px; flex-basis:100%;}	
	#content .col {display:block; max-width:480px; margin: 0 auto;}
	#content .padding-right-none .col:has(.splide) {max-width:none;}
	header:has(+ .columns-wrap) {display:block; max-width:480px; margin: 0 auto;}
	.margin-top-small {margin-top:40px;}
	.margin-bottom-small {margin-bottom:40px;}	
	.margin-top-large {margin-top:60px;}
	.margin-bottom-large {margin-bottom:60px;}	
	.overlay-video .content-padding {padding:0;}
	.scroll-reveal .ce-nowrap.ce-left .ce-gallery,
	.scroll-reveal .ce-nowrap.ce-right .ce-gallery,
	.scroll-reveal .ce-nowrap.ce-left .ce-bodytext,
	.scroll-reveal .ce-nowrap.ce-right .ce-bodytext {transform:translateX(0);}
	/* Callout */
	.callout-fit .ce-textpic.ce-intext.ce-nowrap .ce-gallery {margin:0;}
	.callout-fit .ce-textpic.ce-intext.ce-nowrap .ce-gallery * {height:auto;}
	.callout-fit .ce-textpic.ce-intext.ce-nowrap .image img {position:relative; width:100%; height:auto;}
	/* Textpic - Image Flush */
	.padding-left-none .ce-left .ce-column {padding-left:16px;}
	.padding-right-none .ce-right .ce-column {padding-right:16px;}
	.padding-left-none .ce-left .ce-column:first-child .image img {border-radius:var(--image-radius);}
	.padding-right-none .ce-right .ce-column:last-child .image img {border-radius:var(--image-radius);}
	/* -------- Buttons ------------ */
	.btn__icon .small {margin-left:0;}
	.padding-right-none .splide__arrows {padding-right:16px;}
	/* -------- Banner ------------ */
	.banner-text-right .banner__text {width:auto; padding-left:0; margin:0 auto;}
	.banner-text-right .banner__shade {background:var(--banner);}
	/* -------- Image Menu ------------ */
	.image-menu {display:flex; margin:0 -8px; max-width:none;}
	.image-menu__item {padding:8px;}
	/* -------- Image Slider ------------ */
	.block-type-site_clevgen_imageSlider .ce-textpic.ce-intext {max-width:none;}
	.block-type-site_clevgen_imageSlider .padding-left-none,
	.block-type-site_clevgen_imageSlider .padding-right-none {padding:0;}
	.block-type-site_clevgen_imageSlider .padding-left-none .ce-textpic.ce-intext .ce-gallery,
	.block-type-site_clevgen_imageSlider .padding-right-none .ce-textpic.ce-intext .ce-gallery {max-width:none;}
	.block-type-site_clevgen_imageSlider .ce-textpic.ce-intext .ce-bodytext {padding:0 16px; margin:0 auto;}
	.padding-left-none .ce-left .splide__track {padding:0 25vw !important;}
	.padding-right-none .ce-right .splide__track {padding:0 25vw !important;}
	.padding-left-none .ce-left .splide__slide {padding:0 8px;}
	.padding-right-none .ce-right .splide__slide {padding:0 8px;}
	/* -------- Grid ------------ */
	.columns-4060 .col:first-child {width:auto;}
	.columns-6040 .col:first-child {width:auto;}
	/* -------- Footer ------------ */
	.footer-top {margin-top:0;}
	.scroll-wrap {padding:0 16px;}
	.scroll-top {left:0; top:-0.2em; margin:0 auto;}
	.footer-mid .columns {flex-wrap:wrap; padding:80px 16px 40px 16px; gap:4%;}
	.footer-mid .col {flex:0 1 48%; width:auto;}
	.footer-left {margin:40px auto; text-align:right;}
	.footer-mid .footer-right {flex:1 0 100%; margin:0;}
	.footer-right-inner {flex:1 0 100%; margin:0;}
	.footer-right .image {max-width:288px;}
	.footer-bottom {padding-top:20px;}
}

@media screen and (max-width:800px) {
	/* -------- Header ------------ */
	.header-buttons {padding:0;}
	.header-button span {display:none;}
	.header-phone span {display:block;}
}

@media screen and (max-width:600px) {
	/* -------- Image Slider ------------ */
	.padding-left-none .ce-left .splide__track {padding:0 15vw !important;}
	.padding-right-none .ce-right .splide__track {padding:0 15vw !important;}
	/* -------- Image Menu ------------ */
	.image-menu {display:block; margin:0;}
	.image-menu__item {max-width:480px; padding:0; margin:16px auto;}
	/* -------- Footer ------------ */
	.footer-mid .columns {display:block; padding-top:40px;}
	.footer-mid .col {text-align:center;}
	.footer-middle {margin-bottom:40px;}
	.footer-middle p {display:inline-block; vertical-align:top; margin:4px 0;}
	.footer-middle .btn__icon {font-size:14px; min-width:80px; padding:4.4em 0.8em 0.8em 0.8em; text-align:center; border-radius:16px;}
	.footer-middle .btn__icon:after {font-size:3.5em; left:50%; top:0.2em; margin:0 -0.5em;}
	.footer-middle .btn-location .small {display:none;}
	.footer-middle .btn-hours {display:block;}
	.footer-links-inline ul li {display:block; margin:4px 0;}
}


@media screen and (max-width:540px) {
	/* -------- Header ------------ */
	.header-button.header-phone,
	#header-sticky .header-button.header-phone {width:1em; height:1em; padding:0;}
	.header-button.header-phone:before,
	#header-sticky .header-button.header-phone:before {margin:auto;}
	.header-button.header-phone span {display:none;}
}

@media screen and (max-width:480px) {
	/* -------- Grid ------------ */
	.padding-left-none .group-peek.group-slider .splide__track {padding-left:16px !important;}
	.padding-right-none .group-peek.group-slider .splide__track {padding-right:16px !important;}
}

@media screen and (max-width:440px) {
	/* -------- Buttons ------------ */
	.btn__icon .small {display:block;}
}
