/* ----- CSS Reset ----- */

* {margin:0; padding:0; border:0; font-size:100%; font:inherit; vertical-align:baseline;}
body {line-height:1;}
button {border:none; border-radius:0; box-shadow:none; background:none; appearance:none; cursor:pointer;}
ol, ul {list-style:none;}
blockquote, q {quotes:none;}
blockquote:before, blockquote:after, q:before, q:after {content:''; content:none;}
img {display:block; max-width:100%; height:auto;}
:focus {outline:none;}
abbr {text-decoration:none;}
strong {font-weight:var(--font-weight-bold);}
em {font-style:italic;}
sub {vertical-align:sub;}
sup {vertical-align:super;}
sub, sup {font-size:0.5em; line-height:1;}
h5, h6 {font-weight:var(--font-weight-bold);}
h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong {font-weight:inherit;}
h1 em, h2 em, h3 em {font-style:normal;}

/* ----- Variables ----- */

:root {
  --wpadminbar-height:32px;
  --body-bg-color:var(--color-theme-a);
  --body-font-color:var(--color-theme-b);
  --body-font-size:16px;
  --font-a:'Poppins', sans-serif;
  --font-b:'Space Grotesk', sans-serif;
  --font-b-line-height:calc(1em + 6px);
  --font-weight-normal:400;
  --font-weight-bold:700;
  --h1-font-size:60px; 
  --h2-font-size:40px; 
  --h3-font-size:32px; 
  --h4-font-size:26px; 
  --def-line-height:calc(1em + 10px);
  --def-margin:20px; 
  --header-height:104px;
  --content-width:1260px;
  --content-width-min:320px;
  --content-padding:40px;
  --wrapper-width:calc(var(--content-width) - var(--content-padding));
  --lyt-bl-pad-top:100px;
  --lyt-bl-pad-bot:calc(var(--lyt-bl-pad-top) - var(--def-margin));
  --color-theme-a:#FFF;
  --color-theme-b:#000;
  --color-theme-c:#DD052B;
  --color-theme-d:#F2F6F7;
  --color-theme-e:#9F9F9F;
  --border-color-a:#D9D9D9;
  --border-color-b:rgba(255,255,255,0.3);
}

/* ----- Global ----- */

#wpadminbar {position:fixed!important;}

body {font-family:var(--font-a); font-size:var(--body-font-size); color:var(--body-font-color); text-size-adjust:100%; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; background:var(--body-bg-color); overscroll-behavior-y:none;}
body.nav-active {overflow:hidden;}

.menu-item > a[href="#"] {pointer-events: none;cursor: default;}

#page-wrap {display:flex; flex-direction:column; min-width:var(--content-width-min); max-width:100vw; min-height:100vh;}
.logged-in #page-wrap {min-height:calc(100vh - var(--wpadminbar-height));}

.skip-content {z-index:10000; position:fixed; inset:-41px auto auto 0; display:block; padding:10px; line-height:20px; color:#FFF; text-decoration:none; border:solid #FFF; border-width:0 1px 1px 1px; background:#000; transition:top 0.3s ease;}
.skip-content:focus {top:0;}
.logged-in .skip-content:focus {top:32px;}
.skip-content:hover {text-decoration:underline;}

.hidden {position:absolute!important; left:-9999px!important;}

.wrapper {width:var(--wrapper-width); max-width:100%; margin:0 auto; padding:0 20px;}
.wrapper::after {clear:both; display:block; content:'';}

.cols-wrap:not(.cols-1) {display:grid; grid-template-columns:repeat(var(--cols-per-row), minmax(0, 1fr)); gap:50px;}
.cols-wrap:not(.cols-1) > .col {min-width:0;}
.cols-wrap.cols-2 {--cols-per-row:2;}
.cols-wrap.cols-3 {--cols-per-row:3;}
.cols-wrap.cols-4 {--cols-per-row:4;}
 
iframe.wp-embedded-content {width:100%!important; max-width:100%!important; margin:0 0 20px 0;}

.video-wrap {width:940px; max-width:100%; margin:0 auto 20px auto;}
.video-wrap .video {position:relative; width:100%; height:0; padding-top:56.25%; overflow:hidden;}
.video-wrap .video iframe {position:absolute; inset:0 auto auto 0; width:100%; height:100%;}

.map-wrap {height:400px;}
.map-wrap iframe {width:100%; height:100%;}

.bg-video {position:absolute; inset:0 auto auto 0; width:100%; height:100%; object-fit:cover;}
.bg-video::-webkit-media-controls-start-playback-button {display:none!important; position:absolute!important; left:-9999px!important; opacity:0!important; appearance:none;}

.slick-list,
.slick-track,
.slick-slide,
.slick-slide > div {height:100%; min-height:inherit; overflow:hidden;}
.slick-track {display:flex;}
.slick-slide {float:none; flex-grow:1; height:auto;}
.slide {min-height:inherit; height:100%;}

.slick-controls:has(.control) {display:flex; margin-bottom:var(--def-margin);}
.slick-controls .control {display:block; width:20px; height:30px; text-indent:-9999px; background:url('../images/bg-slide-control-black.svg') right center no-repeat; background-size:auto 20px; overflow:hidden;}
.slick-controls .prev {transform:rotate(180deg);}

.slick-dots {z-index:1250; position:absolute; inset:auto 0 0 0; display:flex;}
.slick-dots li {margin:0 5px;}
.slick-dots li:first-child {margin-left:0;}
.slick-dots li:last-child {margin-right:0;}
.slick-dots li button {display:block; width:60px; height:2px; text-indent:-9999px; background:var(--border-color-a);}
.slick-dots li.slick-active button {background:var(--color-theme-c);}

.mfp-bg {z-index:5000!important;}
.mfp-wrap {z-index:5001!important;}
.mfp-wrap .mfp-content {z-index:5002!important;}
.mfp-wrap .mfp-container:not(.mfp-image-holder) .mfp-content .mfp-close {position:absolute; inset:-45px -5px auto auto; width:40px; height:40px; text-indent:9999px; background:#0000; overflow:hidden; opacity:1;}
.mfp-wrap .mfp-container:not(.mfp-image-holder) .mfp-content .mfp-close::before,
.mfp-wrap .mfp-container:not(.mfp-image-holder) .mfp-content .mfp-close::after {position:absolute; display:block; inset:50% auto auto 50%; width:30px; height:2px; content:''; background:#FFF;}
.mfp-wrap .mfp-container:not(.mfp-image-holder) .mfp-content .mfp-close::before {transform:translate(-50%, -50%) rotate(45deg);}
.mfp-wrap .mfp-container:not(.mfp-image-holder) .mfp-content .mfp-close::after {transform:translate(-50%, -50%) rotate(-45deg);}
 
.filter-form {width:375px; max-width:100%;}
.filter-form .field {position:relative;}
.filter-form .field label {position:absolute; left:-9999px;}
.filter-form .select select {z-index:1; display:block; width:100%!important; height:40px; font-size:15px!important; line-height:20px; opacity:0; cursor:pointer;}
.filter-form .select .customSelect {position:static!important; display:block!important; width:100%!important; max-width:100%; height:40px; padding:10px 40px 10px 10px; line-height:20px; color:var(--color-theme-b); border:1px solid var(--border-color-a); overflow:hidden; box-sizing:border-box;}
.filter-form .select .customSelect::before {position:absolute; inset:12px 20px auto auto; display:block; width:8px; height:8px; content:''; border:solid #000; border-width:0 2px 2px 0; transform:rotate(45deg);}
.filter-form .select .customSelectInner {display:inline-block!important; width:100%!important; text-align:left; text-overflow:ellipsis; white-space:nowrap; overflow:hidden;}

/* ----- Buttons ----- */

.button {display:inline-block; max-width:100%; min-height:20px; margin:0; padding:14px 19px 14px calc(19px + 0.3em); font-size:12px; line-height:20px!important; font-family:var(--font-b); font-weight:var(--font-weight-bold); text-transform:uppercase; letter-spacing:0.3em; text-decoration:none!important; border:1px solid; box-sizing:border-box; transition:all 0.2s ease!important; cursor:pointer;}
button.button {box-sizing:content-box;}

.button:hover, .button:active, .button:focus {transform:translateY(2px);}

.button.theme-a {color:var(--color-theme-a)!important; border-color:var(--color-theme-a); background:transparent;}
.button.theme-b {color:var(--color-theme-b)!important; border-color:var(--color-theme-b); background:transparent;}
.button.theme-c {color:var(--color-theme-a)!important; border-color:var(--color-theme-c); background:var(--color-theme-c);}

.button.theme-a:hover {background:var(--color-theme-c);border-color:transparent}

/* ----- Social ----- */

.social-links {display:flex; flex-wrap:wrap;}
.social-links li {margin:0 5px; text-align:left;}
.social-links li:first-child {margin-left:0;}
.social-links li:last-child {margin-right:0;}
.social-links li a {display:block;}
.social-links li a span {display:block; width:30px; height:30px; text-indent:-9999px; background:center center no-repeat; background-size:18px; box-sizing:border-box; transition:transform 0.3s ease!important;}
.social-links li a:hover span,
.social-links li a:active span,
.social-links li a:focus span {transform:scale(1.1);}
.social-links li.linkedin a span {background-image:url('../images/social-icons/icon-linkedin.svg');}
.social-links li.x a span {background-image:url('../images/social-icons/icon-x.svg');}

/* ----- Pagination ----- */

.post-controls {display:flex; justify-content:space-between; padding:20px 0; border-top:1px solid var(--border-color-a);}

.pagination {display:flex; justify-content:center;}
.pagination li {margin:0 15px;}
.pagination li:first-child {margin-left:0;}
.pagination li:last-child {margin-right:0;}
.pagination li a,
.pagination li span {display:block; padding:0 5px; text-align:center; color:var(--color-theme-b)!important; text-decoration:none!important; transition:all 0.2s ease!important;}
.pagination li .current,
.pagination li a:hover,
.pagination li a:active,
.pagination li a:focus {color:var(--color-theme-c)!important;}

/* ----- Editable Content ----- */

a {text-decoration:none; outline:none; transition:all 0.2s ease;}

h1, h2:not(.title), h3:not(.title), h4:not(.title) {margin-bottom:var(--def-margin); line-height:var(--font-b-line-height); font-family:var(--font-b);}
h1 {font-size:var(--h1-font-size);}
h2:not(.title) {font-size:var(--h2-font-size);}
h3:not(.title) {font-size:var(--h3-font-size);}
h4:not(.title) {font-size:var(--h4-font-size);}

h1 a:not(:hover):not(:active):not(:focus),
h2 a:not(:hover):not(:active):not(:focus),
h3 a:not(:hover):not(:active):not(:focus) {text-decoration-color:#0000;}

hr {width:100%; height:1px; margin:calc(var(--def-margin) * 2) 0; border:none; background:var(--border-color-a);}
.layout-section.theme-b hr {background:var(--color-theme-a);}

.highlighted a {text-decoration:underline!important;}
.highlighted.theme-c,
.highlighted.theme-c a {color:var(--color-theme-c)!important;}
.highlighted.theme-e,
.highlighted.theme-e a {color:var(--color-theme-e)!important;}

.styled.style-a {font-size:12px; font-family:var(--font-b); font-weight:var(--font-weight-bold); text-transform:uppercase; letter-spacing:0.3em;}
.no-margin-b {margin-bottom:0;}

.align-b {text-align:center;}
.align-c {text-align:right;}

.editable-content .no-margin-b,
.editable-content p:has(img.no-margin-b) {margin-bottom:0;}

.editable-content {overflow-wrap:break-word;}
.editable-content::after {clear:both; display:block; content:'';}

.editable-content a {text-decoration:underline; text-decoration-thickness:1px!important; text-underline-offset:0.3em; overflow-wrap:break-word; word-wrap:break-word;}
.editable-content a:hover,
.editable-content a:active,
.editable-content a:focus {text-decoration:underline; text-underline-offset:0.1em;}

.editable-content,
.editable-content p,
.editable-content ul,
.editable-content ol,
.editable-content blockquote {line-height:var(--def-line-height);}

.editable-content h4,
.editable-content h5,
.editable-content h6 {margin-bottom:var(--def-margin);}

.editable-content *:not(h1):not(h2):not(.no-margin-b):not(hr) + h2,
.editable-content *:not(h1):not(h2):not(h3):not(.no-margin-b):not(hr) + h3 {padding-top:var(--def-margin);}

.editable-content p {margin-bottom:var(--def-margin);}
.editable-content p.intro-text {font-size:22px;}

.editable-content ul,
.editable-content ol {margin-bottom:var(--def-margin);}
.editable-content ol {counter-reset:item;}
.editable-content ul li,
.editable-content ol li {position:relative; width:fit-content; padding-left:1.1em; text-align:left;}
.align-b .editable-content ul li,
.align-b .editable-content ol li {margin-right:auto; margin-left:auto;}
.align-c .editable-content ul li,
.align-c .editable-content ol li {margin-left:auto;}
.editable-content ol li {padding-left:1.8em; counter-increment:item;}
.editable-content ul li::before {position:absolute; inset:0.6em auto auto 0; display:block; width:5px; height:5px; content:''; border:solid var(--color-theme-c); border-width:0 2px 2px 0; transform:rotate(-45deg);}
.editable-content ol li::before {position:absolute; left:0; width:1.5em; content:counters(item, '.') '. '; }
.editable-content ul li:not(:last-child),
.editable-content ol li:not(:last-child) {margin-bottom:5px;}
.editable-content ul li ul,
.editable-content ul li ol,
.editable-content ol li ol,
.editable-content ol li ul {margin:0; padding-top:5px;}
.editable-content ul li:last-child p:last-of-type,
.editable-content ol li:last-child p:last-of-type {margin-bottom:0;}

.editable-content .checklist li {min-height:20px; padding:0 0 0 35px;}
.editable-content .checklist li:not(:last-child) {margin-bottom:var(--def-margin);}
.editable-content .checklist li::before {top:3px; width:20px; height:20px; border:none; border-radius:0; background:url('../images/icon-checklist.svg') center center no-repeat; background-size:20px; transform:rotate(0);}

.editable-content blockquote {margin-bottom:var(--def-margin);}
.editable-content blockquote:not(.block) p {font-size:var(--h4-font-size); line-height:var(--font-b-line-height); font-family:var(--font-b);}
.editable-content blockquote p:last-of-type {margin:0;}

.editable-content img {margin-bottom:var(--def-margin);}
.editable-content img.alignleft {float:left; margin-right:var(--def-margin);}
.editable-content img.aligncenter {margin-right:auto; margin-left:auto;}
.editable-content img.alignright {float:right; margin-left:var(--def-margin);}
.editable-content .wp-caption {display:block; max-width:100%; margin:30px 0 var(--def-margin) 0; padding:10px; background:#f3f3f3; box-sizing:border-box;}
.editable-content .wp-caption img {margin:0;}
.editable-content .wp-caption .wp-caption-text {padding:15px 0 0 0; font-size:14px; font-style:italic;}
.editable-content .wp-caption.alignleft {float:left; margin:0 var(--def-margin) var(--def-margin) 0;}
.editable-content .wp-caption.aligncenter {margin-right:auto; margin-left:auto;}
.editable-content .wp-caption.alignright {float:right; margin:0 0 var(--def-margin) var(--def-margin);}
.editable-content .wp-caption.aligncenter .wp-caption-text {text-align:center;}

.editable-content .button {margin:10px 10px 0 0;}
.align-b .editable-content .button {margin:10px 5px 0 5px;}
.align-c .editable-content .button {margin:10px 0 0 10px;}

.editable-content .table-wrap {width:100%; margin:var(--def-margin) auto; overflow:auto;}
.editable-content table {width:100%; text-align:left; line-height:calc(1em + 6px); border:solid var(--border-color-a); border-width:1px 0 0 1px; background:#0000; box-sizing:border-box; border-collapse:collapse;}
.editable-content table th, 
.editable-content table td {padding:10px; vertical-align:middle; border:solid var(--border-color-a); border-width:0 1px 1px 0;}
.editable-content table th {background-color:var(--color-theme-d);}
.layout-section.theme-b .editable-content table,
.layout-section.theme-b .editable-content table th, 
.layout-section.theme-b .editable-content table td {border-color:var(--border-color-b);}
.layout-section.theme-b .editable-content table th {background-color:var(--border-color-b);}
.layout-section.theme-b .editable-content table th {background-color:rgba(--border-color-b);}

.editable-content .results-list {padding:30px 0 0 0; border-top:5px solid #f1f1f1;}
.editable-content .results-list li {font-size:20px;}
.editable-content .results-list li:not(:last-child) {margin-bottom:20px;}
.editable-content .results-list li a {text-decoration:none!important;}

.info-list {margin:0 0 20px 0;}
.info-list .wrap {border-bottom:1px solid var(--border-color-a);}
.layout-section.theme-b .info-list .wrap {border-bottom-color:var(--border-color-b);}
.info-list .wrap h3.header {margin:0; padding:3px 0; font-size:var(--h4-font-size); line-height:30px;}
.info-list .wrap h3.header a {position:relative; display:block; padding:10px 0 10px 35px; text-decoration:none!important;}
.info-list .wrap h3.header a .more {position:absolute; inset:15px auto auto 0; display:block; width:20px; height:20px; text-indent:-9999px;}
.info-list .wrap h3.header a .more::before,
.info-list .wrap h3.header a .more::after {position:absolute; display:block; content:''; background:var(--color-theme-c); transition:all 0.3s ease;}
.info-list .wrap h3.header a .more::before {inset:50% 0 auto 0; height:2px; transform:translateY(-50%);}
.info-list .wrap h3.header a .more::after {inset:0 auto 0 50%; width:2px; transform:translateX(-50%);}
.info-list .wrap h3.header a.active .more::after {inset:50% auto 50% 50%;}
.info-list .info {display:none;}
.info-list .info .details {padding:20px 0;}

.cats-list {display:flex; flex-wrap:wrap;}
.cats-list li {margin:0 10px 10px 0;}
.cats-list li span {display:block; padding:5px 20px 5px calc(20px + 0.3em); font-size:12px; line-height:20px; font-family:var(--font-b); font-weight:var(--font-weight-bold); text-transform:uppercase; letter-spacing:0.3em; color:var(--color-theme-e); border-radius:15px; background:var(--color-theme-d);}

/* ----- Header & Nav ----- */

#header {z-index:3000; position:fixed; inset:0 0 auto 0; min-width:var(--content-width-min); color:var(--color-theme-a); background:transparent; transition:all 0.3s ease;}
#header:hover,
#header.active,
.single-event-post #header {background:var(--color-theme-b);}
#header.active {border-bottom:1px solid rgba(255,255,255,0.15);}
.logged-in #header {top:var(--wpadminbar-height);}
.nav-active #header {z-index:3001; box-shadow:none; background:#000;}

#header a {color:var(--color-theme-a);}

#header .wrapper {display:flex; align-items:center; width:auto; padding:0 30px;}

#header .main-logo {display:flex; align-items:center; margin:10px 0;}
#header .main-logo img {width:auto; transition:height 0.3s ease;}
#header .main-logo .logo-1 {height:84px;}
#header .main-logo .logo-2 {height:48px; margin-left:25px;}

#header .wrap {display:flex; align-items:center; margin-left:auto;}

#header .links {display:flex; align-items:center;}
#header .links li {margin-left:10px;}
#header .links li .button {display:block;}

#main-nav .menu li {font-family:var(--font-b);}
#main-nav .menu li a {transition:color 0.3s ease!important;}
#main-nav .menu li a:hover,
#main-nav .menu li a:active,
#main-nav .menu li a:focus {color:var(--color-theme-c);}

#search-form {z-index:3002; position:fixed; inset:-100vh 0 auto 0; width:100vw; min-height:100vh; color:var(--color-theme-a); background:var(--color-theme-c); opacity:0; visibility:hidden; transition:opacity 0.3s ease;}
.search-active #search-form {top:0; opacity:1; visibility:visible;}
.logged-in.search-active #search-form {top:32px; min-height:calc(100vh - 32px);}
#search-form .wrapper {display:flex; flex-direction:column; justify-content:center; min-height:inherit; max-width:740px;}
#search-form .form {width:100%; padding:100px 0;}
#search-form .form header {display:flex; align-items:center; margin:0 0 20px 0;}
#search-form .form header h2 {margin:0; color:#FFF;}
#search-form .form header .close {position:relative; display:block; width:30px; height:30px; margin:0 0 0 auto; text-indent:-9999px; overflow:hidden; transition:all 0.2s ease;}
#search-form .form header .close:hover {transform:scale(1.2);}
#search-form .form header .close::before,
#search-form .form header .close::after {position:absolute; display:block; inset:50% auto auto 50%; width:30px; height:2px; content:''; background:var(--color-theme-a); transition:all 0.2s ease;}
#search-form .form header .close::before {transform:translate(-50%, -50%) rotate(45deg);}
#search-form .form header .close::after {transform:translate(-50%, -50%) rotate(-45deg);}
#search-form .form .search-form {position:relative;}
#search-form .form .search-input {width:100%; padding:15px 0 15px 50px; line-height:30px; font-size:20px; color:#FFF; font-family:sans-serif; border:solid var(--color-theme-a); border-width:1px 0; background:#0000; box-sizing:border-box; transition:border 0.2s ease;}
#search-form .form .search-submit {position:absolute; inset:15px auto auto 10px; display:block; width:30px; height:30px; text-indent:-9999px; background:url('../images/icon-search.svg') center center no-repeat #0000; background-size:30px; transition:all 0.2s ease;}
#search-form .form .search-submit:hover {transform:scale(1.2);}

#header .search-toggle {display:block; width:30px; height:30px; margin-left:30px; content:''; text-indent:-9999px; background:url('../images/icon-search.svg') center center no-repeat; background-size:28px;}

/* ----- Banner ----- */

#banner {position:relative; min-height:660px; color:#FFF; background:center center no-repeat #000; background-size:cover; overflow:hidden;}
body:not(.page-template-page-tpl-banner-slides) #banner::before {z-index:1; position:absolute; inset:0; content:''; background:linear-gradient(115deg, rgba(0,0,0,1) 20%, rgba(0,0,0,0) 100%);}

#banner .wrapper {z-index:2; position:relative; display:flex; flex-direction:column; justify-content:center; width:calc(var(--wrapper-width) + 40px); min-height:inherit; padding-top:calc(var(--header-height) + 60px); box-sizing:border-box;}
#banner .cols-wrap {margin:auto 0; align-items:center;}
#banner .form-wrap {margin-bottom:var(--def-margin); padding:30px; color:var(--color-theme-a)!important; background:var(--color-theme-b);}

#banner.hide-bc .cols-wrap {margin-bottom:40px;}

.page-template-page-tpl-banner-slides #banner {min-height:100vh;}
.logged-in.page-template-page-tpl-banner-slides #banner {min-height:calc(100vh - var(--wpadminbar-height));}

#banner .slides-wrap,
#banner .slides {position:relative; min-height:inherit;}
#banner .slide {position:relative; background:center center no-repeat; background-size:cover; overflow:hidden;}
#banner .slide::before {z-index:1; position:absolute; inset:0; content:''; background:linear-gradient(90deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);}
#banner .slide .wrapper {padding-bottom:calc(var(--header-height) - 20px);}
#banner .slide .bg-video {z-index:0;}

#banner .slick-dots {bottom:calc(var(--header-height) - 20px); left:50%; width:var(--wrapper-width); max-width:100%; margin:0 auto; box-sizing:border-box; transform:translateX(-50%);}
#banner .slick-dots li:not(.slick-active) button {background:var(--color-theme-a);}

#banner .breadcrumb-wrap {margin:auto 0 40px 0; padding-top:20px;}
#banner .breadcrumb {display:flex; flex-flow:row wrap; font-size:14px; line-height:20px;}
#banner .breadcrumb li:first-child a {display:block; width:20px; height:20px; text-indent:-9999px; background:url('../images/icon-home.svg') center center no-repeat; background-size:14px; transition:transform 0.3s ease!important;}
#banner .breadcrumb li:first-child a:hover {transform:scale(1.1);}
#banner .breadcrumb li:not(:last-child) {position:relative; margin:0 5px 0 0; padding:0 18px 0 0;}
#banner .breadcrumb li:not(:last-child)::before {position:absolute; inset:6px 5px auto auto; display:block; width:8px; height:8px; margin-left:-4px; content:''; border:solid var(--color-theme-a); border-width:0 1px 1px 0; transform:rotate(-45deg); opacity:0.6;}
#banner .breadcrumb li a {color:var(--color-theme-a); text-decoration:none;}
#banner .breadcrumb li a:hover,
#banner .breadcrumb li a:active,
#banner .breadcrumb li a:focus {text-decoration:underline;}

#banner .banner-logo {z-index:10; position:absolute; inset:auto auto 0 calc(50% + calc(var(--content-width) / 2)); display:flex; align-items:center; justify-content:center; width:300px; height:180px; margin-left:-20px; padding:10px; background:var(--color-theme-a); box-sizing:border-box; transform:translateX(-100%);}

#banner .cats-list li span {color:rgba(255,255,255,0.4); background:#2B2B2B;}

#banner .banner-cta {z-index:10; position:absolute; inset:50% 0 auto auto; transform:translateY(-50%);}
#banner .banner-cta .wrap {display:block; width:80px; padding:10px 15px; text-align:center; font-size:14px; line-height:20px; color:var(--color-theme-a); background:var(--color-theme-c);}
#banner .banner-cta .wrap:hover,
#banner .banner-cta .wrap:active,
#banner .banner-cta .wrap:focus {padding-right:30px; background:var(--color-theme-b);}
#banner .banner-cta .wrap p {margin-top:5px;}
#banner .banner-cta .wrap .title{font-weight:var(--font-weight-bold);}

/* ----- Main ----- */

#main {flex:1 0 auto; color:var(--body-font-color); background:var(--body-bg-color);}
.single-event-post #main {padding-top:var(--header-height);}

#main a {color:var(--body-font-color);}

#main #page-nav {z-index:2999; position:sticky; top:var(--header-height); border-bottom:1px solid var(--border-color-a); background:var(--color-theme-a); transition:all 0.3s ease;}
.logged-in #main #page-nav {top:calc(var(--header-height) + var(--wpadminbar-height));}
#main #page-nav .nav-list {display:flex; column-gap:50px;}
#main #page-nav .nav-list li a {position:relative; display:block; padding:20px 0; color:var(--color-theme-b); font-family:var(--font-b); line-height:20px; border:solid transparent; border-width:5px 0; text-decoration:none;}
#main.nav-active #page-nav .nav-list li a.active {color:var(--color-theme-c); border-bottom-color:var(--color-theme-c);}

#main .layout-section {position:relative; padding-top:var(--lyt-bl-pad-top); padding-bottom:var(--lyt-bl-pad-bot); overflow:hidden;}
#main .layout-section.theme-a {background-color:var(--color-theme-a);}
#main .layout-section.theme-b {color:#FFF; background-color:var(--color-theme-b);}
#main .layout-section.theme-b a {color:#FFF;}
#main .layout-section.theme-d {background-color:var(--color-theme-d);}

#main .layout-section.has-bg {background-position:center center; background-repeat:no-repeat; background-size:cover;}

#main .layout-section.theme-a:not(.has-bg) + .layout-section.theme-a:not(.has-bg),
#main .layout-section.theme-b:not(.has-bg) + .layout-section.theme-b:not(.has-bg),
#main .layout-section.theme-c:not(.has-bg) + .layout-section.theme-c:not(.has-bg),
#main .layout-section.theme-d:not(.has-bg) + .layout-section.theme-d:not(.has-bg) {padding-top:0;}

#main .layout-section.theme-b .slick-controls .control {background-image:url('../images/bg-slide-control-white.svg');}

#main .layout-section .intro {max-width:100%; padding-bottom:40px;}
#main .layout-section .outro {max-width:100%;}
#main .layout-section .intro.layout-b.align-b,
#main .layout-section .outro.layout-b.align-b {margin:0 auto;}
#main .layout-section .intro.layout-b.align-c,
#main .layout-section .outro.layout-b.align-c {margin-left:auto;}

#main .layout-section .cols-wrap.cols-type-b {align-items:center;}
#main .layout-section .cols-wrap.cols-type-c {align-items:end;}
#main .layout-section .cols-wrap.cols-2.cols-layout-b {grid-template-columns:2fr 3fr;}
#main .layout-section .cols-wrap.cols-2.cols-layout-c {grid-template-columns:3fr 2fr;}
#main .layout-section .cols-1.layout-b > .col-1 {margin:0 auto;}

#main .layout-section .section-header {display:flex; align-items:flex-end; padding-bottom:20px;}
#main .layout-section .section-header .button,
#main .layout-section .section-header .filter-form {margin:0 0 20px auto;}
#main .layout-section .section-header.has-slides {display:flex; align-items:flex-end;}
#main .layout-section .section-header .slick-controls {margin-left:auto;}
#main .layout-section .section-footer {display:none;}

#main .banner-section {display:flex; flex-direction:column; justify-content:flex-end; min-height:100vh; box-sizing:border-box;}
.logged-in #main .banner-section {min-height:calc(100vh - var(--wpadminbar-height));}

#main .content-section {padding-bottom:calc(var(--lyt-bl-pad-bot) - 20px);}
#main .content-section .outro {padding-top:var(--def-margin); padding-bottom:var(--def-margin);}
#main .content-section .col.lvl-1 {padding-bottom:var(--def-margin);}
#main .content-section .posts-wrap {margin-bottom:var(--def-margin); padding:30px; background:var(--color-theme-d);}
#main .content-section.theme-b .posts-wrap {background:#212121;}
#main .content-section.theme-d .posts-wrap {background:var(--color-theme-a);}
#main .content-section .posts-wrap .section-header {display:flex; flex-flow:wrap; align-items:center; padding-bottom:10px;}
#main .content-section .posts-wrap .section-header .button {margin:0 0 20px auto;}

#main .blocks-list {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:40px; margin-bottom:var(--def-margin);}
#main .blocks-list .block .wrap {height:100%; padding:30px 30px 10px 30px; background:linear-gradient(0, rgba(242,246,247,0) 0%, rgba(242,246,247,1) 100%); box-sizing:border-box;}
#main .layout-section.theme-b .blocks-list .block .wrap {background:linear-gradient(0, rgba(33,33,33,0) 0%, rgba(33,33,33,1) 100%);}
#main .layout-section.theme-d .blocks-list .block .wrap {background:linear-gradient(0, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);}

#main .downloads-section .wrapper {display:flex; flex-flow:wrap; align-items:flex-start;}
#main .downloads-section .text-intro {width:375px;}
#main .downloads-list {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:60px; width:calc(100% - 475px); margin:0 0 var(--def-margin) auto;}
#main .downloads-list .download {border-bottom:1px solid var(--border-color-a);}
#main .layout-section.theme-b .downloads-list .download {border-bottom-color:var(--border-color-b);}
#main .downloads-list .download .wrap {display:block; height:100%; padding-bottom:30px;}
#main .downloads-list .download .wrap .thumb {position:relative; margin-bottom:10px;}
#main .downloads-list .download .wrap .thumb img {width:100%;}
#main .downloads-list .download .wrap .thumb::after {position:absolute; inset:auto 15px 15px auto; display:block; width:40px; height:40px; content:''; border-radius:50%; background:url('../images/icon-download.svg') center center no-repeat var(--color-theme-c); background-size:cover; transition:transform 0.2s ease;}
#main .downloads-list .download .wrap .thumb:hover::after {transform:scale(1.1);}
#main .downloads-list .download .wrap h3 {line-height:var(--def-line-height);}

#main .gallery-wrap {position:relative; margin:0 auto var(--def-margin) auto;}
#main .gallery-wrap::before,
#main .gallery-wrap::after {z-index:1; position:absolute; inset:0 auto; width:100px; content:''; background:linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);}
#main .gallery-wrap::before {left:0;}
#main .gallery-wrap::after {right:0; transform:rotate(180deg);}
#main .gallery-list .slick-slide .image .wrap {transition:all 0.2s ease;}
#main .gallery-list .slick-slide .image .wrap .img {display:block; border-bottom:5px solid transparent; cursor:default; border:all 0.2s ease;}
#main .gallery-list .slick-slide.slick-active.slick-center .wrap .img {border-bottom-color:var(--color-theme-c); cursor:pointer;}
#main .gallery-list .slick-slide .image .wrap .img img {width:100%;}
#main .gallery-list .slick-slide .image .wrap .caption {padding:30px 20px 0 20px; text-align:center;}
#main .gallery-wrap .slick-controls {justify-content:center; padding-top:20px;}

#main .icons-list {display:grid; grid-template-columns:repeat(1, minmax(0, 1fr)); column-gap:100px; row-gap:30px;}
#main .icons-list .icon .wrap {display:flex; flex-flow:wrap;}
#main .icons-list .icon .wrap .img {width:75px;}
#main .icons-list .icon .wrap .details {width:calc(100% - 115px); margin-left:auto;}

#main .links-a-section .links-wrap {overflow:hidden;}
#main .links-a-section .links-wrap,
#main .links-a-list {position:relative; min-height:inherit;}
#main .links-a-list:not(.has-slides) {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:80px; margin-bottom:var(--def-margin);}
#main .links-a-list.has-slides {margin:0 -20px;}
#main .links-a-list.layout-3 {grid-template-columns:repeat(3, minmax(0, 1fr)); gap:40px;}
#main .links-a-list.layout-3 .link {height:100%; min-height:inherit;}
#main .links-a-list .link .wrap {display:block; height:100%; color:var(--color-theme-a); background:var(--color-theme-b); transition:all 0.2s ease;}
#main .links-a-list.has-slides .link .wrap {height:100%; min-height:inherit; margin:0 20px;}
#main .links-a-list .link .wrap:hover,
#main .links-a-list .link .wrap:active,
#main .links-a-list .link .wrap:focus {background:var(--color-theme-c);}
#main .links-a-list .link .wrap .thumb img {width:100%;}
#main .links-a-list .link .wrap .details {padding:30px 30px 10px 30px;}
#main .links-a-list .link .wrap .details .icon {margin:0 0 10px 0;}
#main .links-a-list .link .wrap .details h3 {font-size:var(--h4-font-size);}
#main .links-a-list .link .wrap .details .excerpt {margin:0 0 20px 0;}
#main .links-a-section .slick-controls {padding-top:30px;}

#main .logos-section .logos-wrap {overflow:hidden;}
#main .logos-list {margin:0 0 20px 0;}
#main .logos-list:not(.has-slides) {display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:30px; align-items:center; justify-content:center; margin-bottom:var(--def-margin);}
#main .logos-list.has-slides {margin:0 -15px;}
#main .logos-list .logo .wrap {display:block; padding:15px 0; border:solid var(--border-color-a); border-width:1px 0;}
#main .logos-list.has-slides .logo .wrap {margin:0 15px;}
#main .logos-list .logo .wrap img {margin:0 auto; width:150px; max-width:100%;}
 
#main .quotes-wrap {position:relative; margin:0 auto var(--def-margin) auto;}
#main .quotes-list {padding-bottom:50px;}
#main .quotes-list .quote .logo {margin-bottom:var(--def-margin);}
#main .quotes-wrap .slick-controls.style-b .prev {left:-80px;}
#main .quotes-wrap .slick-controls.style-b .next {right:-80px;}

#main .stats-list {display:grid; grid-template-columns:repeat(auto-fit, minmax(0, 1fr)); gap:60px;}
#main .stats-list h2 {margin:0 0 20px 0; padding:0 0 20px 0; font-size:80px; font-weight:var(--font-weight-bold); color:var(--color-theme-c); border-bottom:1px solid var(--border-color-a);}
#main .layout-section.theme-b .stats-list h2 {border-bottom-color:var(--border-color-b);}
#main .stats-list h3 {font-size:var(--h4-font-size);}
#main .layout-section.theme-b .stats-list .text {color:var(--color-theme-e);}

#main .slides-wrap {position:relative; margin:0 auto var(--def-margin) auto;}
#main .slides-list {padding-bottom:50px;}
#main .slides-wrap .slick-controls.style-b .prev {left:-80px;}
#main .slides-wrap .slick-controls.style-b .next {right:-80px;}
#main .slides-wrap.align-b .slick-dots {justify-content:center;}
#main .slides-wrap.align-c .slick-dots {justify-content:flex-end;}

#main .text-image-section .rows .row {display:flex; flex-flow:wrap; align-items:center; margin-bottom:50px; border:1px solid var(--border-color-a);background:center center no-repeat; background-size:cover;}
#main .text-image-section .rows.layout-b .row:nth-of-type(odd) {flex-direction:row-reverse;}
#main .text-image-section .rows .row:last-of-type {margin-bottom:var(--def-margin);}
#main .text-image-section.theme-b .rows .row {border-color:var(--border-color-b);}
#main .text-image-section .rows .row .img {width:50%;}
#main .text-image-section .rows .row .text {width:50%; padding:50px 50px 30px 50px; box-sizing:border-box;}

#main .vacancies-section .wrapper {display:flex; flex-flow:wrap; align-items:flex-start;}
#main .vacancies-section .text-intro {width:375px;}
#main .vacancies-list {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:60px; width:calc(100% - 475px); margin:0 0 var(--def-margin) auto;}
#main .vacancies-list .vacancy {border-bottom:1px solid var(--border-color-a);}
#main .layout-section.theme-b .vacancies-list .vacancy {border-bottom-color:var(--border-color-b);}
#main .vacancies-list .vacancy .wrap {height:100%;}
#main .vacancies-list .vacancy a.wrap {display:block;}
#main .vacancies-list .vacancy .wrap h3 {font-size:var(--h4-font-size); color:var(--color-theme-c);}
#main .vacancies-list .vacancy a.wrap h3 {transition:color 0.2s ease;}
#main .vacancies-list .vacancy a.wrap:hover h3,
#main .vacancies-list .vacancy a.wrap:active h3,
#main .vacancies-list .vacancy a.wrap:focus h3 {color:var(--color-theme-a);}
#main .vacancies-list .vacancy .wrap .details {padding-bottom:15px;}
#main .vacancies-list .vacancy .wrap .details li {margin:0 0 5px 0; line-height:var(--def-line-height);}
#main .vacancies-list .vacancy .wrap .details li span {display:block; color:var(--color-theme-e);}

#main .video-section .video-wrap {position:relative; width:100%; overflow:hidden;}
#main .video-section .video-wrap .image {z-index:1; position:absolute; inset:0; display:flex; justify-content:center; align-items:center; border-bottom:5px solid var(--color-theme-c); background:center center no-repeat; background-size:cover;}
#main .video-section .video-wrap .image.hide {display:none;}
#main .video-section .video-wrap .image .play {position:relative; display:block; padding:110px 20px 20px 20px; color:#FFF!important; text-decoration:none!important; font-size:12px; line-height:20px!important; font-family:var(--font-b); font-weight:var(--font-weight-bold); text-transform:uppercase; letter-spacing:0.3em;}
#main .video-section .video-wrap .image .play span {position:absolute; inset:0 auto auto 50%; display:block; width:90px; height:90px; content:''; border:2px solid #FFF; border-radius:50%; transform:translateX(-50%); transition:margin-top 0.2s ease;}
#main .video-section .video-wrap .image .play span:hover {margin-top:3px;}
#main .video-section .video-wrap .image .play span::after {position:absolute; inset:50% auto auto 50%; display:block; width:20px; height:20px; margin-left:-5px; content:''; border:solid var(--color-theme-a); border-width:0 2px 2px 0; transform:translate(-50%, -50%) rotate(-45deg); transform-origin:center;}

/* ----- Posts ----- */
 
#main .filter-section {padding-bottom:60px;}
#main .filter-section .wrapper {display:flex; flex-wrap:wrap; align-items:center; justify-content:center;}

#main .pagination-section {padding:40px 0;}

/* News */
 
#main .posts-list:not(.related) {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:50px; margin-bottom:var(--def-margin);}
#main .posts-list .post article {display:block; height:100%; padding-bottom:30px; border-bottom:1px solid var(--border-color-a); box-sizing:border-box;}
#main .layout-section.theme-b .posts-list .post article {border-bottom-color:var(--border-color-b);}
#main .posts-list.related .post:first-child article {margin-bottom:30px;}
#main .posts-list .post article .thumb {display:block; margin:0 0 20px 0; overflow:hidden;}
#main .posts-list .post article .thumb img {width:100%; transition:transform 0.5s ease;}
#main .posts-list .post article .thumb:hover img {transform:scale(1.05);}
#main .posts-list .post article .details .date {margin:0 0 10px 0; font-size:14px; font-family:var(--font-b); font-weight:var(--font-weight-bold); text-transform:uppercase; letter-spacing:0.3em; color:var(--color-theme-e);}
#main .posts-list .post article .details h2 {margin:0; line-height:var(--def-line-height);}
#main .posts-list .post article .details h2 a {text-decoration:none;}
#main .posts-list .post article .details h2 a:hover,
#main .posts-list .post article .details h2 a:active,
#main .posts-list .post article .details h2 a:focus {color:var(--color-theme-c);}

#main .posts-list.highlights.layout-a {display:block;}
#main .posts-list.highlights .post article {display:flex; align-items:flex-start; margin-bottom:30px; padding-bottom:30px;}
#main .posts-list.highlights .post article .thumb {width:180px; margin:0;}
#main .posts-list.highlights .post article .details {width:calc(100% - 200px); margin-left:auto;}

#main .post-section .post-wrap {display:flex; flex-wrap:wrap;}
#main .post-section .post-content {width:calc(100% - 475px);}
#main .post-section .post-content .time {margin-bottom:20px; padding-left:30px; line-height:20px; background:url('../images/icon-time.svg') 0 0 no-repeat; background-size:20px;}
#main .post-section .post-content header {margin-bottom:30px; padding-bottom:15px; border-bottom:1px solid var(--border-color-a);}
#main .post-section .post-content header h1 {margin:0 0 10px 0; font-size:var(--h2-font-size);}
#main .post-section .post-content header .wrap {display:flex; align-items:center;}
#main .post-section .post-content header .wrap .social {margin-left:auto;}
#main .post-section .post-content .cats-list {padding-bottom:30px;}
#main .post-section .post-content .post-controls {padding:40px 0 20px 0;}
#main .post-section #aside {width:375px; margin:0 0 20px auto;}

#aside .cta:not(:last-of-type) {margin-bottom:40px;}
#aside .cta-editable {background:center center no-repeat; background-size:cover;}
#aside .cta-editable.theme-b {color:var(--color-theme-a); background-color:var(--color-theme-b);}
#aside .cta-editable.theme-b a {color:var(--color-theme-a);}
#aside .cta-editable.theme-d {background-color:var(--color-theme-d);}
#aside .cta-editable .details {padding:30px 30px 10px 30px;}

/* Case Studies */

#main .case-studies-wrap {overflow:hidden;}
#main .case-studies-wrap .slick-controls {padding-top:40px;}

#main .case-studies-list:not(.highlights) {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:80px; margin-bottom:var(--def-margin);}
#main .case-studies-list.highlights {margin:0 -40px;}
#main .case-studies-list.highlights .post {height:100%; min-height:inherit;}
#main .case-studies-list .post .wrap {height:100%; background:var(--color-theme-d);}
#main .case-studies-list.highlights .post .wrap {height:100%; min-height:inherit; margin:0 40px;}
#main .case-studies-list .post .wrap .thumb {position:relative; display:block; overflow:hidden;}
#main .case-studies-list .post .wrap .thumb .img {width:100%; transition:transform 0.5s ease;}
#main .case-studies-list .post .wrap .thumb:hover .img {transform:scale(1.05);}
#main .case-studies-list .post .wrap .thumb .logo {z-index:1; position:absolute; inset:0 30px auto auto; display:flex; align-items:center; width:150px; height:90px; padding:10px; background:var(--color-theme-a); box-sizing:border-box;}
#main .case-studies-list .post .wrap .thumb .logo img {margin:auto;}
#main .case-studies-list .post .wrap .details {padding:35px 35px 15px 35px;}
#main .case-studies-list .post .wrap .details h2 {margin:0; font-size:var(--h4-font-size);}
#main .case-studies-list .post .wrap .details h2 a {color:var(--color-theme-c);}
#main .case-studies-list .post .wrap .details h2 a:hover,
#main .case-studies-list .post .wrap .details h2 a:active,
#main .case-studies-list .post .wrap .details h2 a:focus {color:var(--color-theme-b);}
#main .case-studies-list .post .wrap .details h3.title {margin:0; padding-top:10px; font-weight:var(--font-weight-bold); line-height:var(--def-line-height);}
#main .case-studies-list .post .wrap .details .excerpt {margin-bottom:var(--def-margin); padding-top:20px; line-height:var(--def-line-height);}

/* Events */

#main .event-details {margin-bottom:var(--def-margin); line-height:var(--def-line-height); font-weight:var(--font-weight-bold);}

#main .events-wrap {margin-bottom:var(--def-margin); overflow:hidden;}
#main .events-wrap .slick-controls:has(.control) {padding-top:40px;}

#main .events-list:not(.highlights) {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:80px; margin-bottom:var(--def-margin);}
#main .events-list.highlights {margin:0 -40px;}
#main .events-list.highlights .post {height:100%; min-height:inherit;}
#main .events-list .post .wrap {height:100%; background:var(--color-theme-d);}
#main .events-list.highlights .post .wrap {height:100%; min-height:inherit; margin:0 40px;}
#main .events-list .post .wrap .thumb {display:block; overflow:hidden;}
#main .events-list .post .wrap .thumb img {width:100%; transition:transform 0.5s ease;}
#main .events-list .post .wrap .thumb:hover img {transform:scale(1.05);}
#main .events-list .post .wrap .details {padding:35px 35px 15px 35px;}
#main .events-list .post .wrap .details h2 {font-size:var(--h4-font-size);}
#main .events-list .post .wrap .details h2 a {color:var(--color-theme-c);}
#main .events-list .post .wrap .details h2 a:hover,
#main .events-list .post .wrap .details h2 a:active,
#main .events-list .post .wrap .details h2 a:focus {color:var(--color-theme-b);}
#main .events-list .post .wrap .details .excerpt {margin-bottom:var(--def-margin); line-height:var(--def-line-height);}

#main .event-section .event-wrap {display:flex; flex-wrap:wrap;}
#main .event-section .event-wrap header {width:375px;}
#main .event-section .event-wrap header h1 {font-size:var(--h2-font-size);}
#main .event-section .event-wrap .event-content {width:calc(100% - 475px); margin-left:auto;}
#main .event-section .event-wrap .event-content .event-image {margin-bottom:30px; padding-bottom:30px; border-bottom:1px solid var(--border-color-a);}

/* Partners */

#main .partners-list {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:50px; margin-bottom:var(--def-margin);}
#main .partners-list .post {padding-top:30px;}
#main .partners-list .post .wrap {display:block; height:100%; padding:30px; border:1px solid var(--border-color-a); background:var(--color-theme-a); box-sizing:border-box;}
#main .partners-list .post .wrap:hover {box-shadow:5px 5px 10px rgba(0,0,0,0.15); transform:scale(1.01);}
#main .partners-list .post .wrap .details .logo {width:220px; margin:-60px auto 30px auto; padding:10px; border:5px solid #EFEDED; background:var(--color-theme-a); box-sizing:border-box;}
#main .partners-list .post .wrap .details h3 {margin:0 0 10px 0; font-size:var(--h4-font-size); color:var(--color-theme-c);}
#main .partners-list .post .wrap .details .cats-list {margin:0 0 10px 0;}
#main .partners-list .post .wrap .details .excerpt {margin-bottom:var(--def-margin); line-height:var(--def-line-height);}

/* ----- Footer ----- */

#footer {padding:50px 0; color:var(--color-theme-e); font-size:12px; line-height:var(--def-line-height); background:var(--color-theme-b); overflow:hidden;}
#footer a {color:var(--color-theme-e);}
#footer a:hover, 
#footer a:active, 
#footer a:focus {color:#FFF;}

#footer .logos-list {display:flex; flex-wrap:wrap; column-gap:40px; align-items:center; justify-content:center; margin-bottom:50px; padding-bottom:30px; border-bottom:1px solid var(--border-color-b);}
#footer .logos-list .logo {padding:0 0 20px 0;}
#footer .logos-list .logo .wrap {display:block;}
#footer .logos-list .logo .wrap img {width:auto; height:70px; margin:0 auto;}

#footer .head {display:flex; flex-wrap:wrap; margin:0 0 50px 0;}
#footer .head .main-logo {display:block; height:34px;}
#footer .head .main-logo img {width:auto; height:100%;}
#footer .head .social-links {margin-left:auto;}

#footer nav {margin:0 0 50px 0; padding-bottom:40px; border-bottom:1px solid var(--border-color-b);}
#footer nav .menu {display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:40px;}
#footer nav .menu > li > a {display:block; margin:0 0 10px 0; padding:0 0 10px 0; font-weight:var(--font-weight-bold); border-bottom:1px solid var(--border-color-b);}

#footer .locations-list {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:40px; margin:0 0 20px 0; padding-bottom:30px; border-bottom:1px solid var(--border-color-b);}

#footer .credits {text-align:right;}

/* ----- HubSpot ----- */

.layout-section.theme-a .hbspt-form {padding:40px; background:var(--color-theme-d);}
.hbspt-form fieldset {max-width:none; margin:0 auto;}
.hbspt-form .input {position:relative;}
.hbspt-form .hs-form-field {padding-bottom:20px;}
.hbspt-form .hs-form-field label:not(.hs-error-msg) {display:block; margin:0 0 10px 0;}
.hbspt-form .hs-form-field input[type="text"], 
.hbspt-form .hs-form-field input[type="email"],
.hbspt-form .hs-form-field input[type="tel"],
.hbspt-form .hs-form-field textarea,
.hbspt-form .hs-form-field .customSelect {width:100%; height:40px; margin:0; padding:10px; line-height:18px; font-size:var(--body-font-size); color:var(--color-theme-b); border-radius:2px; border:1px solid var(--border-color-a); background:#FFF; box-sizing:border-box;}

.hbspt-form .hs-form-field select {z-index:1; display:block; width:100%!important; height:40px; font-size:15px!important; line-height:20px; opacity:0; cursor:pointer;}
.hbspt-form .hs-form-field .customSelect {position:static!important; display:block!important; width:100%!important; max-width:100%; padding-right:40px; overflow:hidden; box-sizing:border-box;}
.hbspt-form .hs-form-field .customSelect::before {position:absolute; inset:12px 20px auto auto; display:block; width:10px; height:10px; content:''; border:solid var(--color-theme-b); border-width:0 1px 1px 0; transform:rotate(45deg);}
.hbspt-form .hs-form-field .customSelectInner {display:inline-block!important; width:100%!important; text-align:left; text-overflow:ellipsis; white-space:nowrap; overflow:hidden;}

.hbspt-form .hs-form-field textarea {height:120px; line-height:1.4; overflow:auto; resize:none;}
.hbspt-form .hs-richtext {padding-bottom:20px; font-size:14px; line-height:1.4;}

.hbspt-form .inputs-list {font-size:14px; line-height:1.4;}
.hbspt-form .inputs-list li {padding-left:0;}
.hbspt-form .inputs-list li::before {display:none;}
.hbspt-form .inputs-list li input {margin-top:3px;}

.hbspt-form .hs-form-checkbox span {margin-left:10px;}

.hbspt-form .hs-field-desc {font-size: 12px;font-style: italic;line-height: 17px;padding-bottom: 20px;}

.hbspt-form .hs_submit {padding-top:20px;}
.hbspt-form .hs_submit .hs-button {display:inline-block; max-width:100%; min-height:20px; margin:0; padding:15px 25px; padding:14px 19px 14px calc(19px + 0.3em); color:var(--color-theme-a); font-size:12px; line-height:20px; font-family:var(--font-b); font-weight:var(--font-weight-bold); text-transform:uppercase; letter-spacing:0.3em; text-decoration:none!important; border:1px solid var(--color-theme-c); background:var(--color-theme-c); box-sizing:border-box; transition:all 0.3s ease!important; cursor:pointer;}
.hbspt-form .hs_submit .hs-button:hover,
.hbspt-form .hs_submit .hs-button:active,
.hbspt-form .hs_submit .hs-button:focus {transform:translateY(2px);}

.hbspt-form .hs_error_rollup {margin:0 0 10px 0;}
.hbspt-form .hs-error-msgs {margin:10px auto 0 auto;}
.hbspt-form .hs-error-msgs li {margin-right:8px; padding:5px 8px; font-size:12px; line-height:1.4; color:#FFF; border-radius:2px; background:#F76666; box-sizing:border-box;}

