﻿@charset "utf-8";

:root {
	/* Colors */
	--primary:#CFD8DC;
	--secondary:#ECEFF1;
	--lines:#CFD8DC;
	--table:#ECEFF1;
	--banner:#424143;
	--fields:#ECEFF1;
	--section-light:var(--table);
	--section-dark:var(--text-color);

	/* Text */
	--body-font:'Poppins';
  --text-color:#263238;
	--heading-font:var(--body-font);
	--heading-color:var(--text-color);
	--link-color:var(--primary);
	
	/* Header */
	--header-background:#ffffff;
	--header-ontop-background:transparent;
	--header-border:transparent;
	--header-ontop-border:rgba(255,255,255,0.15);
	--logo-background:rgba(255,255,255,0.15);
	--icon-hover:#ECEFF1;
	--icon-ontop-hover:rgba(255,255,255,0.15);
	--header-nav:transparent;

	/* Nav */
	--nav-hover:#CFD8DC;
	--nav-hover-text:var(--text-color);
	--nav-sub-hover:var(--nav-hover);
	--nav-sub-hover-text:var(--text-color);
	--nav-radius:0;

	/* Modals */
	--modal-overlay:rgba(38,50,56,0.8);
	
	/* Content */
	--image-radius:0;
	
	/* Buttons */
	--btn-radius:1.76em;
	--primary-text:var(--text-color);
	--secondary-text:var(--text-color);
	
	/* Scrollbar */
	--scrollbar-thumb:var(--primary);
	--scrollbar-track:rgba(0,0,0,0.05);
	
	/* Footer */
	--footer-top:transparent;	
	--footer-left:#ECEFF1;	
	--footer-right:#ffffff;	
}

html, body {margin: 0; padding: 0; height:100%; scroll-behavior:smooth;}
body  {text-align: center; font-family:'Poppins', sans-serif; font-family:var(--body-font), sans-serif; font-size:17px; font-weight:400; line-height:1.76; color:var(--text-color); height:100%; background:#ffffff;}
a img {border:none;}

/* -------- Text ------------ */
h1, .h1 {font-family:var(--heading-font), sans-serif; position:relative; font-size:90px; line-height:1.20; font-weight:700; margin:16px 0; color:var(--heading-color);}
h2, .h2 {font-family:var(--heading-font), sans-serif; position:relative; font-size:72px; line-height:1.20; font-weight:700; margin:16px 0; color:var(--heading-color);}
h3, .h3 {position:relative; font-size:48px; line-height:1.25; font-weight:700; margin:16px 0;}
h4, .h4 {position:relative; font-size:36px; line-height:1.25; font-weight:700; margin:16px 0;}
h5, .h5 {position:relative; font-size:24px; line-height:1.50; font-weight:400; margin:16px 0;}
h6, .h6 {position:relative; font-size:18px; line-height:1.55; font-weight:400; margin:16px 0;}
p       {position:relative; font-size:17px; line-height:1.76; font-weight:400; margin:16px 0;}

a  {color:#263238; color:var(--link-color); text-decoration:none; word-break:break-word;}
.text-white a {color:#ffffff;}
a:hover {text-decoration:underline;}
b, strong {font-weight:700;}
.semibold {font-weight:600;}

hr {border:none; border-bottom:1px solid var(--lines); margin:16px 0; clear:both;}
.text-white hr {border-bottom-color:#ffffff;}

blockquote {position:relative; display:block; padding:60px 60px; box-sizing:border-box; background:none; font-size:36px; line-height:1.25; font-weight:700; margin:16px 0; border-left:0.28em solid #CFD8DC; border-color:var(--primary);}
blockquote * {margin:0;}
.text-white blockquote {color:#ffffff;}

.left, .align-left, .ce-headline-left {text-align:left;}
.center, .align-center, .ce-headline-center {text-align:center;}
.right, .align-right, .ce-headline-right {text-align:right;}

.inline {display:inline-block; vertical-align:middle; margin-right:0.1em;}
.float-left {position:relative; float:left; margin-top:0; z-index:1; max-width:50%;}
.float-right {position:relative; float:right; margin-top:0; z-index:1; max-width:50%;}
.small {display:block; font-size:15px; line-height:1.76; font-weight:400; margin:16px 0 0 0;}
.ce-right .overhang,
.banner-columns .overhang {margin-right:-60%;}

.text-white h1, .text-white h2, .text-white h3, .text-white h4, .text-white h5, .text-white h6, .text-white p, .text-white blockquote {color:#ffffff;}

.width-1300 {max-width:1300px;}
.width-1080 {max-width:1080px;}
.width-960 {max-width:960px;}
.width-800 {max-width:800px;}
.width-640 {max-width:640px;}
.width-480 {max-width:480px;}
.align-center.width-1300, .align-center.width-1080, .align-center.width-960, .align-center.width-800, .align-center.width-640, .align-center.width-480 {margin-left:auto; margin-right:auto;}
.align-right.width-1300, .align-right.width-1080, .align-right.width-960, .align-right.width-800, .align-right.width-640, .align-right.width-480 {margin-left:auto; margin-right:0;}

.text-columns {-webkit-column-count:2; -moz-column-count:2; column-count:2; -webkit-column-gap:100px; -moz-column-gap:100px; column-gap:100px; -webkit-column-width:300px; -moz-column-width:300px; column-width:300px;}
.text-columns * {margin-top:0;}

.image-captioned {display:table;}
.image-captioned p {margin:0;}
.image-captioned .caption {display:table-caption; caption-side:bottom; font-size:0.875rem; font-style:italic; line-height:1.2; margin:10px 0 0 0;}
.image-captioned.float-left {margin-right:40px;}
.image-captioned.float-right {margin-left:40px;}

/* -------- 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,
.f3-widget-paginator li.previous a:before,
.f3-widget-paginator 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 {background-image:url(../images/icons.png); background-image:url(../images/icons.svg), linear-gradient(transparent, transparent), none; background-repeat:no-repeat;}

/* -------- Lists ------------ */
.ce-bodytext ul, .ce-intext.ce-left ul, .ce-intext.ce-right ul  {list-style:none; padding:0; margin:0; overflow:visible;}
.ce-bodytext ul li {display:inline-block; vertical-align:top; position:relative; list-style:none; width:100%; padding:0.8em 0 0.8em 2em; margin:0; box-sizing:border-box; text-align:left; font-size:24px;}
.ce-bodytext ul > li:before {content:""; display:block; width:0.83em; height:0.83em; position:absolute; left:0; margin-top:0.4em; background:#CFD8DC; background:var(--primary); border-radius:50%;}

.ce-bodytext ol, .ce-intext.ce-left ol, .ce-intext.ce-right ol {position:relative; list-style:none; counter-reset:ol; padding:0; margin:0; overflow:visible;}
.ce-bodytext ol li {display:inline-block; vertical-align:top; position:relative; list-style:none; width:100%; padding:0.8em 0 0.8em 2em; margin:0; box-sizing:border-box; text-align:left; font-size:24px;}
.ce-bodytext ol > li {counter-increment:ol;}
.ce-bodytext ol > li:before {content:counter(ol); position:absolute; left:0; font-weight:700; color:#CFD8DC; color:var(--primary); text-align:center;}

.ce-bodytext li > *:first-child {margin-top:0;}

.text-white .ce-bodytext li {color:#ffffff;}
.text-white .ce-bodytext ul > li:before {background:#ffffff;}
.text-white .ce-bodytext ol > li:before {color:#ffffff;}

/* -------- Tables ------------ */
table {width:100%; margin:16px 0; border-spacing:0; font-size:18px; line-height:1.8; font-weight:400;}
th {padding:17px; font-weight:700;}
td {padding:17px;}
tr:nth-child(even) {background:var(--table);}
.text-white table {color:#ffffff;}
.text-white tr:nth-child(even) {background:rgba(255,255,255,0.1);}
.ce-table th, .ce-table td {border:none;}

table.table-columns {display:block; width:106%; padding:0; margin:0 -3%;}
table.table-columns tbody {display:block;}
table.table-columns tr {display:flex; flex-wrap:wrap;}
table.table-columns td {vertical-align:top; padding:0 3%; box-sizing:border-box; flex:1 0 240px;}
table.table-columns tr:nth-child(even) {background:none;}
.text-white table.table-columns tr:nth-child(even) {background:none;}

/* -------- General Forms ------------ */ 
input[type="date"], input[type="time"], input[type="datetime"] {appearance:none; -webkit-appearance:none;}

form {margin:0;}
form.form-480 {max-width:480px;}
form.form-600 {max-width:600px;}
form.form-480c {max-width:480px; margin:0 auto;}
form.form-600c {max-width:600px; margin:0 auto;}
fieldset {display:block; border:none; padding:0; margin:0 -20px 16px 0; font-size:0;}
legend {display:block; font-size:24px; font-weight:800; padding:0 20px 0 0; margin:16px 0;}
.legend-center legend {width:100%; padding:0; text-align:center;}
label {display:block; font-size:17px; font-weight:700; line-height:26px; margin:10px 20px;}
label[title]:after {content:attr(title); font-weight:400; display:block;}
input, textarea, select, option {width:100%; font-family:'Poppins', sans-serif; font-family:var(--body-font), sans-serif; font-size:17px; font-weight:400; line-height:24px; color:var(--text-color); padding:18px 20px; box-sizing:border-box; border:none; border-radius:30px; background:#ECEFF1; background:var(--fields);}
select {padding:0 50px 0 20px; height:60px; line-height:60px; font-weight:700; appearance:none; -moz-appearance:none; -webkit-appearance:none; background-position:right center; background-repeat:no-repeat; background-image:url(../images/select.png); background-image:url(../images/select.svg), linear-gradient(transparent, transparent), none; cursor:pointer;}
select::-ms-expand {display:none;}
textarea {resize:vertical;}
input[type="checkbox"], input[type="radio"] {width:auto;}
input::-webkit-date-and-time-value {height:24px;}

.text-white input, .text-white textarea, .text-white select, .text-white option {color:#191613;}
.text-white legend, .text-white label {color:#ffffff;}

::-webkit-input-placeholder  {color:#191613; opacity:1;}
:-ms-input-placeholder  {color:#191613; opacity:1;}
::-moz-placeholder  {color:#191613; opacity:1;}
::placeholder {color:#191613; opacity:1;}

/* Powermail Forms */
.powermail_form {font-size:0; overflow:hidden;}
.powermail_form > h3 {display:none;}
.powermail_form > fieldset {padding:0; border:none;}
.mandatory {color:#c00000; margin-left:3px;}
.powermail_fieldwrap, .fieldwrap {position:relative; padding:0 20px 0 0; margin:0 0 16px 0; box-sizing:border-box; text-align:left; display:table; width:100%;}
.powermail_fieldwrap.inline {display:inline-block; vertical-align:top; margin-right:10px;}
.parsley-error {border-color:#c00000;}
.parsley-errors-list {font-size:14px;}

.field-hidden {display:none;}

.radio, .checkbox {display:inline-block; vertical-align:top;}
.radio label, .checkbox label {display:inline-block;}

.checkbox, .radio {position:relative; display:inline-block; vertical-align:top; margin:8px 30px 0 0;}
.checkbox input[type="checkbox"], .radio input[type="radio"] {position:absolute; top:0; left:0; opacity:0; font-size:60px; width:1em; height:1em; margin:0;}
.checkbox input[type="checkbox"] + label, .radio input[type="radio"] + label {display:block; position:relative; padding:17px 0 17px 80px; margin:0;}
.checkbox input[type="checkbox"] + label:before, .radio input[type="radio"] + label:before {content:""; display:block; top:0; left:0; position:absolute; font-size:60px; width:1em; height:1em; margin:0; box-sizing:border-box; background:#ECEFF1; background:var(--fields); cursor:pointer;}
.radio input[type="radio"] + label:before {background:#ECEFF1; background:var(--fields); border-radius:30px; border:20px solid #ECEFF1; border-color:var(--fields);}
.checkbox input[type="checkbox"]:checked + label:before {background-position:-8.66em -10.33em; background-size:10em auto;}
.radio input[type="radio"]:checked + label:before {background:#CFD8DC; background:var(--primary);}
.powermail_fieldwrap_type_radio .radio {display:inline-block; vertical-align:top;}
.using-tab .checkbox input[type="checkbox"]:focus + label:before,
.using-tab .radio input[type="radio"]:focus + label:before {box-shadow:inset 0 0 0 2px var(--primary);}

input[type='number'] {-moz-appearance:textfield; appearance:textfield;}
input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {-webkit-appearance:none; margin:0;}
.number {position:relative; max-width:200px;}
.number input {padding-left:70px; padding-right:70px;}
.number button {position:absolute; top:0; display:block; font-size:60px; width:1em; height:1em; box-sizing:border-box; transition:background 0.3s;}
.number button:before {content:""; display:block; width:1em; height:1em; background-size:10em auto; background-position:-0.33em -10.33em; position:absolute; left:50%; top:50%; margin:-0.5em;}
.number button.number-add:before {background-position:-2em -10.33em;}
.number button:hover {background:rgba(0,0,0,0.05);}
.number-remove {left:0; border-right:1px solid #ffffff; border-radius:30px 0 0 30px;}
.number-add {right:0; border-left:1px solid #ffffff; border-radius:0 30px 30px 0;}

.field-half {display:inline-block; vertical-align:bottom; width:50%; box-sizing:border-box;}
.field-inline {display:inline-block; vertical-align:bottom; width:auto; box-sizing:border-box;}

.invalid input:invalid,
.invalid textarea:invalid,
.invalid select:invalid,
.invalid .checkbox input[type="checkbox"]:invalid + label:before,
.invalid .radio input[type="radio"]:invalid + label:before {box-shadow:inset 0 0 0 2px var(--primary);}

.form-multipage {border-bottom:1px solid var(--lines);}
.multipager fieldset {display:none;}
.multipager fieldset.active {display:block;}
.multipager-tabs {display:flex; flex-wrap:wrap; margin:0 0 16px 0; border:1px solid var(--lines); border-width:1px 0; overflow:hidden;}
.multipager-tab {display:inline-block; vertical-align:top; position:relative; flex:1 0 auto; padding:15px 16px; box-sizing:border-box; max-width:100%; border-bottom:1px solid var(--lines); margin-bottom:-1px; font-size:1rem; color:var(--lines); font-weight:600;}
.multipager-tab:before {content:""; display:block; position:absolute; left:-1px; top:0; bottom:0; border-left:1px solid var(--lines); margin:6px 0;}
.multipager-tab.active {color:var(--text-color); background:var(--table);}

/* Login */
.login-box {max-width:480px; margin:0 auto;}
.login-box button[type="submit"] {display:block; width:100%;}


/* -------- Header ------------ */
#header, #header-sticky {position:relative; left:0; right:0; top:0; flex:0 0 auto; min-width:320px; height:150px; z-index:90; text-align:right; font-size:0; white-space:nowrap; background:var(--header-background); transition:background 0.3s;}
#header.header-border {border-bottom:1px solid var(--header-border);}
.header-ontop #header {position:absolute; border:none; background:var(--header-ontop-background);}
.header-narrow #header {height:100px;}
.header-ontop #header.header-ontop-border {border-bottom:1px solid var(--header-ontop-border);}

#header .content-1920, #header-sticky .content-1920 {display:table; justify-content:space-between; position:relative; width:100%; box-sizing:border-box;}

.header-logo {display:table-cell; vertical-align:middle; align-items:center; width:0; flex:0 0 auto; position:relative; z-index:10;}
.header-logo a {position:relative; display:block; align-items:center; height:150px; padding:20px 50px; margin:0 auto; box-sizing:border-box; background:var(--logo-background);}
.header-logo img {display:block; margin:0 auto; width:auto; max-height:100%; font-size:36px; font-weight:700; color:var(--text-color);}
.header-logo:hover {text-decoration:none;}
.logo-overhang .header-logo a {height:200px; margin-bottom:-50px;}
.header-narrow .header-logo a {height:100px;}
.header-narrow.logo-overhang .header-logo a {height:150px;}

.header-logo .logo-dark {display:block;}
.header-logo .logo-white {display:none;}
#header.header-white .header-logo .logo-dark,
#header-sticky.header-sticky-white .header-logo .logo-dark {display:none;}
#header.header-white .header-logo .logo-white,
#header-sticky.header-sticky-white .header-logo .logo-white {display:block;}

@supports(display:flex) {
	#header .content-1920, #header-sticky .content-1920 {display:flex;}
	.header-logo {display:flex; width:auto;}
	.header-logo a {display:flex;}
}

.header-buttons {display:table-cell; vertical-align:top; flex:0 0 auto; float:right; text-align:right; font-size:0; white-space:nowrap; margin:0 0 0 auto;}
.header-button {position:relative; overflow:hidden; display:inline-block; vertical-align:middle; width:150px; height:150px; box-sizing:border-box; padding:90px 10px 0 10px; margin:0; white-space:normal; transition:background 0.3s; cursor:pointer;}
.header-button:hover {text-decoration:none; background:var(--icon-hover);}
.header-button span {display:block; font-size:18px; line-height:1.3; font-weight:600; color:#263238; color:var(--text-color); text-align:center; transition:color 0.3s;}
.header-ontop #header .header-button:hover {background:var(--icon-ontop-hover);}
#header.header-white .header-button span,
#header-sticky.header-sticky-white .header-button span {color:#ffffff;}

.header-button:before {content:""; display:block; font-size:60px; width:1em; height:1em; border-radius:0.5em; background-size:10em auto; position:absolute; left:50%; top:30px; margin:0 -0.5em;}
.header-nav:before {background-position:-0.33em -0.33em;}
.header-phone:before {background-position:-5.33em -0.33em;}
.header-contact:before {background-position:-7em -0.33em;}
.header-search:before {background-position:-3.66em -0.33em;}
.header-login:before {background-position:-8.66em -0.33em;}
.close:before {background-position:-2em -0.33em;}
#header.header-white .header-button:before,
#header-sticky.header-sticky-white .header-button:before {background-position-y:-2em;}

.header-nav {background-color:var(--header-nav);}
.header-nav.btn-nav-color:hover {background-color:var(--header-nav); filter:brightness(1.1);}
.header-nav.text-white:before {background-position-y:-2em;}
.header-nav.text-white span {color:#ffffff;}

.header-button.header-phone {width:auto; padding:0 40px 0 80px; border:none;}
.header-button.header-phone span {line-height:150px; font-size:24px;}
.header-button.header-phone:before {left:20px; top:50%; margin:-0.5em 0;}
.header-phone .header-phone-title {display:none;}

.header-buttons .btn__primary{vertical-align:middle; margin:0 16px;}

#header-sticky {display:block; position:fixed; left:0; right:0; top:-100px; z-index:100; height:100px; background:#ffffff; background:var(--header-background); box-shadow:0 4px 16px rgba(0,0,0,0); transform:translate3d(0, 0, 0); will-change:transform; backface-visibility:hidden; visibility:hidden; transition:transform 0.3s, box-shadow 0.3s, visibility 0.3s 0s;}
#header-sticky.scroll {visibility:visible; transform:translate3d(0, 100%, 0); box-shadow:0 4px 16px rgba(0,0,0,0.3); transition:transform 0.3s, box-shadow 0.3s, visibility 0s;}
#header-sticky .header-logo a {height:100px; padding:10px 30px;}
#header-sticky.logo-overhang .header-logo a {margin-bottom:0;}
#header-sticky .header-button, 
.header-narrow .header-button {height:100px; padding-top:64px;}
#header-sticky .header-button:before,
.header-narrow .header-button:before {top:6px;}
#header-sticky .header-button.header-phone,
.header-narrow .header-button.header-phone {width:auto; padding:0 30px 0 80px;}
#header-sticky .header-button.header-phone:before,
.header-narrow .header-button.header-phone:before {top:50%;}
#header-sticky .header-button.header-phone span,
.header-narrow .header-button.header-phone span {line-height:100px;}

.modal-open {overflow:hidden; padding-right:var(--scrollbar-width);}
.modal-open #header-sticky {padding-right:var(--scrollbar-width);}
.modal-open #header-sticky.scroll {transform:none; box-shadow:none;}

/* -------- Modals ------------ */
.overlay {overscroll-behavior:contain; position:fixed; min-width:320px; width:100%; left:0; right:0; top:0; height:100%; max-height:0; overflow:hidden; background:rgba(0,0,0,0); transform:translate3d(0,0,0); -webkit-overflow-scrolling:touch; z-index:110; visibility:hidden; transition:max-height 0s 0.5s, background 0.5s, visibility 0.5s 0s;}
.overlay.open {max-height:100%; overflow-y:scroll; background:var(--modal-overlay); visibility:visible; transition:max-height 0s, background 0.5s, visibility 0s;}
.modal-box {position:relative; overflow:hidden; overflow-y:auto; max-width:1920px; height:100vh; max-height:1080px; padding:0; margin:0 auto; box-sizing:border-box; transform:translate3d(0,-100%,0); transition:transform 0.5s; background:#ffffff; text-align:left; box-shadow:4px 4px 16px rgba(0,0,0,0.3);}
.overlay.open .modal-box {transform:none;}

.modal-header {display:table; justify-content:space-between; width:100%; box-sizing:border-box; position:absolute; z-index:100; left:0; right:0; top:0; pointer-events:none;}
.modal-header > div {pointer-events:auto;}
@supports (display:flex) {
	.modal-header {display:flex;}
}

.modal-scrollbox {height:100vh; max-height:1080px; overflow-y:auto;}
.block + .columns .modal-scrollbox {height:auto; max-height:none;}

.overlay-search .modal-box {height:auto;}
.overlay-video .modal-box {height:auto;}
.overlay-video .content-padding {margin:0;}

.modal-small {display:flex; align-items:center; box-sizing:border-box;}
.modal-small .modal-box {width:100%; max-width:640px; max-height:none; transform:translate3d(0,-40px,0); height:auto; overflow:hidden; opacity:0; box-sizing:border-box; padding:50px; margin:auto; border-radius:24px; transition:transform 0.5s, opacity 0.5s;}
.modal-small.open .modal-box {transform:translate3d(0,0,0); opacity:1;}
.modal-small .content-padding {padding:0; margin:0;}

.btn__close {position:absolute; z-index:10; right:0; top:0; font-size:80px; width:1em; height:1em; padding:0; margin:0.3em; border-radius:50%; background-color:#ECEFF1; background-position:-1.375em -0.125em; background-size:7.5em auto;}


/* -------- Top Nav ------------ */
/* Nav First Level */
.nav {display:table-cell; vertical-align:top; flex:1 1 auto; width:auto; z-index:1;}
.nav ul {display:block; margin:0; list-style:none; font-size:0; padding:0; text-align:left; white-space:nowrap;}
.nav ul li {position:relative; display:inline-block; vertical-align:top; padding:0; margin:0; z-index:1; text-align:left; white-space:normal;}
.nav ul li.hidden {display:none;}
.nav ul li a {position:relative; z-index:1; display:block; padding:0 30px; color:var(--text-color); font-size:18px; font-weight:600; line-height:150px; transition:background 0.3s, color 0.3s; border-radius:var(--nav-radius);}
.nav ul li:hover > a	 {text-decoration:none; background:#ECEFF1; background:var(--nav-hover); color:var(--nav-hover-text);}
.nav ul li a span {display:block;}
.header-narrow .nav ul li a {line-height:100px;}
#header-sticky .nav ul li a {line-height:100px;}
#header.header-white .nav > ul > li > a,
#header-sticky.header-sticky-white .nav > ul > li > a {color:#ffffff;}
#header.header-white .nav > ul > li:hover > a,
#header-sticky.header-sticky-white .nav > ul > li:hover > a {color:var(--nav-hover-text);}
/* Nav Second Level */
.nav ul li ul {display:block; overflow:hidden; position:absolute; left:0; top:100%; margin:0; background:#ffffff; width:260px; min-width:calc(100% + 30px); max-height:0; white-space:normal; transform:translateY(-20px); opacity:0; box-shadow:4px 4px 16px rgba(0,0,0,0.3); transition:max-height 0s 0.3s, transform 0.3s, opacity 0.3s; border-radius:var(--nav-radius);}
.nav ul li:hover > ul,
.nav ul li ul:focus-within {overflow:visible; max-height:9999px; transform:translateY(0); opacity:1; transition:max-height 0s 0s, transform 0.3s, opacity 0.3s;}
.nav ul li ul li {display:block; margin:0;}
.nav ul li ul li a {padding-top:27px; padding-bottom:27px; line-height:26px; color:#191613; transition:all 0.3s;}
.nav ul li ul li:hover > a {background:#CFD8DC; background:var(--nav-sub-hover); color:var(--nav-sub-hover-text);}
.nav ul li ul li.sub > a:after {display:none;}
.header-narrow #header .nav ul li ul li a {line-height:26px;}
#header-sticky .nav ul li ul li a {line-height:26px;}
/* Nav Third Level */
.nav ul li ul li ul {left:100%; top:0; margin:0; transform:translateX(-20px);}
.nav ul li ul li:hover > ul,
.nav ul li ul li ul:focus-within {transform:translateX(0); overflow:hidden;}
/* Mega Menu */
.nav ul li.mega {position:static;}
.mega-menu {position:relative; position:absolute; left:0; right:0; top:100%; text-align:center; background:#ffffff; max-height:0; overflow:hidden; opacity:0; transform:translateY(-20px); transition:max-height 0s 0.3s, opacity 0.3s, transform 0.3s, box-shadow 0.3s;}
.nav ul li:hover > .mega-menu {max-height:900px; opacity:1; transform:none; box-shadow:4px 4px 16px rgba(0,0,0,0.3); transition:max-height 0s, opacity 0.3s, transform 0.3s, box-shadow 0.3s;}
.nav ul li .mega-menu ul {display:flex; flex-wrap:wrap; justify-content:center; position:relative; top:auto; left:0; right:auto; margin:0 auto; min-width:auto; width:auto; max-height:none; opacity:1; transform:none; box-shadow:none; text-align:center; white-space:normal;}
.nav ul li .mega-menu ul li {display:inline-block; vertical-align:top; text-align:center; flex:0 0 300px; width:300px;}
.nav ul li .mega-menu a {display:block; box-sizing:border-box; margin:0 auto;}
.mega__image {display:block; padding-bottom:75%; background-repeat:no-repeat; background-size:cover; background-position:center; margin:0 0 10px 0;}

/* -------- Side Nav ------------ */
/* Nav First Level */
.nav-side {position:relative; z-index:1; box-sizing:border-box; text-align:right; padding-top:150px; height:100vh; max-height:1080px;}
.nav-side .scrollbar {position:relative; z-index:1; max-height:100%; overflow-y:scroll;}
.nav-side .content-padding {margin-top:0;}
.nav-side ul {display:block; list-style:none; position:relative; z-index:1; padding:0; margin:0 0 0 auto; text-align:left; max-width:640px;}
.nav-side ul li {position:relative; display:block; list-style:none; padding:0; margin:0; text-align:right;}
.nav-side ul li a {position:relative; z-index:0; display:block; padding:50px 140px 50px 50px; border-left:180px solid transparent; font-size:36px; line-height:50px; font-weight:700; color:#263238; color:var(--text-color); text-decoration:none; transition:background 0.3s;}
.nav-side ul li:hover > a, .nav-side ul li.nav-open > a {text-decoration:none; background:var(--nav-hover);}
/* Nav Second Level */
.nav-side ul li ul {display:block; width:auto; height:0; overflow:hidden; visibility:hidden; transition:height 0.3s, visibility 0s 0.3s;}
.nav-side ul li.nav-open > ul {visibility:visible; transition:height 0.3s, visibility 0s;}
.nav-side ul li ul li {display:block; padding:0;}
.nav-side ul li ul li a {font-size:24px; line-height:34px; padding-top:13px; padding-bottom:13px;}
/* Nav Third Level */
.nav-side ul li ul li ul li a {font-weight:400;}
/* Sub Buttons */
.btn-sub {display:block; font-size:60px; position:absolute; right:0; top:0; width:100px; height:150px; cursor:pointer; z-index:1;}
.btn-sub:after {content:""; display:block; width:1em; height:1em; position:absolute; left:50%; top:50%; margin:-0.5em; background-size:10em auto; background-position:-5.33em -10.33em; transition:transform 0.2s; transition-timing-function:cubic-bezier(0.64, 0.57, 0.67, 1.25); transform:translate3d(0,0,0) rotate(90deg); backface-visibility:hidden;}
.sub.nav-open > .btn-sub:after {background-position-x:-3.66em; transform:translate3d(0,0,0) rotate(0deg);}
.nav-side ul li ul li .btn-sub {font-size:40px; height:60px;}
/* Nav Images */
.nav-images {position:absolute; z-index:0; left:0; right:0; top:0; bottom:0; margin:150px 620px 150px 150px;}
.nav-images:before {content:""; display:none; position:absolute; z-index:1; left:0; top:0; width:100%; height:100%; background:rgba(255,255,255,0.8);}
.nav-image {position:absolute; left:0; right:0; top:0; bottom:0; opacity:0; transition:opacity 0.8s 0.2s; background-size:cover; background-position:center;}
.nav-image.hover {opacity:1; transition:opacity 0.8s;}
.nav-image:first-child {opacity:1;}

/* -------- Body ------------ */
#body{display:flex; flex-direction:column; width:100%; padding:0; box-sizing:border-box; margin:0 auto; height:100%; min-height:100%; min-width:320px; position:relative; text-align:left;}
.body-cell {position:relative;}

/* -------- Content ------------ */
#content {flex:0 0 auto;}
#content .body-cell {box-sizing:border-box; padding:0;}

.content-full {position:relative; max-width:none;}
.content-1920 {position:relative; max-width:1920px; margin:0 auto;}
.content-large {position:relative; max-width:1720px; margin:0 auto;}
.content-medium {position:relative; max-width:1300px; margin:0 auto;}
.content-small {position:relative; max-width:960px; margin:0 auto;}

.content-padding {position:relative; margin:150px 0; padding:0 150px; box-sizing:border-box;}
.content-padding .content-padding {padding:0;}

.content-padding.padding-left-none {padding-left:0;}
.content-padding.padding-right-none {padding-right:0;}
.padding-left-extra-small {padding-left:50px;}
.padding-right-extra-small {padding-right:50px;}
.padding-left-small {padding-left:100px;}
.padding-right-small {padding-right:100px;}
.padding-left-large {padding-left:250px;}
.padding-right-large {padding-right:250px;}

.content-padding.margin-top-none {margin-top:0;}
.content-padding.margin-bottom-none {margin-bottom:0;}
.margin-top-extra-small {margin-top:50px;}
.margin-bottom-extra-small {margin-bottom:50px;}
.margin-top-small {margin-top:100px;}
.margin-bottom-small {margin-bottom:100px;}
.margin-top-large {margin-top:250px;}
.margin-bottom-large {margin-bottom:250px;}

.content-padding > header {margin-bottom:6%;}
.content-padding > header:last-child {margin-bottom:0;}

.block-type-shortcut .content-padding .content-padding {padding:0; margin:0;}
.content-padding:after {content:""; display:block; clear:both;}

.columns-wrap {position:relative; margin:0 auto;}
.columns{position:relative; display:table; table-layout:fixed; width:100%; max-width:1920px; box-sizing:border-box; margin:0 auto;}
.col {position:relative; display:table-cell; vertical-align:top;}
.columns-6040 .col:first-child {width:66%;}
.columns-4060 .col:first-child {width:34%;}

.col:first-child .content-padding {padding-right:50px;}
.col:last-child .content-padding {padding-left:50px;}
.col:first-child .content-padding.padding-right-none {padding-right:0;}
.col:last-child .content-padding.padding-left-none {padding-left:0;}
.col:first-child .content-padding.padding-right-large {padding-right:100px;}
.col:last-child .content-padding.padding-left-large {padding-left:100px;}

.columns-wrap:not(:first-child) .col > .block:first-child .content-padding {margin-top:0;}
.columns-wrap:not(:last-child) .col > .block:last-child .content-padding {margin-bottom:0;}

.clear {clear:both;}
.hidden {display:none;}
iframe, video {max-width:100%;}
img {max-width:100%; height:auto; vertical-align:bottom;}
h1 img {vertical-align:baseline;}
svg {max-width:100%; height:auto;}

.image {position:relative; overflow:hidden; display:block; margin:0;}
.image img {border-radius:var(--image-radius);}
.ce-gallery figcaption {display:block;}
.image-caption {display:block; font-size:17px; line-height:1.4; font-weight:400; padding:16px 0; text-align:left;}
.text-white .image-caption {color:#ffffff;}
.image-title {display:block; font-size:24px; line-height:1.4; font-weight:700;}
.image-slide .image-caption {position:absolute; left:0; right:0; bottom:0; text-align:left; padding:40px 20px 20px 20px; color:#ffffff; background:linear-gradient(transparent, rgba(0,0,0,0.5));}
.image-slide .image-title {font-weight:700;}
#baguetteBox-overlay .full-image figcaption {font-family:inherit;}
/* IE Fix Image Size in Flex Fix */
.image a {display:inline-block; max-width:100%; min-width:1px; min-height:1px;}
.ce-gallery figure {display:block;}
.ce-column {min-width:1px; min-height:1px;}

.block {clear:both;}

.bg-light {background:#ECEFF1; background:var(--section-light); padding:0.1px 0;}
.bg-dark, .bg-dark2 {background:#263238; background:var(--section-dark); padding:0.1px 0;}

.span-width {display:flex; align-items:center; justify-content:space-between; gap:20px;}

/* Video */
.ce-outer, .ce-inner, .ce-row, .ce-column {max-width:100%;}
.video-wrap {position:relative; width:1920px; max-width:100%; margin:0 auto;}
.video-inner {position:relative; max-width:1400px; margin:0 auto;}
.video {position:relative; height:0; padding-bottom:56.25%; margin:0; width:1920px; max-width:100%; overflow:hidden;}
.ce-gallery .video {display:block;}
.video iframe, .video video {position:absolute; left:0; right:0; width:100%; height:100%;}
.video div, .video figure {display:block; position:static !important; float:none !important; left:auto !important; right:auto !important;}
.video-poster {display:flex; align-items:center; overflow:hidden; font-size:60px; position:absolute; z-index:1; left:0; right:0; top:0; bottom:0; padding:4% 50% 4% 4%; background-color:#263238; background-size:cover; background-position:center; cursor:pointer; transition:opacity 0.3s;}
.video-poster.playing {opacity:0; pointer-events:none;}
.video-poster:before {content:""; display:block; position:absolute; left:0; right:0; top:0; bottom:0; background:var(--banner); opacity:0.2;}
.video-poster .video-title {position:relative; z-index:1; flex-basis:100%; line-height:1.2; font-weight:700; color:#ffffff; text-align:right; margin-right:1.66em;}

.video-play {display:block; font-size:2.5em; width:1em; height:1em; position:absolute; left:50%; top:50%; margin:-0.5em; border:1px solid #ffffff; border-radius:50%; transition:background 0.2s, border 0.2s;}
.video-play:after {content:""; display:block; font-size:60px; width:1em; height:1em; position:absolute; left:50%; top:50%; margin:-0.5em; background-size:10em auto; background-position:-8.66em -15.33em;}
.video-play:hover {background:#ffffff; border-color:#ffffff;}
.video-play:hover:after {background-position-y:-13.66em;}

.col .video-poster .video-title {font-size:0.6em;}
.col .video-play {font-size:1.5em;}
.col .video-play:after {font-size:0.66em;}

.video-vertical {max-width:440px;}
.video-vertical .video {padding-bottom:177.8%;}
.video-vertical .video-poster {padding:50% 16px 16px 16px; font-size:48px;}
.video-vertical .video-poster .video-title {margin:1.66em 0 0 0; text-align:center;}

/* Callout */
.callout .ce-bodytext-block {padding:50px; margin:16px 0; background:#ffffff; box-shadow:4px 4px 24px rgba(0,0,0,0.1);}

/* Scrollbar */
.scrollbar {-webkit-overflow-scrolling:touch; scrollbar-width:thin; scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);}
.scrollbar::-webkit-scrollbar {width:8px; height:8px;}
.scrollbar::-webkit-scrollbar-track {width:8px; height:8px; background:var(--scrollbar-track);}
.scrollbar::-webkit-scrollbar-thumb {background:var(--scrollbar-thumb);}

@supports selector(::-webkit-scrollbar) {
	.scrollbar {scrollbar-width:auto; scrollbar-color:auto;}
}

/* Scroll H */
.scroll-h .ce-bodytext-block {position:relative; overflow-x:auto; white-space:nowrap; -webkit-overflow-scrolling:touch; scrollbar-width:thin; scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);}
.scroll-h .ce-bodytext-block::-webkit-scrollbar {height:8px;}
.scroll-h .ce-bodytext-block::-webkit-scrollbar-track {height:8px; background:var(--scrollbar-track);}
.scroll-h .ce-bodytext-block::-webkit-scrollbar-thumb {background:var(--scrollbar-thumb);}
.scroll-h td,
.scroll-h th {white-space:normal; min-width:120px;}

/* -------- Textpic ------------ */
.ce-textpic {overflow:visible; font-size:0;}
.ce-textpic:after {content:""; display:block; clear:both;}

.ce-intext.ce-left.ce-nowrap.layout-top,
.ce-intext.ce-right.ce-nowrap.layout-top {align-items:start;}

.ce-gallery .ce-row {display:flex;}
.ce-gallery .ce-row .ce-column {flex:1 1 auto; float:none; margin:0;}
.ce-column {display:flex; justify-content:flex-start;}
.ce-center .ce-column {justify-content:center;}
.ce-right .ce-column {justify-content:flex-end;}

.auto-gallery {float:none;}
.auto-gallery .ce-outer {float:none; left:auto; right:auto;}
.auto-gallery .ce-inner {float:none; left:auto; right:auto;}
.auto-gallery .ce-row {flex-wrap:wrap; justify-content:space-around;}
.auto-gallery .ce-row .ce-column {display:inline-block; flex:1 1 16.66%; min-width:144px; box-sizing:border-box; text-align:center;}
.auto-gallery .image {display:inline-block;}

.layout-logo-gallery .ce-gallery {float:none;}
.layout-logo-gallery .ce-gallery .ce-outer {float:none; left:auto; right:auto;}
.layout-logo-gallery .ce-gallery .ce-inner {float:none; left:auto; right:auto;}
.layout-logo-gallery .ce-gallery .ce-row {flex-wrap:wrap; justify-content:space-around;}
.layout-logo-gallery .ce-gallery .ce-row .ce-column {display:flex; align-items:center; justify-content:center; flex:0 1 16.66%; box-sizing:border-box;}
.layout-logo-gallery .ce-gallery[data-ce-columns="8"] .ce-row .ce-column {flex:0 1 12.5%;}
.layout-logo-gallery .ce-gallery[data-ce-columns="7"] .ce-row .ce-column {flex:0 1 14.2%;}
.layout-logo-gallery .ce-gallery[data-ce-columns="5"] .ce-row .ce-column {flex:0 1 20%;}
.layout-logo-gallery .ce-gallery[data-ce-columns="4"] .ce-row .ce-column {flex:0 1 25%;}
.layout-logo-gallery .ce-gallery[data-ce-columns="3"] .ce-row .ce-column {flex:0 1 33.33%;}
.layout-logo-gallery .ce-gallery[data-ce-columns="2"] .ce-row .ce-column {flex:0 1 50%;}
	
.ce-border {margin:-10px;}
.ce-border .ce-column {padding:10px;}
.ce-border img {border:none;}

.ce-above .ce-gallery {margin-bottom:40px;}
.ce-below .ce-gallery {margin-top:40px;}
.block-type-image .ce-gallery {margin:0;}
.ce-gallery.lightbox {position:relative; z-index:1;}

.ce-intext.ce-left .ce-gallery {float:left; max-width:50%; padding:0 50px 0 0; margin:0 50px 20px 0; box-sizing:border-box;}
.ce-intext.ce-right .ce-gallery {float:right; max-width:50%; padding:0 0 0 50px; margin:0 0 20px 50px; box-sizing:border-box;}

.ce-textpic .ce-gallery .image {margin:0 auto;}

.ce-intext.ce-left.ce-nowrap,
.ce-intext.ce-right.ce-nowrap {position:relative; display:flex; align-items:center; justify-content:start; overflow:visible; margin:0;}
.ce-intext.ce-right.ce-nowrap {flex-direction:row-reverse;}
.ce-intext.ce-left.ce-nowrap .ce-gallery,
.ce-intext.ce-right.ce-nowrap .ce-gallery {display:inline-block; vertical-align:middle; position:relative; float:none; flex:0 0 52%; width:52%; min-width:0; max-width:52%; padding:0 0 0 100px; margin:0; box-sizing:border-box;}
.ce-intext.ce-left.ce-nowrap .ce-bodytext,
.ce-intext.ce-right.ce-nowrap .ce-bodytext {display:inline-block; vertical-align:middle; position:relative; float:none; width:48%; flex:0 0 48%; max-width:48%; padding:0 0 0 100px; margin:0; box-sizing:border-box; z-index:1; overflow:visible;}

.ce-intext.ce-right.ce-nowrap .ce-gallery {padding:0 100px 0 0;}
.ce-intext.ce-right.ce-nowrap .ce-bodytext {padding:0 100px 0 0;}

.ce-intext.ce-left.ce-nowrap .ce-gallery .image,
.ce-intext.ce-right.ce-nowrap .ce-gallery .image {display:flex; justify-content:center; flex-direction:column; align-items:center; overflow:hidden;}
.ce-intext.ce-left.ce-nowrap .ce-gallery .image img,
.ce-intext.ce-right.ce-nowrap .ce-gallery .image img {display:block; flex-shrink:0; min-width:100%; min-height:100%; width:auto; height:auto;}

/*  Image Sticky Top */
.ce-textpic.ce-intext.ce-left.ce-nowrap .ce-gallery.sticky,
.ce-textpic.ce-intext.ce-right.ce-nowrap .ce-gallery.sticky {position:sticky; top:100px; align-self:start;}

/*  Layout Text Card */
.layout-text-card.ce-intext.ce-left.ce-nowrap .ce-bodytext-block {background:#ffffff; padding:100px; margin-left:-200px;}
.layout-text-card.ce-intext.ce-right.ce-nowrap .ce-bodytext-block {background:#ffffff; padding:100px; margin-right:-200px;}

.layout-text-card-small.ce-intext.ce-left.ce-nowrap .ce-gallery,
.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-gallery {flex:0 0 75%; width:75%; max-width:75%;}
.layout-text-card-small.ce-intext.ce-left.ce-nowrap .ce-bodytext,
.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-bodytext {width:25%; flex:0 0 25%; max-width:25%; padding:0;}
.layout-text-card-small.ce-intext.ce-left.ce-nowrap .ce-bodytext-block {background:#ffffff; padding:50px; margin-left:-150px; position:relative; right:250px; box-shadow:16px 16px 26px rgba(0,0,0,0.1);}
.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-bodytext-block {background:#ffffff; padding:50px; margin-right:-150px; position:relative; left:250px; box-shadow:16px 16px 26px rgba(0,0,0,0.1);}

/*  Layout Image 60% */
.layout-image-60.ce-intext.ce-left .ce-gallery {max-width:63%;}
.layout-image-60.ce-intext.ce-right .ce-gallery {max-width:63%;}

.layout-image-60.ce-intext.ce-left.ce-nowrap .ce-gallery,
.layout-image-60.ce-intext.ce-right.ce-nowrap .ce-gallery {flex:0 0 63%; width:63%; max-width:63%;}
.layout-image-60.ce-intext.ce-left.ce-nowrap .ce-bodytext,
.layout-image-60.ce-intext.ce-right.ce-nowrap .ce-bodytext {width:37%; flex:0 0 37%; max-width:37%;}

/*  Layout Image 40% */
.layout-image-40.ce-intext.ce-left .ce-gallery {max-width:43%;}
.layout-image-40.ce-intext.ce-right .ce-gallery {max-width:43%;}

.layout-image-40.ce-intext.ce-left.ce-nowrap .ce-gallery,
.layout-image-40.ce-intext.ce-right.ce-nowrap .ce-gallery {flex:0 0 43%; width:43%; max-width:43%;}
.layout-image-40.ce-intext.ce-left.ce-nowrap .ce-bodytext,
.layout-image-40.ce-intext.ce-right.ce-nowrap .ce-bodytext {width:57%; flex:0 0 57%; max-width:57%;}

/* Layout Icon Hover */
.layout-icon-hover .ce-gallery .image {width:150px; height:auto; margin:20px; overflow:hidden; border-radius:50%; box-shadow:4px 4px 16px rgba(0,0,0,0); transition:box-shadow 0.3s;}
.layout-icon-hover .ce-gallery .image__wrap {height:0; padding-bottom:100%;}
.layout-icon-hover:hover .ce-gallery .image {box-shadow:4px 4px 16px rgba(0,0,0,0.1);}

/* Layout Image Icon */
.layout-image-icon {max-width:750px;}
.layout-image-icon .ce-row {overflow:visible;}
.layout-image-icon.ce-intext.ce-left.ce-nowrap .ce-gallery,
.layout-image-icon.ce-intext.ce-right.ce-nowrap .ce-gallery {flex:0 0 36.9%; width:36.9%; max-width:240px; padding:3%;}
.layout-image-icon.ce-intext.ce-left.ce-nowrap .ce-bodytext,
.layout-image-icon.ce-intext.ce-right.ce-nowrap .ce-bodytext {width:auto; flex:1 1 auto; max-width:510px; padding:0 0 0 3%;}
.layout-image-icon.ce-intext.ce-left.ce-nowrap .ce-gallery .image,
.layout-image-icon.ce-intext.ce-right.ce-nowrap .ce-gallery .image {display:block;}
.layout-image-icon .ce-gallery {max-width:240px; padding:3%; box-sizing:border-box;}
.layout-image-icon .ce-outer,
.layout-image-icon .ce-inner {width:100%; float:none; right:auto;}
.layout-image-icon .image {display:block; width:100%; height:0; padding-bottom:100%; overflow:hidden; border-radius:50%; box-shadow:4px 4px 16px rgba(0,0,0,0.1);}
.layout-image-icon .image__wrap {display:flex; align-items:center; justify-content:center; position:absolute; width:100%; height:100%;}
.layout-image-icon.ce-center .ce-gallery {margin-left:auto; margin-right:auto;}
.layout-image-icon.ce-right .ce-gallery {margin-left:auto; margin-right:0;}

/* Textpic Inside Expand */
.expand .ce-textpic.ce-intext.ce-left.ce-nowrap,
.expand .ce-textpic.ce-intext.ce-right.ce-nowrap {align-items:flex-start; margin:0; overflow:hidden;}
.expand .ce-textpic.ce-intext.ce-left.ce-nowrap .ce-gallery,
.expand .ce-textpic.ce-intext.ce-right.ce-nowrap .ce-gallery {position:relative; top:auto; align-self:start;}
.expand .ce-textpic.ce-intext.ce-left.ce-nowrap .ce-gallery .image,
.expand .ce-textpic.ce-intext.ce-right.ce-nowrap .ce-gallery .image {display:block; max-height:none;}
.expand .ce-textpic.ce-intext.ce-left.ce-nowrap .ce-gallery .image img,
.expand .ce-textpic.ce-intext.ce-right.ce-nowrap .ce-gallery .image img {min-height:0; max-width:100%;}
.expand .ce-intext.ce-left.ce-nowrap .ce-bodytext,
.expand .ce-intext.ce-right.ce-nowrap .ce-bodytext {display:block; width:auto;}

/* Text Scroll */
.block-layout-text-scroll .content-padding {display:flex; align-items:center;}
.block-layout-text-scroll header {flex:0 0 50%; align-self:flex-start; padding-right:8%; margin:0; box-sizing:border-box; text-align:right; position:relative; position:sticky; top:120px;}
.block-layout-text-scroll header * {max-width:560px; margin:16px 0 16px auto;}
.block-layout-text-scroll header:after {content:""; display:block; width:16px; border-radius:8px; height:60%; position:absolute; right:-8px; top:20%; background:var(--section-light);}
.block-layout-text-scroll .ce-textpic {flex:0 0 50%; padding-left:8%; box-sizing:border-box;}

/* -------- Buttons ------------ */
button, input[type="submit"] {-webkit-appearance:none; -moz-appearance:none; appearance:none; border:none; font-family:inherit; font-size:100%; line-height:inherit; text-transform:none; padding:0; margin:0; background:none; cursor:pointer;}
:focus {outline:none;}
.using-tab :focus {outline:none; box-shadow:inset 0 0 0 2px var(--primary);}

.button-grid {display:flex; flex-wrap:wrap;}
.button-grid > * {flex:1 0 50%;}

/* Basic Buttons */
.btn__primary, .btn__secondary, .btn__tertiary, button[type="submit"] {cursor:pointer; position:relative; z-index:1; overflow:hidden; display:inline-block; vertical-align:middle; width:auto; box-sizing:border-box; background-color:#CFD8DC; background-color:var(--primary); color:#263238; color:var(--primary-text); font-family:'Poppins', sans-serif; font-family:var(--body-font), sans-serif; font-size:17px; font-weight:600; line-height:1.4em; text-align:center; text-decoration:none; min-width:200px; padding:1em 2em; margin:8px 5px; border:1px solid transparent; border-radius:1.76em; border-radius:var(--btn-radius); transition:color 0.3s;}
.btn__primary:hover, button[type="submit"]:hover {color:#263238; color:var(--text-color); text-decoration:none;}
.btn__primary:before, .btn__secondary:before, .btn__tertiary:before, button[type="submit"]:before {content:""; display:block; width:100%; height:0; position:absolute; z-index:-1; left:0; bottom:0; background:#ffffff; transition:height 0.1s;}
.btn__primary:hover:before, .btn__secondary:hover:before, .btn__tertiary:hover:before, button[type="submit"]:hover:before {height:100%;}

.text-white .btn__primary, .text-white button[type="submit"] {color:var(--primary-text);}
.text-white .btn__primary:hover, .text-white button[type="submit"]:hover {color:var(--text-color);}

.btn-primary-white .btn__primary, .btn-primary-white button[type="submit"] {color:#ffffff;}
.btn-primary-white .btn__primary:hover, .btn-primary-white button[type="submit"]:hover {color:var(--primary);}

.btn__secondary {background:#ECEFF1; background-color:var(--secondary); color:var(--secondary-text);}
.btn__secondary:hover {color:#263238; color:var(--text-color); text-decoration:none;}

.text-white .btn__secondary {color:var(--secondary-text);}
.text-white .btn__secondary:hover {color:var(--text-color);}

.btn-secondary-white .btn__secondary {color:#ffffff;}
.btn-secondary-white .btn__secondary:hover {color:var(--secondary);}

.btn__tertiary {background:none; color:#263238; color:var(--text-color); border-color:#263238; border-color:var(--text-color);}
.btn__tertiary:hover {text-decoration:none; color:#ffffff;}
.btn__tertiary:before {background:#263238; background:var(--text-color);}

.text-white .btn__tertiary {color:#ffffff; border-color:#ffffff;}
.text-white .btn__tertiary:hover {color:var(--text-color);}
.text-white .btn__tertiary:before {background:#ffffff; background:#ffffff;}

button[type="submit"] {margin:0;}
button[type="submit"].submit-loading {color:transparent !important; cursor:wait;}
button[type="submit"].submit-loading:before {height:100%;}
.submit-loading:after {
	content:"";	color:#263238; color:var(--text-color); display:block; width:60px; height:16px; position:absolute; left:50%; top:50%; margin:-8px -30px; background-size:16px; background-repeat:no-repeat; animation:loadingdots 0.5s linear infinite;
	background-image: radial-gradient(circle, currentColor 40%, transparent 50%), radial-gradient(circle, currentColor 40%, transparent 50%), radial-gradient(circle, currentColor 40%, transparent 50%), radial-gradient(circle, currentColor 40%, transparent 50%);
}

@keyframes loadingdots {
	0% {background-position:8px center, 0 center, 20px center, 40px center; background-size:0px 0px, 16px 16px, 16px 16px, 16px 16px;}
	100% {background-position:0 center, 20px center, 40px center, 48px center; background-size:16px 16px, 16px 16px, 16px 16px, 0px 0px;}
}


/* Arrow Buttons */
.btn__arrow {display:inline-block; vertical-align:middle; font-size:0; color:transparent; transition:background 0.3s;}
.btn__arrow-text {display:inline-block; vertical-align:middle; position:relative; padding:17px 80px 17px 0; font-size:18px; font-weight:600; line-height:26px; color:#263238; color:var(--text-color);}
.btn__arrow:after, .btn__arrow-text:after {content:""; display:block; font-size:60px; width:1.16em; height:1em; background-size:10em auto; background-position:-1.92em -3.66em; transform:translateX(0%); transition:transform 0.3s;}
.btn__arrow-text:after {position:absolute; right:0; bottom:0;}
.btn__arrow:hover, .btn__arrow-text:hover {text-decoration:none;}
.btn__arrow:hover:after, .btn__arrow-text:hover:after {transform:translateX(10%);}
.text-white .btn__arrow-text {color:#ffffff;}
.text-white .btn__arrow:after, .text-white .btn__arrow-text:after {background-position-y:-5.33em;}

/* Icon Buttons */
.btn__icon {position:relative; z-index:1; display:inline-block; box-sizing:border-box; padding:14px 24px 14px 70px; margin:0; text-align:left; font-family:'Poppins', sans-serif; font-family:var(--body-font), sans-serif; font-size:24px; font-weight:600; line-height:32px; color:#263238; color:var(--text-color); transition:background 0.3s;}
.btn__icon:after {content:""; display:block; font-size:60px; width:1em; height:1em; position:absolute; left:10px; top:0; margin:0; background-position:-7em -0.33em; background-size:10em auto; transition:background-position 0s 0.1s;}
.btn__icon:hover {text-decoration:none; background-color:var(--icon-hover);}

.btn-contact:after {background-position:-7em -0.33em;}
.btn-login:after {background-position:-8.66em -0.33em;}
.btn-phone:after {background-position:-5.33em -0.33em;}
.btn-location:after {background-position:-7em -10.33em;}

.hover-white .btn__icon:hover:before {background:#ffffff;}
.text-white .btn__icon {color:#ffffff;}
.text-white .btn__icon:after {background-position-y:-2em;}
.text-white .btn-location:after {background-position-y:-12em;}
.text-white .btn__icon:hover {background:var(--icon-ontop-hover);}

.align-right .btn__icon {padding-left:1em; padding-right:4em; margin:0; text-align:right;}
.align-right .btn__icon:after {left:auto; right:0;}
.btn__icon .small {display:block; font-size:18px; font-weight:400;}

/* Social Buttons */
.btn__social {display:inline-block; vertical-align:middle; font-size:0; margin:10px; position:relative; white-space:nowrap; text-indent:-9999px; color:transparent; user-select:none;}
.btn__social:before {content:""; display:block; font-size:70px; width:1em; height:1em;  border-radius:50%; position:absolute; left:50%; top:50%; bottom:0; margin:-35px; background-color:transparent; transition:transform 0.2s, background 0.2s; transform:translate3d(0,0,0); backface-visibility:hidden; transition-timing-function:cubic-bezier(0.64, 0.57, 0.67, 1.53), ease;}
.btn__social:after {content:""; display:block; font-size:60px; width:1em; height:1em; border-radius:50%; position:relative; z-index:1; background-size:10em auto; background-position:-0.33em -7em;}
.btn__social:hover {text-decoration:none;}
.btn__social:hover:before {background-color:var(--icon-hover); transform:scale(1.14);}
.hover-white .btn__social:hover:before {background:#ffffff;}

.icon-facebook:after {background-position:-0.33em -7em;}
.icon-instagram:after {background-position:-2em -7em;}
.icon-twitter:after {background-position:-3.66em -7em;}
.icon-linkedin:after {background-position:-5.33em -7em;}
.icon-youtube:after {background-position:-7em -7em;}
.icon-vimeo:after {background-position:-8.66em -7em;}

.text-white .btn__social:after {background-position-y:-8.66em;}
.text-white .btn__social:hover:before {background:var(--icon-ontop-hover);}

/* Slider Buttons */
.splide__arrows {text-align:center; margin:20px 0 0 0; font-size:0;}
.splide__arrow svg {display:none;}
.splide__arrow {position:relative; display:inline-block; vertical-align:top; font-size:60px; width:1em; height:1em;  border-radius:0.5em; padding:0; margin:0 16px; cursor:pointer;}
.splide__arrow:after {content:""; display:block; width:1em; height:1em; position:absolute; left:50%; top:50%; margin:-0.5em; background-position:-0.33em -13.66em; background-size:10em auto;}
.splide__arrow--next:after {background-position:-2em -13.66em;}
.splide__arrow:disabled {opacity:0.3;}
.text-white .splide__arrow:after {background-position-y:-15.33em;}

.splide__pagination {position:absolute; z-index:10; left:0; bottom:0; width:100%; text-align:center; padding:0; margin:16px 0;}
.splide__pagination li {display:inline-block; vertical-align:top; padding:0; margin:0;}
.splide__pagination li:before {display:none;}
.splide__pagination__page {display:block; width:16px; height:16px; border-radius:50%; background:#ffffff; margin:10px; opacity:0.6;}
.splide__pagination__page.is-active {opacity:1;}

/* Lightbox Buttons */
.baguetteBox-button {background:rgba(255,255,255,0.6);}
.baguetteBox-button:focus, .baguetteBox-button:hover {background:rgba(255,255,255,0.5);}
.baguetteBox-button g, .baguetteBox-button polyline {stroke-width:1.6; stroke:#212121;}
.baguetteBox-button#close-button {width:60px; height:60px; border-radius:50%;}
.baguetteBox-button#close-button svg {margin:15px;}
.baguetteBox-button#previous-button, .baguetteBox-button#next-button {width:60px; border-radius:50%;}
.baguetteBox-button#previous-button svg, .baguetteBox-button#next-button svg {margin:7px 13px; transform-origin:0 0; transform:scale(0.77);}
.lightbox a {cursor:zoom-in;}
.lightbox a:after {content:""; display:block; font-size:60px; width:1em; height:1em; position:absolute; top:0; right:0; background-color:rgba(0,0,0,0.05); background-size:10em auto; background-position:-7em -15.33em;}
#baguetteBox-overlay .full-image img[src*=".svg"] {background:#ffffff;}

/* Cursor */
#cursor {position:fixed; top:-500px; width:150px; height:150px; margin:-75px; background:#CFD8DC; background:var(--primary); opacity:0; border-radius:50%; z-index:10; transform:scale(0.05); transition:background 0.3s, transform 0.3s cubic-bezier(0.75, 0.885, 0.32, 1.275), opacity 0.2s; user-select:none; pointer-events:none;}
#cursor:after {content:""; display:none; font-size:100px; width:1em; height:1em; position:absolute; top:50%; left:50%; margin:-0.5em; z-index:1; background-size:6em auto; background-position:0 -2em; transition:transform 0.3s;}
#cursor.active {opacity:1; transform:scale(1);}

#cursor.cursor-prev:after, #cursor.cursor-next:after {display:block; background-position:0 -2em;}
#cursor.cursor-next:after {transform:rotate(180deg);}
#cursor.cursor-prev.cursor-white, #cursor.cursor-next.cursor-white {background:none; border:1px solid #ffffff;}
#cursor.cursor-prev.cursor-white:after, #cursor.cursor-next.cursor-white:after,
.btn-primary-white #cursor.cursor-prev:after, .btn-primary-white #cursor.cursor-next:after {background-position-y:-3em;}

#cursor.cursor-more:before {content:"View More"; display:inline-block; vertical-align:middle; max-width:100%; box-sizing:border-box; padding:26% 14%; font-size:20px; line-height:1.2; font-weight:700; text-align:center; color:var(--primary-text);}
#cursor.cursor-more:after {display:inline-block; vertical-align:middle; width:0; height:100%; position:relative; top:auto; left:auto; margin:0;}

/* Circle Buttons */
.btn__circle {position:relative; display:inline-block; vertical-align:middle; border-radius:50%; width:180px; height:180px; font-size:0; margin:5px; color:transparent; user-select:none;}
.btn__circle:before {content:""; display:block; font-size:180px; width:1em; height:1em; position:absolute; left:0; top:0; background-repeat:no-repeat; background-position:center; background-size:cover; animation:turn linear 6s infinite paused;}
.btn__circle:hover:before {animation-play-state:running;}
.btn__circle:after {content:""; font-size:100px; width:1em; height:1em; position:absolute; left:50%; top:50%; margin:-0.5em; background-position:-4em -2em; background-size:6em auto;}
.btn__circle:hover {text-decoration:none;}

.btn-video:before {background-image:url(../images/btn-video.svg);}
.btn-video:hover:after {animation:blink steps(1) 2s infinite;}
.text-white .btn-video:before {background-image:url(../images/btn-video_white.svg);}
.text-white .btn-video:after {background-position-y:-3em;}

.btn-arrow {width:150px; height:150px;}
.btn-arrow:before {width:100%; height:100%; background:none; animation:none; border:1px solid var(--text-color); border-radius:100%; transition:transform 0.3s;}
.btn-arrow:after {background-position:-1em -2em;}
.text-white .btn-arrow:before {border-color:#ffffff;}
.text-white .btn-arrow:after {background-position-y:-3em;}
.btn-arrow:hover:before {transform:scale(1.08);}

.btn-text {display:inline-flex; align-items:center; justify-content:center; width:150px; height:150px; font-family:var(--body-font), sans-serif; font-size:1rem; font-weight:600; line-height:1.4em; color:var(--text-color); background:none; padding:1.5em 0.5em; box-sizing:border-box; text-align:center;}
.btn-text:before {background:none; animation:none; width:100%; height:100%; border:1px solid currentColor; border-radius:50%; transition:transform 0.3s;}
.btn-text:after {display:none;}
.btn-text:hover {text-decoration:none;}
.btn-text:hover:before {transform:scale(1.08);}
.text-white .btn__circle.btn-text {color:#ffffff;}

@keyframes turn {
	from {transform:rotate(360deg);}
	to {transform:rotate(0deg);}
}

@keyframes blink {
	6%, 100% {background-position-x:80%;}
	0% {background-position-x:100%;}
}

/* -------- Banner ------------ */
.banner__wrap {position:relative; z-index:1; padding:0; margin:0;}
.banner__wrap .splide__list {will-change:auto;}

.banner {position:relative; z-index:1; box-sizing:border-box;}
.banner__slider .banner {display:none;}
.banner__slider .banner:first-child, .banner-slider.splide.is-active .banner {display:block;}
.banner .content-padding {position:static; margin:0 auto; max-width:1920px;}

.banner__video {position:absolute; z-index:1; left:0; top:50%; width:100%; height:0; box-sizing:border-box; padding-bottom:56.25%; margin-top:-28.125%; opacity:0; transition:opacity 0.5s;}
.banner__video.banner-play {opacity:1;}
.banner__video video, .banner__video iframe {display:block; padding:0; margin:0; position:absolute; left:0; top:0; width:100%; height:100%; object-fit:cover;}

.banner__image {position:absolute; z-index:0; overflow:hidden; left:0; top:0; width:100%; height:100%; background-position:center; background-size:cover; background-repeat:no-repeat;}
.banner__image:before {content:""; display:block; position:absolute; z-index:2; left:0; right:0; top:0; bottom:0; opacity:0; background:linear-gradient(#424143, transparent 48%); background:linear-gradient(var(--banner), transparent 48%); mix-blend-mode:multiply;}
.banner__image:after {content:""; display:block; position:absolute; z-index:2; left:0; right:0; top:0; bottom:0; opacity:0; background:linear-gradient(transparent 52%, #424143); background:linear-gradient(transparent 52%, var(--banner)); mix-blend-mode:multiply;}
.banner__shade {position:absolute; z-index:2; left:0; right:0; top:0; bottom:0; background:#424143; background:var(--banner); opacity:0;}
.shade-top-light:before, .shade-bottom-light:after {opacity:0.4;}
.shade-top-medium:before, .shade-bottom-medium:after {opacity:0.6;}
.shade-top-dark:before, .shade-bottom-dark:after {opacity:0.8;}
.shade-light .banner__shade {opacity:0.2;}
.shade-medium .banner__shade {opacity:0.4;}
.shade-dark .banner__shade {opacity:0.6;}

.banner__text {display:block; max-width:1920px; flex-grow:1; position:relative; z-index:2; padding:10% 0 16% 0; box-sizing:border-box; margin:0 auto;}
.margin-top-large > div > .banner__text {padding-top:15%;}
.margin-bottom-large > div > .banner__text {padding-bottom:20%;}
.margin-top-small > div > .banner__text {padding-top:5%;}
.margin-bottom-small > div > .banner__text {padding-bottom:5%;}
.margin-top-extra-small > div > .banner__text {padding-top:3%;}
.margin-bottom-extra-small > div > .banner__text {padding-bottom:3%;}
.margin-top-none > div > .banner__text {padding-top:0;}
.margin-bottom-none > div > .banner__text {padding-bottom:0;}

.header-ontop .banner__wrap .banner__text {border-top:150px solid transparent;}
.header-narrow.header-ontop .banner__wrap .banner__text {border-top-width:100px;}

.banner.banner-inset .banner__content,
.content-padding .banner  .banner__content {position:relative; overflow:hidden; padding:0 9%;}

.banner__text-image {display:flex; align-items:center; gap:40px;}
.banner__text-block,
.banner__text-image {flex:1 1 auto;}

.banner-columns .banner__content {display:table; table-layout:fixed; width:100%; max-width:1920px; margin:0 auto;}
.banner-columns .banner__image {display:table-cell; width:auto; height:auto; box-sizing:border-box; position:relative; z-index:0;}
.banner-columns .banner__image:before {display:none;}
.banner-columns .banner__text {display:table-cell; vertical-align:middle; text-align:left; padding:4% 50px 4% 0; box-sizing:border-box;}
.banner-columns .margin-top-large .banner__text {padding-top:8%;}
.banner-columns .margin-bottom-large .banner__text {padding-bottom:8%;}
.banner-columns .margin-top-small .banner__text {padding-top:2%;}
.banner-columns .margin-bottom-small .banner__text {padding-bottom:2%;}
.banner-columns .margin-top-none .banner__text {padding-top:0;}
.banner-columns .margin-bottom-none .banner__text {padding-bottom:0;}

.group-slider .banner .content-1920,
.group-slider .banner .content-full {height:100%; display:flex; align-items:center;}
.group-slider .banner .content-padding {flex:0 0 100%;}
.group-slider .banner.splide__slide .banner__content {position:static;}
.group-slider .banner.banner-inset.splide__slide .banner__content {position:relative; overflow:hidden;}

/* -------- Image Slider ------------ */
.image-slider-wrap {position:relative; font-size:100px;}
.image-slide {display:none; flex:0 0 auto; position:relative; text-align:center; height:auto; align-items:center; justify-content:center;}
.image-slide:first-child, .splide.is-active .image-slide {display:block; display:flex;}
.image-slide .image {display:block; overflow:hidden;}
.image-slide img {display:block; margin:0 auto;}

.cursor-arrows .image-slider .splide__arrows {position:absolute; left:0; right:0; top:0; bottom:0; margin:0;}
.cursor-arrows .image-slider .splide__arrow {position:absolute; left:0; top:0; width:50%; height:100%; margin:0; border-radius:0; opacity:0;}
.cursor-arrows .image-slider .splide__arrow--next {left:auto; right:0;}
.cursor-arrows .image-slider .splide__arrow:before {display:none;}
.cursor-arrows .image-slider .splide__arrow:after {display:none;}
.cursor-arrows .image-slider .splide__arrow:hover {cursor:none;}

/* -------- Card Menu ------------ */
.card-menu-wrap {position:relative; overflow:hidden;}
.card-menu {display:flex; flex-wrap:wrap; position:relative; font-size:0; margin:0 -30px;}
.card-menu-card {position:relative; display:inline-block; vertical-align:middle; width:33.33%; flex:0 0 33.33%; max-width:33.33%; padding:30px; margin:0; box-sizing:border-box; font-size:36px; line-height:1.2; font-weight:700; text-align:center;}
.card-menu-card a {position:relative; z-index:1; overflow:hidden; display:block; display:flex; flex-direction:column; justify-content:center; padding:2.4em 0.55em; border-radius:var(--image-radius); min-height:100%; box-sizing:border-box; color:var(--text-color); background:#ffffff; border:1px solid #263238; border-color:var(--text-color); transition:all 0.3s;}
.card-menu-card span {position:relative;}
.card-subtitle {display:block; font-size:0.66em; font-weight:400;}
.card-menu-card a:hover  {text-decoration:none; background:var(--icon-hover);}
.text-white .card-menu-card a {border-color:#ffffff; background:none; color:#ffffff;}

/* Card Menu Slider */
.card-menu-slider .card-menu {display:block;}
.card-menu-card.splide__slide {display:block; width:auto; max-width:none; flex:none;}

/* -------- Image Menu ------------ */
.image-menu__wrap {overflow:hidden;}
.image-menu {display:flex; flex-wrap:wrap; font-size:0; margin:0 -50px;}
.image-menu__item {position:relative; display:inline-block; vertical-align:top; width:50%; flex:0 0 50%; max-width:50%; padding:50px; box-sizing:border-box;}
.image-menu__card {display:block; display:flex; position:relative; padding:33.8% 0 0 0; margin:0 auto; min-height:100%; box-sizing:border-box; color:#ffffff; overflow:hidden; border-radius:var(--image-radius);}
.image-menu__card:hover {text-decoration:none;}
.image-menu__image {position:absolute; left:0; top:0; width:100%; height:100%; background-position:center; background-size:cover; background-color:var(--section-light); transform:scale(1); transition:transform 0.3s;}
.image-menu__card:hover .image-menu__image {transform:scale(1.05);}
.image-menu__text {display:flex; flex-direction:column; position:relative; z-index:1; width:315px; max-width:100%; padding:30px 30px 0 30px; box-sizing:border-box; margin:0 0 0 auto; border-radius:var(--image-radius); overflow:hidden;}
.image-menu__text:before {content:""; display:block; position:absolute; z-index:-1; left:0; top:0; width:100%; height:100%; background:#263238; background:var(--text-color); opacity:0.9;}
.image-menu__text p {margin-top:0;}
.image-menu__title {order:1; font-size:24px; line-height:1.3; font-weight:700;}
.image-menu__subtitle {order:0;}
.image-menu__btn {order:2; padding:10px 30px; margin:auto -30px 0 -30px; transition:background 0.2s;}
.image-menu__btn:after {content:""; display:block; font-size:60px; width:1.16em; height:1em; background-size:10em auto; background-position:-1.92em -5.33em;}
.image-menu__card:hover .image-menu__btn {background:#ffffff;}
.image-menu__card:hover .image-menu__btn:after {background-position-y:-3.66em;}

.image-menu__slider .image-menu {display:block;}
.image-menu__slider .image-menu__item {display:block; width:auto; max-width:none; flex:none;}

.image-menu-3up .image-menu {display:flex; margin:0 -16px; max-width:none;}
.image-menu-3up .image-menu__item {padding:16px; width:33.33%; flex:0 0 33.33%; max-width:33.33%;}
.image-menu-3up.image-menu__slider .image-menu {display:block;}
.image-menu-3up.image-menu__slider .image-menu__item {display:block; width:auto; max-width:none; flex:none;}

/* -------- Grid ------------ */
.grid {display:block; display:flex; flex-wrap:wrap; position:relative; margin:0 -30px;}
.grid .block {display:inline-block; vertical-align:top; width:33.3333%; flex:0 0 33.3333%; max-width:33.3333%; position:relative; box-sizing:border-box; padding:30px; margin:0;}
.grid.grid.grid .content-padding {padding:0; margin:0 auto;}

.grid.grid-uneven .block {width:auto; max-width:none; flex:1 1 auto;}

.grid.grid-440 {justify-content:center;}
.grid.grid-440 .block {max-width:440px;}

/* Group Sliders */
.group-slider .content-padding {margin:0 auto; overflow:hidden;}

.group-slider.group-0 > div,
.group-slider.group-1up > div {display:none;}
.group-slider.group-0 > div:first-child,
.group-slider.group-0.splide > div,
.group-slider.group-1up > div:first-child,
.group-slider.group-1up.splide > div {display:block;}

.group-slider.group-0 > div.splide__arrows {display:none;}
.group-slider.group-0 .splide__list {transform:none !important;}
.group-slider.group-0 .splide__slide {margin-left:-100%; opacity:0; transition:opacity 0.5s;}
.group-slider.group-0 .splide__slide:first-child {margin-left:0;}
.group-slider.group-0 .splide__slide.is-active {opacity:1; z-index:10;}

.group-slider.group-2up,
.group-slider.group-3up {margin:0 -16px;}
.group-slider.group-2up .splide__slide,
.group-slider.group-3up .splide__slide {padding:16px;}

/* Group Tabs */
.group-tabs__header {display:none;}
.group-tabs {position:relative; padding-left:230px;}
.group-tabs header {display:none;}
.group-tabs > .block {height:0; overflow:hidden;}
.group-tabs > .block.active {height:auto;}
.group-tabs .content-padding {margin:0;}
.group-tabs .group-tabs__btns {display:block; position:absolute; left:0; top:0; margin-top:16px; width:180px; max-height:100%; text-align:right;}
.group-tabs__btns * {font-size:24px; font-weight:700;}
.group-tabs__btns p {font-weight:700;}
.group-tabs__btns a {display:block; padding:5px 20px; cursor:pointer; color:var(--text-color); font-size:18px; font-weight:600; transition:all 0.3s;}
.text-white .group-tabs__btns a {color:#ffffff;}
.group-tabs__btns a:hover {background:var(--icon-hover); color:var(--primary-text); text-decoration:none;}
.group-tabs__btns a.active {background:var(--primary); color:var(--primary-text);}
.text-white .group-tabs__btns a:hover {background:rgba(255,255,255,0.1); color:#ffffff;}

/* -------- Profile ------------ */
.block-type-profile .content-1920,
.block-type-profile .content-padding,
.profile {height:100%;}
.profile__card {position:relative; max-width:500px; min-height:100%; box-sizing:border-box; padding:90px 50px 50px 50px; margin:0 auto; border-radius:30px; text-align:center; transition:box-shadow 0.3s;}
.profile__card:hover {cursor:pointer; box-shadow:4px 4px 16px rgba(0,0,0,0.1);}
.profile__image {position:relative; max-width:280px; border-radius:50%; margin:30px auto; overflow:hidden; background-color:var(--section-light);}
.profile__name {font-size:24px; font-weight:700; margin:6px 0;}
.profile__position {font-size:24px; margin:8px 0; margin:6px 0;}
.profile__department {position:absolute; left:0; top:0; padding:0.4em 0.83em 0.4em 0.66em; margin:0 16px 0 0;  box-sizing:border-box; background:#CFD8DC; background:var(--primary); border-radius:0 30px 30px 0; font-size:24px; font-weight:700; color:#ffffff;}
.profile__teaser p {margin:6px 0;}

.overlay-profile .modal-box {max-width:1020px;}
.profile__columns {display:table; table-layout:fixed; width:100%;}
.profile__left {display:table-cell; vertical-align:top; width:50%; padding:0 50px 0 0; text-align:center;}
.profile__right {display:table-cell; vertical-align:middle; width:50%; padding:0 50px;}
.profile__split {display:none;}

/* -------- Tabs ------------ */
.tabs {position:relative; z-index:1; display:flex; flex-wrap:wrap; border:1px solid #CFD8DC; border-color:var(--lines); border-width:1px 0; overflow:hidden;}
.tabs-content {position:relative; overflow:hidden; padding:50px; border-bottom:1px solid #CFD8DC; border-color:var(--lines);}

.tab {position:relative; flex-grow:1; text-align:center;}
.tab:before {content:""; display:block; border-left:1px solid #CFD8DC; border-color:var(--lines); position:absolute; left:-1px; top:0; bottom:0;}
.tab {position:relative; cursor:pointer; padding:28px; margin:0; font-size:36px; line-height:1.2; font-weight:700; color:var(--text-color); text-align:center; transition:background 0.3s;}
.tab:hover {background:var(--icon-hover);}
.tab.active {background:#CFD8DC; background:var(--primary); color:var(--primary-text);}

.block-tab-content {position:relative; height:0; overflow:hidden;}
.block-tab.active .block-tab-content {height:auto;}
.block-tab .content-padding {margin:0;}
.block-tab header {display:none;}

.block-tab-header {position:relative; display:none; cursor:pointer; border:1px solid #CECECE; border-width:1px 0; border-color:var(--lines);}
.block-tab-header p {font-size:17px; line-height:24px; font-weight:700; color:var(--text-color); padding:18px 40px 18px 16px; margin:0;}
.block-tab-header:after {content:""; display:block; position:absolute; z-index:1; right:0; top:50%; font-size:40px; width:1em; height:1em; border-radius:50%; margin:-0.5em 0; background-size:10em auto; background-position:-5.33em -13.64em; transition:transform 0.2s, background-color 0.2s; transition-timing-function:cubic-bezier(0.64, 0.57, 0.67, 1.53), ease;}
.block-tab.active .block-tab-header:after {background-position:-0.33em -10.33em;}

/* -------- Expand ------------ */
.expand > .content-1920 > .content-padding {margin:0 0 50px 0;}
.expand-header {position:relative;}
.expand-header p {position:relative; padding:28px 100px 28px 50px; margin:0; cursor:pointer; border:1px solid #CFD8DC; border-width:1px 0; border-color:var(--lines); font-family:var(--body-font), sans-serif; font-size:36px; line-height:1.2; font-weight:700; color:var(--text-color);}
.expand-header:after {content:""; cursor:pointer; display:block; position:absolute; z-index:1; right:0; top:50%; font-size:60px; width:1em; height:1em; border-radius:50%; margin:-0.5em 30px; background-size:10em auto; background-position:-5.33em -13.64em; transition:transform 0.2s, background-color 0.2s; transition-timing-function:cubic-bezier(0.64, 0.57, 0.67, 1.53), ease;}
.expand-open .expand-header:after {background-position:-0.33em -10.33em;}
.expand-content {height:0; padding:0; overflow:hidden; position:relative; transition:height 0.5s, padding 0.5s;}
.expand-content:after {content:""; display:block; margin-top:30px; border-bottom:1px solid #CECECE; border-color:var(--lines);}
.expand-open .expand-content {padding:50px 0;}
.expand-content .content-padding {margin:0;}

/* -------- Browse Menu ------------ */
.browse-menu {position:relative; font-size:0;}
.browse-menu a {position:relative; display:inline-block; vertical-align:middle; width:49%; box-sizing:border-box; font-size:150px; padding:0.39em 1.2em 0.39em 0; margin:0 1% 0 0; color:var(--text-color); text-align:right;}
.browse-menu a span {display:block; font-size:24px; line-height:1.33; font-weight:700;}
.browse-menu a.browse-next {text-align:left; padding-left:1.2em; padding-right:0; margin:0 0 0 1%;}
.browse-menu a:before {content:""; display:block; width:1em; height:1em; position:absolute; right:0; top:50%; margin:-0.5em 0; background:#CFD8DC; background:var(--primary); border-radius:50%; transition:transform 0.2s;}
.browse-menu a:after {content:""; display:block; width:0.66em; height:0.66em; position:absolute; right:0; top:50%; margin:-0.33em 0.165em; background-size:600% auto; background-position:0 -1.32em;}
.browse-menu a.browse-next:before {left:0; right:auto;}
.browse-menu a.browse-next:after {left:0; right:auto; background-position-x:-0.66em;}
.browse-menu a:hover {text-decoration:none;}
.browse-menu a:hover:before {transform:scale(1.05);}

.btn-primary-white .browse-menu a:after {background-position-y:-1.98em;}

/* -------- News ------------ */
/* News List */
.news {overflow:hidden;}
.news.news-single {overflow:visible;}
.tx-indexedsearch-info-noresult {font-size:17px;}
.no-margin-top .news-list-view {margin-top:60px;}
.news-list-view {font-size:0; margin:0 -16px; display:flex; flex-wrap:wrap;}
.news-list-view .article {position:relative; display:inline-block; vertical-align:top; flex:0 0 33.33%; width:33.33%; max-width:33.33%; height:auto; padding:16px; margin:0; box-sizing:border-box;}
.news .news-list-view .article:last-child {padding:16px; margin:0;}
.news-card {display:flex; flex-direction:column; position:relative; overflow:hidden; margin:0 auto; box-sizing:border-box; height:100%;}
.news-image {display:block; position:relative; padding-bottom:46%; overflow:hidden; border-radius:var(--image-radius);}
.news-image div {position:absolute; left:0; top:0; width:100%; height:100%; background-size:cover; background-position:center; background-color:var(--section-light); transform:scale(1); transition:transform 0.3s;}
.news-image:hover div {transform:scale(1.05);}
.news-text {text-align:left; text-wrap:balance;}
.news-title {font-size:36px; line-height:1.3; font-weight:700;}
.news-title a {color:var(--text-color);}
.text-white .news-title a {color:#ffffff;}
.news-title a:hover {text-decoration:none;}
.news-more {display:none; text-align:right; margin:auto 0 0 0;}
.news-more a {display:inline-block; vertical-align:middle; position:relative; padding:17px 80px 17px 0; font-size:18px; font-weight:600; line-height:26px; color:#263238; color:var(--text-color);}
.news-more a:after {content:""; display:block; font-size:60px; width:1.16em; height:1em; position:absolute; right:0; bottom:0; background-size:10em auto; background-position:-1.92em -3.66em; transform:translateX(0%); transition:transform 0.3s;}
.news-more a:hover {text-decoration:none;}
.news-more a:hover:after {transform:translateX(10%);}
/* Event */
.event-date {opacity:0.5; margin:0;}
.event-location {font-weight:700; margin:0; opacity:0.75;}
/* News 2 Up */
.news-2 .news-list-view .article {flex-basis:50%; width:50%; max-width:50%;}
/* News Slider */
.news-slider-wrap .news-list-view {display:block;}
.article.splide__slide {display:block; flex:none; width:auto; max-width:none; box-sizing:border-box;}
/* News Filters */
.news-category-view {display:table; margin:0 0 0 auto;}
/* News Detail */
.news-single .article .news-img-wrap {float:none; width:auto; margin:0; background:none;}
.news-single .article .news-img-wrap-slides {align-items:center;}
.news-single .article .news-img-wrap .mediaelement-image {display:block; position:relative; width:auto; height:auto;}
.news .article .news-img-wrap a {display:table; position:relative; float:none; padding:0; margin:0 auto; border:none; background:none;}
.news-single .article .news-img-wrap img {position:relative; float:none; display:block; margin:0 auto;}
/* News Pagination */
.news .page-navigation {display:block; flex:0 0 100%;}
.news .page-navigation p {display:none;}
.f3-widget-paginator {display:block; flex:0 0 100%; list-style:none; padding:0 16px; margin:0; text-align:right; box-sizing:border-box;}
.f3-widget-paginator li {position:relative; z-index:1; display:inline-block; vertical-align:top; list-style:none; padding:0; margin:5px; width:80px; height:80px; line-height:80px; border-radius:50%; white-space:nowrap; text-align:center; font-size:17px; font-weight:700; color:var(--text-color);}
.f3-widget-paginator li a {display:block; width:100%; height:100%; border-radius:50%; color:var(--text-color); position:relative; white-space:nowrap; overflow:hidden; transition:background-color 0.3s;}
.f3-widget-paginator li a:hover {text-decoration:none; background:var(--table);}
.f3-widget-paginator li.current,
.news .f3-widget-paginator li.current {background:var(--table);}
.text-white .f3-widget-paginator li a {color:#ffffff;}
.text-white .f3-widget-paginator li a:hover,
.text-white .f3-widget-paginator li.current {background:rgba(255,255,255,0.1); color:#ffffff;}
.f3-widget-paginator li.previous a,
.f3-widget-paginator li.next a {background:var(--primary); color:transparent; font-size:0;}
.f3-widget-paginator li.previous a:hover,
.f3-widget-paginator li.next a:hover {background:var(--primary);}
.f3-widget-paginator li.previous a:before, 
.f3-widget-paginator li.next a:before {content:""; display:block; font-size:60px; width:1em; height:1em; position:absolute; left:50%; top:50%; margin:-0.5em; background-size:10em auto; background-position:-0.37em -13.66em;}
.f3-widget-paginator li.next a:before {background-position-x:-1.95em;}
.btn-primary-white .f3-widget-paginator li.previous a:before,
.btn-primary-white .f3-widget-paginator li.next a:before {background-position-y:-15.33em;}

/* -------- Search ------------ */
.tx-indexedsearch-searchbox {margin:16px 0;}
.tx-indexedsearch-searchbox fieldset {position:relative; max-width:800px; margin:0;}
.overlay-search .tx-indexedsearch-searchbox fieldset {margin:0 auto;}
.tx-indexedsearch-form input {border-radius:30px;}
.tx-indexedsearch-search-submit {position:absolute; right:0; top:0;}
.tx-indexedsearch-search-submit input[type="submit"] {margin:0; min-width:auto; font-size:60px; width:1em; height:1em; background-size:10em auto; background-position:-3.66em -0.33em;}

/* Results */
.tx-indexedsearch-res {max-width:800px; margin:30px 0;}
.tx-indexedsearch-res h5 {margin:0 0 5px 0;}
.tx-indexedsearch-res p {margin:5px 0;}
.tx-indexedsearch-icon {display:none;}
.tx-indexedsearch-info {display:inline; font-size:14px; margin:0; color:#d5d5d5;}
.tx-indexedsearch-info p {display:inline; font-size:14px; margin:0; color:#d5d5d5;}
.tx-indexedsearch-info a {color:#d5d5d5;}
.tx-indexedsearch-info dt {display:inline; font-weight:600;}
.tx-indexedsearch-info dd {display:inline; margin:0 20px 0 0;}

/* Search Pagination */
.tx-indexedsearch-info-sword + .tx-indexedsearch-browsebox {display:none;}
ul.tx-indexedsearch-browsebox {display:block; list-style:none; padding:0; margin:0; text-align:right; font-size:0;}
ul.tx-indexedsearch-browsebox li {position:relative; z-index:1; display:inline-block; vertical-align:top; list-style:none; padding:0; margin:5px; width:80px; height:80px; line-height:80px; border-radius:50%; white-space:nowrap; text-align:center; font-size:17px; font-weight:700; color:var(--text-color);}
ul.tx-indexedsearch-browsebox li a {display:block; width:100%; height:100%; border-radius:50%; color:var(--text-color); position:relative; white-space:nowrap; overflow:hidden; transition:background-color 0.3s;}
ul.tx-indexedsearch-browsebox li a:hover {text-decoration:none; background:var(--table);}
ul.tx-indexedsearch-browsebox li.tx-indexedsearch-browselist-currentPage {background:var(--table);}
.text-white ul.tx-indexedsearch-browsebox li a {color:#ffffff;}
.text-white ul.tx-indexedsearch-browsebox li a:hover,
.text-white ul.tx-indexedsearch-browsebox li.tx-indexedsearch-browselist-currentPage {background:rgba(255,255,255,0.1);}
ul.tx-indexedsearch-browsebox li:first-child:not(.tx-indexedsearch-browselist-currentPage) a,
ul.tx-indexedsearch-browsebox li:last-child:not(.tx-indexedsearch-browselist-currentPage) a {background:var(--primary); color:transparent; font-size:0;}
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 {content:""; display:block; font-size:60px; width:1em; height:1em; position:absolute; left:50%; top:50%; margin:-0.5em; background-size:10em auto; background-position:-0.37em -13.66em;}
ul.tx-indexedsearch-browsebox li:last-child:not(.tx-indexedsearch-browselist-currentPage) a:before {background-position-x:-1.95em;}
.btn-primary-white ul.tx-indexedsearch-browsebox li:first-child:not(.tx-indexedsearch-browselist-currentPage) a:before,
.btn-primary-white ul.tx-indexedsearch-browsebox li:last-child:not(.tx-indexedsearch-browselist-currentPage) a:before {background-position-y:-15.33em;}

/* -------- Footer ------------ */  
#footer {margin:auto 0 0 0; flex:0 0 auto;}
  #footer .body-cell {box-sizing:border-box; line-height:0;}
	#footer .content-padding {font-size:0;}

	.footer-top {display:inline-block; vertical-align:bottom; width:100%; background-color:var(--footer-top); line-height:1.76;}
	.scroll-top-above .footer-top {margin-top:100px;}
	
	.scroll-wrap.content-padding {position:relative; margin:0;}
	.scroll-wrap div {position:relative;}
	.scroll-top {display:block; font-size:150px; width:1em; height:1em; position:absolute; z-index:1; right:0; top:-0.5em; border-radius:50%; cursor:pointer; color:transparent;}
	.scroll-top:before {content:""; display:block; width:0.66em; height:0.66em; position:absolute; left:50%; top:50%; margin:-0.33em; background-size:4em auto; background-position:-1.33em -1.33em; cursor:pointer;}
	.scroll-top:after {content:""; display:block; position:absolute; left:0; right:0; top:0; bottom:0; border-radius:50%; border:1px solid #212121; transition:margin 0.3s;}
	.scroll-top:hover:after {margin:-5%;}
	.scroll-top-above .scroll-top {top:-1.2em;}

  .footer-mid {position:relative; line-height:1.76;}
	
	.footer-left {background-color:var(--footer-left);}
	.footer-mid .columns-4060 .footer-left {width:760px;}
	
	.footer-right {width:760px; background-color:var(--footer-right);}
	.footer-mid .columns-4060 .footer-right {width:auto;}
	.footer-mid .columns-5050 .footer-right {width:auto;}
	
  .footer-links {display:inline-block; vertical-align:top; position:relative; font-size:20px; font-weight:600;}
  .footer-links ul {display:block; vertical-align:top; list-style:none; padding:0; margin:0; width:auto; position:relative;}
  .footer-links ul li {display:block; vertical-align:top; list-style:none; padding:0; margin:0; break-inside:avoid;}
  .footer-links ul li:before {display:none;}
  .footer-links ul li a {display:block; padding:1.25em 24px; line-height:1.4; color:#263238; color:var(--text-color); transition:background 0.3s;}
	.footer-links.footer-links-large {font-size:48px; font-weight:700; margin-top:-0.5em;}
	.footer-links.footer-links-large ul li a {padding:0.52em 24px;}
  .footer-links ul li a:hover {text-decoration:none; background:var(--nav-hover); color:var(--nav-hover-text);}	
	.hover-white .footer-links ul li a:hover,
	.hover-white.text-white .footer-links ul li a:hover {background:#ffffff;}	
	.text-white .footer-links ul li a {color:#ffffff;}
	.text-white .footer-links ul li a:hover {color:#ffffff; background:var(--icon-ontop-hover);}	

  .footer-bottom {position:relative; text-align:center;}
  .footer-bottom .content-padding {padding-top:4px; padding-bottom:4px; margin:0;}
  .footer-bottom .columns {padding:0;}
  .footer-bottom .col {vertical-align:middle;}
  .footer-bottom .col:first-child {text-align:left;}
  .footer-bottom .col:last-child {text-align:right;}

	.copyright {position:relative; display:block; font-weight:600;}
	
  .website span {display:inline-block; vertical-align:middle; padding:0 20px; font-weight:600;}
  .website a {display:inline-block; vertical-align:middle; background:#ffffff; border-radius:30px;}

/* -------- Media Queries ------------ */
@media screen and (max-width:1920px) { 
	/* -------- Text ------------ */
	h1, .h1 {font-size:4.6875vw;}
	h2, .h2 {font-size:3.75vw;}
	.width-1300 {width:67.7vw; max-width:100%;}
	.width-1080 {width:56.25vw; max-width:100%;}
	.width-960 {width:50vw; max-width:100%;}
	.width-800 {width:41.66vw; max-width:100%;}
	.width-640 {width:33.33vw; max-width:100%;}
	/* -------- Content ------------ */
	.video-poster {font-size:3.125vw;}
	/* -------- Footer ------------ */
	.footer-links.footer-links-large {font-size:2.5vw;}
}

@media screen and (max-width:1800px) {
	/* -------- Text ------------ */
	.text-columns {-webkit-column-gap:80px; -moz-column-gap:80px; column-gap:80px;}
  /* -------- Header ------------ */
  #header {height:120px;}
	.header-narrow #header {height:80px;}
	.header-logo a {height:120px;}
	.logo-overhang .header-logo a {height:160px; margin-bottom:-40px;}
	.header-narrow .header-logo a {height:80px;}
	.header-narrow.logo-overhang .header-logo a {height:120px;}
	.header-button {width:120px; height:120px; padding-top:72px;}
	.header-button span {font-size:14px;}
	.header-button:before {top:24px; font-size:48px;}
	.header-button.header-phone {padding:0 30px 0 60px;}
	.header-button.header-phone:before {left:15px;}
	.header-button.header-phone span {font-size:18px; line-height:120px;}
	.btn-nav {padding-bottom:10px;}	
	#header-sticky {height:80px; top:-80px;}
	#header-sticky .header-logo a,
	.header-narrow .header-logo a {height:80px;}
	#header-sticky .header-button,
	.header-narrow .header-button {width:120px; height:80px; padding-top:52px;}
	#header-sticky .header-button.header-phone,
	.header-narrow .header-button.header-phone {padding:0 24px 0 60px;}
	#header-sticky .header-button.header-phone span,
	.header-narrow .header-button.header-phone span {line-height:80px;}
  /* -------- Nav ------------ */
	.nav ul li a {line-height:120px;}
	#header-sticky .nav ul li a,
	.header-narrow .nav ul li a {line-height:80px;}
	.nav ul li ul li a {padding-top:22px; padding-bottom:22px;}
	.nav-side {padding-top:120px;}
	.nav-side ul li a {border-left-width:140px;}
	.nav-images {margin-top:120px; margin-bottom:120px; margin-left:120px;}
	/* -------- Content ------------ */
	.content-padding {padding:0 120px; margin:120px 0;}
	.padding-left-extra-small {padding-left:40px;}
	.padding-right-extra-small {padding-right:40px;}
	.padding-left-small {padding-left:80px;}
	.padding-right-small {padding-right:80px;}
	.padding-left-large {padding-left:200px;}
	.padding-right-large {padding-right:200px;}
	.margin-top-extra-small {margin-top:40px;}
	.margin-bottom-extra-small {margin-bottom:40px;}
	.margin-top-small {margin-top:80px;}
	.margin-bottom-small {margin-bottom:80px;}
	.margin-top-large {margin-top:200px;}
	.margin-bottom-large {margin-bottom:200px;}
	.col:first-child .content-padding {padding-right:40px;}
	.col:last-child .content-padding {padding-left:40px;}
	.col:first-child .content-padding.padding-right-large {padding-right:80px;}
	.col:last-child .content-padding.padding-left-large {padding-left:80px;}
	/* -------- Textpic ------------ */
	.ce-intext.ce-left.ce-nowrap .ce-gallery {padding:0 0 0 80px;}
	.ce-intext.ce-left.ce-nowrap .ce-bodytext {padding:0 0 0 80px;}
	.ce-intext.ce-right.ce-nowrap .ce-gallery {padding:0 80px 0 0;}
	.ce-intext.ce-right.ce-nowrap .ce-bodytext {padding:0 80px 0 0;}
	.ce-textpic.ce-intext.ce-left.ce-nowrap .ce-gallery.sticky,
	.ce-textpic.ce-intext.ce-right.ce-nowrap .ce-gallery.sticky {top:80px;}
	.layout-text-card.ce-intext.ce-left.ce-nowrap .ce-bodytext-block {padding:80px; margin-left:-160px;}
	.layout-text-card.ce-intext.ce-right.ce-nowrap .ce-bodytext-block {padding:80px; margin-right:-160px;}
	.layout-text-card-small.ce-intext.ce-left.ce-nowrap .ce-bodytext-block {padding:40px; margin-left:-120px; right:200px;}
	.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-bodytext-block {padding:40px; margin-right:-120px; left:200px;}
	.block-layout-text-scroll header {top:100px;}
	/* -------- Banner ------------ */
	.header-ontop .banner__wrap .banner__text {border-top-width:120px;}
	.header-narrow.header-ontop .banner__wrap .banner__text {border-top-width:80px;}
	/* -------- Image Slider ------------ */
	.image-slider-wrap {font-size:80px;}
	/* -------- Image Menu ------------ */
	.image-menu {margin:0 -40px;}
	.image-menu__item {padding:40px;}
	/* -------- Tabs ------------ */
	.tab {padding:25px; font-size:24px;}
	/* -------- Expand ------------ */
	.expand-header p {padding:25px 100px 25px 50px; font-size:24px;}
	/* -------- Browse Menu ------------ */
	.browse-menu a {font-size:120px;}
	/* -------- Footer ------------ */
	.scroll-top {font-size:120px;}
}

@media screen and (max-width:1600px) {
	/* -------- Text ------------ */
	.text-columns {-webkit-column-gap:60px; -moz-column-gap:60px; column-gap:60px;}
	body,
	p,
	table	{font-size:16px;}
	h3, .h3 {font-size:3vw;}
	.ce-bodytext ul li,
	.ce-bodytext ol li {font-size:18px;}
  /* -------- General Forms ------------ */ 
	legend {font-size:20px;}
  input, textarea, select, option {padding:13px 20px; border-radius:25px;}
  select {height:50px; line-height:50px; padding:0 50px 0 10px;}
  .checkbox input[type="checkbox"], .radio input[type="radio"] {font-size:50px;}
  .checkbox input[type="checkbox"] + label, .radio input[type="radio"] + label {padding:12px 0 12px 66px;}
  .checkbox input[type="checkbox"] + label:before {font-size:50px;} 
	.radio input[type="radio"] + label:before {font-size:50px; border-width:15px;}
  .number input {padding-left:60px; padding-right:60px;}
  .number button {font-size:50px;}
  /* -------- Header ------------ */
  #header {height:80px;}
	.header-logo a {height:80px; padding:10px 20px;}
	.logo-overhang .header-logo a {height:106px; margin-bottom:-26px;}
	.header-narrow .header-logo a {height:80px;}
	.header-narrow.logo-overhang .header-logo a {height:120px;}
	.header-button,
	.header-narrow .header-button {width:80px; height:80px; padding-top:52px;}
	.header-button span {font-size:12px;}
	.header-button:before,
	.header-narrow .header-button:before {top:10px; font-size:40px;}
	.header-button.header-phone,
	.header-narrow .header-button.header-phone {padding:0 20px 0 50px;}
	.header-button.header-phone:before {left:10px;}
	.header-button.header-phone span {line-height:80px;}
	#header-sticky .header-logo a {padding:10px 20px;}
	#header-sticky .header-button {width:80px;}
	#header-sticky .header-button.header-phone {padding:0 20px 0 50px;}
  /* -------- Modals ------------ */
	.btn__close {font-size:60px;}
  /* -------- Nav ------------ */
	.nav ul li a {font-size:16px; line-height:80px; padding:0 24px;}
	.nav-side ul li a {padding:20px 100px 20px 30px; border-left-width:100px;}
	.btn-sub {font-size:40px; height:90px;}
	.nav-images {margin-top:80px; margin-bottom:80px; margin-left:80px;}
	/* -------- Content ------------ */
	.content-padding {padding:0 80px; margin:80px 0;}
	.padding-left-extra-small {padding-left:30px;}
	.padding-right-extra-small {padding-right:30px;}
	.padding-left-small {padding-left:60px;}
	.padding-right-small {padding-right:60px;}
	.padding-left-large {padding-left:150px;}
	.padding-right-large {padding-right:150px;}
	.margin-top-extra-small {margin-top:30px;}
	.margin-bottom-extra-small {margin-bottom:30px;}
	.margin-top-small {margin-top:60px;}
	.margin-bottom-small {margin-bottom:60px;}
	.margin-top-large {margin-top:150px;}
	.margin-bottom-large {margin-bottom:150px;}
	.col:first-child .content-padding {padding-right:30px;}
	.col:last-child .content-padding {padding-left:30px;}
	.col:first-child .content-padding.padding-right-large {padding-right:60px;}
	.col:last-child .content-padding.padding-left-large {padding-left:60px;}
	/* -------- Textpic ------------ */
	.ce-intext.ce-left.ce-nowrap .ce-gallery {padding:0 0 0 60px;}
	.ce-intext.ce-left.ce-nowrap .ce-bodytext {padding:0 0 0 60px;}
	.ce-intext.ce-right.ce-nowrap .ce-gallery {padding:0 60px 0 0;}
	.ce-intext.ce-right.ce-nowrap .ce-bodytext {padding:0 60px 0 0;}
	.layout-text-card.ce-intext.ce-left.ce-nowrap .ce-bodytext-block {padding:60px; margin-left:-120px;}
	.layout-text-card.ce-intext.ce-right.ce-nowrap .ce-bodytext-block {padding:60px; margin-right:-120px;}
	.layout-text-card-small.ce-intext.ce-left.ce-nowrap .ce-bodytext-block {padding:30px; right:150px;}
	.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-bodytext-block {padding:30px; left:150px;}
	/* -------- Buttons ------------ */
	.btn__arrow-text {padding:13px 66px 13px 0; font-size:17px; line-height:24px;}
	.btn__arrow:after, .btn__arrow-text:after {font-size:50px;}
	.btn__icon {font-size:18px; line-height:26px; padding:12px 16px 12px 50px;}
	.btn__icon:after {font-size:50px; left:0;}
	.btn__icon .small {font-size:14px; font-weight:400;}
	.btn__social:before {font-size:52px; margin:-26px;}
	.btn__social:after {font-size:50px;}
	.lightbox a:after {font-size:50px;}
	.btn__circle {width:150px; height:150px;}
	.btn__circle:before {font-size:150px;}
	.btn__circle:after {font-size:80px;}
	/* -------- Banner ------------ */
	.header-ontop .banner__wrap .banner__text {border-top-width:80px;}
	/* -------- Image Slider ------------ */
	.image-slider-wrap {font-size:60px;}
	/* -------- Image Menu ------------ */
	.image-menu {margin:0 -30px;}
	.image-menu__item {padding:30px;}
	/* -------- Card Menu ------------ */
	.card-menu-card {font-size:30px;}
	/* -------- News ------------ */
	.news-more a {padding:13px 66px 13px 0; font-size:17px; line-height:24px;}
	.news-more a:after {font-size:50px;}
	.f3-widget-paginator li {width:60px; height:60px; line-height:60px; margin:2px;}
	.f3-widget-paginator li.previous a:before,
	.f3-widget-paginator li.next a:before {font-size:50px;}
	/* -------- Search ------------ */
	ul.tx-indexedsearch-browsebox li {width:60px; height:60px; line-height:60px; margin:2px;}
	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 {font-size:50px;}
	/* -------- Footer ------------ */
	.footer-mid .columns-4060 .footer-left {width:580px;}
	.footer-right {width:580px;}
	.footer-links.footer-links-large {margin-top:0;}
}

@media screen and (max-width:1480px) {
	/* -------- Textpic ------------ */
	.layout-logo-gallery .ce-gallery[data-ce-columns="8"] .ce-row .ce-column {flex:0 1 20%;}
	.layout-logo-gallery .ce-gallery[data-ce-columns="7"] .ce-row .ce-column {flex:0 1 20%;}
}

@media screen and (min-width:1301px) {
	/* -------- Content ------------ */
	.hidden-full {display:none;}
}

@media (min-width:961px) and (max-width:1300px){
	/* -------- Content ------------ */
	.hidden-large {display:none;}
}

@media screen and (max-width:1300px) {
	/* -------- Text ------------ */
	h4, .h4 {font-size:2.76vw;}
	h5, .h5 {font-size:20px;}
	.text-columns {-webkit-column-gap:40px; -moz-column-gap:40px; column-gap:40px;}
	blockquote {font-size:2.76vw; padding:16px 40px;}
  /* -------- General Forms ------------ */ 
  .checkbox input[type="checkbox"], .radio input[type="radio"] {font-size:40px;}
  .checkbox input[type="checkbox"] + label, .radio input[type="radio"] + label {padding:7px 0 7px 54px;}
  .checkbox input[type="checkbox"] + label:before {font-size:40px;} 
	.radio input[type="radio"] + label:before {font-size:40px; border-width:12px;}
	/* -------- Header ------------ */
	.header-logo {flex-shrink:1;}
  /* -------- Nav ------------ */
	.nav {display:none;}
	.nav-side ul {max-width:480px;}
	.nav-side ul li a {font-size:30px;}
	.nav-images {margin-right:460px;}
	/* -------- Content ------------ */
	.content-padding {padding:0 80px; margin:80px 0;}
	.padding-left-extra-small {padding-left:30px;}
	.padding-right-extra-small {padding-right:30px;}
	.padding-left-small {padding-left:60px;}
	.padding-right-small {padding-right:60px;}
	.padding-left-large {padding-left:130px;}
	.padding-right-large {padding-right:130px;}
	.margin-top-extra-small {margin-top:30px;}
	.margin-bottom-extra-small {margin-bottom:30px;}
	.margin-top-small {margin-top:60px;}
	.margin-bottom-small {margin-bottom:60px;}
	.margin-top-large {margin-top:130px;}
	.margin-bottom-large {margin-bottom:130px;}
	.col:first-child .content-padding {padding-right:20px;}
	.col:last-child .content-padding {padding-left:20px;}
	.col:first-child .content-padding.padding-right-large {padding-right:40px;}
	.col:last-child .content-padding.padding-left-large {padding-left:40px;}
	.callout .ce-bodytext-block {padding:30px;}
	/* -------- Textpic ------------ */
	.ce-intext.ce-left.ce-nowrap .ce-gallery {padding:0 0 0 40px;}
	.ce-intext.ce-left.ce-nowrap .ce-bodytext {padding:0 0 0 40px;}
	.ce-intext.ce-right.ce-nowrap .ce-gallery {padding:0 40px 0 0;}
	.ce-intext.ce-right.ce-nowrap .ce-bodytext {padding:0 40px 0 0;}
	.layout-text-card.ce-intext.ce-left.ce-nowrap .ce-bodytext-block {padding:40px; margin-left:-80px;}
	.layout-text-card.ce-intext.ce-right.ce-nowrap .ce-bodytext-block {padding:40px; margin-right:-80px;}
	.layout-text-card-small.ce-intext.ce-left.ce-nowrap .ce-bodytext-block {padding:26px; margin-left:-150px; right:0;}
	.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-bodytext-block {padding:26px; margin-right:-150px; left:0;}
	/* -------- Buttons ------------ */
	.btn__primary, .btn__secondary, .btn__tertiary, button[type="submit"] {font-size:14px; min-width:160px;}
	.btn__arrow-text {font-size:14px;}
	.splide__arrow {font-size:50px;}
	.lightbox a:after {font-size:40px;}
	.btn__circle {width:120px; height:120px;}
	.btn__circle:before {font-size:120px;}
	.btn__circle:after {font-size:60px;}
	/* -------- Image Slider ------------ */
	.image-slider-wrap {font-size:40px;}
	.cursor-arrows .image-slider .splide__arrows {position:relative; margin:16px 0;}
	.cursor-arrows .image-slider .splide__arrow {position:relative; left:auto; right:auto; width:50px; height:50px; margin:0 16px; border-radius:50%; opacity:1;}
	.cursor-arrows .image-slider .splide__arrow--next {left:auto; right:auto;}
	.cursor-arrows .image-slider .splide__arrow:before {display:block;}
	.cursor-arrows .image-slider .splide__arrow:after {display:block;}
	.cursor-arrows .image-slider .splide__arrow:hover {cursor:pointer;}
	/* -------- Card Menu ------------ */
	.card-menu {margin:0 -20px;}
	.card-menu-card {padding:20px; font-size:24px;}
	.card-menu-wrap .splide__arrows {position:relative; margin:16px 0;}
	.card-menu-wrap .splide__arrow {position:relative; left:auto; right:auto; width:50px; height:50px; margin:0 16px; border-radius:50%; opacity:1;}
	.card-menu-wrap .splide__arrow--next {left:auto; right:auto;}
	.card-menu-wrap .splide__arrow:before {display:block;}
	.card-menu-wrap .splide__arrow:after {display:block;}
	.card-menu-wrap .splide__arrow:hover {cursor:pointer;}
	/* -------- Image Menu ------------ */
	.image-menu {margin:0 -20px;}
	.image-menu__item {padding:20px;}
	.image-menu__title {font-size:20px;}
	.image-menu__btn:after {font-size:50px;}
	/* -------- News ------------ */
	.news-title {font-size:24px;}
	.news-more a {font-size:14px;}
	.f3-widget-paginator {padding:0 20px;}
	.f3-widget-paginator li {width:50px; height:50px; line-height:50px; font-size:14px;}
	/* -------- Search ------------ */
	ul.tx-indexedsearch-browsebox li {width:50px; height:50px; line-height:50px; font-size:14px;}
	.tx-indexedsearch-search-submit input[type="submit"] {font-size:50px;}
	/* -------- Tabs ------------ */
	.tabs-content {padding:20px;}
	/* -------- Expand ------------ */
	.expand-header p {padding:25px 60px 25px 20px;}
	.expand-header:after {font-size:50px; margin-right:0;}
	.expand-open .expand-content {padding:20px 0;}
	/* -------- Grid ------------ */
	.grid {margin:0 -20px;}
	.grid .block {padding:20px;}
	/* -------- Profile ------------ */
	.profile__card {max-width:360px; padding:50px 20px 20px 20px;}
	.profile__image {max-width:220px;}
	.profile__name {font-size:20px;}
	.profile__position {font-size:20px;}
	.profile__department {font-size:20px;}
	/* -------- Browse Menu ------------ */
	.browse-menu a {font-size:80px;}
	.browse-menu a span {font-size:20px;}
  /* -------- Footer ------------ */
	.scroll-top-above .footer-top {margin-top:80px;}
	.scroll-top {font-size:80px;}
	.footer-mid .columns-4060 .footer-left {width:520px;}
	.footer-right {width:520px;}
	.footer-links {font-size:16px;}
	.footer-links ul li a {padding:14px 16px;}
	.footer-links.footer-links-large {font-size:24px;}
	.footer-links.footer-links-large ul li a {padding:14px 16px;}
	.website a {width:160px;}
	.copyright {font-size:14px;}
	.website {font-size:14px;}
}
 
@media screen and (max-width:1080px) {
  /* -------- Text ------------ */
	body,
	p,
	table {font-size:14px;}
	h6, .h6 {font-size:17px;}
  /* -------- Header ------------ */
	#header,
	.header-narrow #header {height:60px;}
	.header-logo a {height:60px; padding:5px;}
	.logo-overhang .header-logo a {height:80px; margin-bottom:-20px;}
	.header-narrow .header-logo a {height:60px;}
	.header-narrow.logo-overhang .header-logo a {height:80px;}
	.header-button,
	.header-narrow .header-button {width:60px; height:60px; padding:40px 5px 0 5px;}
	.header-button span {font-size:10px;}
	.header-button:before,
	.header-narrow .header-button:before {top:5px; font-size:36px;}
	.header-button.header-phone span,
	.header-narrow .header-button.header-phone span {line-height:60px;}
	#header-sticky {height:60px; top:-60px;}
	#header-sticky .header-logo a {height:60px; padding:5px;}
	#header-sticky .header-button {width:60px; height:60px; padding-top:40px;}
	#header-sticky .header-button.header-phone span {line-height:60px;}
	/* -------- Nav ------------ */
	.nav-side ul li a {border-left-width:80px;}
	.nav-images {margin-top:60px; margin-bottom:60px; margin-left:60px;}
	/* -------- Content ------------ */
	.content-padding {padding:0 60px; margin:60px 0;}
	.padding-left-extra-small {padding-left:20px;}
	.padding-right-extra-small {padding-right:20px;}
	.padding-left-small {padding-left:40px;}
	.padding-right-small {padding-right:40px;}
	.padding-left-large {padding-left:100px;}
	.padding-right-large {padding-right:100px;}
	.margin-top-extra-small {margin-top:20px;}
	.margin-bottom-extra-small {margin-bottom:20px;}
	.margin-top-small {margin-top:40px;}
	.margin-bottom-small {margin-bottom:40px;}
	.margin-top-large {margin-top:100px;}
	.margin-bottom-large {margin-bottom:100px;}
	.image-caption {font-size:12px;}
	.image-title {font-size:12px;}
	.image-slide .image-caption {padding:16px;}
	/* Cursor */
	#cursor {width:100px; height:100px; margin:-50px;}
	#cursor:after {font-size:40px;}
	#cursor.slider-active {width:80px; height:80px; margin:-40px;}
	#cursor.vm-active:after {font-size:12px;}
	/* -------- Textpic ------------ */
	.ce-textpic.ce-intext.ce-left.ce-nowrap .ce-gallery.sticky,
	.ce-textpic.ce-intext.ce-right.ce-nowrap .ce-gallery.sticky {top:60px;}
	.block-layout-text-scroll header {top:80px;}
	/* -------- Buttons ------------ */
	.baguetteBox-button#close-button {width:50px; height:50px;}
	.baguetteBox-button#close-button svg {margin:10px;}
	.baguetteBox-button#previous-button, .baguetteBox-button#next-button {width:50px; height:50px;}
	.baguetteBox-button#previous-button svg, .baguetteBox-button#next-button svg {margin:2px 8px;}
	.splide__arrows {margin:16px 0 40px 0;}
	/* -------- Banner ------------ */
	.header-ontop .banner__wrap .banner__text {border-top-width:60px;}
	.header-narrow.header-ontop .banner__wrap .banner__text {border-top-width:60px;}
	/* -------- Image Menu ------------ */
	.image-menu-3up .image-menu__item {width:50%; flex:0 0 50%; max-width:50%;}
	/* -------- Grid ------------ */
	.grid .block {flex-basis:50%; width:50%; max-width:50%;}
	.grid.grid-440 .block {max-width:334px;}
	/* -------- Tabs ------------ */
	.tab {font-size:20px;}
	/* -------- Expand ------------ */
	.expand-header p {font-size:20px;}
  /* -------- Footer ------------ */
	.footer-links {font-size:14px;}
	.footer-links ul li a {padding:14px 16px;}
	.footer-links.footer-links-large {font-size:18px;}
	.footer-links.footer-links-large ul li a {padding:14px 16px;}
}

@media (min-width:601px) and (max-width:960px){
	/* -------- Content ------------ */
	.hidden-medium {display:none;}
}

@media screen and (max-width:960px) {
	/* -------- Text ------------ */
	.ce-right .overhang	{margin-right:0;}
	.text-columns {-webkit-column-count:1; -moz-column-count:1; column-count:1;}
	.width-1300 {width:auto; max-width:650px;}
	.width-1080 {width:auto; max-width:540px;}
	.width-960 {width:auto; max-width:420px;}
	.width-800 {width:auto; max-width:400px;}
	.width-640 {width:auto; max-width:320px;}
	/* -------- Tables ------------ */
	table.table-columns {width:103%; margin:0 -1.5%;}
	table.table-columns td {padding:0 1.5%;}
  /* -------- Modals ------------ */
	.modal-scrollbox {height:auto; max-height:none; overflow:visible;}
	.modal-box .columns {max-width:480px; margin:0 auto;}
	.modal-box .col:first-child .content-padding {padding-right:16px; margin-bottom:0;}
	.modal-box .col:last-child .content-padding {padding-left:16px; margin-top:0;}
	.overlay-video .content-padding {padding:20px 0;}
	.modal-small .modal-box {padding:30px; border-radius:20px;}
	.btn__close {font-size:50px;}
	/* -------- Nav ------------ */
	.nav-side {padding:76px 0 0 0;}
	.nav-side ul li a {border-left:none;}
	.nav-images {margin:60px 0 0 0;}
	.nav-images:before {display:block;}
	/* -------- Content ------------ */
	.columns {display:block;}
	.col {display:inline-block; width:100%;}
	.columns-6040 .col:first-child {width:100%;}
	.columns-4060 .col:first-child {width:100%;}
	.content-padding {padding:0 16px; margin:40px 0;}
	.padding-left-extra-small {padding-left:16px;}
	.padding-right-extra-small {padding-right:16px;}
	.padding-left-small {padding-left:16px;}
	.padding-right-small {padding-right:16px;}
	.padding-left-large {padding-left:16px;}
	.padding-right-large {padding-right:16px;}
	.margin-top-extra-small {margin-top:16px;}
	.margin-bottom-extra-small {margin-bottom:16px;}
	.margin-top-small {margin-top:16px;}
	.margin-bottom-small {margin-bottom:16px;}
	.margin-top-large {margin-top:16px;}
	.margin-bottom-large {margin-bottom:16px;}
	.col:first-child .content-padding {padding:0 16px;}
	.col:last-child .content-padding {padding:0 16px;}
	.col:first-child .content-padding.padding-right-large {padding-right:16px;}
	.col:last-child .content-padding.padding-left-large {padding-left:16px;}
	.content-padding .col:first-child .content-padding {padding:0;}
	.content-padding .col:last-child .content-padding {padding:0;}
	.video-play:after {font-size:40px;}
	.col .video-poster .video-title {font-size:1em;}
	.col .video-play {font-size:2.5em;}
	.col .video-play:after {font-size:40px;}
	.video-vertical {max-width:288px;}
	.video-vertical .video-poster {font-size:30px;}
	/* -------- Textpic ------------ */
	.layout-logo-gallery .ce-gallery .ce-row .ce-column {flex-basis:33.33%;}
	.layout-logo-gallery .ce-gallery[data-ce-columns="8"] .ce-row .ce-column {flex:0 1 25%;}
	.layout-logo-gallery .ce-gallery[data-ce-columns="7"] .ce-row .ce-column {flex:0 1 25%;}
	.layout-logo-gallery .ce-gallery[data-ce-columns="5"] .ce-row .ce-column {flex:0 1 33.33%;}
	.ce-intext.ce-left .ce-gallery,
	.ce-intext.ce-right .ce-gallery {display:block; float:none; max-width:none; padding:0; margin:0 0 20px 0;}
	.ce-intext.ce-left.ce-nowrap,
	.ce-intext.ce-right.ce-nowrap {display:block; margin:0 auto; max-width:480px;}
	.ce-textpic.gallery-stack-below.gallery-stack-below {display:flex; flex-direction:column-reverse;}
	.ce-intext.ce-left.ce-nowrap .ce-gallery,
	.ce-intext.ce-right.ce-nowrap .ce-gallery {display:block; position:relative; top:auto; width:auto; max-width:none; padding:0; margin:0 0 20px 0;}
	.ce-intext.ce-left.ce-nowrap .ce-bodytext,
	.ce-intext.ce-right.ce-nowrap .ce-bodytext {display:block; width:auto; max-width:none; padding:0;}
	.ce-intext.ce-left.ce-nowrap .ce-gallery .image,
	.ce-intext.ce-right.ce-nowrap .ce-gallery .image {display:block; max-height:none;}
	.ce-intext.ce-left.ce-nowrap .ce-gallery .image img,
	.ce-intext.ce-right.ce-nowrap .ce-gallery .image img {min-width:auto; max-width:100%; margin:0 auto;}
	.padding-left-none .ce-bodytext,
	.padding-left-none .ce-intext.ce-left.ce-nowrap .ce-bodytext,
	.padding-left-none .ce-intext.ce-right.ce-nowrap .ce-bodytext {padding-left:16px;}
	.padding-right-none .ce-bodytext,
	.padding-right-none .ce-intext.ce-left.ce-nowrap .ce-bodytext,
	.padding-right-none .ce-intext.ce-right.ce-nowrap .ce-bodytext {padding-right:16px;}
	/*  Sticky Image */
	.ce-textpic.ce-intext.ce-left.ce-nowrap .ce-gallery.sticky,
	.ce-textpic.ce-intext.ce-right.ce-nowrap .ce-gallery.sticky {position:relative; top:auto;}
	/*  Layout Text 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 {padding:26px; margin:0 0 0 0;}
	.layout-text-card-small.ce-intext.ce-left.ce-nowrap .ce-gallery,
	.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-gallery {width:auto; max-width:none;}
	.layout-text-card-small.ce-intext.ce-left.ce-nowrap .ce-bodytext,
	.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-bodytext {width:auto; max-width:none;}
	.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 {margin:0 0 0 0;}
	/*  Layout Image 60% 40% */
	.layout-image-60.ce-intext.ce-left .ce-gallery,
	.layout-image-60.ce-intext.ce-right .ce-gallery,
	.layout-image-40.ce-intext.ce-left .ce-gallery,
	.layout-image-40.ce-intext.ce-right .ce-gallery {max-width:none;}
	.layout-image-60.ce-intext.ce-left.ce-nowrap .ce-gallery,
	.layout-image-60.ce-intext.ce-right.ce-nowrap .ce-gallery,
	.layout-image-60.ce-intext.ce-left.ce-nowrap .ce-bodytext,
	.layout-image-60.ce-intext.ce-right.ce-nowrap .ce-bodytext,
	.layout-image-40.ce-intext.ce-left.ce-nowrap .ce-gallery,
	.layout-image-40.ce-intext.ce-right.ce-nowrap .ce-gallery,
	.layout-image-40.ce-intext.ce-left.ce-nowrap .ce-bodytext,
	.layout-image-40.ce-intext.ce-right.ce-nowrap .ce-bodytext {width:auto; max-width:none;}
	/* Layout Image Icon */
	.layout-image-icon.ce-intext.ce-left.ce-nowrap .ce-bodytext,
	.layout-image-icon.ce-intext.ce-right.ce-nowrap .ce-bodytext {padding:0;}
	.layout-image-icon.ce-intext.ce-left.ce-nowrap .ce-gallery,
	.layout-image-icon.ce-intext.ce-right.ce-nowrap .ce-gallery {margin:0 auto;}
	/* -------- Buttons ------------ */
	.btn__icon {font-size:14px; padding:8px 16px 8px 46px;}
	.btn__icon:after {font-size:42px;}
	.btn__icon .small {font-size:12px; margin-left:-30px;}
	.btn__social:before {font-size:42px; margin:-21px;}
	.btn__social:after {font-size:42px;}
	/* -------- Banner ------------ */
	.banner-columns .content-padding {padding:0 0 0 16px;}
	.banner.banner-inset .banner__content {position:static;}
	.banner.banner-inset .banner__text-block {padding:0;}
	.banner__text-image {display:block; max-width:480px; margin:0 auto;}
	/* -------- Image Slider ------------ */
	.image-slider-wrap {font-size:16px;}
	/* -------- Image Menu ------------ */
	.image-menu {display:block; margin:0 auto; max-width:480px;}
	.image-menu__item {display:block; width:auto; max-width:none; padding:0; margin:20px auto;}
	/* -------- Card Menu ------------ */
	.card-menu {margin:0 -16px;}
	.card-menu-card {padding:16px;}
	.card-menu-card {width:50%; flex-basis:50%; max-width:50%;}
	/* -------- News ------------ */
	.news-list-view .article,
	.news .news-list-view .article:last-child {flex-basis:50%; width:50%; max-width:50%;}
	.news-title {font-size:20px;}
	.f3-widget-paginator {padding:0 16px;}
	/* -------- Grid ------------ */
	.grid {margin:0 -16px;}
	.grid .block {padding:16px;}
	.group-tabs {padding-left:0;}
	.group-tabs .group-tabs__btns {position:relative; width:auto; max-height:none; text-align:left;}
	.group-tabs__btns p {display:none;}
	.group-tabs__btns a {display:inline-block;}
	/* -------- Profile ------------ */
	.profile__card {max-width:300px; padding:30px 16px 16px 16px; border-radius:20px;}
	.profile__image {max-width:180px;}
	.profile__name {font-size:18px;}
	.profile__position {font-size:18px;}
	.profile__department {font-size:14px;}
	.profile__left {padding:0 20px 0 0;}
	.profile__right {padding:30px 0 0 20px;}
	/* -------- Tabs ------------ */
	.tabs-content {padding:16px;}
	/* -------- Expand ------------ */
	.expand .ce-textpic.ce-intext.ce-left.ce-nowrap, .expand .ce-textpic.ce-intext.ce-right.ce-nowrap {margin:0 auto;}
	.expand-header p {padding-left:0;}
	.expand-content {padding:0 16px;}
	.expand-open .expand-content {padding:16px;}
  /* -------- Footer ------------ */
	.footer-top {margin-top:80px;}
	.scroll-top {top:-1.2em;}
	.footer-mid .columns-4060 .footer-left,
	.footer-mid .columns-4060 .footer-right {width:100%;}
	.footer-mid .columns-6040 .footer-left,
	.footer-mid .columns-6040 .footer-right {width:100%;}
	.footer-mid .columns-5050 .footer-right {width:100%;}
	.footer-right {width:100%;}
	.footer-mid .col .block > * {max-width:540px; margin-left:auto; margin-right:auto;}
	.footer-links {font-size:12px;}
	.footer-links ul li a {line-height:22px; padding:10px 16px;}
	.footer-links.footer-links-large {font-size:14px;}
	.footer-links.footer-links-large ul li a {padding:10px 16px;}
	.footer-bottom .col:first-child,
	.footer-bottom .col:last-child {text-align:center; padding:0;}
	.website span {display:block; font-size:14px;}
	.copyright {padding:0; font-size:14px;}
	.copyright:before {display:none;}
}

@media screen and (max-width:800px) {
  /* -------- Text ------------ */
	h1, .h1 {font-size:36px;}
	h2, .h2 {font-size:30px;}
	h3, .h3 {font-size:24px;}
	h4, .h4 {font-size:22px;}
	h5, .h5 {font-size:18px;}
	h6, .h6 {font-size:16px;}
  /* -------- Header ------------ */
	.header-buttons .btn__primary {display:none;}
	/* -------- Tabs ------------ */
	.tabs {display:none;}
	.tabs-content {padding:0; border:none;}
	.block-tab-header {display:block;}
	.block-tab .content-padding {margin:16px 0;}
  /* -------- Expand ------------ */
	.expand-header p {padding:18px 40px 18px 0; font-size:17px; line-height:24px;}
	.expand-header:after {font-size:40px;}
	.expand-content {padding:0;}
	.expand-open .expand-content {padding:16px 0;}
}

@media screen and (max-width:700px) {
  /* -------- Text ------------ */
	.banner-columns .overhang	{margin-right:0;}
  /* -------- Header ------------ */
	#header,
	.header-narrow #header {height:50px;}
	.header-logo a {height:50px;}
	.logo-overhang .header-logo a {height:66px; margin-bottom:-16px;}
	.header-narrow .header-logo a {height:50px;}
	.header-narrow.logo-overhang .header-logo a {height:66px;}
	.header-button,
	.header-narrow .header-button {width:50px; height:50px; padding:0;}
	.header-button:before,
	.header-narrow .header-button:before {top:50%; margin-top:-0.5em;}
	.header-button span {display:none;}
	.header-button.header-phone,
	.header-narrow .header-button.header-phone {padding:0 16px 0 36px;}
	.header-button.header-phone span,
	.header-narrow .header-button.header-phone span {display:block; font-size:16px; line-height:50px;}
	.header-button.header-phone:before {left:0;}
	#header-sticky {height:50px; top:-50px;}
	#header-sticky .header-logo a {height:50px;}
	#header-sticky .header-button {width:50px; height:50px; padding:0;}
	#header-sticky .header-button:before {top:50%;}
	#header-sticky .header-button.header-phone {padding:0 16px 0 36px;}
	#header-sticky .header-button.header-phone span {line-height:50px;}
	/* -------- Nav ------------ */
	.nav-side {padding:66px 0 0 0;}
	.nav-images {margin:50px 0 0 0;}
	/* -------- Banner ------------ */
	.header-ontop .banner__wrap .banner__text {border-top-width:50px;}
	.header-narrow.header-ontop .banner__wrap .banner__text {border-top-width:50px;}
	.banner-columns .banner__content {display:block;}
	.banner-columns .content-padding {padding:0;}
	.banner-columns .banner__image {display:block; position:absolute; left:0; top:0; width:100%; height:100%; border-radius:0;}
	.banner-columns .banner__shade {opacity:0.6;}
	.banner-columns .banner__text {display:block; display:flex; padding-left:16px; padding-right:16px;}
	.banner-columns .banner__text-block {margin:0; max-width:400px;}
	.banner-columns h1,
	.banner-columns h2,
	.banner-columns h3,
	.banner-columns h4,
	.banner-columns h5,
	.banner-columns h6,
	.banner-columns p {color:#ffffff;}
	.banner-columns .btn__tertiary {color:#ffffff; border-color:#ffffff;}
	.banner-columns .btn__tertiary:hover {color:var(--text-color);}
	.banner-columns .btn__tertiary:before {background:#ffffff; background:#ffffff;}
	/* -------- Textpic ------------ */
	.block-layout-text-scroll .content-padding {display:block;}
	.block-layout-text-scroll header {top:auto; text-align:left; padding:0 0 20px; max-width:480px; margin:0 auto 30px auto;}
	.block-layout-text-scroll header * {margin:16px 0; max-width:none;}
	.block-layout-text-scroll header:after {top:auto; left:0; right:0; bottom:0; width:100%; height:6px;}
	.block-layout-text-scroll .ce-textpic {max-width:480px; margin:0 auto; padding:0;}
}

@media screen and (max-width:640px) {
	/* -------- Textpic ------------ */
	.layout-logo-gallery .ce-gallery[data-ce-columns="8"] .ce-row .ce-column {flex:0 1 33.33%;}
	.layout-logo-gallery .ce-gallery[data-ce-columns="7"] .ce-row .ce-column {flex:0 1 33.33%;}
	.layout-logo-gallery .ce-gallery[data-ce-columns="5"] .ce-row .ce-column {flex:0 1 33.33%;}
	.layout-logo-gallery .ce-gallery[data-ce-columns="4"] .ce-row .ce-column {flex:0 1 50%;}
}

@media screen and (max-width:600px) {
	/* -------- Text ------------ */
	.float-left {float:none; max-width:none;}
	.float-right {float:none; max-width:none;}
	blockquote {padding:16px 20px; font-size:18px;}
	blockquote:before {width:6px;}
	.ce-bodytext ul li,
	.ce-bodytext ol li {font-size:16px;}
	.image-captioned.float-left {margin:0;}
	.image-captioned.float-right {margin:0;}
  /* -------- Forms ------------ */
	.field-half {width:100%;}
	/* -------- Modals ------------ */
	.modal-small .modal-box {padding:16px;}
	/* -------- Nav ------------ */
	.nav-side ul li a {font-size:21px; line-height:30px; padding:15px 60px 15px 15px;}
	.nav-side ul li ul li a {font-size:17px; line-height:26px; padding:12px 60px 12px 15px;}
	.btn-sub {font-size:30px; width:50px; height:60px;}
	.nav-side ul li ul li .btn-sub {font-size:30px; height:50px;}
	/* -------- Content ------------ */
	.padding-left-large {padding-left:16px;}
	.padding-right-large {padding-right:16px;}
	.video-poster .video-title {margin-right:40px;}
	.video-play {font-size:46px;}
	.video-play:after {font-size:40px;}
	.col .video-play {font-size:46px;}
	.col .video-play:after {font-size:46px;}
	.hidden-small {display:none;}
	.callout .ce-bodytext-block {padding:16px;}
	/* -------- Textpic ------------ */
	.ce-border {margin:0 -5px;}
	.ce-border .ce-column {padding:5px;}
	/* -------- Buttons ------------ */
	.btn__circle {width:100px; height:100px;}
	.btn__circle:before {font-size:100px;}
	.btn__circle:after {font-size:50px;}
	/* -------- Image Slider ------------ */
	.image-slider-wrap {font-size:8px;}
	/* -------- Image Menu ------------ */
	.image-menu-3up .image-menu {display:block; margin:0 auto; max-width:480px;}
	.image-menu-3up .image-menu__item {padding:0; width:auto; flex:none; max-width:none;}
	/* -------- News ------------ */
	.news-list-view {display:block; margin:0 -8px;}
	.news-list-view .article, .news
	.news-list-view .article:last-child,
	.news-2 .news-list-view .article	{flex-basis:100%; display:block; width:auto; max-width:none; padding:8px;}
	.news-card {max-width:480px;}
	.news .news-list-view .article:last-child {padding:8px;}
	.f3-widget-paginator {padding:0 8px;}
	/* -------- Grid ------------ */
	.grid {display:block; margin:0;}
	.grid .block {display:block; width:auto; max-width:480px; margin:40px auto; padding:0;}
	.grid.grid-440 .block {max-width:280px;}
	/* -------- Profile ------------ */
	.overlay-profile .modal-box {max-width:320px;}
	.profile__image {max-width:140px;}
	.profile__columns {display:block;}
	.profile__left, .profile__right {display:block; width:auto; padding:0;}
	/* -------- Browse Menu ------------ */
	.browse-menu {display:block; max-width:320px; margin:0 auto;}
	.browse-menu a {display:block; width:auto; z-index:1; font-size:60px; padding:24px 0 24px 70px; margin:0; text-align:left;}
	.browse-menu a + a {border-top:1px solid var(--lines);}
	.browse-menu a span {font-size:17px;}
	.browse-menu a:before,
	.browse-menu a:after {left:0;}
	.browse-menu a.browse-next {padding-right:70px; padding-left:0; text-align:right;}
	.browse-menu a.browse-next:before {left:auto; right:0;}
	.browse-menu a.browse-next:after {left:auto; right:0;}
	/* -------- Card Menu ------------ */
	.card-menu-wrap {max-width:480px; margin:0 auto;}
	.card-menu {display:block; margin:0;}
	.card-menu-card {display:block; width:auto; max-width:none; font-size:21px; padding:8px 0;}
	.card-menu-card a {padding-top:20px; padding-bottom:20px;}
	.card-menu-slider .card-menu {margin:0 -8px;}
	.card-menu-slider .card-menu-card {padding:0 8px;}
	/* -------- Footer -------- */
	#footer .grid {display:flex; margin:0 -8px;}
	#footer .grid .block {margin:0; padding:8px;}
}

@media screen and (max-width:540px) {
	/* -------- Header -------- */
	.header-button.header-phone,
	.header-narrow .header-button.header-phone {width:50px; padding:0;}
	.header-button.header-phone span,
	.header-narrow .header-button.header-phone span {display:none;}
	.header-button.header-phone:before {left:50%; margin:-0.5em;}
}

@media screen and (max-width:440px) {
	/* -------- Header -------- */
	h1, .h1 {font-size:30px;}
	h2, .h2 {font-size:24px;}
	h3, .h3 {font-size:22px;}
	/* -------- Textpic -------- */
	.layout-logo-gallery .ce-gallery .ce-row .ce-column {flex-basis:50%;}
	/* -------- Buttons -------- */
	.btn__icon {font-size:12px;}
	.btn__icon .small {display:none;}
}

@media print {
  /* -------- Page -------- */
  @page {margin:10mm;}
  html, body {height:auto;}
	* {color-adjust:exact; -webkit-color-adjust:exact;}
  /* -------- Text -------- */
  h1, .h1, .h1-mark {font-size:28pt;}
	h2, .h2 {font-size:24pt;}
	h3, .h3 {font-size:16pt;}
	h4, .h4 {font-size:12pt;}
	h5, .h5 {font-size:12pt;}
	h6, .h6 {font-size:10pt;}
	p {font-size:9pt;}
	blockquote {padding:0 5mm; font-size:12pt;}
	/* -------- Lists ------------ */
	.ce-bodytext ul li, .ce-bodytext ol li {font-size:9pt;}
	/* -------- Header -------- */
	#header {position:relative; height:auto; border-bottom:0.5pt solid #e2e2e2; text-align:left; margin:0;}
	.header-ontop #header {position:relative;}
	#header-sticky {display:none;}
	#header .content-1920 {padding:0;}
	.btn-nav {display:none;}
	.header-logo {text-align:left; max-width:60mm; padding:0;}
	.header-logo a {padding:0; height:auto;}
	.logo-dark {display:block !important;}
	.logo-white {display:none !important;}
	.nav {display:none;}
	.header-button {display:none;}
	.header-buttons .btn__primary {display:none;}
	.header-phone {display:inline-block; height:60px;}
	.header-button.header-phone span {color:#000000 !important; line-height:60px;}
	.header-phone:before {background-position-y:-0.33em !important;}
	/* -------- Content -------- */
	.content-padding {padding:0 6mm; margin:10mm 0;}
	.margin-top-extra-small .content-padding,
	.margin-bottom-extra-small .content-padding {margin-top:5mm;}
	.margin-top-small .content-padding,
	.margin-bottom-small .content-padding {margin-top:10mm;}
	.margin-top-large .content-padding,
	.margin-bottom-large .content-padding {margin-top:15mm;}
	.col:first-child .content-padding {padding-right:5mm;}
	.col:last-child .content-padding {padding-left:5mm;}
	.callout .ce-bodytext-block {padding:5mm;}
	.video-title {font-size:28pt;}
	.card-menu-card {font-size:16pt;}
	.video-play {display:none;}
	/* -------- Banner -------- */
	.banner-wrap {max-width:1920px; margin:0 auto;}
	.banner__text {border:none !important;}
	/* -------- Buttons -------- */
	.btn, .btn__secondary, .btn__tertiary, button[type="submit"] {font-size:14px;}	
	.splide__arrows {display:none;}
	.page-navigation {display:none;}
	.scroll-top {display:none;}
	/* -------- Textpic -------- */
	.ce-intext.ce-left .ce-gallery {padding:0 5mm 0 0; margin:0 5mm 5mm 0;}
	.ce-intext.ce-right .ce-gallery {padding:0 0 0 5mm; margin:0 0 5mm 5mm;}
	.ce-below .ce-gallery {margin-top:5mm;}
	.ce-intext.ce-left.ce-nowrap .ce-gallery,
	.ce-intext.ce-right.ce-nowrap .ce-gallery {padding:0 5mm 0 0;}
	.ce-intext.ce-left.ce-nowrap .ce-bodytext,
	.ce-intext.ce-right.ce-nowrap .ce-bodytext {padding:0 0 0 5mm;}
	.ce-intext.ce-right.ce-nowrap .ce-gallery {padding:0 0 0 5mm;}
	.ce-intext.ce-right.ce-nowrap .ce-bodytext {padding:0 5mm 0 0;}
	.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-bodytext-block {left:0;}
	.layout-text-card.ce-intext.ce-left.ce-nowrap .ce-bodytext-block,
	.layout-text-card-small.ce-intext.ce-right.ce-nowrap .ce-bodytext-block	{padding:5mm;}
	/* -------- Browse Menu ------------ */
	.browse-menu {display:none;}
  /* -------- Tab ------------ */
	.tab {display:none;}
	.tabs-content {padding:0;}
	.block-tab header {display:block;}
	.block-tab header:after {display:none;}
	.block-tab .ce-textpic {display:block;}
  /* -------- Expand ------------ */
	.expand-header {padding:3mm 0;}
	.expand-header:before {display:none;}
	.expand-header:after {display:none;}
	.expand-header p {font-size:16pt; line-height:1.2; padding:10px 0;}
	.expand-content {height:auto !important; padding:5mm 0; background:none;}
	.expand.expand-open .expand-content {padding:5mm 0;}
	/* -------- News -------- */
	.news-slider-wrap .content-padding {padding:0 10mm;}
	.news-category-view,
	.news-menu-view {display:none;}
	.news-card {max-width:60mm;}
	.news-image {width:auto; position:relative; left:auto; top:auto; bottom:auto; padding-bottom:66%;}
	.news-text {padding:0; margin-left:0;}
	.news-title {font-size:12pt;}
	.f3-widget-paginator {display:none;}
	/* -------- Search -------- */
	.tx-indexedsearch-browsebox {display:none;}
	/* -------- Footer -------- */
	#footer {display:none;}
}