/* CSS Document */

/*-----------------------------------------------------------------*/
/*--- Font Face Including ---*/
/*-----------------------------------------------------------------*/
/*------------------------------------------------------*/
/*--- Font Family :: [Lato] :: Light ---*/
/*------------------------------------------------------*/
@font-face {
    font-family: 'Lato';
    src: url('../fonts/lato-light.eot');
    src: url('../fonts/lato-light.eot?#iefix') format('embedded-opentype'),
         url('../fonts/lato-light.woff2') format('woff2'),
         url('../fonts/lato-light.woff') format('woff'),
         url('../fonts/lato-light.ttf') format('truetype'),
         url('../fonts/lato-light.svg#latolight') format('svg');
    font-weight: 300;
    font-style: normal;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Lato] :: Regular ---*/
/*------------------------------------------------------*/
@font-face {
    font-family: 'Lato';
    src: url('../fonts/lato-regular.eot');
    src: url('../fonts/lato-regular.eot?#iefix') format('embedded-opentype'),
         url('../fonts/lato-regular.woff2') format('woff2'),
         url('../fonts/lato-regular.woff') format('woff'),
         url('../fonts/lato-regular.ttf') format('truetype'),
         url('../fonts/lato-regular.svg#latoregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Lato] :: Italic ---*/
/*------------------------------------------------------*/
@font-face {
    font-family: 'Lato';
    src: url('../fonts/lato-italic.eot');
    src: url('../fonts/lato-italic.eot?#iefix') format('embedded-opentype'),
         url('../fonts/lato-italic.woff2') format('woff2'),
         url('../fonts/lato-italic.woff') format('woff'),
         url('../fonts/lato-italic.ttf') format('truetype'),
         url('../fonts/lato-italic.svg#latoitalic') format('svg');
    font-weight: normal;
    font-style: italic;

}
/*------------------------------------------------------*/
/*--- Font Family :: [Lato] :: Bold ---*/
/*------------------------------------------------------*/
@font-face {
    font-family: 'Lato';
    src: url('../fonts/lato-bold.eot');
    src: url('../fonts/lato-bold.eot?#iefix') format('embedded-opentype'),
         url('../fonts/lato-bold.woff2') format('woff2'),
         url('../fonts/lato-bold.woff') format('woff'),
         url('../fonts/lato-bold.ttf') format('truetype'),
         url('../fonts/lato-bold.svg#latobold') format('svg');
    font-weight: 700;
    font-style: normal;
}
/*------------------------------------------------------*/
/*--- Font Family :: [Lato] :: Bold Italic ---*/
/*------------------------------------------------------*/
@font-face {
    font-family: 'Lato';
    src: url('../fonts/lato-bolditalic.eot');
    src: url('../fonts/lato-bolditalic.eot?#iefix') format('embedded-opentype'),
         url('../fonts/lato-bolditalic.woff2') format('woff2'),
         url('../fonts/lato-bolditalic.woff') format('woff'),
         url('../fonts/lato-bolditalic.ttf') format('truetype'),
         url('../fonts/lato-bolditalic.svg#latobold_italic') format('svg');
    font-weight: 700;
    font-style: italic;
}
/*-----------------------------------------------------------------*/
/*--- Custom Reset Styles ---*/
/*-----------------------------------------------------------------*/
html { box-sizing: border-box; } 
*, ::after, ::before { box-sizing: inherit; }
body, html { margin: 0; padding: 0; outline: none; min-width: 320px; }
p, img { margin: 0; padding: 0; }
h1, h2, h3, h4 ,h5, h6 { font-weight: normal; padding: 0; margin: 0; }
button, a { outline: none; -webkit-outline: none; -moz-outline: none; }
a img { border: 0; display: block; outline: none; -webkit-outline: none; -moz-outline: none; }
a, button { transition: all 0.3s ease; }
a { color: inherit; text-decoration: none; }
a:hover, a:focus { outline: none; }
button, input[type="submit"] { border: 0; box-shadow: none; line-height: normal; outline: none; text-shadow: none; }
input[type="text"], input[type="email"], input[type="password"], input[type="number"], textarea, select { outline: none; -webkit-appearance: none; box-shadow: none; }
input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus, input[type="number"]:focus, textarea:focus, select:focus { box-shadow: none; } 
input::-webkit-input-placeholder { opacity: 1; color: var(--body-color); }
input:-ms-input-placeholder { opacity: 1; color: var(--body-color); }
input:-moz-placeholder { opacity: 1; color: var(--body-color); }
input::-moz-placeholder { opacity: 1; color: var(--body-color); }
textarea::-webkit-input-placeholder { opacity: 1; color: var(--body-color); }
textarea:-ms-input-placeholder { opacity: 1; color: var(--body-color); }
textarea:-moz-placeholder { opacity: 1; color: var(--body-color); }
textarea::-moz-placeholder { opacity: 1; color: var(--body-color); }
/*-----------------------------------------------------------------*/
/*--- Variables ---*/
/*-----------------------------------------------------------------*/
:root {
  --body-color: #8c8c8c;
  --secondary: #000;
  
  --theme-round: 1;
  
  --button-color: var(--secondary);
  --button-background: #fff;
  --button-border-radius: 6px;
  --button-border: 1px solid var(--secondary);
  --button-active-color: var(--secondary);
  --button-active-background: #f5f3f3;
  
  --newsletter-title: var(--secondary);
  --newsletter-button-color: #4d4d4d;
  --newsletter-button-background: #ddd;
  --newsletter-button-active-color: #fff;
  --newsletter-button-active-background: var(--secondary);
  
  --header-button-border-radius: 6px;
  
  --navigation-line-border-radius: 2px;
  --navigation-submenu-border-radius: 6px;
  --navigation-button-border-radius: 6px;
  
  --pagination-border-radius: 100%;
  
  --categories-filter-border-radius: 6px;
  
  --slider-dots-border-radius: 100%;
  
  --plain-text-image-border-radius: 50px;
  
  --form-label-required-color: #d19358;
  
  --gf-ctrl-btn-bg-color-primary: #098383;
}
body  #gform_wrapper_1[data-form-index="0"].gform-theme, 
body [data-parent-form="1_0"],
body #gform_wrapper_2[data-form-index="0"].gform-theme, 
body [data-parent-form="2_0"] {
  --gf-color-primary: var(--secondary);
  --gf-color-primary-darker: #067373;
  
  --gf-color-in-ctrl-primary: var(--secondary);
}

body .gform-theme--api, body .gform-theme--framework {
  --gf-ctrl-label-color-req: #d19358;
}
/*-----------------------------------------------------------------*/
/*--- Canvas Styles ---*/
/*-----------------------------------------------------------------*/
html { font-size: 18px; }
body { font: 1rem / 1.4444 'Lato', Helvetica, Arial, sans-serif; color: var(--body-color); }
body.menuopen { overflow: hidden; }

.main { opacity: 0; }
.main.loaded { opacity: 1; }
.loading { position: fixed; top: 0; left: 0; height: 100vh; width: 100vw; background: #fff url(../images/logo.png) no-repeat center / 260px auto; z-index: 10000; }

.main { padding: 0; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; }
.main-content { flex-grow: 2; padding: 0 8px; }

/* Sections gaps */
.main-section { padding-bottom: 70px; }
.main-section .content { padding: 100px 0 70px; }

.post__list, .post__single { padding: 80px 0 70px; }
.post__single__author { text-align: center; margin-bottom: 20px; }

.section { padding: 70px 0; }
.section.page-navigation { padding: 32px 0 20px 40px; }
.section.page-hero-slider:not(:first-child) { margin-top: 70px; }
.section.page-hero-slider { margin-bottom: 70px; }
.section.page-header-image:not(:first-child) { margin-top: 70px; }
.section.page-header-image { margin-bottom: 70px; }
.section.carousel-slider:not(:first-child) { margin-top: 70px; }
.section.carousel-slider--one-slide { margin-bottom: 70px; }
.section.image-gallery { padding-bottom: 46px; }
.section.grid-logos { padding-bottom: 50px; }
.section.grid-vertical-cards-with-image { padding-bottom: 10px; }
.section.grid-image-cards { padding-bottom: 46px; }
.section.grid-links-list { padding-bottom: 65px; }
.categories-filter { padding: 0; }

@media screen and (max-width: 767px) {
    body { font-size: 0.9444rem; }
    
    .main-section { padding-bottom: 35px; }
    .main-section .content { padding: 0 0 35px; }

    .post__list, .post__single { padding: 0 0 35px; }
    
    .section { padding: 35px 0; }
    .section.page-navigation { padding: 24px 0; }
    .section.page-hero-slider:not(:first-child) { margin-top: 35px; }
    .section.page-hero-slider { margin-bottom: 35px; }
    .section.page-header-image:not(:first-child) { margin-top: 35px; }
    .section.page-header-image { margin-bottom: 35px; }
    .section.carousel-slider:not(:first-child) { margin-top: 35px; }
    .section.carousel-slider--one-slide { margin-bottom: 35px; }
    .section.grid-text-cards:not(:first-child) { margin-top: 35px; }
    .section.grid-text-cards:last-child { margin-bottom: -35px; }
    .section.image-gallery { padding-bottom: 25px; }
    .section.grid-logos { padding-bottom: 15px; }
    .section.grid-vertical-cards-with-image { padding-bottom: 0; }
    .section.grid-image-cards { padding-bottom: 11px; }
    .section.grid-links-list { padding-bottom: 25px; }
    .section.formstack-form { padding-bottom: 15px; overflow: hidden; }
    .categories-filter { padding: 0 0 25px; }
}
/*-----------------------------------------------------------------*/
/*--- Wysiwyg Styles ---*/
/*-----------------------------------------------------------------*/
.wysiwyg { overflow-x: hidden; padding: 5px 0; }
.wysiwyg h1, .wysiwyg h2, .wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6 { color: inherit; font-weight: 300; padding: 20px 0; line-height: 1.2; }
.wysiwyg h1 { font-size: 2.6667rem; } 
.wysiwyg h2 { font-size: 2.4444rem; }
.wysiwyg h3 { font-size: 2.2222rem; }
.wysiwyg h4 { font-size: 2rem; }
.wysiwyg h5 { font-size: 1.6667rem; }
.wysiwyg h6 { font-size: 1.3333rem; }

.wysiwyg strong { font-weight: 700; }
.wysiwyg em { font-style: italic; }

.wysiwyg p { padding: 13px 0; }

.wysiwyg a { color: var(--secondary); text-decoration: underline; }
.wysiwyg a:hover { text-decoration: none; }

.wysiwyg img { max-width: 100%; height: auto; }
.wysiwyg .alignnone { margin: 20px 0; max-width: 100%; height: auto; }
.wysiwyg .alignleft { float: left; margin: 20px 30px 20px 0; max-width: 100%; height: auto; }
.wysiwyg .alignright { float: right; margin: 20px 0 20px 30px; max-width: 100%; height: auto;}
.wysiwyg .aligncenter { clear: both; display: block; margin: 20px auto; max-width: 100%; height: auto; text-align: center; }
.wysiwyg .wp-caption-text { font-size: 0.8750rem; }

.wysiwyg .alignnone:first-child, .wysiwyg .alignleft:first-child, .wysiwyg .alignright:first-child, .wysiwyg .aligncenter:first-child { margin-top: 0; }
.wysiwyg > ul:first-child, .wysiwyg > ol:first-child, .wysiwyg p:first-child, .wysiwyg h1:first-child, .wysiwyg h2:first-child, .wysiwyg h3:first-child, .wysiwyg h4:first-child, .wysiwyg h5:first-child, .wysiwyg h6:first-child { padding-top: 0; }
.wysiwyg > ul:last-child, .wysiwyg > ol:last-child, .wysiwyg p:last-child, .wysiwyg h1:last-child, .wysiwyg h2:last-child, .wysiwyg h3:last-child, .wysiwyg h4:last-child, .wysiwyg h5:last-child, .wysiwyg h6:last-child { padding-bottom: 0; }

.wysiwyg__table { overflow-x: auto; }
.wysiwyg table { color: var(--body-color); margin: 20px 0; width: 100%; border-collapse: collapse; background: #fff; }
.wysiwyg th { font-weight: 700; background: #f8f8f8; color: #4d4d4d; }
.wysiwyg tr:nth-child(odd) td { background: #f7f7f7; color: #4d4d4d; }
.wysiwyg td , .wysiwyg th { min-width: 50px; padding: 15px; text-align: left; }
.wysiwyg tr:not(:last-child) td { border-bottom: 1px solid #f8f8f8; }

.wysiwyg hr { border: none; border-top: 1px solid #dfdfdf; margin: 20px 0; }

.wysiwyg .wp-caption-text { padding: 0; }

.wysiwyg blockquote { border-left: 8px solid var(--secondary); padding: 0 20px; margin: 15px 15px; }

.wysiwyg ul { padding: 6px 0 6px 40px; }
.wysiwyg ul li { position: relative; }
.wysiwyg ul li:before { font-family: 'FontAwesome'; content: '\f111'; position: relative; top: -4px; left: -22px; font-size: 7px; color: var(--secondary); margin: 0 -6px 0 0px; }

.wysiwyg ol { padding: 6px 0 6px 14px; counter-reset: numbers; }
.wysiwyg ol li { counter-increment: numbers; }
.wysiwyg ol li::before { content: counter(numbers)'. '; color: #4d4d4d; }

.wysiwyg ul, .wysiwyg ol { margin: 0; list-style: none; overflow-x: hidden; }

@media screen and (max-width: 767px) {
    .wysiwyg blockquote { border-left-width: 5px; padding: 0 20px; margin: 15px 15px; }

    .wysiwyg ul { padding: 6px 0 6px 30px; }
    .wysiwyg ol { padding: 17px 0 17px 5px; }
    
    .wysiwyg h1 { font-size: 1.5556rem; } 
    .wysiwyg h2 { font-size: 1.4444rem; }
    .wysiwyg h3 { font-size: 1.3333rem; }
    .wysiwyg h4 { font-size: 1.2222rem; }
    .wysiwyg h5 { font-size: 1.0000rem; }
    .wysiwyg h6 { font-size: 0.8889rem; }

    .wysiwyg table { font-size: 0.8889rem; }
    
    .wysiwyg .aligncenter { text-align: left; }
}
/*-----------------------------------------------------------------*/
/*--- Header Styles ---*/
/*-----------------------------------------------------------------*/
.header { position: fixed; top: 0; left: 0; width: 100%; z-index: 1000; transition: all 0.1s linear; }
.header--overlay .header__container { background: linear-gradient(180deg, rgb(255,255,255) 0%, rgba(255,255,255, 0.7) 100%, rgba(0,0,0,0) 100%); }
.header--scrolled .header__container, body.menuopen .header__container { box-shadow: 0 0 6px rgba(0,0,0, 0.3); background: #fff; }

.header__action-bar { font-size: 0.6667rem; line-height: 1.2; letter-spacing: 0.15em; color: #fff; text-align: center; text-transform: uppercase; display: flex; justify-content: center; align-items: center; min-height: 35px; background: var(--secondary); padding: 5px 35px; position: relative; }
.header__action-bar a { text-decoration: underline; }
.header__action-bar a:hover { text-decoration: none; }
.header__action-bar__close { position: absolute; top: 0; right: 0; font-size: 0; height: 35px; width: 35px; text-decoration: none !important; }
.header__action-bar__close::before, .header__action-bar__close::after { content: ''; position: absolute; top: 50%; left: 50%; height: 2px; width: 18px; margin: -2px 0 0 -9px; background: #fff; }
.header__action-bar__close::before { transform: rotate(-48.81deg); }
.header__action-bar__close::after { transform: rotate(48.81deg); }

.header__logo__link { display: block; max-width: 175px; margin-right: 10px; }
.header__logo__img { display: block; max-width: 100%; }

.header__container { background: #fff; height: 96px; display: flex; align-items: center; justify-content: space-between; transition: height 0.2s linear; }

.header__menu ul { list-style: none; padding: 0; margin: 0; }
.header__menu .menu { display: flex; justify-content: flex-end; flex-wrap: wrap; }
.header__menu .menu li { position: relative; }

.header__action-button, .header__menu__btn { display: none; }

@media screen and (min-width: 768px) {
    .header__container { padding-left: 28px; }
    .header--scrolled .header__container { height: 96px; }
    
    .header__menu .menu a { display: block; text-transform: uppercase; letter-spacing: 0.14em; }
    .header__menu .menu > li > a { font-size: 0.7778rem; color: #4d4d4f; line-height: 1.2; font-weight: 700; padding: 10px 0; margin: 0 20px; border-bottom: 4px solid transparent; position: relative; }
    .header__menu .menu > li > a::before { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 4px; border-radius: calc(var(--navigation-line-border-radius) * var(--theme-round)); transition: inherit; }
    
    .header__menu .menu > li:hover { z-index: 2; } 
    .header__menu .menu > li:hover > a, .header__menu .menu > .current-menu-item > a { color: #000; }
    .header__menu .menu > li:hover > a::before, .header__menu .menu > .current-menu-item > a::before, .header__menu .menu > .current-page-ancestor > a::before { background-color: #000; }
    
    .header__menu .menu > li > .sub-menu::before { content: ''; display: block; border-style: solid; border-width: 10px 8px; border-color: transparent transparent #fff; position: absolute; top: -19px; left: 50%; transform: translateX(-50%); }
    .header__menu .sub-menu { box-shadow: 0 0 14px rgba(0,0,0,0.2); background: #fff; width: 280px; padding: 10px 0; border-radius: calc(var(--navigation-submenu-border-radius) * var(--theme-round)); position: absolute; top: calc(100% + 10px); left: -99999999px; opacity: 0; transform: translateX(-50%); }
    .header__menu .sub-menu::after { content: ''; position: absolute; top: -10px; left: 0; right: 0; height: 10px; }
    .header__menu .sub-menu .sub-menu { top: 0; transform: none; }
    .header__menu .menu li:hover > .sub-menu { left: 50%; opacity: 1; }
    .header__menu .menu .sub-menu li:hover .sub-menu { left: 100%; }
    
    .header__menu .sub-menu a { font-size: 0.7778rem; line-height: 1.2857; color: var(--body-color); padding: 8px 20px 6px; }
    .header__menu .sub-menu a:hover, .header__menu .sub-menu .current-menu-item a { color: #fff; background: var(--secondary); }
}

@media screen and (max-width: 1200px) {
    .header__menu .menu > li > a { padding: 10px; }
    .header__menu .menu > li > a::before { left: 10px; right: 10px; }
}

@media screen and (max-width: 767px) {
    .header__container { height: 70px; }
    
    .header__logo__link { max-width: 155px; padding-left: 6px; }
    
    .admin-bar .header:not(.header--scrolled) .header__menu { height: calc(100vh - 100%); }
    .header__menu { display: none; position: absolute; top: 100%; height: calc(100vh - 100%); overflow: auto; left: 0; right: 0; background: #fff; z-index: 10010; }
    .header__menu__inner { display: table; width: 100%; height: 100%; }
    .header__menu .menu { display: table-cell; vertical-align: middle; padding: 0 0 190px; }
    .header__menu .sub-menu { display: none; }
    .header__menu .menu > li { padding: 12px 50px; width: 100%; }
    .header__menu .current-menu-item > a, .header__menu .current_page_parent > a { color: var(--secondary); }
    .header__menu .menu a { font-size: 1.4444rem; text-transform: uppercase; letter-spacing: 0.15em; display: block; position: relative; padding-right: 20px; }
    .header__menu .menu .menu-item-has-children > a::after { content: '\f105'; font-family: 'FontAwesome'; font-size: 1.3em; position: absolute; right: 0; top: 50%; transform: translateY(-50%); opacity: 0.25; }
    .header__menu .menu .sub-menu { padding: 0 0 0 20px; }
    .header__menu .menu .sub-menu li { padding: 10px 0; }
    .header__menu .menu .sub-menu a { text-transform: none; font-size: 1.1667rem; }
    
    .header__menu__btn { display: block; padding: 0; height: 50px; width: 50px; background: none; position: relative; }
    .header__menu__btn__line,
    .header__menu__btn__line::before, 
    .header__menu__btn__line::after { position: absolute; left: 10px; width: 32px; height: 2px; margin-top: -1px; border-radius: 10px; background: currentColor; transition: transform 0.2s; }
    .header__menu__btn__line::before { content: ''; margin-top: -9px; left: 0; }
    .header__menu__btn__line::after { content: ''; margin-top: 9px; left: 0; }
    .header__menu__btn.open .header__menu__btn__line { background: transparent; }
    .header__menu__btn.open .header__menu__btn__line::before { transform: rotate(-45deg); margin-top: 0; } 
    .header__menu__btn.open .header__menu__btn__line::after { transform: rotate(45deg); margin-top: 0; }
    
    .header--dark .header__menu__btn, .header--scrolled .header__menu__btn, .header--light .header__menu__btn, .header__menu__btn.open { color: var(--body-color); }
    
    
    .header__right { display: flex; justify-content: flex-end; align-items: center; }
    .header__action-button { font-size: 0.7778rem; line-height: 1.0714; font-weight: 700; color: #fff; text-align: center; display: block; border-radius: calc(var(--header-button-border-radius) * var(--theme-round)); background: var(--secondary); padding: 10px; height: 50px; width: 93px; text-transform: uppercase; letter-spacing: 0.15em; margin: 0 10px 0 0; }
}
/*-----------------------------------------------------------------*/
/*--- Section Styles ---*/
/*-----------------------------------------------------------------*/
.section__header { padding: 0 0 60px; }

.page-header__title, .page-header-image__title, .default-page-header__title, .blog-post__header__title { font-size: 1.7778rem; line-height: 1.2; font-weight: 300; color: var(--secondary); padding: 0 0 14px; }

.section__title { font-size: 0.8889rem; line-height: 1.2; letter-spacing: 0.14em; font-weight: 700; color: #999; padding: 0 0 14px; text-transform: uppercase; }
.section__headline, .default-page-header__headline, .blog-post__header__headline { font-size: 2.6667rem; line-height: 1; font-weight: 300; color: #4d4d4f; letter-spacing: 0.01em; }

@media screen and (max-width: 1200px) {
    .section__headline, .default-page-header__headline, .blog-post__header__headline { font-size: 1.6667rem; }
}

@media screen and (max-width: 767px) {
    .section__header { padding: 0 0 30px; }
    
    .page-header__title, .page-header-image__title, .default-page-header__title, .blog-post__header__title { font-size: 1.1111rem;  }
    
    .section__headline, .default-page-header__headline, .blog-post__header__headline { font-size: 1.4444rem; line-height: 1.2308; }
}
/*-----------------------------------------------------------------*/
/*--- Page Header \ Carousel Slider Styles ---*/
/*-----------------------------------------------------------------*/
.slider .slick-arrow { cursor: pointer; position: absolute; top: 50%; transform: translateY(-50%); height: 60px; width: 30px; font-size: 0; background: no-repeat center / contain; z-index: 100; }
.slider .slick-prev { left: 30px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 62' style='enable-background:new 0 0 32 62;' xml:space='preserve'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' d='M30,60L0,30L30,0'/%3E%3C/svg%3E"); }
.slider .slick-next { right: 30px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 31.999756 62'%3E%3Cpath d='M29.9999 0L0 29.9999L29.9999 60' transform='matrix(-1 0 0 1 29.999876 0)' fill='none' fill-rule='evenodd' stroke='%23FFFFFF' stroke-width='2'/%3E%3C/svg%3E"); }
.slider .slick-dots { display: flex; flex-wrap: wrap; justify-content: center; position: absolute; left: 0; right: 0; bottom: 32px; padding: 0; margin: 0; list-style: none; }
.slider .slick-dots li { padding: 8px; cursor: pointer; }
.slider .slick-dots li button { display: block; font-size: 0; height: 10px; width: 10px; padding: 0; border-radius: calc(var(--slider-dots-border-radius) * var(--theme-round)); border: none; background: #fff; opacity: 0.4; cursor: pointer; }
.slider .slick-dots li.slick-active button, .slider .slick-dots li:hover button { opacity: 1; }

.default-page-header, .blog-post__header { padding: 40px 0; }
.default-page-header__container, .blog-post__header__container { max-width: 1024px; }


.section.page-header { padding: 48px 0 0 40px; }
.page-header__container { max-width: 1324px; }
.page-header__row { align-items: center; }
.page-header__col-image { flex: 0 0 232px; }
.page-header__col-image:empty { display: none; }
.page-header__media { max-width: 208px; }
.page-header__media__img { display: block; max-width: 100%; }

.page-header-image .mobile-slider { display: none; } 
.page-header-image, .page-hero-slider, .carousel-slider { margin: 0 -8px; }
.page-header-image .slider, .page-hero-slider .slider, .carousel-slider .slider { position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: -2; }
.page-header-image .slick-list, .page-header-image .slick-track, 
.page-hero-slider .slick-list, .page-hero-slider .slick-track,
.carousel-slider .slick-list, .carousel-slider .slick-track { height: 100%; }
.page-header-image .slider__item__img, .page-hero-slider .slider__item__img, .carousel-slider .slider__item__img { display: block; width: 100%; height: 100%; object-fit: cover; }

.section.carousel-slider { padding: 0; height: 823px; position: relative; z-index: 1; }
.section.carousel-slider--one-slide { height: 735px; }
.section.carousel-slider--one-slide .slick-dots { display: none; }
/* .carousel-slider:not(.carousel-slider--one-slide) .slider { padding: 0 0 88px; } */
.carousel-slider .slider__item { padding: 0 1.5px; height: 100%; }
/* .carousel-slider .slick-dots li button { background: #2a2929; } */
.carousel-slider .slick-arrow { top: 0; bottom: 88px; transform: none; height: auto; width: 8%; background: none; }
.carousel-slider .slick-prev { left: 0; }
.carousel-slider .slick-next { right: 0; }

.page-header-image--overlap, .page-hero-slider--overlap { margin-top: -165px; }

.section.page-header-image { display: flex; align-items: center; height: 470px; position: relative; z-index: 1; }
.page-header-image__title, .page-header-image__headline { color: #fff; }
.page-header-image--overlay::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.5); z-index: -1; }

.section.page-hero-slider { padding: 40px 40px 60px; display: flex; align-items: flex-end; justify-content: flex-end; height: 935px; position: relative; z-index: 999; }
.page-hero-slider--one-slide .slick-dots { display: none; }
.page-hero-slider__actions { display: flex; flex-wrap: wrap; position: fixed; right: 40px; bottom: 30px; }
.page-hero-slider__actions .btn { font-size: 0.8889rem; line-height: 1.2; font-weight: 700; color: #fff; letter-spacing: 0.15em; text-transform: uppercase; text-align: center; height: 50px; border: 1px solid #fff; border-radius: 25px; display: flex; align-items: center; justify-content: center; padding: 5px 28px; background: var(--secondary) no-repeat left 16px center / 24px; }
.page-hero-slider__actions .btn:hover { background-color: rgba(0,0,0, 0.9); }
.page-hero-slider__actions .btn-wrap:not(:first-child) { padding-left: 18px; }
.page-hero-slider__callback .btn { background-image: url(../images/icons/icon-phone.png); padding-left: 52px; }
.page-hero-slider .slick-dots { bottom: 20px; }

@media screen and (max-width: 991px) {
    .section.page-hero-slider { height: 800px; }
}

@media screen and (max-width: 782px) {
    .page-hero-slider--overlap.section.page-hero-slider { height: calc(100vh - 46px); }
}

@media screen and (max-width: 767px) {
    .page-header-image--overlap, .page-hero-slider--overlap { margin-top: -105px; }
    
    .section.page-hero-slider { height: 100vh; min-height: 500px; }
    .page-hero-slider__actions { display: none; }
    .page-hero-slider .slick-dots { bottom: 35px; }
    .page-hero-slider .slider .slick-dots li button { border-radius: 0; } 
    
    .section.page-header-image { height: 120.52vw; min-height: 470px; }
    .page-header-image .desktop-slider { display: none; }
    .page-header-image .mobile-slider { display: block; }
    
    .section.page-header { padding: 24px 0 0; }
    .page-header__media { padding-top: 20px; }
    
    .section.carousel-slider { height: 525px; }
    .carousel-slider .slider .slick-dots { bottom: 9px; }
    .carousel-slider:not(.carousel-slider--one-slide) .slider { padding: 0 0 42px; }
}
/*-----------------------------------------------------------------*/
/*--- Page Navigation Styles ---*/
/*-----------------------------------------------------------------*/
.page-navigation__container { display: flex; flex-wrap: wrap; max-width: 1324px; }

.page-navigation--type-button .page-navigation__item { margin: 0 0 20px; }
.page-navigation--type-button .page-navigation__item:not(:last-child) { padding-right: 20px; }
.page-navigation--type-button .btn { font-size: 0.7778rem; line-height: 1.4286; color: var(--body-color); letter-spacing: 0.15em; text-transform: uppercase; text-align: center; border-radius: calc(var(--navigation-button-border-radius) * var(--theme-round)); display: inline-block; vertical-align: top; min-width: 160px; padding: 15px 20px; background-color: #f2f2f2; }
.page-navigation--type-button .page-navigation__item--active .btn, .page-navigation--type-button .btn:hover { color: #ffffff; background-color: var(--secondary); }

.page-navigation--type-link .page-navigation__item { margin: 0 0 30px; }
.page-navigation--type-link .page-navigation__item:not(:last-child) { margin-right: 50px; }
.page-navigation--type-link .btn { font-size: 0.7778rem; line-height: 1.4286; color: var(--body-color); letter-spacing: 0.15em; text-transform: uppercase; border-bottom: 4px solid transparent; padding: 0 0 8px; opacity: 0.7; position: relative; }
.page-navigation--type-link .btn::before { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 4px; border-radius: var(--navigation-line-border-radius); transition: inherit; }
.page-navigation--type-link .page-navigation__item--active .btn, .page-navigation--type-link .btn:hover { opacity: 1; }
.page-navigation--type-link .page-navigation__item--active .btn::before, .page-navigation--type-link .btn:hover::before { background-color: var(--secondary); }

@media screen and (max-width: 767px) {
    .page-navigation--type-link { margin-bottom: -14px; }
    .page-navigation--type-link .page-navigation__item:not(:last-child) { margin-right: 26px; }
    .page-navigation--type-link .page-navigation__item { margin: 0 0 14px; }
    
    .page-navigation--type-button { margin-bottom: -10px; }
    .page-navigation--type-button .btn { font-size: 0.6111rem; min-width: 115px; padding: 10px; }
    .page-navigation--type-button .page-navigation__item { margin: 0 0 10px; }
    .page-navigation--type-button .page-navigation__item:not(:last-child) { padding-right: 10px; }
}
/*-----------------------------------------------------------------*/
/*--- Phone Number Styles ---*/
/*-----------------------------------------------------------------*/
.phone-number { display: none; }

@media screen and (max-width: 767px) {
    /* .phone-number { display: block; position: fixed; bottom: 60px; right: 30px; height: 70px; width: 70px; border-radius: 100%; background: var(--secondary) url(../images/icons/icon-phone-white.png) no-repeat center / 38px; box-shadow: 0 0 14px rgba(0,0,0,0.5); z-index: 1000; } */
    /* .phone-number a { display: block; height: 100%; width: 100%; } */

    .phone-number { display: block; }
    .phone-number-link { position: fixed; bottom: 14px; right: 14px; font-size: 0.8889rem; line-height: 1.2; font-weight: 700; color: #fff; letter-spacing: 0.15em; text-transform: uppercase; text-align: center; height: 50px; border: 1px solid #fff; border-radius: 25px; display: flex; align-items: center; justify-content: center; padding: 5px 28px; background: var(--secondary) no-repeat left 16px center / 24px; z-index: 1000; }
}
/*-----------------------------------------------------------------*/
/*--- Categories Filter Styles ---*/
/*-----------------------------------------------------------------*/
.categories-filter__container { max-width: 1024px; }
.categories-filter__list { display: flex; flex-wrap: wrap; }
.categories-filter__item { padding: 0 0 20px; }
.categories-filter__item:not(:last-child) { padding-right: 20px; }
.categories-filter .btn { font-size: 0.7778rem; line-height: 1.4286; color: var(--body-color); letter-spacing: 0.15em; text-transform: uppercase; text-align: center; border-radius: calc(var(--categories-filter-border-radius) * var(--theme-round)); display: inline-block; vertical-align: top; min-width: 160px; padding: 15px 20px; background: #f2f2f2; cursor: pointer; }
.categories-filter__item--active .btn, .categories-filter .btn:hover { color: #fff; background-color: var(--secondary); }
.categories-filter .btn--toggle { margin: 0 0 20px; position: relative; padding-right: 40px; }
.categories-filter .btn--toggle::after { content: "\f107"; font-size: 18px; font-family: 'FontAwesome'; line-height: 1; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); transition: transform 0.2s; }
.categories-filter .btn--toggle.btn--active::after { transform: translateY(-50%) rotate(180deg); }

@media screen and (max-width: 767px) {
    .categories-filter__item .btn { font-size: 0.6667rem; min-width: 130px; padding: 10px 15px; }
    .categories-filter__item { padding: 0 0 10px; }
    .categories-filter__item:not(:last-child) { padding-right: 10px; }
}
/*-----------------------------------------------------------------*/
/*--- Posts Styles ---*/
/*-----------------------------------------------------------------*/
.post__col { padding-bottom: 24px; }
.post__item { height: 100%; }
.post__item a { display: block; color: #fff; background: var(--secondary); min-height: 100%; }
.post__item__media__img { display: block; width: 100%; }
.post__item__media--no-image { position: relative; padding: 40.16% 0; background: #e4e4e4; }
.post__item__media--no-image i { font-size: 100px; color: #cbcbcb; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.post__item__content { padding: 42px 40px; }
.post__item__date, .blog-post__header__date, .post__item__author, .blog-post__header__author { font-size: 0.6667rem; font-weight: 700; padding: 0 0 10px; }
.post__item__date, .post__item__author { color: #fff; }
.post__item__title { font-size: 1.3333rem; line-height: 1.2; font-weight: 300; padding: 0 0 16px; }
.post__item__view-more, .blog-post__header__date, .post__item__date { display: none }
.blog-post__header__date, .blog-post__header__author { padding: 10px 0 0; }

.post__container { overflow: hidden; }
.post__media { float: left; margin: 10px 30px 20px 0; max-width: 600px; }

@media screen and (max-width: 767px) {
    .post__item__content { padding: 20px; }
    .post__item__title { font-size: 1.4444rem; padding: 0 0 5px; }
    .post__media { float: none; margin: 0 0 7px; }
}
/*-----------------------------------------------------------------*/
/*--- Pagination Styles ---*/
/*-----------------------------------------------------------------*/
.portfolio-page__slider__controls { display: flex; justify-content: center; }

.pagination .tw-pagination, 
.navigation ul,
.portfolio-page__slider__controls ul { display: flex; flex-wrap: wrap; justify-content: center; list-style: none; padding: 0; margin: 0; }

.pagination .title { display: none; }

.pagination .page, .pagination .prev, .pagination .next, .pagination .gap, 
.navigation ul .page-numbers, .navigation ul .prev, .navigation ul .next, .navigation ul .dots,
.portfolio-page__slider__controls .slide-arrow, .portfolio-page__slider__controls li button { font-size: 0.8889rem; line-height: 1.4286; color: var(--body-color); border-radius: calc(var(--pagination-border-radius) * var(--theme-round)); display: flex; align-items: center; justify-content: center; height: 50px; width: 50px; background: #f2f2f2; border: none; margin: 2px; cursor: pointer; }

.pagination .gap, 
.navigation ul .dots { padding-bottom: 8px; }

.pagination .prev, .pagination .next, 
.navigation ul .prev, .navigation ul .next,
.portfolio-page__slider__controls .slide-arrow { font-size: 0; }
.portfolio-page__slider__controls .slide-arrow span { display: none; }

.pagination .current, .pagination .page:hover, .pagination .prev:hover, .pagination .next:hover, 
.navigation ul .current, .navigation ul .page-numbers:hover, .navigation ul .prev:hover, .navigation ul .next:hover,
.portfolio-page__slider__controls li button:hover, .portfolio-page__slider__controls li.slick-active button, .portfolio-page__slider__controls .slide-arrow:hover { background-color: var(--secondary); color: #fff; } 
 
.pagination .prev::before, .pagination .next::after, 
.navigation ul .prev::before, .navigation ul .next::after,
.portfolio-page__slider__controls .slide-arrow { font-family: 'FontAwesome'; font-size: 26px; }

.pagination .prev::before, 
.navigation ul .prev::before,
.portfolio-page__slider__controls .arrow-prev::before { content: '\f104'; }
 
.pagination .next::after, 
.navigation ul .next::after,
.portfolio-page__slider__controls .arrow-next::before { content: '\f105'; }

@media screen and (max-width: 767px) {
    .pagination .page, .pagination .prev, .pagination .next, .pagination .gap, 
    .navigation ul .page-numbers, .navigation ul .prev, .navigation ul .next, .navigation ul .dots,
    .portfolio-page__slider__controls .slide-arrow, .portfolio-page__slider__controls li button { height: 40px; width: 40px; }
}
/*-----------------------------------------------------------------*/
/*--- Social Networks Styles ---*/
/*-----------------------------------------------------------------*/
.social-networks { padding: 30px 0 0; }
.social-networks-list { display: flex; flex-wrap: wrap; }
.social-networks-item:not(:last-child) { padding-right: 26px; }
.social-networks-link { font-size: 24px; }
.social-networks-link:hover { color: #4d4d4d; }
/*-----------------------------------------------------------------*/
/*--- Image Gallery Styles ---*/
/*-----------------------------------------------------------------*/
.image-gallery__wrap { margin: 0 -12px; }
.image-gallery__img { display: block; max-width: 100%; margin: 0 12px 24px; width: calc(50% - 24px); }

@media screen and (max-width: 767px) {
    .image-gallery__img { margin: 0 6px 10px; width: calc(50% - 12px); }
}
/*-----------------------------------------------------------------*/
/*--- Buttons Styles ---*/
/*-----------------------------------------------------------------*/
.newsletter-signup-btn, .formstack-form .fsPreviousButton, .formstack-form .fsSubmitButton, 
.formstack-form .fsNextButton, .plain-text-image__button .btn, .grid-image-cards__action-button .btn, 
.grid-text-cards .btn, .section-with-icon-list .btn, .employment-page-banner__buttons .btn, 
.section-with-image-and-list .btn, .section-with-image .btn, .plain-text .btn, .plain-text-cta .btn { font-size: 0.7778rem !important; line-height: 1.4286; font-weight: 700; color: var(--button-color) !important; letter-spacing: 0.15em; text-transform: uppercase; text-align: center; display: inline-block; vertical-align: top; min-width: 250px; padding: 16px 20px 14px; border-radius: calc(var(--button-border-radius) * var(--theme-round)) !important; border: var(--button-border); background: var(--button-background) !important; }
.plain-text.color-scheme-dark .btn, .plain-text-cta.color-scheme-dark .btn, .plain-text-image.color-scheme-dark .btn { border: 1px solid #fff; }

.newsletter-signup-btn:hover .formstack-form .fsPreviousButton:hover, .formstack-form .fsSubmitButton:hover, 
.formstack-form .fsNextButton:hover, .plain-text-image__button .btn:hover, .grid-image-cards__action-button .btn:hover, 
.grid-text-cards .btn:hover, .section-with-icon-list .btn:hover, .employment-page-banner__buttons .btn:hover, 
.section-with-image-and-list .btn:hover, .section-with-image .btn:hover, .plain-text .btn:hover, .plain-text-cta .btn:hover { color: var(--button-active-color) !important; background-color: var(--button-active-background) !important; }

.formstack-form .fsPreviousButton, .formstack-form .fsSubmitButton, .formstack-form .fsNextButton { width: auto; max-width: 250px; margin: 0 auto; }

@media screen and (max-width: 767px) {
    .newsletter-signup-btn, .formstack-form .fsPreviousButton, .formstack-form .fsSubmitButton, .formstack-form .fsNextButton, .plain-text-image__button .btn, .grid-image-cards__action-button .btn, .grid-text-cards .btn, .plain-text .btn, .plain-text-cta .btn { min-width: 180px; padding: 12px 18px; }
    .formstack-form .fsPreviousButton, .formstack-form .fsSubmitButton, .formstack-form .fsNextButton { max-width: 160px; }
}
/*-----------------------------------------------------------------*/
/*--- Plain Text Sections Styles ---*/
/*-----------------------------------------------------------------*/
.plain-text.color-scheme-white, .plain-text-cta.color-scheme-white, .plain-text-image.color-scheme-white { background-color: #fff; }
.plain-text.color-scheme-dark, .plain-text-cta.color-scheme-dark, .plain-text-image.color-scheme-dark { background-color: var(--secondary); }

.plain-text.color-scheme-dark .wysiwyg, .plain-text-cta.color-scheme-dark .wysiwyg, .plain-text-image.color-scheme-dark .wysiwyg { color: #fff; }
.plain-text.color-scheme-dark .wysiwyg a, .plain-text-cta.color-scheme-dark .wysiwyg a, .plain-text-image.color-scheme-dark .wysiwyg a { color: #fff; }
.plain-text.color-scheme-dark .wysiwyg ul li::before, .plain-text-cta.color-scheme-dark .wysiwyg ul li::before, .plain-text-image.color-scheme-dark .wysiwyg ul li::before,
.plain-text.color-scheme-dark .wysiwyg ol li::before, .plain-text-cta.color-scheme-dark .wysiwyg ol li::before, .plain-text-image.color-scheme-dark .wysiwyg ol li::before { color: #fff; }
.plain-text.color-scheme-dark .wysiwyg blockquote, .plain-text-cta.color-scheme-dark .wysiwyg blockquote, .plain-text-image.color-scheme-dark .wysiwyg blockquote { border-left-color: #fff; }
.plain-text.color-scheme-dark .section__title, .plain-text-cta.color-scheme-dark .section__title, .plain-text-image.color-scheme-dark .section__title,
.plain-text.color-scheme-dark .section__headline, .plain-text-cta.color-scheme-dark .section__headline, .plain-text-image.color-scheme-dark .section__headline { color: #fff; }

.plain-text__container { max-width: 820px; }

.plain-text-marked-list__container { max-width: 1024px; }
.plain-text-marked-list__description { padding: 0; overflow: visible; }
.plain-text-marked-list__items { font-size: 0.7778rem; flex: 0 0 310px; }
.plain-text-marked-list__item { padding: 4px 0 20px 70px; background: url(../images/icons/icon-mark.svg) no-repeat left top / 48px; }

.plain-text-cta { text-align: center; }
.plain-text-cta__container { max-width: 820px; }
.plain-text-cta__headline { font-size: 1.7778rem; line-height: 1.25; }

.plain-text-image__container { max-width: 1630px; }
.plain-text-image, .section-with-image, .plain-text, .plain-text-cta { margin: 0 -8px; overflow: hidden; padding-left: 8px; padding-right: 8px; }
.plain-text-image__headline, .section-with-image__headline { padding: 3px 0 30px; }
.plain-text-image__description, .section-with-image__description { padding: 30px 0 0; }
.plain-text-image__button, .section-with-image__button, .plain-text__button, .plain-text-cta__button { padding: 30px 0 0; }
.section-with-image .col-media { position: relative; height: 600px; }
.plain-text-image__col-img { position: relative; height: 600px; }
.plain-text-image__img, .section-with-image__image { position: absolute; top: 0; height: 100%; width: calc(50vw - 8px); object-fit: cover; }
.style-contain .plain-text-image__img { object-fit: contain; top: 50%; left: 50%; transform: translate(-50%, -50%); width: auto; height: auto; max-width: 100%; max-height: 100%; }
.style-contain.plain-text-image__col-img { height: 500px; }
.plain-text-image__row, .section-with-image__row { align-items: center; }
.plain-text-image__row--text-left .plain-text-image__header, .plain-text-image__row--text-right .plain-text-image__header,
.section-with-image__row--img-right .section-with-image__header, .section-with-image__row--img-left .section-with-image__header { max-width: 520px; }
.plain-text-image__col-text:first-child:last-child .plain-text-image__header,
.section-with-image.col-content:first-child:last-child { max-width: none; }
.plain-text-image__img { left: 0; width: 100%; }
.section-with-image__row--img-right .section-with-image__image { right: -8px; border-radius: calc(var(--plain-text-image-border-radius) * var(--theme-round)) 0 0 calc(var(--plain-text-image-border-radius) * var(--theme-round)); }
.section-with-image__row--img-left .section-with-image__image { left: -8px; border-radius: 0 calc(var(--plain-text-image-border-radius) * var(--theme-round)) calc(var(--plain-text-image-border-radius) * var(--theme-round)) 0; }

.plain-text-image__header, .section-with-image__header { margin: 0 auto; }

@media screen and (min-width: 992px) {
    .plain-text-marked-list__items { padding-left: 116px; }
}

@media screen and (max-width: 1230px) {
    .plain-text-image__col-img { height: 650px; }
}

@media screen and (max-width: 767px) {
    .plain-text-marked-list__items { padding-top: 20px; }
    
    .plain-text-cta__headline { font-size: 1.4444rem; line-height: 1.2308; }
    
    .plain-text-image__headline, .section-with-image__headline { padding: 3px 0 0; }
    .plain-text-image__description, .plain-text-image__button,
    .plain-text__button, .plain-text-cta__button,
    .section-with-image__description, .section-with-image__button { padding: 20px 0 0; }
    .plain-text-image__row--text-left .plain-text-image__header, .plain-text-image__row--text-right .plain-text-image__header,
    .section-with-image__row--img-right .section-with-image__header, .section-with-image__row--img-left .section-with-image__header { max-width: none; }
    .plain-text-image__col-img, .section-with-image .col-media { height: 480px; order: -1 !important; margin-bottom: 20px; }
    .plain-text-image__col-img { height: 480px; }
    .style-contain.plain-text-image__col-img { height: auto; padding: 0; }
    .style-contain .plain-text-image__img { position: static; transform: none; }
    .section-with-image__row--img-right .section-with-image__image, .section-with-image__row--img-left .section-with-image__image { right: auto; left: -8px; width: calc(100% + 16px); border-radius: 0; }
}
/*-----------------------------------------------------------------*/
/*--- Grids Styles ---*/
/*-----------------------------------------------------------------*/
.grid-logos__header { text-align: center; max-width: 793px; margin: 0 auto; }
.grid-logos__headline { line-height: 1.25rem; font-size: 1.1rem; }
.grid-logos__container { max-width: 1424px; }
.grid-logos__list { display: flex; justify-content: center; flex-wrap: wrap; margin: 0 -12px; }
.grid-logos__col { flex: 0 0 20%; }
.grid-logos__item { padding: 0 10px 20px; }
.grid-logos__media { max-width: 240px; margin: 0 auto; }
.grid-logos__img { display: block; max-width: 100%; margin: 0 auto; }

.grid-vertical-cards-with-image__img--noimage, .grid-image-cards__img--noimage { background: #e4e4e4; display: flex; align-items: center; justify-content: center; }
.grid-vertical-cards-with-image__img--noimage::after, .grid-image-cards__img--noimage::after { content: '\f03e'; font-family: 'FontAwesome'; font-size: 60px; color: #c9c9c9; }

.grid-vertical-cards-with-image__header { max-width: 795px; margin: 0 auto; }
.grid-vertical-cards-with-image__item { padding: 0 0 60px; }
.grid-vertical-cards-with-image__item a { display: block; }
.grid-vertical-cards-with-image__media { overflow: hidden; position: relative; }
.grid-vertical-cards-with-image__content { padding: 0 40px; }
.grid-vertical-cards-with-image--circle .grid-vertical-cards-with-image__media { height: 230px; width: 230px; margin: 0 auto 24px; border-radius: 100%; }
.grid-vertical-cards-with-image--rectangle .grid-vertical-cards-with-image__media { border-radius: 8px; padding: 40.235% 0; margin: 0 0 42px; }
.grid-vertical-cards-with-image__img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.grid-vertical-cards-with-image__item__title { font-size: 1.7778rem; line-height: 1.3125; font-weight: 300; }
.grid-vertical-cards-with-image__item__subtitle { font-size: 0.6667rem; line-height: 1.3125; text-transform: uppercase; padding: 6px 0 0; }
.grid-vertical-cards-with-image__item__description { padding: 22px 0 0; }

.grid-image-cards .navigation { padding: 40px 0 24px; }
.grid-image-cards__container { max-width: 1392px; }
.grid-image-cards__header { text-align: center; max-width: 793px; margin: 0 auto; }
.grid-image-cards__headline { line-height: 1.25rem; font-size: 1.1rem; }
.grid-image-cards__item { padding: 0 0 24px; }
.grid-image-cards__item a { display: block; }
.grid-image-cards__media { overflow: hidden; position: relative; border-radius: 8px; }
.grid-image-cards--2-columns .grid-image-cards__media { padding: 38.18% 0; }
.grid-image-cards--3-columns .grid-image-cards__media { padding: 40.235% 0; }
.grid-image-cards__img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.grid-image-cards__item__title { font-size: 0.7778rem; color: #000; font-weight: 700; text-align: center; text-transform: uppercase; letter-spacing: 0.15em; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background: rgba(255, 255, 255, 0.83); border-radius: var(--button-border-radius); min-height: 50px; min-width: 160px; display: flex; align-items: center; justify-content: center; padding: 6px 30px 4px; transition: all 0.2s; }
.grid-image-cards__action-button { padding: 36px 0 24px; text-align: center; }
.grid-image-cards__item a:hover .grid-image-cards__item__title { opacity: 0.8; }

.grid-links-list .wysiwyg ul { padding-top: 10px; padding-bottom: 10px; }

.grid-text-cards { background: #fff; padding: 0 0 70px 0 !important; }
.grid-text-cards__header { text-align: center; }
.grid-text-cards__col { margin: 37px 0 24px; }
.grid-text-cards__item { color: #666; background: #f1f1f1; border-radius: 8px; box-shadow: 0 2px 12px rgba(0,0,0,0.09); padding: 57px 40px; position: relative; min-height: 100%; }

.grid-text-cards__item__serial-number { font-size: 1.85rem; color: #fff; display: flex; align-items: center; justify-content: center; height: 94px; width: 94px; border-radius: 100%; position: absolute; top: 0; transform: translateY(-50%); right: 40px; background: #000; }
.grid-text-cards__item__title { font-size: 1.7778rem; line-height: 1.15; font-weight: 300; color: #000; padding: 0 0 24px; }
.grid-text-cards .btn-wrap { text-align: center; padding: 36px 0 0; }

.grid-text-cards.color-scheme-white .grid-text-cards__item__serial-number { background-color: var(--secondary); color: #fff; }
.grid-text-cards.color-scheme-white .grid-text-cards__item { background: var(--secondary); }
.grid-text-cards.color-scheme-white .grid-text-cards__item__title { color: #fff; }
.grid-text-cards.color-scheme-white .grid-text-cards__item__description { color: #fff; }

.grid-text-cards.color-scheme-dark .grid-text-cards__item { background: #333; }
.grid-text-cards.color-scheme-dark .grid-text-cards__item__title { color: #fff; }
.grid-text-cards.color-scheme-dark .grid-text-cards__item__description { color: #fff; }

.section.grid-reviews-cards { padding-bottom: 0; }
.grid-reviews-cards__header { text-align: center; padding: 0; margin: 0 0 -20px; position: relative; z-index: 2; }
.grid-reviews-cards__container { max-width: 859px; }

@media screen and (max-width: 991px) {
    .grid-logos__col { flex: 0 0 33.3333%; }
}

@media screen and (max-width: 767px) {
    .grid-logos__col { flex: 0 0 50%; }
    .grid-vertical-cards-with-image__item { padding: 0 0 35px; }
    .grid-vertical-cards-with-image__content { padding: 0; }
    .grid-vertical-cards-with-image__item__title { font-size: 1.2222rem; }
    .grid-vertical-cards-with-image__item__description { padding: 15px 0 0; }
    .grid-vertical-cards-with-image--circle .grid-vertical-cards-with-image__media { margin-bottom: 20px; }
    .grid-vertical-cards-with-image--rectangle .grid-vertical-cards-with-image__media { margin-bottom: 20px; }
    
    .grid-image-cards__item__title { font-size: 0.6667rem; right: 20px; height: 34px; min-width: 120px; }
    .grid-image-cards__action-button { padding-top: 10px; }
    
    .grid-text-cards { padding: 70px 8px; }
    .grid-text-cards__item { padding: 40px 20px; }
    .grid-text-cards__item__serial-number { font-size: 1.1111rem; height: 60px; width: 60px; right: 30px; }
    .grid-text-cards__item__title { font-size: 1.2222rem; padding: 0 0 14px; }
    .grid-text-cards .btn-wrap { padding-top: 10px; }
}
/*-----------------------------------------------------------------*/
/*--- FAQ Styles ---*/
/*-----------------------------------------------------------------*/
.faq ul, .faq ol { margin: 0 auto; width: max-content; max-width: 100%; padding-top: 15px; padding-bottom: 15px; }
.faq__container { max-width: 820px; }
.faq__accordion { border-bottom: 2px solid #dfdfdf; }
.faq__accordion__title { color: var(--secondary); border-top: 2px solid #dfdfdf; padding: 30px 30px 30px 0; position: relative; cursor: pointer; }
.faq__accordion__title::after { content: ''; position: absolute; top: calc(50% + 8px); transform: translateY(-50%); right: 0; border-width: 10px 8px; border-style: solid; border-color: #b5b5b5 transparent transparent; transition: all 0.2s linear; }
.faq__accordion__title--open::after { top: calc(50% + -5px); transform: translateY(-50%) rotate(180deg); }
.faq__accordion__description { display: none; padding: 0 0 30px; }

@media screen and (max-width: 767px) {
    .faq__accordion__title { font-size: 0.8889rem; padding: 20px 30px 20px 0; }
    .faq__accordion__description { padding: 0 0 20px; }
}
/*-----------------------------------------------------------------*/
/*--- Form Styles ---*/
/*-----------------------------------------------------------------*/
.formstack-form__container { max-width: 1340px; }
.formstack-form__headline { font-size: 3.9444rem; line-height: 1.0845; color: var(--secondary); padding: 0 0 20px; }
.formstack-form__subline { font-size: 2rem; line-height: 1.3333; padding: 0 0 13px; }
.formstack-form__infobox__content { max-width: 512px; }
.formstack-form__infobox__content:not(:first-child) { margin-top: 34px; }
.formstack-form__infobox__content .formstack-form__headline { padding: 0 0 14px; }

.formstack-form__infobox__list__title { font-size: 2.145rem; line-height: 1.125; font-weight: 700; padding: 0 0 45px; color: var(--secondary); }
.formstack-form__infobox__list ul { padding: 0; margin: 0; list-style: none; counter-reset: numbers; }
.formstack-form__infobox__list__item { position: relative; padding: 0 0 36px 115px; counter-increment: numbers; }
.formstack-form__infobox__list__item::before { content: counter(numbers); font-size: 1.7414rem; font-weight: 300; position: absolute; left: 0; top: 24px; display: flex; align-items: center; justify-content: center; height: 70px; width: 70px; color: var(--secondary); background: #e6e6e6; border-radius: 100%; }
.formstack-form__infobox__list__item:not(:last-child) { margin-bottom: 30px; border-bottom: 2px solid #d8d8d8; }
.formstack-form__infobox__list__item__title { font-size: 1.6944rem; font-weight: 400; line-height: 1.2; color: var(--secondary); padding: 0 0 10px; }

.formstack-form__form__col:first-child:last-child .formstack-form__form__content { margin: 0 auto; max-width: 796px; }

.formstack-form .fsBody .fsForm { border: none; margin: 0; padding: 0; }
.formstack-form .fsBody > div { padding: 0; }

.formstack-form .field-auto-capture__message { margin-bottom: 50px; }

.formstack-form .fsBody .fsFieldCell.fsCell { box-shadow: none; border: none; background: none; position: relative; margin: 0 0 20px !important; }

/* .formstack-form .fsBody .fsLabel, .fsBody label { font-size: 0.7778rem; color: #8c8c8c; position: absolute; left: 6px; top: -10px; margin: 0; z-index: 10; transition: all 0.15s ease-in-out; } */
.formstack-form .fsBody .fsFieldFocused .fsLabel, .fsBody .fsFieldFocused label, .formstack-form .fsBody .fsFieldNotEmpty .fsLabel, .fsBody .fsFieldNotEmpty label { font-size: 0.6667rem; top: -25px; left: 0; }
.formstack-form .fsBody [fs-field-type="select"] .fsLabel, [fs-field-type="select"] .fsBody label { font-size: 0.7778rem; position: static; margin: 0 0 15px 5px; }
.formstack-form .fsBody [fs-field-type="textarea"] label { left: 10px; top: 10px; }

.formstack-form .fsPage .fsRowBody input[type=text], 
.formstack-form .fsPage .fsRowBody input[type=email], 
.formstack-form .fsPage .fsRowBody input[type=number], 
.formstack-form .fsPage .fsRowBody input[type=tel], 
.formstack-form .fsPage .fsRowBody input[type=button], 
.formstack-form .fsPage .fsForm textarea { border: none !important; border-bottom: 2px solid #d8d8d8 !important; height: 40px; border-radius: 0; padding: 0 10px 2px; }
.formstack-form .fsPage .fsRowBody select:not([multiple=multiple]) { font-size: 0.8889rem; line-height: 2; color: #7b7b7b; border-radius: 3px; padding: 0 45px 2px 10px; border: none; background: #ececec no-repeat center right 22px / 16px auto; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16.88092 10'%3E%3Cpath d='M0 0L8.44043 10L16.8809 0L0 0Z' id='Fill-1' fill='%23B5B5B5' fill-rule='evenodd' stroke='none' /%3E%3C/svg%3E"); }

.formstack-form .fsPage .fsRowBody.fsValidationError input[type=text], 
.formstack-form .fsPage .fsRowBody.fsValidationError input[type=email], 
.formstack-form .fsPage .fsRowBody.fsValidationError input[type=number], 
.formstack-form .fsPage .fsRowBody.fsValidationError input[type=tel], 
.formstack-form .fsPage .fsRowBody.fsValidationError input[type=button], 
.formstack-form .fsPage .fsForm.fsValidationError textarea { border-bottom-color: #ce5f6d !important; }

.formstack-form .fsForm .fsSubmit { margin: 0; padding: 0; }

@media screen and (min-width: 1100px) {
    .formstack-form__infobox__col:not(.order-1) { padding-right: 125px; }
    .formstack-form__infobox__col.order-1 { padding-left: 125px; }
}

@media screen and (max-width: 767px) {
    .formstack-form__headline { font-size: 2rem; padding-bottom: 16px; }
    .formstack-form__subline { font-size: 1.1250rem; }
    .formstack-form__infobox__col, .formstack-form__form__col { padding-bottom: 10px; }
    .formstack-form__form__headline { font-size: 1.4444rem; line-height: 1.2308; padding: 0 0 15px; }
    .formstack-form__infobox__content { max-width: none; }
    .formstack-form__infobox__content:not(:first-child) { margin-top: 0; }
    .formstack-form .fsBody .fsFieldCell.fsCell { padding: 0 0 20px !important; }
    .formstack-form .field-auto-capture__message { margin-bottom: 30px; }
    
    .formstack-form__infobox__list__item { padding-left: 70px; }
    .formstack-form__infobox__list__item::before { font-size: 1.3333rem; height: 50px; width: 50px; }
    
    .formstack-form__infobox__list__title { font-size: 1.6667rem; }
    .formstack-form__infobox__list__item::before { top: 6px; }
    .formstack-form__infobox__list__item__title { font-size: 1.4444rem; line-height: 1.2308; }
}
/*-----------------------------------------------------------------*/
/*--- Employment Banner Styles ---*/ 
/*-----------------------------------------------------------------*/
.employment-page-banner { display: flex; background: var(--secondary) no-repeat center / cover; position: relative; margin: 0 -8px; position: relative; z-index: 1; }
.employment-page-banner::before { opacity: 0; background: linear-gradient(to left, rgba(23, 84, 165, 0), rgb(51, 51, 51, 0.5) 74%, rgba(51, 51, 51, 0.80)); content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; }
.employment-page-banner__inner { position: relative; display: flex; align-items: center; width: 100%; z-index: 1; padding: 70px 8px; }
.employment-page-banner__inner { min-height: 636px; max-height: 800px; padding-bottom: 120px; }
.employment-page-banner__inner::before { background-image: linear-gradient(to left, rgba(2, 77, 31, 0) 5%, rgb(1 1 1 / 60%)); content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; }
.employment-page-banner__content { max-width: 700px; }
.employment-page-banner__title { font-size: 1.3333rem; line-height: 1.1667; color: #fff; }
.employment-page-banner__headline { font-size: 4rem; line-height: 1; color: #fff; padding: 15px 0; }
.employment-page-banner__description { font-size: 1.0556rem; line-height: 1.4737; color: #fff; padding: 15px 0; }
.employment-page-banner__buttons { display: flex; flex-wrap: wrap; padding: 15px 0; }
.employment-page-banner__buttons .btn-wrap { padding-top: 15px; }
.employment-page-banner__buttons .btn-wrap:not(:last-child) { padding-right: 35px; }
.employment-page-banner__buttons .btn:hover { color: #fff; }

@media screen and (max-width: 767px) {
    .employment-page-banner__inner { padding: 40px 8px; min-height: 348px; } 
    .employment-page-banner__title { font-size: 0.8889rem; }
    .employment-page-banner__headline { font-size: 2rem; line-height: 1.2; padding: 10px 0; }
    .employment-page-banner__description { font-size: 0.8125rem; padding: 10px 0; }
    .employment-page-banner__buttons .btn-wrap:not(:last-child) { padding-right: 22px; }
}
/*-----------------------------------------------------------------*/
/*--- Content With Icon List Styles ---*/ 
/*-----------------------------------------------------------------*/
.section-with-icon-list__header { text-align: center; }
.section-with-icon-list__column { max-width: 483px; margin: 0 auto; padding: 0; }
.section-with-icon-list__item { display: flex; align-items: flex-start; padding: 0 0 36px; }
.section-with-icon-list__item__media { flex: 0 0 60px; }
.section-with-icon-list__item__icon { display: block; width: 100%; max-width: 38px; filter: brightness(0); }
.section-with-icon-list .content-section__button { padding-top: 40px; }
.section-with-icon-list .btn-wrap { text-align: center; }

@media screen and (max-width: 767px) {
    .section-with-icon-list .content-section__button { padding-top: 0; }
    .section-with-icon-list__item { padding-bottom: 16px; }
}
/*-----------------------------------------------------------------*/
/*--- Content With Image and List ---*/ 
/*-----------------------------------------------------------------*/
.section-with-image-and-list { background: #f6f6f6; margin: 0 -8px; padding-left: 8px; padding-right: 8px; }
.section-with-image-and-list__header { text-align: center; }
.section-with-image-and-list .col-media, .section-with-image-and-list .col-content { display: flex; align-items: center; }
.section-with-image-and-list .col-content { justify-content: flex-end; } 
.section-with-image-and-list__image { display: block; width: 100%; height: auto; border-radius: 8px; }
.section-with-image-and-list__list { padding: 0; margin: 0; list-style: none; }
.section-with-image-and-list__item { display: flex; align-items: flex-start; max-width: 533px; }
.section-with-image-and-list__item:not(:last-child) { padding-bottom: 28px; }
.section-with-image-and-list__item__media { display: flex; align-items: center; justify-content: center; flex: 0 0 80px; height: 80px; margin-right: 18px; background: #009ba8; border-radius: 6px; }
.section-with-image-and-list__item__image { display: block; width: 100%; height: auto; max-width: 54px; }
.section-with-image-and-list__item__text { flex-basis: 0; flex-grow: 1; width: 100%; max-width: 100%; padding: 5px 0 0; }
.section-with-image-and-list__item__title { font-size: 1.1111rem; font-weight: 700; line-height: 1.4444; color: var(--secondary); padding: 0 0 6px; }
.section-with-image-and-list__item__description { font-size: 1rem; line-height: 1.2857; }
.section-with-image-and-list .content-section__button { padding-top: 66px; text-align: center; }

@media screen and (max-width: 767px) {
    .section-with-image-and-list__media { margin-bottom: 52px; }
    .section-with-image-and-list .content-section__button { padding-top: 36px; }
    .section-with-image-and-list .col-content { justify-content: flex-start; }
    .section-with-image-and-list__item__description { font-size: 1.1250rem; }
    .section-with-image-and-list__item__description { font-size: 0.8750rem; }
}
/*-----------------------------------------------------------------*/
/*--- Gallery Styles ---*/ 
/*-----------------------------------------------------------------*/
.section-with-gallery__header { text-align: center; }
.section-with-gallery__headline { padding: 0 0 16px; }
.section-with-gallery img { display: block; width: 100%; height: 100%; } 
.section-with-gallery .slider-item .row > div { padding-bottom: 32px; }
/*-----------------------------------------------------------------*/
/*--- Content Steps Styles ---*/ 
/*-----------------------------------------------------------------*/
.section-steps { background: #f6f6f6; margin: 0 -8px; padding-left: 8px; padding-right: 8px; }
.section-steps__header { text-align: center; }
.section-steps__container { max-width: 1036px; }
.section-steps__col { position: relative; }
.section-steps__item { text-align: center; max-width: 185px; margin: 0 auto; padding-bottom: 50px; }
.section-steps__media { position: relative; height: 128px; width: 128px; margin: 20px auto 40px; border-radius: 100%; background: var(--secondary); display: flex; align-items: center; justify-content: center; }
.section-steps__image { display: block; width: 74px; height: auto; }
.section-steps__number { font-size: 1.3333rem; line-height: 44px; color: #fff; text-align: center; position: absolute; top: -20px; left: 50%; transform: translateX(-50%); height: 40px; width: 40px; border-radius: 100%; background: var(--secondary); }
.section-steps__title { font-size: 1.0000rem; line-height: 1.4444; font-weight: 700; color: var(--secondary); }
/*-----------------------------------------------------------------*/
/*--- Content Positions List Styles ---*/ 
/*-----------------------------------------------------------------*/
.section-with-positions-list-embed { overflow: auto; }
.section-with-positions-list__header { text-align: center; }
.section-with-positions-list__headline { padding: 0 0 16px; }
.section-with-positions-list #team-engine-careers-wrapper { padding: 0 !important; }
.section-with-positions-list #team-engine-careers-wrapper .dataTables_wrapper .dataTables_filter { font-size: 0.8889rem; color: var(--secondary); padding: 0 0 20px; float: right; text-align: right; }
.section-with-positions-list #team-engine-careers-wrapper .dataTables_wrapper .dataTables_filter input { font-size: 1rem; height: 50px; width: 254px; border: 1px solid #dadada; background: #f6f6f6; border-radius: 4px; margin-left: 18px; padding: 0 12px; }

.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead .sorting::before,
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead .sorting_asc::before,
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead .sorting_desc::before { content: ''; border-style: solid; border-width: 13px 6px; border-color: transparent transparent #f6f6f6; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); margin-top: -18px; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead .sorting_asc::before { border-bottom-color: var(--secondary); }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead .sorting::after,
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead .sorting_asc::after,
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead .sorting_desc::after { content: ''; border-style: solid; border-width: 13px 6px; border-color: #f6f6f6 transparent transparent; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); margin-top: 16px; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead .sorting_desc::after { border-top-color: var(--secondary); }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead th, 
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead td { font-size: 1.3333rem; color: #fff; font-weight: 700; padding: 8px 40px 8px 26px; background: var(--secondary); height: 62px; text-align: left; position: relative; border: none; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead th:first-child, 
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead td:first-child { border-radius: 8px 0 0 0; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead th:last-child, 
.section-with-positions-list #team-engine-careers-wrapper table.dataTable thead td:last-child { border-radius: 0 8px 0 0; }

.section-with-positions-list #team-engine-careers-wrapper table.dataTable.stripe tbody tr.odd, 
.section-with-positions-list #team-engine-careers-wrapper table.dataTable.display tbody tr.odd { background: #f6f7f6; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody th, 
.section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody td { color: var(--secondary); padding: 8px 26px; height: 62px; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody tr:last-child th:first-child, 
.section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody tr:last-child td:first-child { border-radius: 0 0 0 8px; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody tr:last-child th:last-child, 
.section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody tr:last-child td:last-child { border-radius: 0 0 8px 0; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody tr:last-child td:first-child:last-child { border-radius: 0 0 8px 8px; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable.no-footer { border: none; border-radius: 0 0 8px 8px; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody th a, 
.section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody td a { color: inherit; }
.section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody tr { background: #ebebeb; }

@media screen and (max-width: 767px) {
    .section-with-positions-list #team-engine-careers-wrapper table.dataTable thead th, 
    .section-with-positions-list #team-engine-careers-wrapper table.dataTable thead td { font-size: 1.5rem; }
    .section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody th, 
    .section-with-positions-list #team-engine-careers-wrapper table.dataTable tbody td { font-size: 1.125rem; }
    .section-with-positions-list #team-engine-careers-wrapper .dataTables_wrapper .dataTables_filter input { width: 200px; }
}
/*-----------------------------------------------------------------*/
/*--- Content Image Cards Styles ---*/ 
/*-----------------------------------------------------------------*/
.image-cards { background: #f6f6f6; margin: 0 -8px; padding-left: 8px; padding-right: 8px; }
.image-cards__header { text-align: center; }
.image-cards__headline { padding: 0 0 16px; }
.image-cards__col { padding-bottom: 32px; }
.image-cards__item { background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 4px 0 rgba(44, 46, 48, 0.07); height: 100%; }
.image-cards__item a { color: inherit; text-decoration: none; }
.image-cards__image { display: block; width: 100%; height: auto; }
.image-cards__content { padding: 30px 24px; }
.image-cards__title { font-size: 1.7778rem; line-height: 1.2; font-weight: 300; color: var(--secondary); padding: 0 0 15px; }
.image-cards__btn { font-size: 0.6667rem; line-height: 1.2; color: var(--secondary); text-decoration: underline; padding: 25px 0 0; }
.image-cards__item:hover .image-cards__btn { text-decoration: none; }
.image-cards__image--no-image { padding: 27.3% 0; background: #bfbfbf url(../images/icons/icon-no-image.svg) no-repeat center / 100px; }

@media screen and (max-width: 767px) {
    .image-cards__title { font-size: 1.2rem; }
    .image-cards__description { font-size: 0.9rem; }
    .image-cards__btn { font-size: 1rem; }
    .image-cards__col:last-child { padding-bottom: 0; }
}
/*-----------------------------------------------------------------*/
/*--- Content Formstack Form Styles ---*/ 
/*-----------------------------------------------------------------*/
.section.formstack-form--background-grey { background: #f6f6f6; margin: 0 -8px; padding-left: 8px; padding-right: 8px; }
.section.formstack-form__header { max-width: 512px; }
.section.formstack-form__container { max-width: 1172px; }
.section.formstack-form__title { font-size: 3.9444rem; line-height: 1.0845; color: var(--secondary); padding: 0 0 20px; }
.section.formstack-form__subline { font-size: 2rem; line-height: 1.3333; padding: 0 0 20px; }

.section.formstack-form .fsform-container, .formstack-form .fsform-container { margin: 0 !important; }
.section.formstack-form .fsBody, .formstack-form .fsBody { background: none; padding: 0; margin: 0 !important; }
.section.formstack-form .fsBody .fsForm, .formstack-form .fsBody .fsForm { margin: 0; padding: 0; background: none; overflow: visible; }

.section.formstack-form .fsForm .fsFieldCell, .formstack-form .fsForm .fsFieldCell { width: 100%; }
.section.formstack-form .fsForm select, .formstack-form .fsForm select, .section.formstack-form .fsForm textarea, .formstack-form .fsForm textarea, 
.section.formstack-form .fsForm input[type=email], .formstack-form .fsForm input[type=email], .section.formstack-form .fsForm input[type=email], .formstack-form .fsForm input[type=email], 
.section.formstack-form .fsForm input[type=number], .formstack-form .fsForm input[type=number], .section.formstack-form .fsForm input[type=tel], .formstack-form .fsForm input[type=tel], 
.section.formstack-form .fsForm input[type=button], .formstack-form .fsForm input[type=button], .section.formstack-form .fsForm input[type=text], .formstack-form .fsForm input[type=text] { font-family: 'Lato'; font-size: 0.889rem; color: var(--secondary); border: 1px solid #dadada; border-radius: 3px; height: 50px; padding: 0 20px; box-shadow: none; display: block; }
.section.formstack-form input[type="text"], .formstack-form input[type="text"], .section.formstack-form input[type="email"], .formstack-form input[type="email"], 
.section.formstack-form input[type="password"], .formstack-form input[type="password"], .section.formstack-form input[type="number"], .formstack-form input[type="number"], 
.section.formstack-form input[type="button"], .formstack-form input[type="button"], .section.formstack-form textarea, .formstack-form textarea, 
.section.formstack-form select, .formstack-form select { outline: none; -webkit-appearance: none; box-shadow: none; }
.section.formstack-form input[type="text"]:focus, .formstack-form input[type="text"]:focus, .section.formstack-form input[type="email"]:focus, .formstack-form input[type="email"]:focus, 
.section.formstack-form input[type="password"]:focus, .formstack-form input[type="password"]:focus, .section.formstack-form input[type="number"]:focus, .formstack-form input[type="number"]:focus, 
.section.formstack-form input[type="button"]:focus, .formstack-form input[type="button"]:focus, .section.formstack-form textarea:focus, .formstack-form textarea:focus, 
.section.formstack-form select:focus, .formstack-form select:focus { box-shadow: none; } 
.section.formstack-form input::-webkit-input-placeholder, .formstack-form input::-webkit-input-placeholder { opacity: 1; color: var(--body-color); }
.section.formstack-form input:-ms-input-placeholder, .formstack-form input:-ms-input-placeholder { opacity: 1; color: var(--body-color); }
.section.formstack-form input:-moz-placeholder, .formstack-form input:-moz-placeholder { opacity: 1; color: var(--body-color); }
.section.formstack-form input::-moz-placeholder, .formstack-form input::-moz-placeholder { opacity: 1; color: var(--body-color); }
.section.formstack-form textarea::-webkit-input-placeholder, .formstack-form textarea::-webkit-input-placeholder { opacity: 1; color: var(--body-color); }
.section.formstack-form textarea:-ms-input-placeholder, .formstack-form textarea:-ms-input-placeholder { opacity: 1; color: var(--body-color); }
.section.formstack-form textarea:-moz-placeholder, .formstack-form textarea:-moz-placeholder { opacity: 1; color: var(--body-color); }
.section.formstack-form textarea::-moz-placeholder, .formstack-form textarea::-moz-placeholder { opacity: 1; color: var(--body-color); }
.section.formstack-form .fsForm textarea, .formstack-form .fsForm textarea { line-height: 1.5; height: 150px; resize: none; padding: 10px 20px; }
.section.formstack-form .fsForm select:not([multiple=multiple]), .formstack-form .fsForm select:not([multiple=multiple]) { line-height: 2; }
.section.formstack-form .fsForm .ui-slider-handle:focus, .formstack-form .fsForm .ui-slider-handle:focus, 
.section.formstack-form .fsForm input:focus, .formstack-form .fsForm input:focus, 
.section.formstack-form .fsForm select:focus, .formstack-form .fsForm select:focus,
.section.formstack-form .fsForm textarea:focus, .formstack-form .fsForm textarea:focus { box-shadow: none; }
.section.formstack-form button.fsSubmitButton, .formstack-form button.fsSubmitButton { font-family: 'Lato'; font-size: 0.8889rem !important; color: var(--button-color) !important; background: var(--button-background) !important; padding: 17px 20px; display: inline-block; vertical-align: middle; text-align: center; text-decoration: none; border-radius: calc(var(--button-border-radius) * var(--theme-round)) !important; border: var(--button-border); transition: all 0.3s ease; }
.section.formstack-form button.fsSubmitButton:hover, .formstack-form button.fsSubmitButton:hover { color: var(--button-active-color) !important; background-color: var(--button-active-background) !important; }
.section.formstack-form .fsForm .fsSubmit, .formstack-form .fsForm .fsSubmit { padding: 0; margin: 0 !important; }
.section.formstack-form .fsPagination, .formstack-form .fsPagination { text-align: left; }

.section.formstack-form .gform-theme--framework .gform-field-label > .gfield_required { color: #666; }
.section.formstack-form .gform-theme--framework .gfield_description { color: #666; }
.section.formstack-form .gform-theme--framework .gform_validation_errors .gform_submission_error { color: #f00; }

.section.formstack-form .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section.formstack-form .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section.formstack-form .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn))>button:not([id*=mceu_]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section.formstack-form .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section.formstack-form .gform-theme.gform-theme--framework.gform_wrapper input:is([type=submit],
.section.formstack-form [type=button],
.section.formstack-form [type=reset]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section.formstack-form .gform-theme.gform-theme--framework.gform_wrapper input:is([type=submit],[type=button],[type=reset]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section.formstack-form .gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover { background-color: #333; }

@media screen and (max-width: 767px) {
    .section.formstack-form__title { font-size: 2rem; padding: 0 0 16px;  }
    .section.formstack-form__subline { font-size: 1.1250rem; padding: 0 0 16px; }
    .section.formstack-form__subline:last-child { padding-bottom: 0; }
    .section.formstack-form__header { padding: 0 0 18px; }
}

.section-with-formstack-form--background-grey { background: #f6f6f6; margin: 0 -8px; padding-left: 8px; padding-right: 8px; }
.section-with-formstack-form__header { max-width: 512px; }
.section-with-formstack-form__container { max-width: 1172px; }
.section-with-formstack-form__title { font-size: 3.9444rem; line-height: 1.0845; color: var(--secondary); padding: 0 0 20px; }
.section-with-formstack-form__subline { font-size: 2rem; line-height: 1.3333; padding: 0 0 20px; }

.section-with-formstack-form .fsform-container, .formstack-form .fsform-container { margin: 0 !important; }
.section-with-formstack-form .fsBody, .formstack-form .fsBody { background: none; padding: 0; margin: 0 !important; }
.section-with-formstack-form .fsBody .fsForm, .formstack-form .fsBody .fsForm { margin: 0; padding: 0; background: none; overflow: visible; }

.section-with-formstack-form .fsForm .fsFieldCell, .formstack-form .fsForm .fsFieldCell { width: 100%; }
.section-with-formstack-form .fsForm select, .formstack-form .fsForm select, .section-with-formstack-form .fsForm textarea, .formstack-form .fsForm textarea, 
.section-with-formstack-form .fsForm input[type=email], .formstack-form .fsForm input[type=email], .section-with-formstack-form .fsForm input[type=email], .formstack-form .fsForm input[type=email], 
.section-with-formstack-form .fsForm input[type=number], .formstack-form .fsForm input[type=number], .section-with-formstack-form .fsForm input[type=tel], .formstack-form .fsForm input[type=tel], 
.section-with-formstack-form .fsForm input[type=button], .formstack-form .fsForm input[type=button], .section-with-formstack-form .fsForm input[type=text], .formstack-form .fsForm input[type=text] { font-family: 'Lato'; font-size: 0.889rem; color: var(--secondary); border: 1px solid #dadada; border-radius: 3px; height: 50px; padding: 0 20px; box-shadow: none; display: block; }
.section-with-formstack-form input[type="text"], .formstack-form input[type="text"], .section-with-formstack-form input[type="email"], .formstack-form input[type="email"], 
.section-with-formstack-form input[type="password"], .formstack-form input[type="password"], .section-with-formstack-form input[type="number"], .formstack-form input[type="number"], 
.section-with-formstack-form input[type="button"], .formstack-form input[type="button"], .section-with-formstack-form textarea, .formstack-form textarea, 
.section-with-formstack-form select, .formstack-form select { outline: none; -webkit-appearance: none; box-shadow: none; }
.section-with-formstack-form input[type="text"]:focus, .formstack-form input[type="text"]:focus, .section-with-formstack-form input[type="email"]:focus, .formstack-form input[type="email"]:focus, 
.section-with-formstack-form input[type="password"]:focus, .formstack-form input[type="password"]:focus, .section-with-formstack-form input[type="number"]:focus, .formstack-form input[type="number"]:focus, 
.section-with-formstack-form input[type="button"]:focus, .formstack-form input[type="button"]:focus, .section-with-formstack-form textarea:focus, .formstack-form textarea:focus, 
.section-with-formstack-form select:focus, .formstack-form select:focus { box-shadow: none; } 
.section-with-formstack-form input::-webkit-input-placeholder, .formstack-form input::-webkit-input-placeholder { opacity: 1; color: var(--body-color); }
.section-with-formstack-form input:-ms-input-placeholder, .formstack-form input:-ms-input-placeholder { opacity: 1; color: var(--body-color); }
.section-with-formstack-form input:-moz-placeholder, .formstack-form input:-moz-placeholder { opacity: 1; color: var(--body-color); }
.section-with-formstack-form input::-moz-placeholder, .formstack-form input::-moz-placeholder { opacity: 1; color: var(--body-color); }
.section-with-formstack-form textarea::-webkit-input-placeholder, .formstack-form textarea::-webkit-input-placeholder { opacity: 1; color: var(--body-color); }
.section-with-formstack-form textarea:-ms-input-placeholder, .formstack-form textarea:-ms-input-placeholder { opacity: 1; color: var(--body-color); }
.section-with-formstack-form textarea:-moz-placeholder, .formstack-form textarea:-moz-placeholder { opacity: 1; color: var(--body-color); }
.section-with-formstack-form textarea::-moz-placeholder, .formstack-form textarea::-moz-placeholder { opacity: 1; color: var(--body-color); }
.section-with-formstack-form .fsForm textarea, .formstack-form .fsForm textarea { line-height: 1.5; height: 150px; resize: none; padding: 10px 20px; }
.section-with-formstack-form .fsForm select:not([multiple=multiple]), .formstack-form .fsForm select:not([multiple=multiple]) { line-height: 2; }
.section-with-formstack-form .fsForm .ui-slider-handle:focus, .formstack-form .fsForm .ui-slider-handle:focus, 
.section-with-formstack-form .fsForm input:focus, .formstack-form .fsForm input:focus, 
.section-with-formstack-form .fsForm select:focus, .formstack-form .fsForm select:focus,
.section-with-formstack-form .fsForm textarea:focus, .formstack-form .fsForm textarea:focus { box-shadow: none; }
.section-with-formstack-form button.fsSubmitButton, .formstack-form button.fsSubmitButton { font-family: 'Lato'; font-size: 0.8889rem !important; color: var(--button-color) !important; background: var(--button-background) !important; padding: 17px 20px; display: inline-block; vertical-align: middle; text-align: center; text-decoration: none; border-radius: calc(var(--button-border-radius) * var(--theme-round)) !important; border: var(--button-border); transition: all 0.3s ease; }
.section-with-formstack-form button.fsSubmitButton:hover, .formstack-form button.fsSubmitButton:hover { color: var(--button-active-color) !important; background-color: var(--button-active-background) !important; }
.section-with-formstack-form .fsForm .fsSubmit, .formstack-form .fsForm .fsSubmit { padding: 0; margin: 0 !important; }
.section-with-formstack-form .fsPagination, .formstack-form .fsPagination { text-align: left; }

.section-with-formstack-form .gform-theme--framework .gform-field-label > .gfield_required { color: #666; }
.section-with-formstack-form .gform-theme--framework .gfield_description,
.section-with-formstack-form .gform-theme--framework .gform_validation_errors .gform_submission_error { color: #f00; }

.section-with-formstack-form .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section-with-formstack-form .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section-with-formstack-form .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn))>button:not([id*=mceu_]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section-with-formstack-form .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section-with-formstack-form .gform-theme.gform-theme--framework.gform_wrapper input:is([type=submit],
.section-with-formstack-form [type=button],
.section-with-formstack-form [type=reset]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section-with-formstack-form .gform-theme.gform-theme--framework.gform_wrapper input:is([type=submit],[type=button],[type=reset]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, 
.section-with-formstack-form .gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover { background-color: #333; }

@media screen and (max-width: 767px) {
    .section-with-formstack-form__title { font-size: 2rem; padding: 0 0 16px;  }
    .section-with-formstack-form__subline { font-size: 1.1250rem; padding: 0 0 16px; }
    .section-with-formstack-form__subline:last-child { padding-bottom: 0; }
    .section-with-formstack-form__header { padding: 0 0 18px; }
}
/*-----------------------------------------------------------------*/
/*--- Newsletter Signup Styles ---*/ 
/*-----------------------------------------------------------------*/
.newsletter-signup { background: #525252; }
.newsletter-signup__header { text-align: center; }
.newsletter-signup__title { color: var(--newsletter-title); }
.newsletter-signup__headline { font-size: 2.6667rem; line-height: 1.2; font-weight: 300; color: #d2dbc5; letter-spacing: 0.01em; padding: 0 0 20px; }
.newsletter-signup__subline { font-size: 2rem; line-height: 1; font-weight: 300; color: #fff; letter-spacing: 0.01em; }
.newsletter-signup__button { text-align: center; }
.newsletter-signup-btn { color: var(--newsletter-button-color) !important; background-color: var(--newsletter-button-background) !important; }
.newsletter-signup-btn:hover { background-color: var(--newsletter-button-active-background) !important; color: var(--newsletter-button-active-color) !important; }

@media screen and (min-width: 992px) {
  .newsletter-signup__header { max-width: 450px; margin: 0 auto; }
}

@media screen and (max-width: 767px) {
  .newsletter-signup__headline { font-size: 2rem; }
  .newsletter-signup__subline { font-size: 1.4444rem; line-height: 1.2308; }
}
/*-----------------------------------------------------------------*/
/*--- Footer Styles ---*/
/*-----------------------------------------------------------------*/
.footer { font-size: 0.7778rem; color: #fff; padding: 100px 8px; background: #4d4d4f; }
.footer__logo__link { display: block; max-width: 200px; }
.footer__logo__img { display: block; max-width: 100%; height: auto; }

.footer__description { font-size: 0.6667rem; padding: 30px 0 0; }
.footer__description__title { font-weight: 700; color: #ccc; padding: 0 0 5px; }

.footer ul { padding: 0; margin: 0; list-style: none; }
.footer__title { font-size: 0.8889rem; color: #ccc; font-weight: 700; text-transform: uppercase; letter-spacing: 0.15em; padding: 0 0 24px; }

.footer__menu a { display: block; padding: 6px 0; text-transform: uppercase; letter-spacing: 0.15em; }
.footer__menu a:hover, .footer__menu .current-menu-item a { color: #fff; }

.footer__copyright { font-size: 0.6667rem; padding: 20px 0 0; }
.footer__privacy-policy { font-size: 0.6667rem; }
.footer__privacy-policy a:not(:last-child):after {
    content: ' | ';
}

@media screen and (max-width: 991px) {
    .footer__logo { padding: 0 0 30px; }
    .footer__description { padding: 0 0 30px; }
}

@media screen and (max-width: 767px) {
    .footer { padding: 70px 8px; }
    .footer__menu { padding-bottom: 20px; }
    .footer__title { padding-bottom: 5px; }
}

/**
/* Lightbox overrides
/*/
.modal-backdrop {
    background-color: rgb(250,250,250);
    opacity: 0.9 !important;
    z-index: 10000;
}
.modal {
    z-index: 10001;
}
