/*
Theme Name: Impreza Child
Template: Impreza
Author: oktodigital
Author URI: https://oktodigital.com/
*/


/*****************************
**
** GENERAL
**
******************************/

:root {
    /***** General */
    --element-radius: 10px;
    /***** Icons / Ornament SVGs */
    --ornament-quote: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjUiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyNSAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTcuMjg0MTcgMEwxMC42MTE1IDIuNjU0ODdDNy43MzM4MSA0LjUxMzI4IDUuMTI1OSA4LjA1MzEgNC44NTYxMSAxMC44ODVDNC45NDYwNCAxMC44ODUgNS41NzU1NCAxMC43OTY1IDYuMDI1MTggMTAuNzk2NUM4LjU0MzE3IDEwLjc5NjUgMTAuMzQxNyAxMi42NTQ5IDEwLjM0MTcgMTUuMzA5N0MxMC4zNDE3IDE3Ljg3NjEgOC4yNzMzOCAyMCA1LjU3NTU0IDIwQzIuNjA3OTEgMjAgMCAxNy42MTA2IDAgMTMuMjc0M0MwIDcuODc2MTEgMy4xNDc0OCAyLjkyMDM1IDcuMjg0MTcgMFpNMjEuNjcyNyAwTDI1IDIuNjU0ODdDMjIuMTIyMyA0LjUxMzI4IDE5LjYwNDMgOC4wNTMxIDE5LjI0NDYgMTAuODg1QzE5LjMzNDUgMTAuODg1IDE5Ljk2NCAxMC43OTY1IDIwLjQxMzcgMTAuNzk2NUMyMi45MzE3IDEwLjc5NjUgMjQuODIwMSAxMi42NTQ5IDI0LjgyMDEgMTUuMzA5N0MyNC44MjAxIDE3Ljg3NjEgMjIuNjYxOSAyMCAxOS45NjQgMjBDMTYuOTk2NCAyMCAxNC4zODg1IDE3LjYxMDYgMTQuMzg4NSAxMy4yNzQzQzE0LjM4ODUgNy44NzYxMSAxNy41MzYgMi45MjAzNSAyMS42NzI3IDBaIiBmaWxsPSIjRDg2MDE4Ii8+Cjwvc3ZnPgo=');
}

/*********************
 * VERICLOCK CLASSES
 * 
 **********************/
.vc_canada_only {
	display: none;
}

/*****************************
**
** HELPER CLASSES
**
******************************/

.d-none {
    display: none !important;
}

.m-0,
.wpb_wrapper .g-cols>.m-0 {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
}

.mb-0,
.wpb_wrapper .g-cols>.mb-0 {
    margin-bottom: 0 !important;
}

.mt-0,
.wpb_wrapper .g-cols>.mt-0 {
    margin-top: 0 !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.width-100 {
    width: 100%;
}

.height-100 {
    height: 100%;
}

.grayscale img {
    filter: grayscale(100%);
}

.overflow_hidden {
    overflow: hidden;
}

.overflow_visible {
    overflow: visible;
}

@media (min-width: 800px) {
    .two_columns ul {
        columns: 2;
    }
}

.no-touch .show_only_on_touch_devices {
    display: none !important;
}


/*****************************
**
** GENERAL CUSTOMIZATIONS
**
******************************/

.mfp-bottom-bar {
    display: none;
}

.mfp-container:after,
.mfp-arrow:before {
    font-size: 1.5rem;
}

.w-gallery-item-meta:empty,
.w-html:empty {
    display: none;
}

.w-btn,
img,
label,
.g-breadcrumbs,
::placeholder {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.w-post-elm.type_image,
img {
    line-height: 0;
}

.round img {
    border-radius: var(--element-radius, 0px);
}

.w-image.push_to_left img {
    display: block;
    margin-right: auto;
}

.w-image.push_to_right img {
    display: block;
    margin-left: auto;
}


/*****************************
**
** COLORS
**
******************************/


/***** GENERAL */

:root {
    --success-color: #7DA50B;
    --warning-color: #EDC25E;
    --error-color: #FF003D;
    --color-content-bold: var(--color-content-heading);
    --color-alt-content-bold: var(--color-alt-content-heading);
    --color-footer-bold: var(--color-footer-heading);
    --color-footer-faded: #9FA1A3;
    --color-faded: var(--color-content-faded);
    --color-white: #FFFFFF;
    --color-black: #000000;
}

.color_white {
    color: var(--color-white);
}

.background_white {
    background: #FFFFFF;
}

.color_black {
    color: var(--color-black);
}

.color_faded {
    color: var(--color-faded);
}

.color_alternate {
    --color-faded: var(--color-alt-content-faded);
}

.color_footer-bottom {
    --color-faded: var(--color-footer-faded, var(--color-alt-content-faded));
}


/***** PLACEHOLDER COLORS */

::placeholder {
    color: var(--color-content-text);
    opacity: 1;
}


/* .l-section.color_alternate ::placeholder,
.l-section.color_footer-bottom ::placeholder {
    color: var(--color-footer-faded);
} */


/***** HIGHLIGHT COLORS */

::selection {
    background: var(--color-content-primary);
    color: var(--color-content-bg);
}

::-moz-selection {
    background: var(--color-content-primary);
    color: var(--color-content-bg);
}


/* .l-section.color_alternate *::selection {
    background: #FFFFFF;
    color: var(--color-content-secondary);
}


.l-section.color_alternate *::-moz-selection {
    background: #FFFFFF;
    color: var(--color-content-primary);
} */


/*****************************
**
** PAGE LAYOUT
**
******************************/


/***** GENERAL */

:root {
    /***** Layout */
    --page-layout-gutter: 0.8333rem;
    --page-layout-site-width: 1720px;
}


/***** PAGE LAYOUT - OUTHER CONTAINER */


/* #page-content .l-section,
#page-footer .l-section {
    max-width: var(--page-layout-site-width);
}

@media  (min-width: 1840px) {
    #page-content .w-separator.width_screen {
        margin-right: calc( var(--site-content-width) / 2 + 0px / 2 - calc(var(--page-layout-site-width) / 2));
        margin-left: calc( var(--site-content-width) / 2 + 0px / 2 - calc(var(--page-layout-site-width) / 2));
    }
} */


/***** PAGE LAYOUT - GUTTERS */

.g-cols.type_default>div>.vc_column-inner,
.g-cols.via_flex.type_default>div>.vc_column-inner {
    padding-left: var(--page-layout-gutter);
    padding-right: var(--page-layout-gutter);
}

.g-cols.type_default,
.g-cols.via_flex.type_default {
    margin-left: calc(-1 * var(--page-layout-gutter));
    margin-right: calc(-1 * var(--page-layout-gutter));
}


/***** PAGE LAYOUT - CONTAINER PADDINGS */

:root {
    --page-layout-container-padding: 20px;
}

@media (min-width: 768px) {
     :root {
        --page-layout-container-padding: 30px;
    }
}

@media (min-width: 1024px) {
     :root {
        --page-layout-container-padding: 40px;
    }
}

@media (min-width: 1280px) {
     :root {
        --page-layout-container-padding: 50px;
    }
}

.l-subheader,
.l-section:not(.width_full) {
    padding-left: var(--page-layout-container-padding) !important;
    padding-right: var(--page-layout-container-padding) !important;
}


/*****************************
**
** SECTION SPACINGS
**
******************************/


/***** GENERAL */

:root {
    /* small */
    --section-height-small-top-padding: 30px;
    --section-height-small-bottom-padding: 30px;
    /* medium */
    --section-height-medium-top-padding: 50px;
    --section-height-medium-bottom-padding: 50px;
    /* large */
    --section-height-large-top-padding: 70px;
    --section-height-large-bottom-padding: 70px;
    /* huge */
    --section-height-huge-top-padding: 75px;
    --section-height-huge-bottom-padding: 75px;
}

@media (min-width: 768px) {
     :root {
        /* small */
        --section-height-small-top-padding: 50px;
        --section-height-small-bottom-padding: 50px;
        /* medium */
        --section-height-medium-top-padding: 70px;
        --section-height-medium-bottom-padding: 70px;
        /* large */
        --section-height-large-top-padding: 100px;
        --section-height-large-bottom-padding: 100px;
        /* huge */
        --section-height-huge-top-padding: 100px;
        --section-height-huge-bottom-padding: 100px;
    }
}

@media (min-width: 1025px) {
     :root {
        /* small */
        --section-height-small-top-padding: 50px;
        --section-height-small-bottom-padding: 50px;
        /* medium */
        --section-height-medium-top-padding: 80px;
        --section-height-medium-bottom-padding: 80px;
        /* large */
        --section-height-large-top-padding: 100px;
        --section-height-large-bottom-padding: 100px;
        /* huge */
        --section-height-huge-top-padding: 125px;
        --section-height-huge-bottom-padding: 125px;
    }
}

@media (min-width: 1280px) {
     :root {
        /* small */
        --section-height-small-top-padding: 75px;
        --section-height-small-bottom-padding: 75px;
        /* medium */
        --section-height-medium-top-padding: 100px;
        --section-height-medium-bottom-padding: 100px;
        /* large */
        --section-height-large-top-padding: 150px;
        --section-height-large-bottom-padding: 150px;
        /* huge */
        --section-height-huge-top-padding: 200px;
        --section-height-huge-bottom-padding: 200px;
    }
}


/***** HEIGHT SMALL */

.l-section.height_small {
    padding-top: var(--section-height-small-top-padding);
    padding-bottom: var(--section-height-small-bottom-padding);
}


/***** HEIGHT MEDIUM */

.l-section.height_medium {
    padding-top: var(--section-height-medium-top-padding);
    padding-bottom: var(--section-height-medium-bottom-padding);
}


/***** HEIGHT LARGE */

.l-section.height_large {
    padding-top: var(--section-height-large-top-padding);
    padding-bottom: var(--section-height-large-bottom-padding);
}


/***** HEIGHT HUGE */

.l-section.height_huge {
    padding-top: var(--section-height-huge-top-padding);
    padding-bottom: var(--section-height-huge-bottom-padding);
}


/***** CUSTOM HEIGHTS */

#page-content>section.section_padding_top-huge {
    padding-top: var(--section-height-huge-top-padding);
}

#page-content>section.section_padding_bottom-huge {
    padding-bottom: var(--section-height-huge-bottom-padding);
}

#page-content>section.section_padding_top-large {
    padding-top: var(--section-height-large-top-padding);
}

#page-content>section.section_padding_bottom-large {
    padding-bottom: var(--section-height-large-bottom-padding);
}

#page-content>section.section_padding_top-medium {
    padding-top: var(--section-height-medium-top-padding);
}

#page-content>section.section_padding_bottom-medium {
    padding-bottom: var(--section-height-medium-bottom-padding);
}

#page-content>section.section_padding_top-small {
    padding-top: var(--section-height-small-top-padding);
}

#page-content>section.section_padding_bottom-small {
    padding-bottom: var(--section-height-small-bottom-padding);
}


/***** TABS - FULL WIDTH **/

.l-section.width_full>div>.g-cols.cols_1>div>div>.w-tabs.layout_hor .w-tabs-section-content,
.l-section.width_full>div>div>.vc_col-sm-12>div>div>.w-tabs.layout_hor .w-tabs-section-content {
    padding: var(--section-height-medium-top-padding) var(--page-layout-container-padding) var(--section-height-medium-bottom-padding);
}


/*****************************
**
** SEPARATOR SPACINGS
**
******************************/


/***** GENERAL */

:root {
    --separator_height_size_small: 30px;
    --separator_height_size_medium: 40px;
    --separator_height_size_large: 60px;
    --separator_height_size_huge: 80px;
}

@media (min-width: 768px) {
     :root {
        --separator_height_size_small: 20px;
        --separator_height_size_medium: 40px;
        --separator_height_size_large: 80px;
        --separator_height_size_huge: 120px;
    }
}

@media (min-width: 1024px) {
     :root {
        --separator_height_size_small: 40px;
        --separator_height_size_medium: 50px;
        --separator_height_size_large: 100px;
        --separator_height_size_huge: 200px;
    }
}

@media (min-width: 1280px) {
     :root {
        --separator_height_size_small: 60px;
        --separator_height_size_medium: 100px;
        --separator_height_size_large: 150px;
        --separator_height_size_huge: 200px;
    }
}


/***** WITHOUT LINE */

.l-section .w-separator.size_huge {
    height: var(--separator_height_size_huge);
}

.l-section .w-separator.size_large {
    height: var(--separator_height_size_large);
}

.l-section .w-separator.size_medium {
    height: var(--separator_height_size_medium);
}

.l-section .w-separator.size_small {
    height: var(--separator_height_size_small);
}


/***** WITH LINE */

.l-section .w-separator.size_huge.with_line {
    height: calc(2 * var(--separator_height_size_huge));
}

.l-section .w-separator.size_large.with_line {
    height: calc(2 * var(--separator_height_size_large));
}

.l-section .w-separator.size_medium.with_line {
    height: calc(2 * var(--separator_height_size_medium));
}

.l-section .w-separator.size_small.with_line {
    height: calc(2 * var(--separator_height_size_small));
}


/*****************************
**
** CUSTOM OFFSETS
**
******************************/

:root {
    --offset-column: calc((1 / 12) * (var(--site-content-width) - 22 * var(--page-layout-gutter)));
    --offset-column-sm: calc(((1 / 12) * (var(--site-content-width) - 22 * var(--page-layout-gutter))) / 2);
    --offset-column-xs: calc(((1 / 12) * (var(--site-content-width) - 22 * var(--page-layout-gutter))) / 4);
    --offset-element: calc(var(--offset-column) + var(--page-layout-gutter) * 2);
    --offset-element-sm: calc((var(--offset-column) + var(--page-layout-gutter) * 2) / 2);
    --offset-element-xs: calc((var(--offset-column) + var(--page-layout-gutter) * 2) / 4);
}

@media (min-width: 1280px) {
    /** for columns */
    .offset_left.vc_column_container>.vc_column-inner>.wpb_wrapper {
        margin-left: var(--offset-column);
    }
    .offset_right.vc_column_container>.vc_column-inner>.wpb_wrapper {
        margin-right: var(--offset-column);
    }
    .offset_left-sm.vc_column_container>.vc_column-inner>.wpb_wrapper {
        margin-left: var(--offset-column-sm);
    }
    .offset_right-sm.vc_column_container>.vc_column-inner>.wpb_wrapper {
        margin-right: var(--offset-column-sm);
    }
    .offset_left-xs.vc_column_container>.vc_column-inner>.wpb_wrapper {
        margin-left: var(--offset-column-xs);
    }
    .offset_right-xs.vc_column_container>.vc_column-inner>.wpb_wrapper {
        margin-right: var(--offset-column-xs);
    }
    /** for elements */
    .offset_left:not(.vc_column_container) {
        margin-left: var(--offset-element);
    }
    .offset_right:not(.vc_column_container) {
        margin-right: var(--offset-element);
    }
    .offset_left-sm:not(.vc_column_container) {
        margin-left: var(--offset-element-sm);
    }
    .offset_right-sm:not(.vc_column_container) {
        margin-right: var(--offset-element-sm);
    }
    .offset_left-xs:not(.vc_column_container) {
        margin-left: var(--offset-element-xs);
    }
    .offset_right-xs:not(.vc_column_container) {
        margin-right: var(--offset-element-xs);
    }
}


/*****************************
**
** DEFAULT TYPOGRAPHY
**
******************************/


/***** GENERAL */

:root {
    /***** Typography */
    --default-font-weight: 400;
    --bold-font-weight: 700;
    --heading-font-weight: 700;
    /***** Font Awesome */
    --fa-font-family: 'Font Awesome 6 Pro';
    --fa-font-family-brands: 'Font Awesome 6 Brands';
    --fa-font-weight: 400;
}


/***** SPACINGS */

p,
ul,
ol,
dl,
address,
pre,
table,
blockquote,
fieldset,
.wp-caption,
.w-gallery {
    margin-bottom: 1.667rem;
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child,
ul:last-child,
ol:last-child,
li:last-child,
pre:last-child,
table:last-child,
address:last-child,
fieldset:last-child,
blockquote:last-child,
.wp-caption:last-child,
.w-gallery:last-child {
    margin-bottom: 0;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
    padding-top: 0;
}


/***** STYLES */

em {
    font-style: italic;
}

strong,
b {
    color: var(--color-content-bold);
    font-weight: var(--bold-font-weight);
}

.l-section.color_footer-bottom strong,
.l-section.color_footer-bottom b {
    color: var(--color-footer-bold);
}

.l-section.color_alternate strong,
.l-section.color_alternate b {
    color: var(--color-alt-content-bold);
}

span[style*="color:"]>strong,
span[style*="color:"]>b,
.l-section.color_alternate span[style*="color:"]>strong,
.l-section.color_alternate span[style*="color:"]>b {
    color: inherit;
}


/***** LINKS */

.post_content p a:not(.button):not(.w-btn),
p a:not(.button):not(.w-btn),
.wpb_text_column a:not(.button):not(.w-btn) {
    text-decoration: underline;
}

.no-touch .post_content p a:not(.button):not(.w-btn):hover,
.no-touch p a:not(.button):not(.w-btn):hover,
.no-touch .wpb_text_column a:not(.button):not(.w-btn):hover {
    text-decoration: none;
}


/***** CUSTOMIZATIONS - FONT AWESOME */

.w-toplink span:not(.ripple-container):after,
.w-popup-closer::before,
.w-dropdown-current .w-dropdown-item:after,
.mfp-arrow:before,
.mfp-container:after,
header#page-header .w-search-close:before,
header#page-header .w-nav-close::before,
.w-filter-list-closer:before,
.pagination .page-numbers.next:after,
.pagination .page-numbers.prev:after {
    font-weight: var(--fa-font-weight, 400);
    font-family: var(--fa-font-family, "fontawesome");
}


/*****************************
**
** CUSTOM TYPOGRAPHY
**
******************************/

.text_default {
    font-weight: var(--default-font-weight);
    color: var(--color-content-text);
}

.text_small {
    font-size: 14px;
}

@media (min-width: 768px) {
    .text_small {
        font-size: 16px;
    }
}


/***** CUSTOM FONT SIZES */

@media (min-width: 768px) {
    .heading_big h2 {
        font-size: 56px;
    }
}


/* @media (min-width: 1280px) {
    body h1 {
        font-size: 80px;
    }
    body h2 {
        font-size: 72px;
    }
} */

@media (max-width: 1279px) {
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        text-wrap: balance;
    }
}


/*** CUSTOM FONT STYLES */

html,
.l-header,
.widget,
.menu-item-object-us_page_block {
    font-feature-settings: 'pnum' on, 'lnum' on;
}

@media (max-width: 820px) {
    .mobile_center {
        text-align: center;
    }
}

@media (min-width: 821px) and (max-width: 1023px) {
    .tablet_center {
        text-align: center;
    }
}

@media (min-width: 1024px) and (max-width: 1024px) {
    .tablets_align_center {
        text-align: initial !important;
        justify-content: flex-start !important;
    }
}


/***** HEADING SECTION */

.section_heading h2:last-child,
h2.section_heading:not(:last-child) {
    margin-bottom: 30px;
}

@media (min-width: 768px) {
    .section_heading h2:last-child,
    h2.section_heading:not(:last-child) {
        margin-bottom: 70px;
    }
}


/*****************************
**
** EDITOR STYLES - font styles for custom TinyMCE types
**
******************************/

.no-wrap {
    white-space: nowrap;
}


/** perex **/

.perex {
    font-size: 18px;
    line-height: 1.5;
}

@media (min-width: 768px) {
    .perex {
        font-size: 21px;
    }
}


/* .perex:not(:last-child) {
    margin-bottom: 2.778rem;
}
 */


/** large text **/

.large {
    font-size: 21px;
    line-height: 1.5;
}

@media (min-width: 768px) {
    .large {
        font-size: 24px;
    }
}


/* .large:not(:last-child) {
    margin-bottom: 2.778rem;
} */


/** tagline **/

.tagline {
    font-family: var(--font-h1);
    font-weight: var(--heading-font-weight);
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0;
    text-transform: uppercase;
    color: var(--color-content-primary);
}

.tagline:not(:last-child) {
    margin-bottom: 10px;
}

.color_alternate .tagline {
    color: var(--color-alt-content-heading);
}

.color_footer-bottom .tagline {
    color: var(--color-footer-heading);
}

.offset_tagline {
    margin-top: calc(16px * 1.5 + 10px);
}

@media (min-width: 821px) {
    .offset_tagline-after-stacking {
        margin-top: calc(16px + 10px);
    }
}

.wpb_text_column .tagline+h1:not(:first-child),
.wpb_text_column .tagline+h2:not(:first-child),
.wpb_text_column .tagline+h3:not(:first-child),
.wpb_text_column .tagline+h4:not(:first-child),
.wpb_text_column .tagline+h5:not(:first-child),
.wpb_text_column .tagline+h6:not(:first-child) {
    padding-top: 0;
}


/*****************************
**
** BUTTONS
**
******************************/


/***** GENERAL */

.w-vwrapper>.w-btn-wrapper:first-child {
    margin-top: 0;
}

.w-grid+.w-btn-wrapper {
    margin-top: 1.667rem;
    margin-bottom: 0;
}

.w-separator+.w-btn-wrapper {
    margin-top: 0;
    margin-bottom: 0;
}

.w-btn i {
    font-size: inherit;
    vertical-align: baseline;
}

.w-btn.icon_atleft i {
    margin-right: 0.556rem;
}

.w-btn.icon_atright i {
    margin-left: 0.556rem;
}


/***** CUSTOM TWEAKS */

.remove_btn_margins .w-btn-wrapper {
    margin-top: 0;
    margin-bottom: 0;
}


/**** Custom responsivity */

@media (max-width: 767px) {
    .menu-item.mobile_block>.w-btn,
    .w-btn.mobile_block {
        display: block;
        width: 100%;
    }
}


/**** Custom icon colors */

.icon_color-primary i,
.w-text.icon_color-primary i,
.w-btn.icon_color-primary i {
    color: var(--color-content-primary);
    transition: color .3s ease;
}

.icon_color-secondary i,
.w-text.icon_color-secondary i,
.w-btn.icon_color-secondary i {
    color: var(--color-content-secondary);
    transition: color .3s ease;
}

.color_alternate .icon_color-primary i,
.color_alternate .w-text.icon_color-primary i,
.color_alternate .w-btn.icon_color-primary i {
    color: var(--color-alt-content-primary);
}

.color_alternate .icon_color-secondary i,
.color_alternate .w-text.icon_color-secondary i,
.color_alternate .w-btn.icon_color-secondary i {
    color: var(--color-alt-content-secondary);
}


/***** PRIMARY BTN */

.w-btn.us-btn-style_1.btn_medium {
    padding: 1em 2.5em;
    font-size: 16px;
}


/***** SECONDARY BTN */

.w-btn.us-btn-style_2.btn_medium {
    padding: 1em 2.5em;
    font-size: 16px;
}


/***** SIMPLE BTN */

.w-btn.us-btn-style_3 {
    text-decoration: underline;
    /* text-decoration-thickness: from-font;
    text-underline-offset: 2px; */
}

.no-touch .w-btn.us-btn-style_3:hover {
    text-decoration: none;
}

.w-btn.us-btn-style_3[href^="tel:"] {
    text-decoration: none;
}


/***** LINK OVER */

.link_over {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
}


/**** Link over - hover effect on simple link */

.no-touch .link_over:hover+.wrapper_main .w-btn.us-btn-style_3 {
    text-decoration: none;
}

.no-touch .w-grid-item-anchor:hover+.wrapper_main .w-btn.us-btn-style_3 {
    text-decoration: none;
}


/*****************************
**
** BLOG POST / DEFAULT TEXT PAGE
**
******************************/

.wpb_text_column h1:not(:first-child),
.wpb_text_column h2:not(:first-child),
.wpb_text_column h3:not(:first-child) {
    padding-top: calc(30px / 2);
}

.wpb_text_column h4:not(:first-child),
.wpb_text_column h5:not(:first-child),
.wpb_text_column h6:not(:first-child) {
    padding-top: calc(20px / 2);
}

.post_content h1:not(:first-child),
.post_content h2:not(:first-child),
.post_content h3:not(:first-child) {
    padding-top: calc(30px / 2);
}

.post_content h4:not(:first-child),
.post_content h5:not(:first-child),
.post_content h6:not(:first-child) {
    padding-top: calc(20px / 2);
}


/***** Custom Styling */

@media (max-width: 767px) {
    .single-post h1.post_title {
        font-size: 28px;
    }
}

.single-post .wrapper_meta {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    margin-top: 20px;
}

.single-post .post_image {
    margin-top: 20px;
    margin-left: calc(0px - var(--page-layout-container-padding));
    margin-right: calc(0px - var(--page-layout-container-padding));
    width: 100vw;
}

@media (min-width: 768px) {
    .single-post .wrapper_meta {
        margin-top: 30px;
    }
    .single-post .post_image {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
        margin-top: 30px;
        border-radius: var(--element-radius);
        overflow: hidden;
    }
}

.single-post .wrapper_meta .wrapper_info {
    font-size: 14px;
}

@media (min-width: 768px) {
    .single-post .wrapper_meta .wrapper_info {
        font-size: 16px;
    }
}

.single-post .wrapper_meta .wrapper_info .post_date {
    color: var(--color-faded);
}

.single-post .wrapper_meta .wrapper_info .post_taxonomy:not(:first-child)::before {
    content: '';
    display: inline-block;
    margin-right: 10px;
    border-radius: 1px;
    width: 5px;
    height: 5px;
    background: var(--color-faded);
    vertical-align: middle;
}

.single-post .wrapper_meta .wrapper_info .post_taxonomy a {
    text-decoration: underline;
}

.no-touch .single-post .wrapper_meta .wrapper_info .post_taxonomy a:hover {
    text-decoration: none;
}

.single-post .post_taxonomy.style_badge {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}

.single-post .post_taxonomy.style_badge>* {
    margin: 0;
}

.single-post .post_taxonomy.style_badge>span.w-post-elm-before {
    font-size: 14px;
    font-family: var(--font-h1);
    font-weight: var(--heading-font-weight);
    color: var(--color-content-heading);
    text-transform: uppercase;
    margin: 0;
}

@media (min-width: 768px) {
    .single-post .post_taxonomy.style_badge>span.w-post-elm-before {
        font-size: 16px;
    }
}


/***** BLOCKQUOTE */

blockquote {
    font-size: 18px;
    line-height: 1.6;
}

blockquote:not(:first-child) {
    margin-top: 40px;
}

blockquote:not(:last-child) {
    margin-bottom: 40px;
}

@media (min-width: 768px) {
    blockquote {
        font-size: 21px;
    }
    blockquote:not(:first-child) {
        margin-top: 40px;
    }
    blockquote:not(:last-child) {
        margin-bottom: 40px;
    }
}


/** styling **/


/* blockquote {
    font-family: inherit;
    color: inherit;
    text-transform: initial;
    text-align: initial;
    font-weight: inherit;
    position: relative;
    padding: 0;
    font-style: inherit;
    background: none;
}

blockquote::before {
    content: var(--blockquote_ornament);
    line-height: 1;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    user-select: none;
    font-size: initial;
    font-family: inherit;
} */


/***** IMAGES AND GALLERY */


/* .post_content p>img {
    margin-top: 10px;
    margin-bottom: 10px;
} */

.wp-caption,
p>img[class*="wp-image-"],
p>a>img[class*="wp-image-"] {
    margin-top: 30px;
    margin-bottom: 30px;
}

.w-gallery+.caption {
    margin-top: -20px;
}

.w-gallery-item-meta {
    padding: 10px 0 0 0;
    font-size: 0.778rem;
    letter-spacing: 0.05em;
    line-height: 1.2;
    color: var(--color-faded);
    text-align: left;
}

.wp-caption-text {
    font-size: 0.778rem;
    line-height: 1.5;
    color: var(--color-faded);
}


/**** Gallery */

.w-gallery:not(:first-child) {
    margin-top: 30px;
}

.w-gallery:not(:last-child) {
    margin-bottom: 30px;
}

@media (min-width: 768px) {
    .w-gallery:not(:first-child) {
        margin-top: 50px;
    }
    .w-gallery:not(:last-child) {
        margin-bottom: 50px;
    }
}

@media (min-width: 1280px) {
    .w-gallery.with_indents .w-gallery-list {
        margin: -15px;
        display: flex;
        flex-wrap: wrap;
    }
    .w-gallery.with_indents .w-gallery-list>* {
        padding: 15px;
    }
}

.w-gallery .w-gallery-item-img {
    position: relative;
    border-radius: var(--element-radius);
    overflow: hidden;
    padding-bottom: calc((338 / 450) * 100%);
    background: var(--color-content-primary);
    transition: box-shadow 0.3s ease-in-out;
}

.w-gallery .w-gallery-item-img>img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    opacity: 1;
    transition: opacity 0.3s ease-in-out;
}

.w-gallery:not(.link_none) .w-gallery-item-img::after {
    content: '\2b';
    font-family: var(--fa-font-family, 'fontawesome');
    font-weight: var(--fa-font-weight, '400');
    font-size: 21px;
    line-height: 1;
    color: #FFFFFF;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-align: center;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

.no-touch .w-gallery:not(.link_none) .w-gallery-item:hover .w-gallery-item-img::after {
    opacity: 1;
}

.no-touch .w-gallery:not(.link_none) .w-gallery-item:hover .w-gallery-item-img img {
    opacity: 0.2;
}


/*** page builder grid gallery - inside .single-post ***/

.single-post .layout_gallery_default:not(:first-child) {
    margin-top: 30px;
}

.single-post .layout_gallery_default .w-grid-item-h {
    position: relative;
    background: var(--color-content-primary);
    transition: box-shadow 0.3s ease-in-out;
}

.single-post .layout_gallery_default .w-grid-item-h::after {
    content: '\f002';
    font-family: var(--fa-font-family, 'fontawesome');
    color: #FFFFFF;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-align: center;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

.single-post .layout_gallery_default .w-grid-item-h img {
    transition: opacity .3s ease;
}

.no-touch .single-post .layout_gallery_default .w-grid-item-h:hover::after {
    opacity: 1;
}

.no-touch .single-post .layout_gallery_default .w-grid-item-h:hover img {
    opacity: 0.2;
}


/***** LISTS */


/**** Unorder Lists */

ul {
    --ul-font-size: 1rem;
    --ul-line-height: 1.5;
    --ul-letter-spacing: 0em;
    --ul-bullet-width: 8px;
    --ul-bullet-height: 8px;
    --ul-bullet-gap: 1.111rem;
    --ul-bullet-border-radius: 2px;
    --ul-bullet-bg: var(--color-content-primary);
    --ul-bullet-color: transparent;
    --ul-items-gap: 15px;
}

.post_content ul:not(:first-child) {
    margin-top: 2.222rem;
}

.post_content ul:not(:last-child) {
    margin-bottom: 2.222rem;
}

.wpb_text_column ul,
.post_content ul {
    list-style: none;
    padding: 0;
    margin-left: 0;
}

.wpb_text_column ul>li,
.post_content ul>li {
    padding-left: calc(var(--ul-bullet-width) + var(--ul-bullet-gap));
    font-size: var(--ul-font-size);
    line-height: var(--ul-line-height);
    letter-spacing: var(--ul-letter-spacing, 0px);
    margin-bottom: var(--ul-items-gap);
}

.wpb_text_column ul>li:last-child,
.post_content ul>li:last-child {
    margin-bottom: 0;
}

.wpb_text_column ul>li::before,
.post_content ul>li::before {
    content: '';
    display: inline-block;
    position: relative;
    margin-left: calc(-1 * calc(var(--ul-bullet-width) + var(--ul-bullet-gap)));
    margin-right: var(--ul-bullet-gap);
    line-height: 1;
    width: var(--ul-bullet-width);
    height: var(--ul-bullet-height);
    border-radius: var(--ul-bullet-border-radius);
    vertical-align: text-top;
    top: calc(((var(--ul-font-size) * var(--ul-line-height)) - var(--ul-bullet-height)) / 2);
    background: var(--ul-bullet-bg);
    color: var(--ul-bullet-color);
}


/* second level */


/*  .wpb_text_column ul>li>ul>li::before,
.post_content ul>li>ul>li::before {
    width: var(--ul-bullet-width);
    height: var(--ul-bullet-height);
    border-radius: 50%;
    background-color: var(--color-content-secondary);
} */


/**** Order Lists */

ol {
    --ol-font-size: 1rem;
    --ol-line-height: 1.5;
    --ol-letter-spacing: 0em;
    --ol-number-width: 1.444rem;
    --ol-number-gap: 0.556rem;
    --ol-number-color: var(--color-content-primary);
    --ol-number-font-family: var(--font-body);
    --ol-number-font-weight: var(--bold-font-weight);
    --ol-items-gap: 15px;
}

.post_content ol:not(:first-child) {
    margin-top: 2.222rem;
}

.post_content ol:not(:last-child) {
    margin-bottom: 2.222rem;
}

.wpb_text_column ol,
.post_content ol {
    counter-reset: ol-counter;
    margin-left: 0;
    padding: 0;
    list-style: none;
}

.wpb_text_column ol>li:last-child,
.post_content ol>li:last-child {
    margin-bottom: 0;
}

.wpb_text_column ol>li,
.post_content ol>li {
    counter-increment: ol-counter;
    padding-left: calc(var(--ol-number-width) + var(--ol-number-gap));
    margin-bottom: var(--ol-items-gap);
    font-size: var(--ol-font-size);
    line-height: var(--ol-line-height);
    letter-spacing: var(--ol-letter-spacing, 0px);
}

.wpb_text_column ol>li::before,
.post_content ol>li::before {
    display: inline-block;
    content: counter(ol-counter) ".";
    /* set same width to numbers */
    min-width: var(--ol-number-width);
    margin-left: calc(-1 * (var(--ol-number-width) + var(--ol-number-gap)));
    margin-right: var(--ol-number-gap);
    color: var(--ol-number-color);
    font-family: var(--ol-number-font-family);
    font-weight: var(--ol-number-font-weight);
    font-size: inherit;
    line-height: inherit;
}


/* second level */


/*  .wpb_text_column ol>li>ol,
.post_content ol>li>ol {
    counter-reset: ol-latin-counter;
}

 .wpb_text_column ol>li>ol>li,
.post_content ol>li>ol>li {
    counter-increment: ol-latin-counter;
}

 .wpb_text_column ol>li>ol>li::before,
.post_content ol>li>ol>li::before {
    content: counter(ol-latin-counter, lower-latin) ".";
    color: var(--color-content-secondary);
} */


/***** CUSTOM LISTS */


/**** Check Lists */

.list_check ul {
    --ul-font-size: 16px;
    --ul-line-height: 1.5;
    --ul-bullet-width: 18px;
    --ul-bullet-height: 18px;
    --ul-bullet-gap: 10px;
    --ul-bullet-bg: transparent;
    --ul-bullet-color: var(--color-content-primary);
}

.titlebar .list_check ul {
    --ul-font-size: 1rem;
}

.text_large.list_check ul {
    --ul-font-size: 1.125rem;
}

@media (min-width: 768px) {
    .text_large.list_check ul {
        --ul-font-size: 1.167rem;
        --ul-bullet-gap: 20px;
        --ul-bullet-width: 21px;
        --ul-bullet-height: 21px;
        --ul-items-gap: 30px;
    }
}


/* .wpb_text_column.list_check ul {
    margin: -1.667rem 0;
}

.wpb_text_column.list_check ul>* {
    margin: 0;
    padding-top: 1.667rem;
    padding-bottom: 1.667rem;
    border-bottom: 1px solid var(--color-content-border);
}

.wpb_text_column.list_check ul>*:last-child {
    border-bottom: none;
} */

.wpb_text_column.list_check ul>li {
	display:flex;
}

.wpb_text_column.list_check ul>li,
.post_content .list_check ul>li {
    font-size: var(--ul-font-size);
    line-height: var(--ul-line-height);
}

.wpb_text_column.list_check ul>li::before,
.post_content .list_check ul>li::before {
    content: '\f058';
    font-family: var(--fa-font-family, 'fontawesome');
    font-weight: 900;
    font-size: var(--ul-bullet-width);
    line-height: 1;
}


/** horizontal */

.list_check.layout_horizontal {
    --list-check-gap: 10px;
}

@media (min-width: 768px) {
    .list_check.layout_horizontal {
        --list-check-gap: 30px;
    }
}

.list_check.layout_horizontal ul {
    display: flex;
    flex-wrap: wrap;
    gap: var(--list-check-gap);
}

.list_check.layout_horizontal.align_center ul {
    justify-content: center;
}

.list_check.layout_horizontal ul>li {
    margin-bottom: 0;
}

.list_check.layout_horizontal.small_gap {
    --list-check-gap: 15px;
}


/**** Pills list */

.list_pills ul {
    --ul-font-size: 1rem;
    --ul-line-height: 1;
}

.wpb_text_column.list_pills ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.556rem;
}

.wpb_text_column.list_pills ul>* {
    margin: 0;
    padding: 0.556rem 0.833rem;
    border: 1px solid var(--color-content-border);
}

.wpb_text_column.list_pills ul>li {
    font-size: var(--ul-font-size);
    line-height: var(--ul-line-height);
}

.wpb_text_column.list_pills ul>li::before {
    display: none;
}


/*****************************
**
** IMPREZA ELEMENTS
**
******************************/


/***** ACTION BOX */

.w-actionbox:not(:first-child) {
    margin-top: 2.222rem;
}

.wpb_text_column+.w-actionbox:not(:first-child) {
    margin-top: 1.667rem;
}

.w-separator+.w-actionbox:not(:first-child) {
    margin-top: 0;
}

.w-actionbox .w-actionbox-text:not(:last-child) {
    margin-bottom: 1.667rem;
}


/***** POPUP */

.w-popup-box-content h1,
.w-popup-box-content h2,
.w-popup-box-content h3,
.w-popup-box-content h4,
.w-popup-box-content h5,
.w-popup-box-content h6 {
    color: var(--title-color, var(--color-content-heading));
}

.w-popup-wrap .w-popup-closer {
    font-size: 1.778rem;
}


/***** MENU */


/* .w-menu .menu {
    margin-top: -5px;
    margin-bottom: -5px;
}

.w-menu .menu li {
    padding-top: 5px;
    padding-bottom: 5px;
    transition: opacity .3s ease;
}

.no-touch .w-menu .menu:hover li {
    opacity: .5;
}

.no-touch .w-menu .menu li:hover {
    opacity: 1;
} */

.w-menu .menu a {
    text-decoration: underline;
}

.no-touch .w-menu .menu a:hover {
    text-decoration: none;
}


/***** BREADCRUMBS */

.g-breadcrumbs {
    font-size: 0.778rem;
    line-height: 1.5;
}

@media (min-width: 768px) {
    .g-breadcrumbs {
        font-size: 0.889rem;
    }
}


/* .g-breadcrumbs::before {
    content: '\f015';
    font-family: var(--fa-font-family, 'fontawesome');
    display: inline-block;
    margin-right: 10px;
    color: var(--color-faded);
}

.g-breadcrumbs .g-breadcrumbs-separator {
    margin-right: 10px;
    margin-left: 10px;
    color: var(--color-content-secondary);
}

.g-breadcrumbs .g-breadcrumbs-item a {
    text-decoration: underline;
    color: var(--color-content-heading);
}

.g-breadcrumbs .g-breadcrumbs-item a:hover {
    text-decoration: none;
}

.g-breadcrumbs .g-breadcrumbs-item:last-child a {
    text-decoration: none;
    pointer-events: none;
    color: var(--color-content-heading);
} */


/***** ICONBOX */


/**** General */

.w-iconbox .w-iconbox-icon i {
    vertical-align: middle;
}

.w-iconbox .w-iconbox-meta:empty {
    display: none;
}

.w-iconbox.iconpos_top .w-iconbox-meta:not(:empty) {
    margin-top: 1rem;
}

@media (min-width: 768px) {
    .w-iconbox.iconpos_top .w-iconbox-meta:not(:empty) {
        margin-top: 1.667rem;
    }
}

.w-iconbox .w-iconbox-meta .w-iconbox-title {
    padding: 0;
}

.w-iconbox .w-iconbox-meta .w-iconbox-title:not(:last-child) {
    margin-bottom: 1.111rem;
}

.w-iconbox .w-iconbox-meta a {
    text-decoration: underline;
}

.no-touch .w-iconbox .w-iconbox-meta a:hover {
    text-decoration: none;
}


/**** Custom Layout */

.w-iconbox.iconpos_right,
.w-iconbox.iconpos_left {
    gap: 1.111rem;
}

.w-iconbox.iconpos_right .w-iconbox-icon {
    margin-left: 0;
}

.w-iconbox.iconpos_left .w-iconbox-icon {
    margin-right: 0;
}


/*** iconbox_feature */

.w-iconbox.iconbox_feature .w-iconbox-icon {
    font-size: 100px;
}

@media (min-width: 1024px) {
    .w-iconbox.iconbox_feature .w-iconbox-icon {
        font-size: 130px;
    }
}

.w-iconbox.iconbox_feature .w-iconbox-meta:not(:empty) {
    margin-top: 20px;
}

.w-iconbox.iconbox_feature .w-iconbox-meta .w-iconbox-title:not(:last-child) {
    margin-bottom: 5px;
}

@media (min-width: 768px) {
    .w-iconbox.iconbox_feature .w-iconbox-meta:not(:empty) {
        margin-top: 30px;
    }
    .w-iconbox.iconbox_feature .w-iconbox-meta .w-iconbox-title:not(:last-child) {
        margin-bottom: 10px;
    }
}


/**** Custom Styling */


/* .w-iconbox.style_circle .w-iconbox-icon,
.w-iconbox.style_outlined .w-iconbox-icon {
    line-height: 3.889rem;
    height: 3.889rem;
    width: 3.889rem;
}

.w-iconbox.style_outlined.color_custom .w-iconbox-icon {
    box-shadow: inset 0 0 0 1px var(--icon-bg-color);
} */


/***** SOCIAL LINKS */

.w-socials .w-socials-list {
    display: flex;
    flex-wrap: wrap;
}

.w-socials .w-socials-list .w-socials-item-link {
    width: 50px;
    height: 50px;
    line-height: 50px;
}

.w-socials .w-socials-list .w-socials-item-link .w-socials-item-link-hover {
    display: block;
    opacity: .1 !important;
}

.w-socials .w-socials-list .w-socials-item-link i {
    font-size: 18px;
    transition: color .3s ease;
}

.no-touch .w-socials .w-socials-list .w-socials-item-link:hover i {
    color: var(--color-content-primary);
}


/***** SHARING ICONS */


/**** Custom Layout */

.w-sharing.type_simple .w-sharing-list {
    margin-left: -15px;
    margin-right: -15px;
}

.w-sharing.type_simple .w-sharing-item {
    border: none;
}

.w-sharing.type_simple .w-sharing-item {
    padding: 0 15px;
    min-width: initial;
}


/**** Custom Styling */

.w-sharing.type_simple .w-sharing-item i {
    font-size: 0.889rem;
    color: var(--color-content-primary);
    min-width: initial;
    opacity: 1;
}

.no-touch .w-sharing.type_simple .w-sharing-item:hover i {
    color: var(--color-content-secondary) !important;
}


/**** Custom icons */

.w-sharing.type_simple .w-sharing-item i.fa-facebook:before {
    content: '\f39e';
}

.w-sharing.type_simple .w-sharing-item i.fa-linkedin:before {
    content: '\f0e1';
}


/***** ACCORDION */

@media (max-width: 767px) {
    .accordeon_first_col {
        margin-bottom: 5px !important;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .accordeon_first_col {
        margin-bottom: 10px !important;
    }
}

.w-tabs.accordion>div>.w-tabs-section {
    border-radius: var(--element-radius);
    overflow: hidden;
    border-width: 1px;
    background: var(--color-content-bg);
    transition: all .3s ease;
}

.w-tabs.accordion>div>.w-tabs-section.active {
    border-color: var(--color-content-primary);
}

.w-tabs.accordion .w-tabs-section:not(:last-child) {
    margin-bottom: 5px;
}

@media (min-width: 768px) {
    .w-tabs.accordion .w-tabs-section:not(:last-child) {
        margin-bottom: 10px;
    }
}

.w-tabs.accordion .w-tabs-section .w-tabs-section-header {
    color: var(--color-content-heading);
    background: var(--color-content-bg);
    padding: 15px;
}

.w-tabs.accordion .w-tabs-section.active .w-tabs-section-header {
    color: var(--color-content-primary);
}

.w-tabs.accordion .w-tabs-section .w-tabs-section-content {
    padding: 15px;
    padding-top: 0;
}

@media (min-width: 768px) {
    .w-tabs.accordion .w-tabs-section .w-tabs-section-header {
        padding: 30px;
    }
    .w-tabs.accordion .w-tabs-section .w-tabs-section-content {
        padding: 30px;
        padding-top: 0;
    }
}

.w-tabs-sections.icon_plus>.w-tabs-section>.w-tabs-section-header .w-tabs-section-control {
    color: var(--color-faded);
}

.w-tabs-sections.icon_plus>.w-tabs-section.active>.w-tabs-section-header .w-tabs-section-control {
    transform: rotate(90deg);
    color: var(--color-content-primary)
}

.w-tabs-sections.icon_plus>.w-tabs-section.active>.w-tabs-section-header .w-tabs-section-control:after {
    display: none;
}


/***** TABS */

.w-tabs.style_radio2.layout_hor>.w-tabs-list>.w-tabs-list-h {
    border-radius: var(--element-radius);
}

.w-tabs.style_radio2.layout_hor>.w-tabs-list .w-tabs-item {
    padding: 12px 40px;
    color: var(--color-content-heading);
    font-size: 16px;
    line-height: 1;
}

.w-tabs.style_radio2.layout_hor>.w-tabs-list .w-tabs-item.active {
    background: var(--color-content-secondary);
    border-radius: var(--element-radius);
    font-weight: var(--bold-font-weight);
    color: #FFFFFF;
    box-shadow: none;
}

@media (min-width: 768px) {
    .w-tabs.style_radio2.layout_hor>.w-tabs-list .w-tabs-item {
        padding: 17px 50px;
    }
}


/*****************************
**
** FORMS - WPCF7
**
******************************/

.wpcf7 {
    --wpcf7-error-color: var(--error-color);
    --wpcf7-disabled-color: var(--color-faded);
    --wpcf7-disabled-border-color: #DDDDDD;
}


/***** GENERAL SETTINGS */

.wpcf7-form.submitting * {
    cursor: wait;
}

.wpcf7-form.submitting .wpcf7-submit {
    pointer-events: none !important;
    opacity: .5;
}


/***** LAYOUT */


/**** Boxed Form */

.form_boxed .wpcf7 {
    background: var(--color-content-bg);
    padding: 4.444rem;
    box-shadow: 0px 0px 5.556rem rgba(0, 0, 0, 0.1);
}

.l-section.color_alternate .form_boxed .wpcf7 {
    background: var(--color-alt-content-bg);
}


/**** Groups, Rows and Cols */


/** group */

.wpcf7 .form_group:not(:last-child) {
    margin-bottom: calc(2.778rem - 1.667rem);
}


/* horizontal */

.wpcf7 .form_group.layout_horizontal {
    display: flex;
    flex-direction: column;
    margin-bottom: 1.667rem;
}

.wpcf7 .form_group.layout_horizontal .form_row.submit {
    flex-shrink: 0;
    margin-top: 0;
}

.wpcf7 .form_group.layout_horizontal .form_row.submit button {
    width: 100%;
}

@media (min-width: 992px) {
    .wpcf7 .form_group.layout_horizontal {
        flex-direction: row;
        gap: 10px;
        margin-bottom: 0;
    }
    .wpcf7 .form_group.layout_horizontal .form_row.fields {
        width: 100%;
    }
    .wpcf7 .form_group.layout_horizontal .form_row.fields .form_col:last-child {
        margin-bottom: 0;
    }
}


/* absolute */

.wpcf7 .form_group.layout_absolute {
    --inputs-height: 50px;
    position: relative;
    margin-bottom: 0;
}

.wpcf7 .form_group.layout_absolute .form_row.submit button {
    width: 100%;
}

.wpcf7 .form_group.layout_absolute .form_row>div.form_col,
.wpcf7 .form_group.layout_absolute .form_row>div[class*="form_col-"] {
    margin-bottom: 15px;
}

.wpcf7 .form_group.layout_absolute .form_row.fields>div.form_col:last-child,
.wpcf7 .form_group.layout_absolute .form_row.submit>div.form_col {
    margin-bottom: 0;
}

@media (min-width: 821px) {
    .wpcf7 .form_group.layout_absolute {
        --inputs-height: 60px;
    }
    .wpcf7 .form_group.layout_absolute .form_row.fields input[type="email"] {
        padding-right: calc(154px + var(--inputs-padding, 15px));
    }
    .wpcf7 .form_group.layout_absolute .form_row.submit {
        margin-top: 0;
    }
    .wpcf7 .form_group.layout_absolute .form_row.submit>.form_col {
        position: static;
        margin-bottom: 0;
    }
    .wpcf7 .form_group.layout_absolute .form_row.submit button {
        width: auto;
        position: absolute;
        top: 6px;
        right: 5px;
    }
}


/** rows and cols */

.wpcf7 {
    --wpcf7-column-spacing-horizontal: 5px;
    --wpcf7-column-spacing-vertical: 20px;
}

@media (min-width: 768px) {
    .wpcf7 {
        --wpcf7-column-spacing-vertical: 30px;
    }
}

.wpcf7 .form_row {
    margin-left: calc(0px - var(--wpcf7-column-spacing-horizontal));
    margin-right: calc(0px - var(--wpcf7-column-spacing-horizontal));
    display: flex;
    flex-wrap: wrap;
}

.wpcf7 .form_row>div.form_col,
.wpcf7 .form_row>div[class*="form_col-"] {
    position: relative;
    padding-left: var(--wpcf7-column-spacing-horizontal);
    padding-right: var(--wpcf7-column-spacing-horizontal);
    margin-bottom: var(--wpcf7-column-spacing-vertical);
    width: 100%;
}

@media (min-width: 768px) {
    .wpcf7 .form_row>div.form_col-1\/2 {
        width: calc((1 / 2) * 100%)
    }
    .wpcf7 .form_row>div.form_col-1\/3 {
        width: calc((1 / 3) * 100%)
    }
    .wpcf7 .form_row>div.form_col-2\/3 {
        width: calc((2 / 3) * 100%)
    }
    .wpcf7 .form_row>div.form_col-1\/4 {
        width: calc((1 / 4) * 100%)
    }
    .wpcf7 .form_row>div.form_col-3\/4 {
        width: calc((3 / 4) * 100%)
    }
}


/** row with submit */

.wpcf7 .form_row.submit {
    margin-top: 1.111rem;
}

.wpcf7 .form_row.submit>div.form_col,
.wpcf7 .form_row.submit>div[class*="form_col-"] {
    margin-bottom: 0;
}


/** row with recaptcha policy */

.wpcf7 .form_row.recaptcha_policy {
    margin-top: 2.222rem;
}

.wpcf7 .form_row.recaptcha_policy>div.form_col,
.wpcf7 .form_row.recaptcha_policy>div[class*="form_col-"] {
    margin-bottom: 0;
}

.wpcf7 .form_row.recaptcha_policy small {
    font-size: 0.778rem;
    line-height: 1.2;
}


/** col via flex */

.wpcf7 .form_row>.form_col.via_flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 1.111rem;
}

.wpcf7 .form_row>.form_col.via_flex>* {
    margin: 0;
}


/** line separator */

.wpcf7 hr {
    margin-top: 0.556rem;
    margin-bottom: 1.667rem;
    border-color: var(--color-content-border);
}


/***** TYPOGRAPHY */

.wpcf7 p {
    font-size: 16px;
}

.wpcf7 p.perex {
    font-size: 1rem;
}


/* .wpcf7 form.wpcf7-form h1,
.wpcf7 form.wpcf7-form h2,
.wpcf7 form.wpcf7-form h3,
.wpcf7 form.wpcf7-form h4,
.wpcf7 form.wpcf7-form h5,
.wpcf7 form.wpcf7-form h6 {
    color: var(--color-content-heading);
} */

.wpcf7 form.wpcf7-form h1:not(:last-child),
.wpcf7 form.wpcf7-form h2:not(:last-child),
.wpcf7 form.wpcf7-form h3:not(:last-child),
.wpcf7 form.wpcf7-form h4:not(:last-child),
.wpcf7 form.wpcf7-form h5:not(:last-child),
.wpcf7 form.wpcf7-form h6:not(:last-child) {
    margin-bottom: 1.111rem;
}

.wpcf7 form.wpcf7-form h1:not(:first-child),
.wpcf7 form.wpcf7-form h2:not(:first-child),
.wpcf7 form.wpcf7-form h3:not(:first-child),
.wpcf7 form.wpcf7-form h4:not(:first-child),
.wpcf7 form.wpcf7-form h5:not(:first-child),
.wpcf7 form.wpcf7-form h6:not(:first-child) {
    padding-top: 0.556rem;
}


/***** GENERAL STYLING */

.wpcf7 {
    --wpcf7-label-font-size: 16px;
    --wpcf7-label-line-height: 1.2;
    --wpcf7-label-font-family: var(--font-body);
    --wpcf7-label-font-weight: var(--bold-font-weight);
    --wpcf7-label-offset: 10px;
    --wpcf7-label-color: var(--color-content-heading);
    --wpcf7-label-color-alt: var(--color-alt-content-heading);
    --wpcf7-textarea-height: 8rem;
}

.wpcf7 .wpcf7-form-control-wrap {
    width: 100%;
    position: relative;
    display: block;
}

.wpcf7 .wpcf7-form .wpcf7-form-control-wrap {
    margin-top: 0;
}

.wpcf7 .wpcf7-form label>.wpcf7-form-control-wrap {
    margin-top: var(--wpcf7-label-offset, 0.556rem);
}

.wpcf7 form.wpcf7-form .form_row label,
.wpcf7 form.wpcf7-form .form_row .radio-label,
.wpcf7 form.wpcf7-form .form_row p.label {
    display: block;
    text-align: left;
    opacity: 1;
    font-family: var(--wpcf7-label-font-family);
    font-weight: var(--wpcf7-label-font-weight);
    font-size: var(--wpcf7-label-font-size);
    line-height: var(--wpcf7-label-line-height);
    color: var(--wpcf7-label-color);
}

.l-section.color_alternate .wpcf7 form.wpcf7-form .form_row label,
.l-section.color_alternate .wpcf7 form.wpcf7-form .form_row .radio-label,
.l-section.color_alternate .wpcf7 form.wpcf7-form .form_row p.label {
    color: var(--wpcf7-label-color-alt);
}

.wpcf7 form.wpcf7-form .form_row label abbr,
.wpcf7 form.wpcf7-form .form_row .radio-label abbr,
.wpcf7 form.wpcf7-form .form_row p.label abbr {
    text-decoration: none;
    color: var(--wpcf7-error-color);
}


/* not valid */

.wpcf7 input:not([type="submit"]).wpcf7-not-valid,
.wpcf7 textarea.wpcf7-not-valid,
.wpcf7 select.wpcf7-not-valid {
    border-color: var(--wpcf7-error-color);
}

.wpcf7 form.wpcf7-form span.wpcf7-not-valid-tip {
    color: var(--wpcf7-error-color);
    font-family: var(--font-body);
    font-weight: var(--default-font-weight);
    font-size: 0.667rem;
    line-height: 1.5;
    text-transform: initial;
    margin-top: 0.4444rem;
}


/*** Inputs */

input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]),
textarea,
select {
    width: 100%;
}

.wpcf7-form textarea,
.wpcf7-form select,
.wpcf7-form input:not([type="checkbox"]),
.wpcf7-form input:not([type="radio"]) {
    margin-top: 0;
}

.wpcf7-form textarea {
    height: var(--wpcf7-textarea-height);
}

.wpcf7-form select,
.wpcf7-form select:focus {
    -moz-appearance: none;
    /* Firefox */
    -webkit-appearance: none;
    /* Safari and Chrome */
    -o-appearance: none;
    /* Opera */
    appearance: none;
    position: relative;
    cursor: pointer;
    background: #FFFFFF url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23D86018%22%2F%3E%3C%2Fsvg%3E) no-repeat right 20px top 55% !important;
}

.wpcf7-form select:disabled {
    background: #FFFFFF url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23f9f9f9%22%2F%3E%3C%2Fsvg%3E) no-repeat right 20px top 55% !important;
}

.wpcf7-form input:not([type="submit"]):disabled,
.wpcf7-form select:disabled,
.wpcf7-form textarea:disabled {
    color: var(--wpcf7-disabled-color);
    border-color: var(--wpcf7-disabled-border-color);
}

.l-section.color_alternate input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]),
.l-section.color_alternate textarea,
.l-section.color_alternate select {
    color: var(--color-alt-content-text);
}

.l-section.color_footer-bottom input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]),
.l-section.color_footer-bottom textarea,
.l-section.color_footer-bottom select {
    color: var(--color-content-text);
}


/*** Acceptance / Checkbox */

.wpcf7-form-control.wpcf7-acceptance,
.wpcf7-form-control.checkbox {
    display: block;
    padding: 0;
    line-height: 1;
}

.wpcf7 .form_row .wpcf7-form-control.wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
}


/*** Required acceptance / Checkbox */


/* .wpcf7-acceptance input[type="checkbox"]+.wpcf7-list-item-label::after,
.wpcf7-checkbox.wpcf7-validates-as-required input[type="checkbox"]+.wpcf7-list-item-label::after {
    content: '*';
    display: inline-block;
    margin-left: 4px;
    color: var(--wpcf7-error-color);
} */


/***** CUTOM CHECKBOX STYLING **/

.wpcf7 {
    --wpcf7-checkbox-width: 1rem;
    --wpcf7-checkbox-height: 1rem;
    --wpcf7-checkbox-border-width: 1px;
    --wpcf7-checkbox-gap: 0.667rem;
    --wpcf7-checkbox-border-radius: 3px;
    --wpcf7-checkbox-border-color: var(--color-content-heading);
    --wpcf7-checkbox-border-color-alt: var(--color-alt-content-border);
    --wpcf7-checkbox-border-color-focused: var(--color-content-secondary);
    --wpcf7-checkbox-border-color-focused-alt: #FFFFFF;
    --wpcf7-checkbox-text-color: var(--color-content-text);
    --wpcf7-checkbox-text-color-alt: #FFFFFF;
    --wpcf7-checkbox-background-color: transparent;
    --wpcf7-checkbox-background-color-alt: #FFFFFF;
    --wpcf7-checkbox-checked-color: #FFFFFF;
    --wpcf7-checkbox-checked-color-alt: #FFFFFF;
    --wpcf7-checkbox-checked-border-color: var(--color-content-primary);
    --wpcf7-checkbox-checked-border-color-alt: var(--color-content-primary);
    --wpcf7-checkbox-checked-background-color: var(--color-content-primary);
    --wpcf7-checkbox-checked-background-color-alt: var(--color-alt-content-primary);
    --wpcf7-checkbox-font-size: 16px;
    --wpcf7-checkbox-line-height: 1.5;
}

.wpcf7 input[type="checkbox"] {
    width: 0;
    height: 0;
    margin: 0;
    top: 0;
    left: 0;
    opacity: 0;
    position: absolute;
}

.wpcf7 input[type="checkbox"]+span {
    position: relative;
    display: inline-block;
    padding-left: calc(var(--wpcf7-checkbox-width, 18px) + (2 * var(--wpcf7-checkbox-border-width, 1px)) + var(--wpcf7-checkbox-gap, 12px));
    font-family: var(--font-body);
    font-weight: var(--default-font-weight);
    font-size: var(--wpcf7-checkbox-font-size, 0.889rem);
    line-height: var(--wpcf7-checkbox-line-height, 1.5);
    text-transform: initial;
    color: var(--wpcf7-checkbox-text-color);
    opacity: 1;
}

.l-section.color_alternate .wpcf7 input[type="checkbox"]+span,
.l-section.color_footer-bottom .wpcf7 input[type="checkbox"]+span {
    color: var(--wpcf7-checkbox-text-color-alt);
}

.wpcf7 input[type="checkbox"]+span a {
    text-decoration: underline;
}

.no-touch .wpcf7 input[type="checkbox"]+span a:hover {
    text-decoration: none;
}

.wpcf7 input[type="checkbox"]+span::before {
    content: '';
    position: absolute;
    top: calc(((var(--wpcf7-checkbox-font-size, 0.889rem) * var(--wpcf7-checkbox-line-height, 1.5)) - var(--wpcf7-checkbox-height, 18px) - (2 * var(--wpcf7-checkbox-border-width, 1px))) / 2);
    left: 0;
    display: block;
    height: var(--wpcf7-checkbox-height, 18px);
    width: var(--wpcf7-checkbox-width, 18px);
    line-height: var(--wpcf7-checkbox-height, 18px);
    border-radius: var(--wpcf7-checkbox-border-radius, 0px);
    border-width: var(--wpcf7-checkbox-border-width, 1px);
    border-style: solid;
    border-color: var(--wpcf7-checkbox-border-color);
    background: var(--wpcf7-checkbox-background-color);
}

.l-section.color_alternate .wpcf7 input[type="checkbox"]+span::before,
.l-section.color_footer-bottom .wpcf7 input[type="checkbox"]+span::before {
    border-color: var(--wpcf7-checkbox-border-color-alt);
    background: var(--wpcf7-checkbox-background-color-alt);
}

.wpcf7 input[type="checkbox"]:checked+span:before {
    content: "\f00c";
    font-family: var(--fa-font-family, 'fontawesome');
    font-weight: var(--fa-font-regular, '400');
    text-align: center;
    font-size: 0.667rem;
    color: var(--wpcf7-checkbox-checked-color);
    border-color: var(--wpcf7-checkbox-checked-border-color);
    background: var(--wpcf7-checkbox-checked-background-color);
}

.l-section.color_alternate .wpcf7 input[type="checkbox"]:checked+span:before,
.l-section.color_footer-bottom .wpcf7 input[type="checkbox"]:checked+span:before {
    color: var(--wpcf7-checkbox-checked-color-alt);
    border-color: var(--wpcf7-checkbox-checked-border-color-alt);
    background: var(--wpcf7-checkbox-checked-background-color-alt);
}

.wpcf7 input[type="checkbox"]:focus+span::before {
    border-color: var(--wpcf7-checkbox-border-color-focused);
}

.l-section.color_alternate .wpcf7 input[type="checkbox"]:focus+span::before,
.l-section.color_footer-bottom .wpcf7 input[type="checkbox"]:focus+span::before {
    border-color: var(--wpcf7-checkbox-border-color-focused);
}


/* error state*/


/* .wpcf7 .wpcf7-not-valid input[type="checkbox"]+span {
    color: var(--wpcf7-error-color);
} */

.wpcf7 .wpcf7-not-valid input[type="checkbox"]+span:before {
    border-color: var(--wpcf7-error-color);
}

.wpcf7 .wpcf7-not-valid input[type="checkbox"]:checked+span:before {
    border-color: var(--wpcf7-error-color);
    background: var(--wpcf7-error-color);
}


/* disabled state */

.wpcf7 input[type="checkbox"]:disabled+span {
    color: var(--wpcf7-disabled-border-color);
}

.wpcf7 input[type="checkbox"]:disabled+span:before {
    border-color: var(--wpcf7-disabled-border-color);
}

.wpcf7 input[type="checkbox"]:checked:disabled+span {
    border-color: var(--wpcf7-disabled-border-color);
    background: var(--wpcf7-disabled-border-color);
    color: var(--wpcf7-disabled-color);
}


/***** CUTOM RADIO STYLING **/

.wpcf7 {
    --wpcf7-radio-width: 1rem;
    --wpcf7-radio-height: 1rem;
    --wpcf7-radio-border-width: 1px;
    --wpcf7-radio-gap: 0.667rem;
    --wpcf7-radio-border-radius: 50%;
    --wpcf7-radio-border-color: var(--color-content-border);
    --wpcf7-radio-border-color-alt: var(--color-alt-content-border);
    --wpcf7-radio-text-color: var(--color-content-text);
    --wpcf7-radio-text-color-alt: var(--color-alt-content-text);
    --wpcf7-radio-background-color: transparent;
    --wpcf7-radio-background-color-alt: transparent;
    --wpcf7-radio-checked-border-color: var(--color-content-secondary);
    --wpcf7-radio-checked-border-color-alt: var(--color-alt-content-secondary);
    --wpcf7-radio-checked-background-color: var(--color-content-bg);
    --wpcf7-radio-checked-background-color-alt: var(--color-alt-content-bg-alt);
    --wpcf7-radio-font-size: 1rem;
    --wpcf7-radio-line-height: 1.5;
}

.wpcf7 .form_row:not(.radio_toggle) .wpcf7-form-control.wpcf7-radio {
    display: flex;
    flex-wrap: wrap;
    gap: 1.111rem;
    padding: 0;
    margin: 0;
}

.wpcf7 .formRow.vertical:not(.radio_toggle) .wpcf7-form-control.wpcf7-radio {
    flex-direction: column;
    gap: 1.111rem;
}

.wpcf7 .form_row:not(.radio_toggle) .wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
    margin: 0;
}

.wpcf7 .form_row:not(.radio_toggle) input[type="radio"] {
    width: 0;
    height: 0;
    margin: 0;
    top: 0;
    left: 0;
    opacity: 0;
    position: absolute;
}

.wpcf7 .form_row:not(.radio_toggle) input[type="radio"]+span {
    position: relative;
    display: inline-block;
    padding-left: calc(var(--wpcf7-radio-width, 18px) + (2 * var(--wpcf7-radio-border-width, 1px)) + var(--wpcf7-radio-gap, 12px));
    font-family: var(--font-body);
    font-weight: var(--default-font-weight);
    font-size: var(--wpcf7-radio-font-size, 0.889rem);
    line-height: var(--wpcf7-radio-line-height, 1.5);
    text-transform: initial;
    color: var(--wpcf7-radio-text-color);
    opacity: 1;
}

.l-section.color_alternate .wpcf7 input[type="radio"]+span {
    color: var(--wpcf7-radio-text-color-alt);
}

.wpcf7 input[type="radio"]+span a {
    text-decoration: underline;
}

.no-touch .wpcf7 input[type="radio"]+span a:hover {
    text-decoration: none;
}

.wpcf7 input[type="radio"]+span::before {
    content: '';
    position: absolute;
    top: calc(((var(--wpcf7-radio-font-size, 0.889rem) * var(--wpcf7-radio-line-height, 1.5)) - var(--wpcf7-radio-height, 18px) - (2 * var(--wpcf7-radio-border-width, 1px))) / 2);
    left: 0;
    display: block;
    height: var(--wpcf7-radio-height, 18px);
    width: var(--wpcf7-radio-width, 18px);
    line-height: var(--wpcf7-radio-height, 18px);
    border-radius: var(--wpcf7-radio-border-radius, 50%);
    border-width: var(--wpcf7-radio-border-width, 1px);
    border-style: solid;
    border-color: var(--wpcf7-radio-border-color);
    background: var(--wpcf7-radio-background-color);
}

.l-section.color_alternate .wpcf7 input[type="radio"]+span::before {
    border-color: var(--wpcf7-radio-border-color-alt);
    background: var(--wpcf7-radio-background-color-alt);
}

.wpcf7 input[type="radio"]:checked+span:before {
    content: "";
    text-align: center;
    width: 8px;
    height: 8px;
    border: calc((var(--wpcf7-radio-width, 18px) + (2 * var(--wpcf7-radio-border-width, 1px)) - 8px) / 2) solid var(--wpcf7-radio-checked-border-color);
    background: var(--wpcf7-radio-checked-background-color);
}

.l-section.color_alternate .wpcf7 input[type="radio"]+span:before {
    border-color: var(--wpcf7-radio-checked-border-color-alt);
    background: var(--wpcf7-radio-checked-background-color-alt);
}


/* error state */

.wpcf7 .form_row:not(.radio_toggle) .wpcf7-not-valid input[type="radio"]+span {
    color: var(--wpcf7-error-color);
}

.wpcf7 .form_row:not(.radio_toggle) .wpcf7-not-valid input[type="radio"]+span::before,
.wpcf7 .form_row:not(.radio_toggle) .wpcf7-not-valid input[type="radio"]:checked+span::before {
    border-color: var(--wpcf7-error-color);
}


/* disabled state */

.wpcf7 .form_row:not(.radio_toggle) input[type="radio"]:disabled+span {
    color: var(--wpcf7-disabled-border-color);
}

.wpcf7 .form_row:not(.radio_toggle) input[type="radio"]:disabled+span::before {
    border-color: var(--wpcf7-disabled-border-color);
}

.wpcf7 .form_row:not(.radio_toggle) input[type="radio"]:checked:disabled+span::before {
    border-color: var(--wpcf7-disabled-color);
    background: var(--wpcf7-disabled-border-color);
}


/***** RESPONSE OUTPUT */

.wpcf7 {
    --wpcf7-response-color-default: var(--color-content-heading);
    --wpcf7-response-background-default: var(--color-content-primary);
    --wpcf7-response-color-sent: #FFFFFF;
    --wpcf7-response-background-sent: var(--success-color);
    --wpcf7-response-color-unaccepted: var(--wpcf7-response-color-default);
    --wpcf7-response-background-unaccepted: var(--error-color);
    --wpcf7-response-color-invalid: var(--wpcf7-response-color-default);
    --wpcf7-response-background-invalid: var(--warning-color);
    --wpcf7-border-color: var(--color-content-border);
    --wpcf7-response-radius: calc(var(--element-radius) / 2);
    --wpcf7-resonse-offset: 2rem;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form .wpcf7-response-output {
    border: none;
    display: flex;
    align-items: flex-start;
    padding: 0.833rem;
    margin: var(--wpcf7-resonse-offset, 2.778rem) 0 0 0;
    font-size: 0.889rem;
    line-height: 1.5;
    border-radius: var(--wpcf7-response-radius);
    color: var(--wpcf7-response-color-default);
    background-color: var(--wpcf7-response-background-default);
}

.wpcf7 form.invalid .wpcf7-response-output {
    color: var(--wpcf7-response-color-invalid);
    background-color: var(--wpcf7-response-background-invalid);
}

.wpcf7 form.sent .wpcf7-response-output {
    color: var(--wpcf7-response-color-sent);
    background-color: var(--wpcf7-response-background-sent);
}

.wpcf7 form.unaccepted .wpcf7-response-output {
    color: var(--wpcf7-response-color-unaccepted);
    background-color: var(--wpcf7-response-background-unaccepted);
}

.wpcf7 form.invalid .wpcf7-response-output:before,
.wpcf7 form.sent .wpcf7-response-output:before,
.wpcf7 form.unaccepted .wpcf7-response-output:before {
    font-family: var(--fa-font-family, 'fontawesome');
    font-weight: var(--fa-font-weight, '400');
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.556rem;
    font-size: 0.889rem;
    line-height: inherit;
    flex-shrink: 0;
}

.wpcf7 form.invalid .wpcf7-response-output:before {
    content: '\f057';
}

.wpcf7 form.sent .wpcf7-response-output:before {
    content: '\f058';
}

.wpcf7 form.unaccepted .wpcf7-response-output:before {
    content: '\f06a';
}


/***** WPCF7 CUSTOMIZATIONS */


/**** WPCF7 - Material Design Style (label for, label class, input id, input class) */


/* .wpcf7 form.wpcf7-form .md-input {
    border-top: none;
    border-right: none;
    border-left: none;
    position: relative;
}

.wpcf7 form.wpcf7-form label.md-label {
    font-family: var(--font-body);
    font-weight: var(--default-font-weight);
    font-size: 0.889rem;
    top: calc((50px - 20px) / 2);
    left: calc(30px - 5px);
    color: var(--color-faded);
    position: absolute;
    padding: 0 5px;
    line-height: 20px;
    z-index: 10;
    background: none;
    transition: all 0.3s ease-in-out;
}

.wpcf7 form.wpcf7-form label.md-label.active {
    top: calc(-1 * (20px / 2));
    transform: translateY(0);
    font-size: 0.667rem;
    background: var(--color-content-bg);
    color: var(--color-content-primary);
    text-transform: initial;
    transition: all 0.3s ease-in-out;
} */


/**** Input type FILE */

.wpcf7 form.wpcf7-form .file_upload {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1.111rem;
    width: 100%;
    padding: 1.111rem;
    border: 1px dashed var(--color-content-border);
}

.wpcf7 form.wpcf7-form .file_upload .wrapper_info {
    display: flex;
    gap: 1.111rem;
    align-items: center;
}

.wpcf7 form.wpcf7-form .file_upload .wrapper_info .heading {
    font-size: 0.889rem;
    line-height: 1.5;
    color: var(--color-content-heading);
}

.wpcf7 form.wpcf7-form .file_upload .wrapper_info .heading small {
    color: var(---color-faded);
    font-size: 0.667rem;
}

.wpcf7 form.wpcf7-form .file_upload .wrapper_info .image {
    flex-shrink: 0;
}

.wpcf7 form.wpcf7-form .file_upload .wrapper_info .heading small {
    display: block;
}

.wpcf7 form.wpcf7-form .file_upload .wrapper_field {
    width: 100%;
}

@media (min-width: 768px) {
    .wpcf7 form.wpcf7-form .file_upload .wrapper_field {
        width: auto;
    }
}

.wpcf7 form.wpcf7-form .file_upload .wrapper_field label {
    display: inline-block;
    cursor: pointer;
    text-align: center;
    margin: 0;
    font-family: var(--font-body);
    font-weight: var(--bold-font-weight);
    font-style: normal;
    text-transform: uppercase;
    font-size: 0.778rem;
    line-height: 1;
    letter-spacing: 0.1em;
    padding: 0.928em 1.429em;
    width: 100%;
    border: none;
    border-radius: 0px;
    background: var(--color-content-bg-alt);
    color: var(--color-content-heading);
    transition: all 0.3s ease;
}

.no-touch .wpcf7 form.wpcf7-form .file_upload .wrapper_field label:hover {
    background: var(--color-alt-content-bg);
    color: var(--color-alt-content-heading);
}

.wpcf7 form.wpcf7-form .file_upload input[type="file"] {
    width: 0 !important;
    height: 0;
    margin: 0;
    top: 0;
    left: 0;
    opacity: 0;
    position: absolute;
}


/***** PLUGINS */


/**** WPCF7 Plugin: CONDITIONAL FIELDS FOR CF7 */


/* .wpcf7 [data-class="wpcf7cf_group"]:not(:last-child) {
    margin-bottom: calc(2.778rem - 1.667rem);
}

.wpcf7 [data-class="wpcf7cf_group"]:not(:first-child) {
    padding-top: 2.778rem;
    border-top: 1px solid var(--color-content-border);
} */


/**** WPCF7 Plugin: DRAG AND DROP MULTIPLE FILE UPLOAD - CONTACT FORM 7 */


/* .codedropz-upload-wrapper .codedropz-upload-handler {
    border: 2px dashed var(--color-faded);
    border-radius: 0;
}

.codedropz-upload-wrapper .codedropz-upload-handler .dnd-upload-counter {
    display: none;
}

.codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container {
    padding: 2.222rem;
    background: var(--color-content-bg-alt);
}

.codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner h4 {
    margin-bottom: 1.111rem;
}

.codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner>span {
    display: block;
    font-size: 0.889rem;
    margin-bottom: 1.111rem;
}

.codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap .cd-upload-btn {
    font-family: var(--font-h1);
    font-weight: var(--heading-font-weight);
    font-size: 0.778rem;
    line-height: 1.2;
    text-transform: uppercase;
    padding: 1em 1.2em 0.86em;
    background: transparent;
    border: none;
    color: #FFFFFF;
    background: var(--color-content-primary);
    display: inline-block;
    text-decoration: none;
    transition: all .3s ease;
}

@media (min-width: 768px) {
    .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap .cd-upload-btn {
        padding: 1em 1.43em 0.86em;
    }
}

.no-touch .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap .cd-upload-btn:hover {
    background: #008f79;
}

.codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap .cd-upload-btn::before {
    content: '\f093';
    font-family: var(--fa-font-family);
    font-weight: var(--fa-font-weight);
    display: inline-block;
    margin-right: 0.556rem;
}

.codedropz-upload-wrapper .dnd-upload-status.complete .dnd-upload-image {
    background: var(--color-content-primary);
    border-color: var(--color-content-primary);
}

.codedropz-upload-wrapper .dnd-upload-status.complete .dnd-upload-image span.file {
    background: none;
    width: auto;
    height: auto;
}

.codedropz-upload-wrapper .dnd-upload-status.complete .dnd-upload-image span.file::after {
    content: '\f00c';
    font-family: var(--fa-font-family);
    font-weight: var(--fa-font-weight);
    color: #FFFFFF;
}

.codedropz-upload-wrapper .dnd-upload-status .dnd-upload-details .name>span {
    font-family: var(--font-h1);
    font-weight: var(--heading-font-weight);
    color: var(--color-content-heading);
    font-size: 0.889rem;
    line-height: 1.2;
}

.codedropz-upload-wrapper .dnd-upload-status .dnd-upload-details .name>em {
    font-size: 0.778rem;
    line-height: 1.2;
    font-weight: var(--default-font-weight);
    color: var(--color-faded);
    font-style: normal;
}

.codedropz-upload-wrapper .dnd-upload-status .dnd-upload-details .dnd-progress-bar {
    height: 0.556rem;
    background: var(--color-content-bg-alt);
}

.codedropz-upload-wrapper .dnd-upload-status .dnd-upload-details .dnd-progress-bar span {
    background: var(--color-content-primary);
    font-size: 0.4444rem;
    line-height: 0.556rem;
}

.codedropz-upload-wrapper .dnd-upload-status .dnd-upload-details .has-error {
    color: var(--wpcf7-error-color);
    font-size: 0.667rem;
    line-height: 1.5;
    margin-top: 0.4444rem;
    font-family: var(--font-body);
    font-weight: var(--default-font-weight);
    text-transform: initial;
}

.codedropz-upload-wrapper span.has-error-msg {
    font-style: normal;
    color: var(--wpcf7-error-color);
    font-size: 0.667rem;
    line-height: 1.5;
    margin-top: 0.4444rem;
    font-family: var(--font-body);
    font-weight: var(--default-font-weight);
    text-transform: initial;
    padding: 0.556rem 0 0 0;
} */


/*****************************
**
** HEADER
**
******************************/


/**** Helpers ****/


/** Hide element by Device Type **/

.state_default .w-nav .hide_on_desktop>a {
    display: none !important;
}

.state_laptops .w-nav .hide_on_laptops>a {
    display: none !important;
}

.state_tablets .w-nav .hide_on_tablets>a {
    display: none !important;
}

.state_mobiles .w-nav .hide_on_mobiles>a {
    display: none !important;
}


/** Hide element by Nav Type **/

.w-nav.type_desktop .hide_in_desktop_menu,
.w-nav.type_desktop+.hide_in_desktop_menu {
    display: none !important;
    pointer-events: none;
    user-select: none;
}

.w-nav.type_mobile .hide_in_mobile_menu,
.w-nav.type_mobile+.hide_in_mobile_menu {
    display: none !important;
    pointer-events: none;
    user-select: none;
}


/***** Layout *****/

header#page-header .l-subheader-h {
    max-width: var(--page-layout-site-width);
}


/*

.w-nav.type_desktop .menu-item.level_1.menu-item-object-us_page_block {
    display: none;
} */

header#page-header .l-subheader-cell.at_right>*:not(:first-child) {
    margin-left: 30px;
}

.state_mobiles header#page-header .l-subheader-cell.at_right>*:not(:first-child) {
    margin-left: 20px;
}

.header_hor .w-nav.type_mobile.m_layout_dropdown .w-nav-list.level_1 {
    left: calc(-1 * var(--page-layout-container-padding));
    right: calc(-1 * var(--page-layout-container-padding));
    padding: 0;
}


/***** Main (middle) Header *****/


/**** Custom styling ****/


/*** Make logo visible in opened mobile menu */

.w-nav-open header#page-header .logo {
    position: relative;
    z-index: 100;
}

.w-nav-open header#page-header:not(.sticky) .logo {
    position: relative;
    z-index: 100;
    top: -50px;
}


/*** Shadow ***/

.l-header.shadow_none.sticky .l-subheader.at_middle,
.l-header.shadow_none.sticky .l-subheader.at_bottom {
    box-shadow: 0 1px 2px rgb(0, 0, 0, .15) !important;
}


/** custom **/

.l-header.id_210.shadow_none.sticky .l-subheader.at_middle,
.l-header.id_210.shadow_none.sticky .l-subheader.at_bottom {
    box-shadow: 0 1px 2px rgb(255, 255, 255, .15) !important;
}


/*** Menu items styling ***/

header#page-header .w-nav.type_mobile .menu-item .w-btn {
    margin: 0;
    margin-top: 20px;
    font-size: 1rem;
}

.state_mobiles header#page-header .w-nav.type_mobile .menu-item .w-btn {
    margin-top: 10px;
}


/* mobile */

.w-nav.type_mobile .menu-item.level_1>a:not(.w-btn) {
    font-size: 28px;
    font-family: var(--font-body);
    font-weight: var(--bold-font-weight);
    color: var(--color-content-heading);
    text-transform: initial;
}

.state_mobiles .w-nav.type_mobile .menu-item.level_1>a:not(.w-btn) {
    font-size: 21px;
    line-height: 1.4;
}


/** custom **/


/* .w-nav.type_mobile .menu-item.level_1.current-menu-item>a:not(.w-btn),
.w-nav.type_mobile .menu-item.level_1.current-menu-ancestor>a:not(.w-btn),
.w-nav.type_mobile .menu-item.level_1.current-page-ancestor>a:not(.w-btn) {
    color: var(--color-content-heading);
}

.w-nav.type_mobile .menu-item.level_1>a:not(.w-btn):focus,
.no-touch .w-nav.type_mobile .menu-item.level_1.opened>a:not(.w-btn),
.no-touch .w-nav.type_mobile .menu-item.level_1:hover>a:not(.w-btn) {
    color: var(--color-content-heading);
} */


/* mobile subitems */

.w-nav.type_mobile .menu-item:not(.level_1)>a:not(.w-btn) {
    font-size: 18px;
    font-family: var(--font-body);
    font-weight: var(--default-font-weight);
    /* color: var(--color-content-heading); */
}

.state_mobiles .w-nav.type_mobile .menu-item:not(.level_1)>a:not(.w-btn) {
    font-size: 18px;
}


/* desktop */

.w-nav.type_desktop .menu-item.level_1>a:not(.w-btn) {
    font-size: 18px;
    text-transform: initial;
    font-family: var(--font-body);
    font-weight: var(--bold-font-weight);
    /* color: var(--color-content-heading); */
}


/* Nav Control */

header#page-header .w-nav-control {
    padding: 0 0.8rem;
    margin-right: -0.8rem;
}

header#page-header .w-nav-control>.w-nav-icon>div,
header#page-header .w-nav-control>.w-nav-icon>div::before,
header#page-header .w-nav-control>.w-nav-icon>div::after {
    border-radius: 5px;
    border-bottom-color: var(--color-content-primary);
}


/* header#page-header .w-nav-control:not(.active)>.w-nav-icon>div {
    margin-left: 2px;
}

header#page-header .w-nav-control:not(.active)>.w-nav-icon>div::before,
header#page-header .w-nav-control:not(.active)>.w-nav-icon>div::after {
    left: -2px;
} */


/* Custom underline effect */


/* .no-touch header#page-header .w-nav.type_desktop .menu-item:hover .w-nav-anchor.level_1::after {
    content: '';
    height: 2px;
    position: absolute;
    bottom: 0;
    display: block;
    background: var(--color-content-primary);
    left: 20px;
    right: 20px;
} */


/**** Nav Arrow ****/


/* header#page-header .w-nav.type_desktop .menu-item .w-nav-arrow {
    display: none;
} */

header#page-header .w-nav .w-nav-anchor:not(.w-btn) .w-nav-arrow:before {
    font-size: 0.889rem;
    color: var(--color-faded);
    margin-left: 5px;
}

header#page-header .w-nav.w-nav.type_mobile .w-nav-anchor:not(.w-btn) .w-nav-arrow:before {
    font-size: 18px;
}

.state_mobiles header#page-header .w-nav.w-nav.type_mobile .w-nav-anchor:not(.w-btn) .w-nav-arrow:before {
    font-size: 0.889rem;
}


/**** Dropdowns ****/

header#page-header .w-nav.type_desktop .w-nav-list.level_2 {
    padding: 10px;
}


/* header#page-header .w-nav.type_desktop .w-nav-list:not(.level_1) {
    min-width: 260px;
} */

header#page-header .w-nav.type_desktop .menu-item .w-nav-anchor:not(.level_1) {
    padding: 10px;
    white-space: initial;
}

header#page-header .w-nav.type_desktop .menu-item:not(.level_1).current-menu-item>a,
header#page-header .w-nav.type_desktop .menu-item:not(.level_1).current-menu-ancestor>a,
header#page-header .w-nav.type_desktop .menu-item:not(.level_1).current-page-ancestor>a {
    /* font-weight: var(--bold-font-weight); */
    color: var(--color-content-primary);
}

.no-touch header#page-header .w-nav.type_desktop .menu-item:not(.level_1).current-menu-item>a:hover,
.no-touch header#page-header .w-nav.type_desktop .menu-item:not(.level_1).current-menu-ancestor>a:hover,
.no-touch header#page-header .w-nav.type_desktop .menu-item:not(.level_1).current-page-ancestor>a:hover {
    text-decoration: none;
}

.no-touch header#page-header .w-nav.type_desktop .menu-item .w-nav-anchor:not(.level_1):hover {
    text-decoration: underline;
    text-decoration-thickness: from-font;
    text-underline-offset: 2px;
}

header#page-header .w-nav.type_desktop .w-nav-list.level_2 .w-nav-arrow:before {
    content: '\f061';
}

header#page-header .w-nav.type_desktop .menu-item-has-children>.w-nav-anchor:not(.level_1) .w-nav-title {
    display: block;
    padding-right: 20px;
}

header#page-header .w-nav.type_desktop .menu-item-has-children>.w-nav-anchor:not(.level_1) .w-nav-arrow {
    width: initial;
    padding-right: 15px;
    line-height: 1;
    top: 50%;
    transform: translateY(-50%);
}


/**** Sticky Header ****/


/* header#page-header.sticky .w-image.with_transparent img:first-of-type {
    display: none;
}

header#page-header.sticky .w-image.with_transparent img:last-of-type {
    display: block;
} */


/***** Top Header *****/


/**** Text ****/

#page-header .l-subheader.at_top .w-text {
    font-size: 16px;
}

.state_mobiles #page-header .l-subheader.at_top .w-text {
    font-size: 14px;
}

#page-header .l-subheader.at_top .w-text a:not([href^="tel:"]) .w-text-value {
    text-decoration: underline;
    text-decoration-thickness: from-font;
    text-underline-offset: 2px;
}

.no-touch #page-header .l-subheader.at_top .w-text a:not([href^="tel:"]):hover .w-text-value {
    text-decoration: none;
}


/**** Mobile Menu ****/


/* header#page-header .l-subheader.at_middle .type_mobile .w-nav-list.level_1,
header#page-header .l-subheader.at_middle .type_mobile .w-nav-list:not(.level_1) {
    background-color: var(--color-content-bg-alt);
} */


/** Mobile Nav Close **/

header#page-header .w-nav-close {
    color: var(--color-content-primary);
    opacity: 1;
    font-size: 2rem;
    line-height: 3.5rem;
    width: 3.5rem;
}

.state_mobiles header#page-header .w-nav-close {
    font-size: 24px;
}


/*****************************
**
** FOOTER
**
******************************/


/***** Custom Typography */

footer#page-footer,
footer#page-footer .wrapper_address p {
    font-size: 0.889rem;
    line-height: 1.5;
}

footer#page-footer h6:not(:last-child) {
    margin-bottom: 20px;
}

@media (min-width: 768px) {
    footer#page-footer h6:not(:last-child) {
        margin-bottom: 30px;
    }
}


/***** footer_main */

.footer_main {
    position: relative;
}

.footer_main::before {
    content: '';
    display: block;
    height: 1px;
    max-width: var(--site-content-width);
    margin-left: auto;
    margin-right: auto;
    background-image: linear-gradient(to right, #D86018 0 25%, #D57800 25% 50%, #4698CB 50% 75%, #75787B 75% 100%);
    position: absolute;
    left: var(--page-layout-container-padding);
    top: 0;
    right: var(--page-layout-container-padding);
}


/***** Elements */

footer#page-footer .col_contacts .wrapper_contacts:not(:last-child),
footer#page-footer .col_contacts .wrapper_address:not(:last-child),
footer#page-footer .col_contacts .logo:not(:last-child) {
    margin-bottom: 30px;
}

footer#page-footer .col_contacts .wrapper_contacts .w-text.icon_atleft i {
    vertical-align: middle;
    color: var(--color-faded);
    font-size: 0.889rem;
    margin-right: 8px;
}

footer#page-footer .col_contacts .wrapper_contacts .wrapper_tels {
    gap: 20px;
}

footer#page-footer .col_contacts .wrapper_contacts .wrapper_tels a[href^="tel:"]::before {
    content: '\f095';
    font-family: var(--fa-font-family, "fontawesome");
    font-weight: var(--fa-font-weight, "400");
    color: var(--color-faded);
    font-size: 0.889rem;
    display: inline-block;
    margin-right: 8px;
}

footer#page-footer i.fa-canadian-maple-leaf {
    color: #EB0000;
}


/***** Simple Footer */

footer#page-footer .footer_simple {
    --color-footer-link: var(--color-footer-text);
}


/*****************************
**
** TITLEBARS
**
******************************/


/***** features */

.titlebar_feature .image_main {
    transform: translateY(var(--section-height-medium-bottom-padding));
}

@media (min-width: 1280px) {
    .titlebar_feature .image_main {
        transform: translate(100px, var(--section-height-medium-bottom-padding));
    }
}


/***** landing page */

.titlebar_landing .logo {
    height: 25px;
}

@media (min-width: 768px) and (max-width:1023px) {
    .titlebar_landing .logo {
        height: 30px;
    }
}

@media (min-width: 1024px) {
    .titlebar_landing .logo {
        height: 45px;
    }
}


/*****************************
**
** SECTIONS
**
******************************/


/***** section_feature_menu */

.section_feature_menu {
    transform: translateY(-50%);
}

@media (min-width: 1280px) {
    .section_feature_menu .menu_pages_wrapper {
        position: relative;
    }
    .section_feature_menu .menu_pages_wrapper::after {
        content: url('/wp-content/themes/Impreza-child/assets/imgs/arrow_2.svg');
        display: block;
        position: absolute;
        right: calc(100% - 110px);
        top: calc(100% - 15px);
        z-index: 1;
        user-select: none;
        pointer-events: none;
        z-index: -1;
    }
}


/***** section_overlay */

.section_overlay_top>.l-section-overlay {
    bottom: initial;
    height: calc(var(--section-height-medium-top-padding) + 180px);
}

.section_overlay_bottom>.l-section-overlay {
    top: calc(var(--section-height-medium-top-padding) + 180px);
}

@media (min-width: 768px) {
    .section_overlay_bottom>.l-section-overlay {
        top: initial;
        height: calc(var(--section-height-medium-top-padding) + 180px);
    }
}


/*****************************
**
** ROWS
**
******************************/


/***** row_stats */

.row_stats .col_stat .statistic p {
    max-width: 75%;
    margin-left: auto;
    margin-right: auto;
}

.row_stats .col_stat .statistic h3:not(:last-child) {
    margin-bottom: 10px;
}

.row_stats .col_stat {
    position: relative;
    margin: 0 !important;
}

.row_stats .col_stat:not(:first-child) {
    padding-top: 60px;
}

.row_stats .col_stat:not(:first-child)::before {
    content: '';
    display: block;
    width: 40px;
    height: 1px;
    background: var(--color-content-border);
    position: absolute;
    top: 30px;
    left: 50%;
    transform: translateX(-50%);
}

@media (min-width: 821px) {
    .row_stats .col_stat:not(:first-child) {
        padding-top: 0;
    }
    .row_stats .col_stat:not(:first-child)::before {
        width: 1px;
        height: 80px;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
    }
}

@media (min-width: 1280px) {
    .row_stats .col_stat .statistic p {
        max-width: 270px;
    }
}


/*****************************
**
** WRAPPERS
**
******************************/


/***** GENERAL */

.w-vwrapper.use_gap {
    gap: var(--vwrapper-gap);
}

.w-hwrapper.use_gap {
    gap: var(--hwrapper-gap);
}

.w-vwrapper.use_gap>*,
.w-hwrapper.use_gap>* {
    margin: 0 !important;
}

@media (min-width: 768px) and (max-width: 1023px) {
    .w-hwrapper.stack_on_tablets {
        display: block;
    }
}


/***** wrapper_hero */

.wrapper_hero .wpcf7 {
    position: relative;
    text-align: center;
    margin-top: 30px;
    margin-bottom: 15px;
}

.wrapper_hero .wpcf7 .form_group.layout_absolute .form_row.fields input[type="email"] {
    border: 2px solid var(--color-content-primary);
}

@media (min-width: 768px) {
    .wrapper_hero .wpcf7 {
        margin-top: 50px;
    }
}

@media (min-width: 821px) {
    .wrapper_hero .wpcf7 .form_row.fields .wpcf7-form-control.wpcf7-acceptance label {
        text-align: center;
        padding: 0;
    }
}

@media (min-width: 1025px) {
    .wrapper_hero .wpcf7::after {
        content: url('/wp-content/themes/Impreza-child/assets/imgs/arrow_2.svg');
        display: block;
        position: absolute;
        left: calc(100% + 30px);
        top: -30px;
        transform: scaleX(-100%);
        z-index: 1;
        user-select: none;
        pointer-events: none;
    }
}


/***** wrapper_apps */

.w-vwrapper.wrapper_apps {
    text-align: center;
    align-items: center;
}

@media (min-width: 768px) {
    .w-vwrapper.wrapper_apps {
        flex-direction: row;
        text-align: left;
    }
}


/***** wrapper_filter */

.wrapper_filter {
    --filter-gap: 10px;
}

@media (min-width: 768px) {
    .wrapper_filter {
        --filter-gap: 30px;
    }
}

.wrapper_filter {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--filter-gap);
}

@media (min-width: 768px) {
    .wrapper_filter {
        grid-template-columns: 1fr 1fr;
    }
}

.wrapper_filter .w-search input {
    border-color: var(--color-content-primary)
}

.wrapper_filter .w-search .w-search-form-btn i {
    color: var(--color-content-primary)
}

.wrapper_filter .w-filter.state_desktop.style_drop_default .w-filter-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--filter-gap);
}

@media (min-width: 768px) {
    .wrapper_filter .w-filter.state_desktop.style_drop_default .w-filter-list {
        grid-template-columns: 1fr 1fr;
    }
}

.w-filter.state_desktop.style_drop_default .w-filter-list,
.w-filter.state_desktop.style_drop_default .w-filter-item {
    margin: 0;
}

.wrapper_filter .w-filter.state_desktop.style_drop_default .w-filter-item-reset {
    right: 5px
}

.wrapper_filter .w-filter.state_desktop.style_drop_default .w-filter-item:not(.has_value) .w-filter-item-title {
    padding-right: 30px;
}

.wrapper_filter .w-filter-item[data-ui_type=dropdown] .w-filter-item-values:after,
.wrapper_filter .w-filter.state_desktop.style_drop_default .w-filter-item:not(.has_value) .w-filter-item-title:after {
    content: '\f078';
    font-family: var(--fa-font-family);
    font-weight: var(--fa-font-weight);
    color: var(--color-content-primary);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
    font-size: 16px;
    margin: 0!important;
    pointer-events: none;
    border: none;
    border-radius: 0;
}

.wrapper_filter .w-filter.state_desktop.style_drop_default .w-filter-item.has_value .w-filter-item-title {
    font-size: 12px
}

.wrapper_filter .w-filter.state_desktop.style_drop_default .w-filter-item.has_value .w-filter-item-title span {
    font-size: 16px;
    font-weight: var(--fa-font-weight);
}

.wrapper_filter .w-filter input[type=checkbox] {
    border-radius: 3px;
    line-height: 20px;
    height: 20px;
    width: 20px;
}

.wrapper_filter .w-filter input:checked {
    background-color: var(--color-content-primary);
    border-color: var(--color-content-primary);
    color: #ffffff;
}

.wrapper_filter .w-filter.state_desktop[class*="style_drop_"] .w-filter-item-values {
    min-width: 180px;
}


/**** wrapper_image */

.wrapper_image.with_icons {
    position: relative;
}

.wrapper_image.with_icons .w-image {
    overflow: hidden;
    border-radius: var(--element-radius);
}

.wrapper_image.with_icons .wrapper_icons {
    position: relative;
    z-index: 2;
    margin-top: -30px;
}

@media (min-width: 1280px) {
    .wrapper_image.with_icons .wrapper_icons {
        margin-top: 0;
        position: absolute;
        top: 50%;
        flex-direction: column;
    }
    .wrapper_image.with_icons.position_right .wrapper_icons {
        right: 0;
        transform: translate(50%, -50%);
    }
    .wrapper_image.with_icons.position_left .wrapper_icons {
        left: 0;
        transform: translate(-50%, -50%);
    }
}


/***** wrapper_banner */

.wrapper_banner {
    --banner-padding: 20px;
}

@media (min-width: 768px) {
    .wrapper_banner {
        --banner-padding: 80px;
    }
}

@media (min-width: 1280px) {
    .wrapper_banner {
        --banner-padding: 120px;
    }
}

.wrapper_banner {
    position: relative;
    gap: 30px;
    background: var(--color-content-secondary);
    border-radius: var(--element-radius);
    overflow: hidden;
    padding: var(--banner-padding);
}

.wrapper_banner::after {
    content: url(/wp-content/themes/Impreza-child/assets/imgs/pattern.svg);
    display: block;
    position: absolute;
    left: 50px;
    top: 50%;
    transform: translateY(-50%);
    user-select: none;
    pointer-events: none;
    z-index: 0;
}

@media (min-width: 768px) {
    .wrapper_banner::after {
        left: 75%;
    }
}

.wrapper_banner>* {
    position: relative;
    z-index: 2;
}

.wrapper_banner .wpcf7 {
    --wpcf7-error-color: var(--warning-color);
    --wpcf7-column-spacing-vertical: 10px;
    position: relative;
}

@media (min-width: 1280px) {
    .wrapper_banner .wpcf7::after {
        content: url('/wp-content/themes/Impreza-child/assets/imgs/arrow_3.svg');
        display: block;
        position: absolute;
        left: calc(100% + 30px);
        top: calc(100% + 30px);
        z-index: 1;
        user-select: none;
        pointer-events: none;
    }
}

.wrapper_banner .wpcf7 .wrapper_content:not(:last-child) {
    margin-bottom: 30px;
}

.wrapper_banner .wpcf7 .btn-wrapper {
    width: 100%;
}

@media (min-width: 1024px) {
    .wrapper_banner {
        flex-direction: row;
        justify-content: space-between;
    }
    .wrapper_banner .wpcf7 {
        max-width: min(50%, 490px);
    }
    .wrapper_banner .wpcf7 .btn-wrapper {
        width: auto;
    }
    .wrapper_banner .w-image {
        max-width: 480px;
        position: absolute;
        right: calc(0px - var(--banner-padding));
        top: 50%;
        transform: translateY(-50%);
    }
}

@media (min-width: 1280px) {
    .wrapper_banner .wpcf7 .form_row>.form_col.via_flex {
        flex-wrap: nowrap;
    }
    .wrapper_banner .wpcf7 .btn-wrapper {
        flex-shrink: 0;
    }
    .wrapper_banner .w-image {
        max-width: 600px;
        right: calc(0px - var(--banner-padding));
    }
}


/***** wrapper_banner_app */

.wrapper_banner_app {
    background: var(--color-content-secondary);
    border-radius: var(--element-radius);
    position: relative;
    overflow: hidden;
    padding: 30px 20px;
    color: var(--color-white);
    --color-content-heading: var(--color-white);
    --color-content-link: var(--color-white);
    --color-content-link-hover: var(--color-white);
}

.wrapper_banner_app::after {
    content: url(/wp-content/themes/Impreza-child/assets/imgs/pattern.svg);
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    user-select: none;
    pointer-events: none;
    z-index: 0;
}

.wrapper_banner_app>* {
    position: relative;
    z-index: 2;
}

@media (min-width: 768px) {
    .wrapper_banner_app {
        padding: 40px;
    }
}

.wrapper_banner_app h3:not(:last-child) {
    margin-bottom: 10px;
}


/***** wrapper_newsletter */

.wrapper_newsletter {
    --newsletter-padding: 20px;
}

@media (min-width: 768px) {
    .wrapper_newsletter {
        --newsletter-padding: 50px;
    }
}

@media (min-width: 1280px) {
    .wrapper_newsletter {
        --newsletter-padding: 100px;
    }
}

.wrapper_newsletter {
    background: var(--color-content-secondary);
    border-radius: var(--element-radius);
    overflow: hidden;
    padding: var(--newsletter-padding);
    position: relative;
}

.wrapper_newsletter::before {
    content: url(/wp-content/themes/Impreza-child/assets/imgs/pattern.svg);
    display: block;
    position: absolute;
    left: 25%;
    top: 50%;
    transform: translateY(-50%);
    user-select: none;
    pointer-events: none;
    z-index: 0;
}

.wrapper_newsletter>* {
    position: relative;
    z-index: 2;
}

@media (min-width: 768px) {
    .wrapper_newsletter::before {
        left: 45%;
    }
}

.wrapper_newsletter .wpcf7 {
    --wpcf7-error-color: var(--warning-color);
}

@media (max-width: 820px) {
    .wrapper_newsletter {
        flex-direction: column;
    }
}

@media (min-width: 1280px) {
    .wrapper_newsletter .wpcf7 {
        max-width: 570px;
    }
    .wrapper_newsletter h3 {
        max-width: 470px;
    }
}


/***** wrapper_cta */

.wrapper_cta {
    --cta-padding: 20px;
}

@media (min-width: 768px) {
    .wrapper_cta {
        --cta-padding: 50px;
    }
}

@media (min-width: 1280px) {
    .wrapper_cta {
        --cta-padding: 80px 120px;
    }
}

.wrapper_cta {
    background: var(--color-content-secondary);
    border-radius: var(--element-radius);
    overflow: hidden;
    padding: var(--cta-padding);
    position: relative;
}

.wrapper_cta::before {
    content: url(/wp-content/themes/Impreza-child/assets/imgs/pattern.svg);
    display: block;
    position: absolute;
    left: 25%;
    top: 50%;
    transform: translateY(-50%);
    user-select: none;
    pointer-events: none;
    z-index: 0;
}

.wrapper_cta>* {
    position: relative;
    z-index: 2;
}

.wrapper_cta>.w-btn-wrapper {
    flex-shrink: 0;
}

@media (min-width: 768px) {
    .wrapper_cta::before {
        left: 45%;
    }
}

@media (max-width: 820px) {
    .wrapper_cta {
        flex-direction: column;
    }
}

@media (min-width: 1280px) {
    .wrapper_cta h3 {
        max-width: 630px;
    }
}


/**** wrapper_logos */

.wrapper_logos {
    flex-direction: row;
    gap: 30px;
}

@media (min-width: 768px) {
    .wrapper_logos {
        gap: 40px;
    }
}


/***** wrapper_quote */

@media (min-width: 1280px) {
    .wrapper_quote.wrap {
        flex-wrap: nowrap;
    }
}

.wrapper_quote blockquote {
    font-size: 1rem;
    padding: 0 0 0 35px;
}

@media (min-width: 768px) {
    .wrapper_quote blockquote {
        font-size: 0.889rem;
    }
}

.wrapper_quote blockquote::before {
    content: url('/wp-content/themes/Impreza-child/assets/imgs/quote_red.svg');
    font-size: 0;
}

.wrapper_quote>.w-image {
    flex-shrink: 0;
}


/***** wrapper_testimonial */

.wrapper_testimonial {
    padding: 30px;
    border-radius: var(--element-radius);
    overflow: hidden;
    background: var(--color-content-bg);
}

@media (min-width: 768px) {
    .wrapper_testimonial {
        padding: 50px;
    }
}

.wrapper_testimonial .w-iconbox.iconpos_top .w-iconbox-meta:not(:empty) {
    margin-top: 1.111rem;
}


/***** wrapper_author */

.wrapper_author .w-iconbox {
    font-size: 0.889rem;
    align-items: center;
}

.wrapper_author .w-iconbox .w-iconbox-meta .w-iconbox-title {
    color: var(--color-content-primary);
}

.wrapper_author .w-iconbox .w-iconbox-meta .w-iconbox-title:not(:last-child) {
    margin-bottom: 2px;
}


/***** wrapper_contact */

.wrapper_contact .wpb_text_column h3:not(:first-child) {
    padding-top: 0;
}

.wrapper_contact p {
    font-size: 16px;
    line-height: 1.5;
}

.wrapper_contact p:not(:last-child) {
    margin-bottom: 10px;
}


/***** wrapper_address */

.wrapper_address p {
    font-size: 16px;
}

.wrapper_address .text_cols-2 p {
    column-count: 2;
}

@media (min-width: 1024px) {
    .wrapper_address .text_cols-2 p {
        width: 370px;
    }
}


/***** wrapper_departments */

.wrapper_departments {
    margin: -10px;
}

.wrapper_departments>* {
    padding: 10px;
}

.wrapper_departments .w-iconbox {
    width: 100%;
    align-items: center;
}

@media (min-width: 768px) {
    .wrapper_departments {
        margin: -20px -10px;
    }
    .wrapper_departments>* {
        padding: 20px 10px;
    }
    .wrapper_departments .w-iconbox {
        width: 50%;
    }
}

.wrapper_departments .w-iconbox .w-iconbox-title:not(:last-child) {
    margin-bottom: 10px;
}

.wrapper_departments .w-iconbox .w-iconbox-text {
    font-size: 16px;
    line-height: 1;
}

.wrapper_departments .w-iconbox .w-iconbox-icon,
.wrapper_departments .w-iconbox .w-iconbox-icon svg {
    width: auto !important;
}


/***** wrapper_form */

.wrapper_form {
    border-radius: var(--element-radius);
    border: 1px solid var(--color-content-border);
    padding: 20px;
}

@media (min-width: 768px) {
    .wrapper_form {
        padding: 60px;
    }
}


/***** wrapper_form_lp */

.wrapper_form_lp {
    max-width: 570px;
    font-size: 0.889rem;
}

.wrapper_form_lp .wpcf7 .form_group.layout_absolute .form_row.fields input[type="email"] {
    border: 2px solid var(--color-content-primary);
}

@media (min-width: 1560px) {
    .wrapper_form_lp {
        position: relative;
        z-index: 2;
    }
    .wrapper_form_lp::before {
        content: url('/wp-content/themes/Impreza-child/assets/imgs/arrow_5.svg');
        display: block;
        position: absolute;
        top: 10px;
        right: calc(100% + 10px);
        user-select: none;
        pointer-events: none;
        z-index: -1;
    }
}


/***** wrapper_features */

.wrapper_features .w-iconbox {
    text-align: center;
}

.wrapper_features .w-iconbox>.w-iconbox-icon svg {
    width: auto !important;
}

.wrapper_features .w-iconbox .w-iconbox-title {
    margin-top: 0;
}

.wrapper_features .w-iconbox .w-iconbox-title:not(:last-child) {
    margin-bottom: 8px;
}

.wrapper_features .w-iconbox.iconpos_top .w-iconbox-meta:not(:empty) {
    margin-top: 1.111rem;
}

@media (min-width: 1024px) {
    .wrapper_features .w-iconbox {
        display: flex;
        align-items: flex-start;
        gap: 20px;
        text-align: left;
    }
    .wrapper_features .w-iconbox .w-iconbox-meta {
        margin-top: 0 !important;
    }
}

@media (min-width: 1280px) {
    .wrapper_features.align_justify {
        justify-content: flex-start;
    }
    .wrapper_features .w-iconbox {
        min-width: 210px;
    }
}


/**** cols */

@media (min-width: 768px) {
    .wrapper_features.cols_3 {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        --hwrapper-gap: 50px 30px !important;
    }
}

@media (min-width: 1280px) {
    .wrapper_features.cols_3 .w-iconbox .w-iconbox-meta {
        max-width: 320px;
    }
}


/*****************************
**
** CUSTOM ELEMENTS
**
******************************/


/***** ld_iframes */

.ld_iframes_wrapper .item:not([style*="display:none"]) {
    margin-top: var(--separator_height_size_medium);
}


/***** howtos */

.howtos {
    --howtos-content-spacing: 20px;
}

@media (min-width: 768px) {
    .howtos {
        --howtos-content-spacing: 30px;
    }
}

.howtos>.grid_list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.howtos .item>.wrapper_inner {
    position: relative;
    padding: var(--howtos-content-spacing);
    border-radius: var(--element-radius);
    overflow: hidden;
    border: 1px solid var(--color-content-border);
    background: var(--color-content-bg);
    transition: all .3s ease;
}

.no-touch .howtos .item>.wrapper_inner:hover {
    border-color: var(--color-content-bg);
    box-shadow: 0px 0px 100px 0px rgba(0, 0, 0, 0.07);
}

.howtos .item>.wrapper_inner .wrapper_main {
    display: flex;
    flex-direction: column;
    gap: var(--howtos-content-spacing);
}

.howtos .item>.wrapper_inner .wrapper_main>* {
    margin: 0;
}

.howtos .item>.wrapper_inner .wrapper_main .post_link {
    line-height: 1;
}

@media (min-width: 821px) {
    .howtos .item>.wrapper_inner .wrapper_main {
        flex-direction: row;
        align-items: center;
    }
    .howtos .item>.wrapper_inner .wrapper_main .post_title {
        order: 1;
        flex-grow: 1;
    }
    .howtos .item>.wrapper_inner .wrapper_main .post_cat {
        flex-shrink: 0;
        order: 2;
    }
    .howtos .item>.wrapper_inner .wrapper_main .post_link {
        flex-shrink: 0;
        order: 3;
    }
}


/***** members */

.members>.grid_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: -10px;
}

.members>.grid_list>* {
    padding: 10px;
    width: 100%;
}

@media (min-width: 768px) {
    .members>.grid_list {
        margin: -15px;
    }
    .members>.grid_list>* {
        padding: 15px;
        width: 50%;
    }
}

@media (min-width: 1025px) {
    .members>.grid_list>* {
        width: calc((4 / 12) * 100%);
    }
}

.members .item>.wrapper_inner,
.members .item>.wrapper_inner .wrapper_main {
    position: relative;
    height: 100%;
    transition: all .3s ease;
}

.no-touch .members .item>.wrapper_inner:hover {
    box-shadow: 0px 0px 100px 0px rgba(0, 0, 0, 0.07);
}

.members .item .wrapper_image {
    position: relative;
    line-height: 0;
    border-radius: var(--element-radius) var(--element-radius) 0px 0px;
    overflow: hidden;
}

.members .item .wrapper_image>.placeholder {
    padding-bottom: 100%;
}

.members .item .wrapper_image>.placeholder+img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.members .item .wrapper_content {
    display: flex;
    gap: 15px;
    align-items: flex-start;
    justify-content: space-between;
    padding: 20px;
    border: 1px solid var(--color-content-border);
    border-top: none;
    border-radius: 0px 0px var(--element-radius) var(--element-radius);
    transition: all .3s ease;
}

.no-touch .members .item>.wrapper_inner:hover .wrapper_content {
    border-color: var(--color-content-bg);
}

@media (min-width: 768px) {
    .members .item .wrapper_content {
        padding: 30px;
    }
}

.members .item .wrapper_content .wrapper_title .post_title:not(:last-child) {
    margin-bottom: 10px;
}

.members .item .wrapper_content .wrapper_title .post_desc {
    font-size: 0.889rem;
    text-transform: uppercase;
}

.members .item .wrapper_content .wrapper_socials i {
    font-size: 24px;
}


/***** careers */

.careers>.grid_list {
    display: flex;
    flex-direction: column;
    border-radius: var(--element-radius);
    overflow: hidden;
    background: var(--color-content-bg-alt);
}

.careers>.grid_list>* {
    width: 100%;
}

.careers .item>.wrapper_inner {
    position: relative;
    padding: 20px;
    background: var(--color-content-bg);
    transition: background .3s ease;
}

@media (min-width: 768px) {
    .careers .item>.wrapper_inner {
        padding: 30px;
    }
}

.careers .item:not(:last-child)>.wrapper_inner {
    border-bottom: 1px solid var(--color-content-bg-alt);
}

.careers .item .wrapper_main {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

@media (min-width: 768px) {
    .careers .item .wrapper_main {
        align-items: center;
    }
}

.careers .item .wrapper_main .wrapper_icon {
    flex-shrink: 0;
    line-height: 0;
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--color-content-primary);
    background: var(--color-alt-content-bg);
    border-radius: 50%;
    transition: all .3s ease;
}

.careers .item .wrapper_main .wrapper_content {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
}

@media (min-width: 768px) {
    .careers .item .wrapper_main .wrapper_content {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
}

.careers .item .wrapper_main .wrapper_content .wrapper_title .post_title {
    font-size: 1rem;
}

.careers .item .wrapper_main .wrapper_content .wrapper_title .post_title:not(:last-child) {
    margin-bottom: 5px;
}

.careers .item .wrapper_main .wrapper_content .wrapper_title .post_desc {
    font-size: 14px;
    text-transform: uppercase;
}

.careers .item .wrapper_main .wrapper_content .wrapper_actions a {
    font-size: 16px;
    white-space: nowrap;
}

.careers .item .wrapper_main .wrapper_content .wrapper_actions a>i {
    color: var(--color-faded);
}

.no-touch .careers .item:hover>.wrapper_inner {
    background: rgba(255, 255, 255, 0.70);
}

.no-touch .careers .item:hover .wrapper_main .wrapper_icon {
    color: #FFFFFF;
    background: var(--color-content-primary);
}


/***** industries */

.industries>.grid_list {
    display: flex;
    gap: 15px;
    flex-wrap: nowrap;
    padding-bottom: 20px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding: 50%;
}

@media (min-width: 768px) {
    .industries>.grid_list {
        gap: 30px;
    }
}

@media (max-width: 1099px) {
    .industries {
        margin-left: calc(0px - var(--page-layout-container-padding)) !important;
        margin-right: calc(0px - var(--page-layout-container-padding)) !important;
    }
    .industries>.grid_list>* {
        width: auto;
        max-width: 42vw;
        flex-shrink: 0;
        scroll-snap-align: center;
    }
    .industries>.grid_list>*:first-child {
        max-width: calc(42vw + var(--page-layout-container-padding));
        padding-left: var(--page-layout-container-padding);
    }
    .industries>.grid_list>*:last-child {
        padding-right: var(--page-layout-container-padding);
        max-width: calc(42vw + var(--page-layout-container-padding));
    }
}

@media (min-width: 1100px) {
    .industries>.grid_list {
        flex-wrap: wrap;
        justify-content: center;
        padding-bottom: 0;
        gap: 0;
        margin: -15px;
    }
    .industries>.grid_list>* {
        width: calc((1 / 5) * 100%);
        padding: 15px;
    }
}

.industries .item>.wrapper_inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 20px;
}

.industries .item>.wrapper_inner .wrapper_image {
    position: relative;
    line-height: 0;
    width: 100px;
    height: 100px;
}

@media (min-width: 768px) {
    .industries .item>.wrapper_inner .wrapper_image {
        width: 170px;
        height: 170px;
    }
}

.industries .item>.wrapper_inner .wrapper_image>.placeholder {
    padding-bottom: 100%;
}

.industries .item>.wrapper_inner .wrapper_image>.placeholder+img {
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.industries .item>.wrapper_inner .wrapper_content .post_title {
    font-size: 1rem;
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 768px) {
    .industries .item>.wrapper_inner .wrapper_content .post_title {
        max-width: 80%;
    }
}


/***** reviews */

.reviews>.grid_list {
    display: flex;
    flex-wrap: nowrap;
    gap: 25px;
    padding-bottom: 20px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding: 50%;
}

@media (max-width: 767px) {
    .reviews {
        margin-left: calc(0px - var(--page-layout-container-padding)) !important;
        margin-right: calc(0px - var(--page-layout-container-padding)) !important;
    }
    .reviews>.grid_list>* {
        width: 22vw;
        flex-shrink: 0;
        scroll-snap-align: center;
    }
    .reviews>.grid_list>*:first-child {
        width: calc(22vw + var(--page-layout-container-padding));
        padding-left: var(--page-layout-container-padding);
    }
    .reviews>.grid_list>*:last-child {
        padding-right: var(--page-layout-container-padding);
        width: calc(22vw + var(--page-layout-container-padding));
    }
}

@media (min-width: 768px) {
    .reviews>.grid_list {
        flex-wrap: wrap;
        gap: 50px;
        justify-content: center;
        padding-bottom: 0;
    }
}

.reviews .item>.wrapper_inner {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.reviews .item .wrapper_main {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.reviews .item .wrapper_main .wrapper_image {
    line-height: 0;
    flex-shrink: 0;
}

.reviews .item .wrapper_main .wrapper_image img {
    width: 80px;
}

.reviews .item .wrapper_main .post_title,
.reviews .item .wrapper_main .score {
    font-size: 16px;
}

.reviews .item .wrapper_main .post_title>a {
    text-decoration: underline;
}

.no-touch .reviews .item .link_over:hover+.wrapper_main .post_title>a {
    text-decoration: none;
}


/*** star rating */

:root {
    --star-size: 14px;
    --star-color: var(--color-content-bg);
    --star-background: #F9B44E;
}

.color_alternate {
    --star-color: var(--color-alt-content-bg);
}

.titlebar>.l-section-overlay+.l-section-h {
    --star-color: var(--color-content-bg-alt);
}

.rating {
    --percent: calc(var(--rating) / 5 * 100%);
    display: inline-block;
    font-size: var(--star-size);
    font-family: var(--fa-font-family);
    font-weight: 900;
    line-height: 1;
}

.rating::before {
    content: '\f005\f005\f005\f005\f005';
    background: linear-gradient(90deg, var(--star-background) var(--percent), var(--star-color) var(--percent));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


/***** CARDS */

.cards {
    --cards_grid_gap: 10px;
    --cards_spacing: 20px;
}

@media (min-width: 768px) {
    .cards {
        --cards_grid_gap: 15px;
        --cards_spacing: 40px;
    }
}

.cards>.grid_list {
    display: flex;
    flex-wrap: wrap;
    margin: calc(0px - var(--cards_grid_gap));
}

.cards>.grid_list>* {
    padding: var(--cards_grid_gap);
    width: calc((12 / 12) * 100%);
}

@media (min-width: 768px) {
    .cards>.grid_list>* {
        width: calc((6 / 12) * 100%);
    }
}

@media (min-width: 1025px) {
    /*** columns_3 */
    .cards.columns_3>.grid_list>* {
        width: calc((4 / 12) * 100%);
    }
    /*** columns_4 */
    .cards.columns_4>.grid_list>* {
        width: calc((3/ 12) * 100%);
    }
}

.cards .card>.wrapper_inner {
    position: relative;
    border-radius: var(--element-radius);
    overflow: hidden;
    border: 1px solid var(--color-content-border);
    background: var(--color-content-bg);
    padding: var(--cards_spacing);
    height: 100%;
    transition: all .3s ease;
}

.no-touch .cards .card>.wrapper_inner:hover {
    border-color: var(--color-content-bg);
    box-shadow: 0px 0px 100px 0px rgba(0, 0, 0, 0.07);
}

.cards .card.active>.wrapper_inner {
    border: 2px solid var(--color-content-primary);
}

.no-touch .cards .card.active>.wrapper_inner:hover {
    border-color: var(--color-content-primary);
}

.cards .card>.wrapper_inner .wrapper_main {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    gap: var(--cards_spacing);
}

.cards .card .wrapper_content .wrapper_icon {
    line-height: 0;
}

.cards .card .wrapper_content .wrapper_icon:not(:last-child) {
    margin-bottom: var(--cards_spacing);
}

.cards .card .wrapper_actions .btn_wrapper {
    line-height: 1;
}


/** cards_live_demo */

.cards.cards_live_demo .card .wrapper_content .wrapper_icon:not(:last-child) {
    margin-bottom: 20px;
}

.cards.cards_live_demo .card .wrapper_content .post_title:not(:last-child) {
    margin-bottom: 10px;
}

@media (min-width: 768px) {
    .cards.cards_live_demo .card .wrapper_content .wrapper_icon:not(:last-child) {
        margin-bottom: 30px;
    }
    .cards.cards_live_demo .card .wrapper_content .post_title:not(:last-child) {
        margin-bottom: 15px;
    }
}


/** cards_small */

.cards.cards_small .card .wrapper_content .wrapper_icon:not(:last-child) {
    margin-bottom: 20px;
}

.cards.cards_small .card .wrapper_content .post_title {
    font-size: 1.167rem;
}

.cards.cards_small .card .wrapper_content .post_title:not(:last-child) {
    margin-bottom: 10px;
}


/* .cards.cards_small .card .wrapper_content .post_desc {
    font-size: 16px;
} */


/***** cards_links */

.cards_links {
    --cards_grid_gap: 10px;
    --cards_spacing: 20px;
}

@media (min-width: 768px) {
    .cards_links {
        --cards_grid_gap: 15px;
        --cards_spacing: 40px;
    }
}

.cards_links>.grid_list {
    display: flex;
    flex-wrap: wrap;
    margin: calc(0px - var(--cards_grid_gap));
}

.cards_links>.grid_list>* {
    padding: var(--cards_grid_gap);
    width: calc((12 / 12) * 100%);
}

@media (min-width: 768px) {
    .cards_links>.grid_list>* {
        width: calc((6 / 12) * 100%);
    }
}

@media (min-width: 1024px) {
    .cards_links>.grid_list>* {
        width: calc((4 / 12) * 100%);
    }
}

.cards_links .card>.wrapper_inner {
    position: relative;
    border-radius: var(--element-radius);
    overflow: hidden;
    border: 1px solid var(--color-content-border);
    background: var(--color-content-bg);
    padding: var(--cards_spacing);
    height: 100%;
    transition: all .3s ease;
}

.no-touch .cards_links .card>.wrapper_inner:hover {
    border-color: var(--color-content-bg);
    box-shadow: 0px 0px 100px 0px rgba(0, 0, 0, 0.07);
}

.cards_links .card>.wrapper_inner .wrapper_main {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    gap: var(--cards_spacing);
}

.cards_links .card .wrapper_content .wrapper_icon {
    line-height: 0;
}

.cards_links .card .wrapper_content .wrapper_icon:not(:last-child) {
    margin-bottom: 20px;
}

.cards_links .card .wrapper_content .post_title:not(:last-child) {
    margin-bottom: 10px;
}

.cards_links .card .wrapper_content .post_desc {
    font-size: 16px;
}

.cards_links .card .wrapper_list ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.cards_links .card .wrapper_list ul>li {
    font-size: 16px;
}

.cards_links .card .wrapper_list ul>li:not(:last-child) {
    margin-bottom: 10px;
}

.cards_links .card .wrapper_list ul>li a {
    text-decoration: underline;
}

.no-touch .cards_links .card .wrapper_list ul>li a:hover {
    text-decoration: none;
}


/***** cards_image */

.cards_image {
    --cards_grid_gap: 20px;
    --cards_spacing: 30px;
    --cards_top_offset: 0px;
    --cards_height: 430px;
}

@media (min-width: 768px) {
    .cards_image {
        --cards_grid_gap: 30px;
        --cards_spacing: 80px;
        --cards_height: 690px;
    }
}

@media (min-width: 1024px) {
    .cards_image {
        --cards_top_offset: 0px;
    }
}

.cards_image>.grid_list {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: var(--cards_grid_gap);
    padding-bottom: var(--cards_top_offset);
}

@media (min-width: 1024px) {
    .cards_image>.grid_list {
        grid-template-columns: 1fr 1fr;
    }
}

.cards_image>.grid_list>*:nth-of-type(even) {
    top: var(--cards_top_offset);
    position: relative;
}

.cards_image .card>.wrapper_inner {
    position: relative;
    border-radius: var(--element-radius);
    overflow: hidden;
    border: 1px solid var(--color-content-border);
    background: var(--color-content-bg);
    padding: var(--cards_spacing);
    height: 100%;
    min-height: var(--cards_height);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    transition: all .3s ease;
}

.no-touch .cards_image .card>.wrapper_inner:hover {
    box-shadow: 0px 0px 100px 0px rgba(0, 0, 0, 0.07);
}

.cards_image .card .wrapper_content {
    max-width: 315px;
    line-height: 1.4;
}


/***** menu_pages */

.menu_pages_wrapper {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.menu_pages .wrapper_list ul {
    list-style: none;
    margin: 0;
    padding: 0;
    padding: 5px;
    gap: 5px;
    border-radius: var(--element-radius);
    border: 1px solid var(--color-content-border);
    background: var(--color-content-bg);
    display: grid;
    grid-auto-columns: 1fr;
    grid-auto-flow: column;
}

.menu_pages .wrapper_list ul>li {
    margin: 0;
    text-align: center;
}

.menu_pages .wrapper_list ul>li>a {
    display: block;
    font-size: 16px;
    line-height: 1.875;
    padding: 10px 15px;
    border-radius: var(--element-radius);
    color: var(--color-content-heading);
}

.no-touch .menu_pages .wrapper_list ul>li:not(.current)>a:hover {
    color: var(--color-content-primary);
}

.menu_pages .wrapper_list ul>li.current>a {
    pointer-events: none;
    cursor: default;
    background: var(--color-content-secondary);
    font-weight: var(--bold-font-weight);
    color: var(--color-content-bg);
}

.menu_pages .wrapper_select select,
.menu_pages .wrapper_select select:focus {
    font-size: 16px;
    font-weight: var(--bold-font-weight);
    color: var(--color-content-heading);
    -moz-appearance: none;
    /* Firefox */
    -webkit-appearance: none;
    /* Safari and Chrome */
    -o-appearance: none;
    /* Opera */
    appearance: none;
    position: relative;
    cursor: pointer;
    background: #FFFFFF url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23D86018%22%2F%3E%3C%2Fsvg%3E) no-repeat right 20px top 55% !important;
}


/***** features */

.features .item>.wrapper_inner {
    position: relative;
}

.features .item .wrapper_main {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

@media (min-width: 768px) {
    .features .item .wrapper_main {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 50px;
    }
}

.features .item .wrapper_main .wrapper_image {
    line-height: 0;
    flex-shrink: 0;
}

@media (min-width: 768px) {
    .features .item .wrapper_main .wrapper_image {
        max-width: 330px;
    }
}

.features .item .wrapper_main .wrapper_image img {
    border-radius: var(--element-radius);
    overflow: hidden;
}

.features .item .wrapper_main .wrapper_content .post_title:not(:last-child) {
    margin-bottom: 10px;
}

.features .item .wrapper_main .wrapper_content .post_desc:not(:last-child) {
    margin-bottom: 20px;
}


/*****************************
**
** GRID LAYOUTS
**
******************************/

.w-grid .g-loadmore {
    margin-top: 30px;
}

@media (min-width: 768px) {
    .w-grid .g-loadmore {
        margin-top: 50px;
    }
    .g-loadmore.width_full .w-btn {
        width: auto;
    }
}


/***** Scrollable Grid *****/

:root {
    --scrollable-grid-margin: 5px;
    --scrollable-grid-item-width: 85vw;
}

@media (min-width: 768px) and (max-width: 1024px) {
     :root {
        --scrollable-grid-margin: 10px;
        --scrollable-grid-item-width: 420px;
    }
}

@media (max-width: 1024px) {
    .w-grid.with_scroll {
        margin-right: calc(-1 * ( var(--page-layout-container-padding)));
        margin-left: calc(-1 * ( var(--page-layout-container-padding)));
    }
    .w-grid.with_scroll .w-grid-list {
        flex-wrap: nowrap;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-padding: 50%;
        margin: calc(-1 * var(--scrollable-grid-margin)) !important;
    }
    .w-grid.with_scroll .w-grid-list>* {
        scroll-snap-align: center;
        padding: var(--scrollable-grid-margin) !important;
    }
    .w-grid.with_scroll .w-grid-item {
        flex-shrink: 0;
        width: var(--scrollable-grid-item-width) !important;
    }
    .w-grid.with_scroll .w-grid-item:first-child,
    .w-grid.with_scroll .w-grid-item:last-child {
        width: calc(var(--scrollable-grid-item-width) + var(--page-layout-container-padding)) !important;
    }
    .w-grid.with_scroll .w-grid-list .w-grid-item:first-child {
        padding-left: calc(var(--page-layout-container-padding) + var(--scrollable-grid-margin)) !important;
    }
    .w-grid.with_scroll .w-grid-list .w-grid-item:last-child {
        padding-right: calc(var(--page-layout-container-padding) + var(--scrollable-grid-margin)) !important;
    }
}


/***** grid_resources */

.grid_resources .w-grid-item>.w-grid-item-h {
    border-radius: var(--element-radius);
    overflow: hidden;
    border: 1px solid var(--color-content-border);
    background: var(--color-content-bg);
    transition: all .3s ease;
}

.grid_resources .w-grid-item .wrapper_main>.wrapper_content {
    padding: 20px;
}

.grid_resources .w-grid-item .wrapper_content .post_title {
    font-size: 18px;
    line-height: 1.44;
    font-weight: var(--default-font-weight);
}

@media (min-width: 768px) {
    .grid_resources .w-grid-item .wrapper_main>.wrapper_content {
        padding: 30px;
    }
    .grid_resources .w-grid-item .wrapper_content .post_title {
        font-size: 21px;
    }
}

.no-touch .grid_resources .w-grid-item>.w-grid-item-h:hover {
    border-color: var(--color-content-bg);
    box-shadow: 0px 0px 100px 0px rgba(0, 0, 0, 0.07);
}


/***** grid_logos */

.grid_logos {
    width: 100%;
}

.grid_logos .w-grid-item-h {
    display: flex;
    align-items: center;
    justify-content: center;
}


/*****************************
**
** SWIPER SLIDERS
**
******************************/


/***** Slider pagination */

.swiper .swiper-pagination {
    position: relative;
    bottom: initial;
    left: initial;
    margin: 20px 0 0 0;
}

@media (min-width: 768px) {
    .swiper .swiper-pagination {
        margin: 50px 0 0 0;
    }
}

.swiper .swiper-pagination-bullets {
    line-height: 1;
}

.swiper .swiper-pagination-bullets .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: var(--color-faded);
    border: none;
    opacity: .2;
    border-radius: 50px;
    transition: all .3s ease;
}

.swiper .swiper-pagination-bullets .swiper-pagination-bullet:first-child {
    margin-left: 0;
}

.swiper .swiper-pagination-bullets .swiper-pagination-bullet:last-child {
    margin-right: 0;
}

.swiper .swiper-pagination-bullets .swiper-pagination-bullet-active {
    width: 25px;
    opacity: 1;
    background: var(--color-content-primary);
}


/***** testimonial slider */

.testimonial_slider {
    overflow: visible !important;
}

.testimonial_slider .swiper-slide {
    width: 300px;
    height: auto;
}

@media (min-width: 768px) {
    .testimonial_slider .swiper-slide {
        width: 570px;
    }
}

.testimonial_slider .swiper-slide>.wrapper_inner {
    border-radius: var(--element-radius);
    overflow: hidden;
    background: var(--color-content-bg);
    border: 1px solid var(--color-content-border);
    padding: 30px;
    height: 100%;
    box-sizing: border-box;
}

.color_alternate .testimonial_slider .swiper-slide>.wrapper_inner {
    border: none;
}

.testimonial_slider .swiper-slide .wrapper_main {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

@media (min-width: 768px) {
    .testimonial_slider .swiper-slide>.wrapper_inner {
        padding: 50px;
    }
    .testimonial_slider .swiper-slide .wrapper_main {
        gap: 40px;
    }
}

.testimonial_slider .swiper-slide .wrapper_content p::before {
    content: var(--ornament-quote);
    display: block;
    margin-bottom: 20px;
}

.testimonial_slider .swiper-slide .wrapper_author {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
}

.testimonial_slider .swiper-slide .wrapper_author .wrapper_image {
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    line-height: 0;
    position: relative;
}

.testimonial_slider .swiper-slide .wrapper_author .wrapper_image>.placeholder {
    padding-bottom: 100%;
}

.testimonial_slider .swiper-slide .wrapper_author .wrapper_image>.placeholder+img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.testimonial_slider .swiper-slide .wrapper_author .wrapper_info .author_position {
    color: var(--color-content-primary);
    text-transform: uppercase;
}

.testimonial_slider .swiper-slide .wrapper_author .wrapper_info .author_position:not(:last-child) {
    margin-bottom: 2px;
}

.testimonial_slider .swiper-slide .wrapper_author .wrapper_info .author_company {
    font-size: 14px;
    text-transform: uppercase;
}

@media (min-width: 768px) {
    .testimonial_slider .swiper-slide .wrapper_author .wrapper_info .author_company {
        font-size: 16px;
    }
}


/***** pricelist slider */

.pricelist_slider {
    overflow: visible !important;
}

.pricelist_slider.static .swiper-wrapper {
    display: flex;
    justify-content: center;
}

.pricelist_slider .swiper-wrapper {
    align-items: flex-end;
}

.pricelist_slider.static .swiper-slide {
    width: 100%;
}

.pricelist_slider .swiper-slide {
    width: 300px;
}

@media (min-width: 768px) {
    .pricelist_slider .swiper-slide {
        width: 450px;
    }
    .pricelist_slider.static .swiper-slide {
        width: 600px;
    }
}

.pricelist_slider .swiper-slide>.wrapper_inner {
    border-radius: var(--element-radius);
    overflow: hidden;
    background: var(--color-content-bg);
    border: 1px solid var(--color-content-border);
}

.pricelist_slider .swiper-slide>.wrapper_inner.has_tag {
    border: 2px solid var(--color-content-primary);
}

.pricelist_slider .swiper-slide>.wrapper_inner.has_tag .tag {
    padding: 10px;
    background: var(--color-content-primary);
    color: #FFFFFF;
    text-align: center;
}

.pricelist_slider .swiper-slide>.wrapper_inner.has_tag .tag i {
    font-size: 18px;
    line-height: 1;
    margin-right: 10px;
}

@media (min-width: 768px) {
    .pricelist_slider .swiper-slide>.wrapper_inner.has_tag .tag i {
        font-size: 20px;
    }
}

.pricelist_slider .swiper-slide>.wrapper_inner.has_tag .tag span {
    font-size: 1rem;
    font-weight: var(--bold-font-weight);
}

.pricelist_slider .swiper-slide .wrapper_main {
    padding: 30px;
    text-align: center;
}

@media (min-width: 768px) {
    .pricelist_slider .swiper-slide .wrapper_main {
        padding: 40px;
    }
}

@media (min-width: 1280px) {
    .pricelist_slider .swiper-slide .wrapper_main {
        padding: 60px;
    }
}

.pricelist_slider .swiper-slide .wrapper_main h5 {
    text-transform: uppercase;
}

.pricelist_slider .swiper-slide .wrapper_main h5:not(:last-child) {
    margin-bottom: 10px;
}

@media (min-width: 768px) {
    .pricelist_slider .swiper-slide .wrapper_main h5:not(:last-child) {
        margin-bottom: 20px;
    }
}

.pricelist_slider .swiper-slide .wrapper_main .wrapper_price {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 10px;
}

.pricelist_slider .swiper-slide .wrapper_main .wrapper_price:not(:last-child) {
    margin-bottom: 30px;
}

.pricelist_slider .swiper-slide .wrapper_main .wrapper_price .price {
    font-size: 48px;
    line-height: 1;
    font-weight: var(--bold-font-weight);
    color: var(--color-content-heading);
}

.pricelist_slider .swiper-slide .wrapper_main .wrapper_price .suffix {
    font-size: 18px;
    font-weight: var(--bold-font-weight);
    color: var(--color-content-heading);
}

.pricelist_slider .swiper-slide>.wrapper_inner.has_tag .wrapper_main .wrapper_price .price,
.pricelist_slider .swiper-slide>.wrapper_inner.has_tag .wrapper_main .wrapper_price .suffix {
    color: var(--color-content-primary);
}

@media (min-width: 768px) {
    .pricelist_slider .swiper-slide .wrapper_main .wrapper_price:not(:last-child) {
        margin-bottom: 50px;
    }
    .pricelist_slider .swiper-slide .wrapper_main .wrapper_price .price {
        font-size: 72px;
    }
}

.pricelist_slider .swiper-slide .wrapper_main .list_check {
    text-align: left;
}

.pricelist_slider .swiper-slide .wrapper_main .list_check ul li:not(.included)::before {
    color: var(--color-faded);
    font-weight: var(--fa-font-weight);
}


/*****************************
**
** ORNAMENTS
**
******************************/

@media (min-width: 1280px) {
    .w-image.with_ornament_arrow {
        position: relative;
        z-index: 2;
    }
    .w-image.with_ornament_arrow::before {
        content: url('/wp-content/themes/Impreza-child/assets/imgs/arrow_1.svg');
        display: block;
        position: absolute;
        right: calc(100% - 30px);
        bottom: 70px;
        user-select: none;
        pointer-events: none;
        z-index: -1;
    }
    .w-image.with_ornament_arrow.arrow_style_2::before {
        content: url('/wp-content/themes/Impreza-child/assets/imgs/arrow_4.svg');
        left: 60px;
        bottom: -40px;
        right: initial;
        z-index: 3;
    }
}


/** heading circle ornament */

.ornament {
    position: relative;
    z-index: 2;
}

.ornament::after {
    content: "";
    background-repeat: no-repeat;
    background-size: 100% 100%;
    display: inline-block;
    width: 110%;
    height: 110%;
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translate(-5%, -50%);
    z-index: -1;
    user-select: none;
    pointer-events: none;
}

.ornament::after {
    background-image: url('/wp-content/themes/Impreza-child/assets/imgs/circle.svg');
}


/***** CF7 - Custom Password Strenght Thermometer */


/*** layout */

.wpcf7 .password_field_wrapper {
    position: relative;
}

.wpcf7 .password_field_wrapper .password_thermometer {
    position: absolute;
    top: 0;
    right: 0;
}


/*** styling */

.wpcf7 .password_field_wrapper .password_thermometer {
    font-size: 14px;
    line-height: 1.37;
    color: var(--color-faded);
    display: flex;
    align-items: center;
    gap: 10px;
}

.wpcf7 .password_field_wrapper .password_thermometer>* {
    margin: 0;
}

.wpcf7 .password_field_wrapper .password_thermometer>p.pwd_label {
    font-size: inherit;
}

.wpcf7 .password_field_wrapper .password_thermometer>.thermometer_wrapper {
    width: 100px;
    height: 6px;
    border-radius: 2px;
    overflow: hidden;
    position: relative;
    background: var(--color-content-border);
    flex-shrink: 0;
}

@media (min-width: 1024px) {
    .wpcf7 .password_field_wrapper .password_thermometer>.thermometer_wrapper {
        width: 120px;
    }
}

.wpcf7 .password_field_wrapper .password_thermometer>.thermometer_wrapper::after {
    content: '';
    width: var(--thermometer-width, 0%);
    height: 6px;
    position: absolute;
    top: 0;
    left: 0;
    background: var(--color-content-secondary);
    transition: all .3s ease;
}