.btn, .button, .wp-block-button__link, button, input[type=button], input[type=reset], input[type=submit] {
    cursor: pointer;
    box-sizing: border-box;
    border-color: currentColor;
    text-align: center;
    font-family: var(--bodyfontfamily),var(--nv-fallback-ff)
}

    .btn, .button.button-primary, .is-style-primary .wp-block-button__link, .wp-block-search .wp-block-search__button, button, input[type=button], input[type=reset], input[type=submit] {
        cursor: pointer;
        box-sizing: border-box;
        background: var(--primarybtnbg);
        color: var(--primarybtncolor);
        border-style: solid;
        border-color: currentColor;
        fill: currentColor;
        border-width: var(--primarybtnborderwidth,0);
        border-radius: var(--primarybtnborderradius,3px);
        padding: var(--primarybtnpadding,13px 15px);
        font-weight: var(--btnfontweight,700);
        font-size: var(--btnfs,var(--bodyfontsize));
        line-height: var(--btnlineheight,1.6);
        letter-spacing: var(--btnletterspacing,var(--bodyletterspacing));
        text-transform: var(--btntexttransform,none)
    }

        .btn:hover, .button.button-primary:hover, .is-style-primary .wp-block-button__link:hover, button:hover, input[type=button]:hover, input[type=reset]:hover, input[type=submit]:hover {
            background: var(--primarybtnhoverbg);
            color: var(--primarybtnhovercolor);
            border-color: var(--primarybtnhovercolor)
        }

.wp-block-button__link {
    cursor: pointer;
    box-sizing: border-box;
    padding: var(--btnpadding,13px 15px);
    border-radius: var(--primarybtnborderradius,3px);
    font-weight: var(--btnfontweight,700);
    font-size: var(--btnfs,var(--bodyfontsize));
    line-height: var(--btnlineheight,1.6);
    letter-spacing: var(--btnletterspacing,var(--bodyletterspacing));
    text-transform: var(--btntexttransform,none)
}

.button, .button.button-secondary, .is-style-secondary .wp-block-button__link {
    cursor: pointer;
    box-sizing: border-box;
    background-color: var(--secondarybtnbg);
    color: var(--secondarybtncolor);
    border-style: solid;
    border-color: currentColor;
    fill: currentColor;
    border-width: var(--secondarybtnborderwidth,0);
    border-radius: var(--secondarybtnborderradius,3px);
    padding: var(--secondarybtnpadding,7px 12px);
    font-weight: var(--btnfontweight,700);
    font-size: var(--btnfs,var(--bodyfontsize));
    line-height: var(--btnlineheight,1.6);
    letter-spacing: var(--btnletterspacing);
    text-transform: var(--btntexttransform,none)
}

    .button.button-secondary:hover, .button:hover, .is-style-secondary .wp-block-button__link:hover {
        background-color: var(--secondarybtnhoverbg);
        color: var(--secondarybtnhovercolor);
        border-color: var(--secondarybtnhovercolor)
    }

.widget select, .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper, form input:read-write, form select, form select option, form textarea, form.wp-block-search input.wp-block-search__input {
    border-style: solid;
    border-color: var(--formfieldbordercolor);
    border-width: var(--formfieldborderwidth);
    border-radius: var(--formfieldborderradius,3px);
    background: var(--formfieldbgcolor);
    color: var(--formfieldcolor);
    padding: var(--formfieldpadding);
    text-transform: var(--formfieldtexttransform);
    font-weight: var(--formfieldfontweight);
    font-family: var(--bodyfontfamily);
    font-size: var(--formfieldfontsize);
    letter-spacing: var(--formfieldletterspacing);
    line-height: var(--formfieldlineheight)
}

.wpforms-container .wpforms-field-label, form label {
    font-weight: var(--formlabelfontweight,var(--bodyfontweight));
    text-transform: var(--formlabeltexttransform);
    letter-spacing: var(--formlabelletterspacing);
    line-height: var(--formlabellineheight);
    font-size: var(--formlabelfontsize,var(--bodyfontsize))
}

.entry-summary, .nv-meta-list li {
    font-weight: var(--fontweight);
    text-transform: var(--texttransform);
    letter-spacing: var(--letterspacing);
    line-height: var(--lineheight);
    font-size: var(--fontsize)
}

.title.entry-title {
    font-size: var(--fontsize,var(--h1fontsize));
    font-weight: var(--fontweight,var(--h1fontweight));
    line-height: var(--lineheight,var(--h1lineheight));
    letter-spacing: var(--letterspacing,var(--h1letterspacing));
    text-transform: var(--texttransform,var(--h1texttransform))
}

.blog-entry-title {
    font-size: var(--fontsize,var(--h3fontsize));
    font-weight: var(--fontweight,var(--h3fontweight));
    line-height: var(--lineheight,var(--h3lineheight));
    letter-spacing: var(--letterspacing,var(--h3letterspacing));
    text-transform: var(--texttransform,var(--h3texttransform))
}

.comment-reply-title, .comments-title {
    font-size: var(--fontsize,var(--h4fontsize));
    font-weight: var(--fontweight,var(--h4fontweight));
    line-height: var(--lineheight,var(--h4lineheight));
    letter-spacing: var(--letterspacing,var(--h4letterspacing));
    text-transform: var(--texttransform,var(--h4texttransform))
}

.nv-html-content p, blockquote, body, dd, dl, dt, fieldset, figure, h1, h2, h3, h4, h5, h6, hr, html, iframe, legend, li, ol, p, pre, textarea, ul {
    margin: 0;
    padding: 0
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: 400
}

ul {
    list-style: none
}

button, input, select, textarea {
    margin: 0
}

html {
    box-sizing: border-box;
    -ms-overflow-style: scrollbar
}

*, ::after, ::before {
    box-sizing: border-box
}

audio, embed, img, object, video {
    height: auto;
    max-width: 100%
}

iframe {
    border: 0;
    max-width: 100%
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td, th {
    padding: 0;
    text-align: left
}

abbr, acronym {
    text-decoration: none
}

mark {
    background: 0;
    color: var(--nv-text-color)
}

.container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin: 0 auto;
    max-width: var(--container)
}

.w-100 {
    width: 100%
}

.container-fluid {
    width: 100%;
    margin: 0 auto
}

    .container-fluid > div {
        margin: 0 -15px
    }

.row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px
}

.col {
    padding: 0 15px;
    margin: 0 auto;
    flex-grow: 1;
    max-width: 100%
}

html {
    font-size: 100%
}

body {
    background-color: var(--nv-site-bg);
    color: var(--nv-text-color);
    font-size: var(--bodyfontsize);
    line-height: var(--bodylineheight);
    letter-spacing: var(--bodyletterspacing);
    font-family: var(--bodyfontfamily),var(--nv-fallback-ff);
    text-transform: var(--bodytexttransform);
    font-weight: var(--bodyfontweight);
    overflow-x: hidden;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

h1, h2, h3, h4, h5, h6 {
    margin-bottom: 30px;
    font-family: var(--headingsfontfamily),var(--nv-fallback-ff)
}

p {
    margin-bottom: 30px
}

a {
    --linkdeco: none;
    color: var(--nv-primary-accent);
    cursor: pointer;
    text-decoration: var(--linkdeco)
}

    a:focus, a:hover {
        opacity: .9;
        color: var(--nv-secondary-accent)
    }

.entry-content a:not([class]), .nv-comment-content a:not([class]), .nv-template .neve-main a:not([class]), .widget_text a:not([class]) {
    --linkdeco: underline
}

ins {
    text-decoration: none
}

h1 {
    font-size: var(--h1fontsize);
    font-weight: var(--h1fontweight);
    line-height: var(--h1lineheight);
    letter-spacing: var(--h1letterspacing);
    text-transform: var(--h1texttransform)
}

h2 {
    font-size: var(--h2fontsize);
    font-weight: var(--h2fontweight);
    line-height: var(--h2lineheight);
    letter-spacing: var(--h2letterspacing);
    text-transform: var(--h2texttransform)
}

h3 {
    font-size: var(--h3fontsize);
    font-weight: var(--h3fontweight);
    line-height: var(--h3lineheight);
    letter-spacing: var(--h3letterspacing);
    text-transform: var(--h3texttransform)
}

h4 {
    font-size: var(--h4fontsize);
    font-weight: var(--h4fontweight);
    line-height: var(--h4lineheight);
    letter-spacing: var(--h4letterspacing);
    text-transform: var(--h4texttransform)
}

h5 {
    font-size: var(--h5fontsize);
    font-weight: var(--h5fontweight);
    line-height: var(--h5lineheight);
    letter-spacing: var(--h5letterspacing);
    text-transform: var(--h5texttransform)
}

h6 {
    font-size: var(--h6fontsize);
    font-weight: var(--h6fontweight);
    line-height: var(--h6lineheight);
    letter-spacing: var(--h6letterspacing);
    text-transform: var(--h6texttransform)
}

ol, ul {
    padding-left: var(--listpad,0)
}

ul {
    list-style: var(--liststyle,none)
}

.show-on-focus {
    position: absolute;
    width: 1px;
    height: 1px;
    clip: rect(1px,1px,1px,1px);
    top: 32px;
    background: var(--nv-site-bg);
    padding: 10px 15px
}

    .show-on-focus:focus {
        z-index: 999999;
        width: auto;
        height: auto;
        clip: auto
    }

.screen-reader-text {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden
}

.nv-icon {
    fill: currentColor
}

.nv-search {
    display: flex
}

table {
    border-collapse: separate;
    border-spacing: 0;
    border-width: 1px 0 0 1px;
    margin: 0 0 20px;
    width: 100%;
    word-break: initial
}

.wp-block-table {
    margin-top: 30px;
    margin-bottom: 30px
}

    .wp-block-table figcaption {
        margin: 15px auto;
        text-align: center
    }

    .wp-block-table.is-style-stripes {
        border: 0
    }

        .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
            background-color: var(--nv-light-bg)
        }

td, th {
    padding: 20px
}

th {
    padding-bottom: 10px
}

td {
    font-size: .9em;
    border-bottom: 2px solid var(--nv-text-color)
}

.wp-block-separator {
    border-bottom: 0;
    border-top: 2px solid
}

    .wp-block-separator.is-style-wide {
        border-width: 4px
    }

    .wp-block-separator.is-style-dots::before {
        content: "";
        border-top: 4px dotted;
        display: block
    }

.alignfull {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 0 7.5px
}

.alignwide {
    width: 98vw;
    max-width: 98vw;
    margin-left: calc(50% - 49vw);
    margin-right: calc(50% - 49vw)
}

.nv-sidebar-left .alignfull, .nv-sidebar-left .alignwide, .nv-sidebar-right .alignfull, .nv-sidebar-right .alignwide {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto
}

blockquote {
    margin: 40px 0;
    border-color: var(--nv-text-color);
    border-style: solid;
    border-width: 0 0 0 4px;
    padding: 0 0 0 20px
}

    blockquote p {
        margin-bottom: 10px
    }

    blockquote cite {
        font-style: normal;
        font-size: .9em !important
    }

    blockquote.has-text-align-center {
        border: 0;
        padding: 0
    }

    blockquote.has-text-align-right {
        border-width: 0 4px 0 0;
        padding: 0 20px 0 0
    }

    blockquote.is-style-large {
        border: 0;
        padding: 0
    }

        blockquote.is-style-large.wp-block-quote > p {
            margin-bottom: 20px;
            font-style: normal;
            font-size: 1.25em
        }

.wp-block-pullquote {
    margin-top: 30px;
    margin-bottom: 30px;
    border-top: 4px solid var(--nv-text-color);
    border-bottom: 4px solid var(--nv-text-color);
    padding: 30px 20px
}

    .wp-block-pullquote p {
        font-size: 1.5em !important
    }

    .wp-block-pullquote blockquote {
        padding-left: 0;
        border-left: 0;
        margin: 0
    }

    .wp-block-pullquote.alignleft {
        text-align: left
    }

    .wp-block-pullquote.alignright {
        text-align: right
    }

    .wp-block-pullquote.is-style-solid-color {
        background-color: var(--nv-light-bg)
    }

        .wp-block-pullquote.is-style-solid-color blockquote {
            text-align: inherit;
            max-width: 90%
        }

.wp-block-verse {
    background-color: inherit;
    font-size: 1.25em;
    border: 0
}

.has-neve-link-color-color {
    color: var(--nv-primary-accent) !important
}

.has-neve-link-color-background-color {
    background-color: var(--nv-primary-accent) !important
}

.has-neve-link-hover-color-color {
    color: var(--nv-secondary-accent) !important
}

.has-neve-link-hover-color-background-color {
    background-color: var(--nv-secondary-accent) !important
}

.has-neve-text-color-color {
    color: var(--nv-text-color) !important
}

.has-neve-text-color-background-color {
    background-color: var(--nv-text-color) !important
}

.has-nv-site-bg-color {
    color: var(--nv-site-bg) !important
}

.has-nv-site-bg-background-color {
    background-color: var(--nv-site-bg) !important
}

.has-nv-light-bg-color {
    color: var(--nv-light-bg) !important
}

.has-nv-light-bg-background-color {
    background-color: var(--nv-light-bg) !important
}

.has-nv-dark-bg-color {
    color: var(--nv-dark-bg) !important
}

.has-nv-dark-bg-background-color {
    background-color: var(--nv-dark-bg) !important
}

.has-nv-text-dark-bg-color {
    color: var(--nv-text-dark-bg) !important
}

.has-nv-text-dark-bg-background-color {
    background-color: var(--nv-text-dark-bg) !important
}

.has-nv-c-1-color {
    color: var(--nv-c-1) !important
}

.has-nv-c-1-background-color {
    background-color: var(--nv-c-1) !important
}

.has-nv-c-2-color {
    color: var(--nv-c-2) !important
}

.has-nv-c-2-background-color {
    background-color: var(--nv-c-2) !important
}

.site-logo {
    align-items: center;
    display: flex
}

    .site-logo img {
        max-width: var(--maxwidth);
        display: block;
        margin: 0 auto
    }

        .site-logo img[src$=".svg"] {
            width: var(--maxwidth)
        }

    .site-logo .title-with-logo {
        display: flex;
        flex-direction: row;
        align-items: center
    }

        .site-logo .title-with-logo > :first-child {
            margin-right: 10px
        }

    .site-logo h1, .site-logo p {
        font-size: var(--fs);
        font-weight: var(--h1fontweight);
        line-height: var(--bodylineheight);
        letter-spacing: var(--bodyletterspacing);
        text-transform: var(--texttransform,var(--bodytexttransform));
        margin: 0
    }

    .site-logo small {
        display: block
    }

.header-menu-sidebar .nav-ul .sub-menu, .nav-ul li:hover > .sub-menu, .sub-menu.dropdown-open {
    opacity: 1;
    visibility: visible
}

.caret {
    transition: .3s ease
}

.dd-title {
    flex-grow: var(--flexg);
    display: flex;
    align-items: center
}

.nav-ul {
    display: flex;
    flex-wrap: wrap;
    margin-right: calc(var(--spacing)/ 2 * -1);
    margin-left: calc(var(--spacing)/ 2 * -1)
}

    .nav-ul > li {
        margin: 0 calc(var(--spacing)/ 2)
    }

    .nav-ul li a {
        min-height: var(--height);
        color: var(--color);
        position: relative;
        width: 100%;
        display: flex;
        align-items: center
    }

    .nav-ul .caret {
        line-height: 0;
        justify-content: center;
        display: flex
    }

        .nav-ul .caret svg {
            width: .5em;
            height: .5em
        }

    .nav-ul li {
        display: block;
        position: relative
    }

        .nav-ul li > .wrap {
            display: flex;
            align-items: center
        }

        .nav-ul li.nv-active > .wrap .caret, .nav-ul li.nv-active > .wrap > a {
            color: var(--activecolor)
        }

        .nav-ul li:hover > .wrap .caret, .nav-ul li:hover > .wrap > a {
            color: var(--hovercolor,var(--nv-primary-accent))
        }

    .nav-ul .sub-menu {
        background: var(--bgcolor,var(--overlaycolor));
        z-index: 100;
        position: absolute;
        top: 100%;
        box-shadow: rgba(149,157,165,.2) 0 8px 24px;
        visibility: hidden;
        opacity: 0;
        right: 0
    }

        .nav-ul .sub-menu li {
            min-width: 150px;
            width: 100%
        }

            .nav-ul .sub-menu li > .wrap {
                padding: 10px 20px;
                white-space: nowrap;
                display: flex
            }

        .nav-ul .sub-menu .sub-menu {
            left: 100%;
            top: 0;
            right: unset
        }

.header-menu-sidebar .nv-nav-wrap {
    width: 100%
}

.header-menu-sidebar .nav-ul {
    flex-direction: column;
    width: 100%
}

    .header-menu-sidebar .nav-ul li {
        width: 100%
    }

        .header-menu-sidebar .nav-ul li:not([class*=block]) > .wrap > a {
            padding: 15px 0;
            white-space: unset
        }

    .header-menu-sidebar .nav-ul .caret svg {
        width: 1em;
        height: 1em
    }

    .header-menu-sidebar .nav-ul .caret-wrap {
        margin: -15px 0;
        padding: 15px
    }

        .header-menu-sidebar .nav-ul .caret-wrap.dropdown-open .caret {
            transform: rotateX(180deg)
        }

    .header-menu-sidebar .nav-ul .sub-menu {
        left: unset !important;
        top: unset !important;
        right: unset !important;
        background: 0;
        position: relative;
        max-width: 100%;
        box-shadow: none;
        display: none
    }

        .header-menu-sidebar .nav-ul .sub-menu.dropdown-open {
            display: block;
            margin-left: 10px
        }

.nv-nav-wrap ul.primary-menu-ul > li i {
    margin-top: 0;
    font-size: inherit;
    width: auto;
    height: auto
}

.nv-nav-search {
    transition: opacity .3s;
    position: absolute;
    visibility: hidden;
    opacity: 0;
    right: 0;
    width: auto;
    padding: 10px;
    cursor: unset;
    z-index: 100;
    background-color: var(--nv-site-bg);
    box-shadow: rgba(149,157,165,.2) 0 8px 24px;
    display: flex;
    align-items: center
}

    .nv-nav-search .container {
        padding: 0
    }

.menu-item-nav-search.active .nv-nav-search {
    opacity: 1;
    visibility: visible
}

.menu-item-nav-search {
    cursor: pointer;
    outline: 0
}

    .menu-item-nav-search .nv-icon:hover {
        color: var(--hovercolor)
    }

    .menu-item-nav-search svg {
        width: var(--iconsize);
        height: var(--iconsize)
    }

    .menu-item-nav-search.minimal {
        position: relative
    }

        .menu-item-nav-search.minimal .search-field {
            width: 200px
        }

        .menu-item-nav-search.minimal .nv-nav-search {
            display: flex;
            align-items: center;
            right: auto;
            left: 0;
            top: 100%
        }

    .menu-item-nav-search.floating .form-wrap {
        flex-grow: 1
    }

    .menu-item-nav-search.floating .nv-nav-search {
        align-items: unset;
        transition: top .2s ease-out;
        position: fixed;
        top: -100%;
        left: 0
    }

    .menu-item-nav-search.floating.active .nv-nav-search {
        top: 0
    }

    .menu-item-nav-search.floating .close-container {
        display: flex
    }

    .menu-item-nav-search.floating .close-responsive-search {
        display: flex;
        align-items: center;
        --primarybtnpadding: 0 20px
    }

.header-menu-sidebar .menu-item-nav-search.floating .nv-nav-search {
    position: absolute
}

.menu-item-nav-search.canvas .nv-nav-search {
    position: fixed;
    top: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

    .menu-item-nav-search.canvas .nv-nav-search .close-container {
        position: absolute;
        top: 30px;
        text-align: right
    }

.nav-clickaway-overlay {
    position: fixed;
    width: 100%;
    left: 0;
    right: 0;
    top: 0;
    z-index: 90;
    height: 100vh
}

.close-responsive-search {
    background: 0;
    border: 0;
    --primarybtnhoverbg: 0
}

    .close-responsive-search > svg {
        fill: var(--nv-text-color);
        width: var(--formfieldfontsize);
        min-width: 25px;
        min-height: 25px
    }

.sm-style-border-bottom .sub-menu .wrap::after, .style-border-bottom > ul > li > .wrap::after {
    bottom: 0
}

.sm-style-border-top .sub-menu .wrap::after, .style-border-top > ul > li > .wrap::after {
    top: 0
}

.m-style > ul > li > .wrap:hover::after, .sm-style .sub-menu .wrap:hover::after {
    width: 100%
}

.m-style > ul > li > .wrap::after, .sm-style .sub-menu .wrap::after {
    position: absolute;
    content: "";
    margin: 0 auto;
    width: 0;
    height: 2px;
    transition: all .3s ease;
    right: 0;
    left: 0;
    pointer-events: none;
    background-color: var(--hovercolor,var(--nv-primary-accent,currentColor))
}

.sm-style-full-height .sub-menu .wrap, .style-full-height > ul > li > .wrap {
    z-index: 1
}

    .sm-style-full-height .sub-menu .wrap::after, .style-full-height > ul > li > .wrap::after {
        top: 0;
        bottom: 0;
        left: calc(var(--spacing)/ 2 * -1);
        right: calc(var(--spacing)/ 2 * -1);
        height: 100%;
        z-index: -1
    }

    .sm-style-full-height .sub-menu .wrap:hover svg, .style-full-height > ul > li > .wrap:hover svg {
        color: var(--hovertextcolor,var(--color))
    }

    .sm-style-full-height .sub-menu .wrap:hover > a, .style-full-height > ul > li > .wrap:hover > a {
        color: currentColor
    }

        .sm-style-full-height .sub-menu .wrap:hover > a, .sm-style-full-height .sub-menu .wrap:hover > a i, .sm-style-full-height .sub-menu .wrap:hover > a span, .sm-style-full-height .sub-menu .wrap:hover > a + .caret-wrap, .style-full-height > ul > li > .wrap:hover > a, .style-full-height > ul > li > .wrap:hover > a i, .style-full-height > ul > li > .wrap:hover > a span, .style-full-height > ul > li > .wrap:hover > a + .caret-wrap {
            color: var(--hovertextcolor,var(--color)) !important
        }

            .sm-style-full-height .sub-menu .wrap:hover > a::after, .style-full-height > ul > li > .wrap:hover > a::after {
                width: calc(100% + var(--spacing))
            }

.sm-style-full-height .sub-menu a, .style-full-height > ul > li > a {
    z-index: 1
}

    .sm-style-full-height .sub-menu a::after, .style-full-height > ul > li > a::after {
        top: 0;
        bottom: 0;
        left: calc(var(--spacing)/ 2 * -1);
        right: calc(var(--spacing)/ 2 * -1);
        height: 100%;
        z-index: -1
    }

    .sm-style-full-height .sub-menu a:hover + .caret svg {
        color: var(--hovertextcolor);
        position: relative;
        z-index: 1
    }

    .sm-style-full-height .sub-menu a:hover::after {
        width: 100%
    }

.nav-toggle-label {
    line-height: 1;
    margin: var(--label-margin,0 5px 0 0)
}

.navbar-toggle-wrapper {
    align-items: center
}

.navbar-toggle {
    --primarybtncolor: var(--color);
    --primarybtnhovercolor: var(--color);
    --primarybtnbg: var(--bgcolor, transparent);
    --primarybtnhoverbg: var(--bgcolor, transparent);
    --primarybtnborderwidth: var(--borderwidth, 1px);
    --primarybtnborderradius: var(--borderradius, 0);
    padding: var(--padding,10px 15px);
    box-shadow: none;
    display: flex;
    align-items: center
}

    .navbar-toggle:focus {
        outline: 1px solid
    }

.icon-bar {
    background-color: currentColor;
    transition: all .1s ease;
    position: relative;
    display: block;
    width: 15px;
    height: 2px
}

    .icon-bar:nth-child(2) {
        margin: 3px 0
    }

.is-menu-sidebar .navbar-toggle .icon-bar:nth-child(1) {
    transform: rotate(45deg);
    top: 5px
}

.is-menu-sidebar .navbar-toggle .icon-bar:nth-child(2) {
    opacity: 0
}

.is-menu-sidebar .navbar-toggle .icon-bar:nth-child(3) {
    transform: rotate(-45deg);
    bottom: 5px
}

.wrapper {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    position: relative;
    transition: all .3s cubic-bezier(.79,.14,.15,.86)
}

body > .wrapper:not(.et-fb-iframe-ancestor) {
    overflow: hidden
}

.neve-main {
    flex: 1 auto
}

.nv-page-title-wrap .nv-page-title {
    text-align: var(--textalign,left)
}

input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=reset], input[type=search], input[type=submit], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], select, textarea {
    display: inline-block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: 0;
    resize: vertical
}

    [tabindex="-1"]:focus, input:read-write:focus, select:focus, textarea:focus {
        outline: 0;
        box-shadow: 0 0 3px 0 var(--nv-secondary-accent);
        --formfieldbordercolor: var(--nv-secondary-accent)
    }

button, input, select, textarea {
    line-height: inherit;
    box-sizing: border-box
}

::placeholder {
    color: inherit;
    opacity: .5
}

select {
    min-height: 35px;
    background-repeat: no-repeat;
    background-position: right;
    background-size: 18px;
    padding-right: 20px !important;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCI+PHBhdGggZmlsbD0iIzYyNjI2MiIgZD0iTTE1IDhsLTQgNi00LTZoOHoiLz48L3N2Zz4=)
}

label {
    display: inline-block
}

fieldset {
    padding: 20px 30px;
    margin-bottom: 20px;
    border: 2px solid var(--nv-light-bg)
}

    fieldset legend {
        font-weight: 700;
        padding: 0 15px;
        margin-left: -15px
    }

    fieldset input[type=password], fieldset input[type=search], fieldset input[type=text], fieldset select, fieldset textarea {
        width: 100%
    }

form select {
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCI+PHBhdGggZmlsbD0iIzYyNjI2MiIgZD0iTTE1IDhsLTQgNi00LTZoOHoiLz48L3N2Zz4=) right center/18px no-repeat,var(--formfieldbgcolor)
}

.widget-search {
    width: 100%;
    margin: 0 !important
}

.search-form {
    display: flex;
    max-width: 100%;
    line-height: 1;
    --primarybtnbg: var(--formfieldbgcolor);
    --primarybtnhoverbg: var(--formfieldbgcolor);
    --primarybtncolor: var(--formfieldbordercolor);
    --primarybtnhovercolor: var(--formfieldbordercolor)
}

    .search-form svg {
        fill: var(--formfieldcolor);
        width: var(--formfieldfontsize);
        opacity: .5;
        height: auto
    }

    .search-form .search-submit {
        display: flex;
        justify-content: center;
        align-items: center;
        min-width: 45px;
        z-index: 1;
        --primarybtnborderwidth: var(--formfieldborderwidth);
        --primarybtnborderradius: var(--formfieldborderradius);
        --primarybtnpadding: var(--formfieldpadding);
        border-bottom-left-radius: 0;
        border-top-left-radius: 0;
        border-left: 0;
        border-color: var(--formfieldbordercolor);
        position: relative;
        height: var(--height);
        overflow: hidden;
        white-space: nowrap
    }

        .search-form .search-submit::before {
            content: "";
            display: block;
            width: 3px;
            height: 100%;
            background-color: var(--formfieldbgcolor);
            left: -3px;
            top: 0;
            bottom: 0;
            position: absolute
        }

    .search-form .search-field {
        overflow: hidden;
        text-overflow: ellipsis;
        height: var(--height);
        border-right: 0;
        flex-grow: 1;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        width: calc(100% - 45px);
        max-width: 100%
    }

        .search-form .search-field:focus ~ button {
            box-shadow: 0 0 3px 0 var(--nv-secondary-accent);
            border-color: var(--nv-secondary-accent)
        }

.nv-meta-list {
    margin-bottom: 20px;
    font-size: .9em
}

    .nv-meta-list li, .nv-meta-list span {
        display: inline-block
    }

        .nv-meta-list li:not(:last-child)::after, .nv-meta-list span:not(:last-child)::after {
            content: "/";
            padding: 0 8px
        }

    .nv-meta-list .posted-on:not(.nv-show-updated) .updated {
        display: none
    }

    .nv-meta-list .photo {
        width: var(--avatarsize);
        height: var(--avatarsize);
        border-radius: 50%;
        transform: translateY(30%);
        margin-right: 3px
    }

.nv-dynamic-author-meta .photo {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    transform: translateY(30%)
}

.entry-title {
    word-wrap: break-word
}

    .entry-title a {
        color: var(--nv-text-color)
    }

.nv-index-posts {
    margin-top: 60px
}

    .nv-index-posts .nv-page-title-wrap {
        margin-top: 0
    }

.nv-post-thumbnail-wrap img:not(.photo), .nv-post-thumbnail-wrap > a {
    display: block
}

.nv-post-thumbnail-wrap img {
    box-shadow: var(--boxshadow,none)
}

.posts-wrapper > article {
    width: var(--postwidth)
}

.blog-entry-title {
    margin-bottom: 10px;
    word-wrap: break-word
}

.article-content-col {
    width: 100%
}

    .article-content-col .content {
        width: 100%;
        border-bottom: 0 solid;
        display: flex;
        flex-direction: column
    }

        .article-content-col .content .button {
            display: inline-block;
            align-self: flex-start
        }

.bypostauthor {
    display: block
}

.posts-wrapper {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px
}

.excerpt-wrap > :last-child {
    margin-bottom: 0
}

.layout-grid .content > .blog-entry-title {
    margin-bottom: 10px
}

.layout-grid .content > * {
    margin-bottom: 20px
}

.layout-grid .content > :last-child {
    margin-bottom: 0
}

.nv-non-grid-article {
    margin-bottom: var(--spacing,60px);
    display: flex;
    align-items: flex-end
}

    .nv-non-grid-article .non-grid-content {
        display: flex;
        flex-direction: column;
        flex-grow: 1
    }

        .nv-non-grid-article .non-grid-content > .blog-entry-title {
            margin-bottom: 10px
        }

        .nv-non-grid-article .non-grid-content > * {
            margin-bottom: 20px
        }

        .nv-non-grid-article .non-grid-content > :last-child {
            margin-bottom: 0
        }

article {
    word-break: break-word
}

body:not(.nv-blog-default) .posts-wrapper {
    margin-left: calc(-1 * var(--gridspacing,30px)/ 2);
    margin-right: calc(-1 * var(--gridspacing,30px)/ 2)
}

    body:not(.nv-blog-default) .posts-wrapper article {
        margin-bottom: calc(var(--gridspacing,30px));
        padding: 0 calc(var(--gridspacing,30px)/ 2)
    }

.nv-loader {
    height: 40px;
    width: 40px;
    border-radius: 50%;
    border: 3px solid var(--nv-primary-accent);
    border-left: 3px solid transparent;
    animation: spin 1s linear infinite;
    margin: 0 auto;
    display: none
}

@keyframes spin {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.layout-grid, body .layout-grid > .article-content-col {
    display: flex
}

.nv-non-grid-article .nv-post-thumbnail-wrap {
    margin-bottom: 20px
}

.non-grid-content {
    padding: var(--padding)
}

.cover-post {
    display: flex;
    box-shadow: var(--boxshadow,none);
    position: relative;
    min-height: 300px
}

.layout-covers .content {
    position: relative;
    padding: 0
}

.layout-covers .inner {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    z-index: 10;
    color: var(--color,#fff);
    padding: 25px
}

.layout-covers a:not(.button) {
    color: var(--color,#fff)
}

.layout-covers .img-wrap {
    position: absolute;
    width: 100%;
    height: 100%
}

.layout-covers img {
    object-fit: cover;
    width: 100%;
    height: 100%
}

.cover-overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(0,0,0,.75);
    z-index: 1
}

.nv-single-post-wrap > div:first-child {
    margin-top: 60px
}

.nv-single-post-wrap > div:last-child {
    padding-bottom: 30px
}

.nv-single-post-wrap > div:not(:last-child) {
    margin-bottom: var(--spacing,60px)
}

.nv-single-post-wrap .wp-block-image {
    margin-bottom: var(--img-m)
}

.nv-page-title-wrap {
    margin-top: 60px
}

.entry-header {
    text-align: var(--textalign,center)
}

    .entry-header .title {
        margin-bottom: 10px
    }

.attachment-neve-blog {
    display: flex
}

.nv-post-navigation {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px
}

    .nv-post-navigation span {
        display: block
    }

    .nv-post-navigation .nav-direction {
        color: var(--nv-text-color);
        font-size: .8em;
        text-transform: uppercase
    }

    .nv-post-navigation a:hover span:last-child {
        text-decoration: underline
    }

    .nv-post-navigation .next {
        grid-column: 2;
        text-align: right
    }

.post-pages-links {
    display: flex;
    list-style-type: none
}

    .post-pages-links > a:not(:last-child) span, .post-pages-links > span {
        padding-right: 15px
    }

.post-password-form input[type=submit] {
    margin-top: 20px
}

.nv-tags-list a {
    margin: 0 10px 10px 0;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff !important;
    padding: 10px;
    border-radius: 4px;
    background: var(--nv-primary-accent);
    line-height: 1;
    font-size: .75em !important;
    display: inline-block
}

.nv-tags-list span {
    margin-right: 10px
}

.page .nv-post-cover {
    margin-bottom: 60px
}

.nv-post-cover {
    min-height: var(--height);
    padding: var(--padding);
    justify-content: var(--justify,center);
    display: flex;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    text-align: var(--textalign,center)
}

    .nv-post-cover .nv-title-meta-wrap {
        color: var(--color,var(--nv-text-dark-bg));
        display: flex;
        flex-direction: column;
        z-index: 1;
        align-self: var(--valign,flex-end)
    }

        .nv-post-cover .nv-title-meta-wrap > :last-child {
            margin-bottom: 0
        }

        .nv-post-cover .nv-title-meta-wrap a {
            color: var(--color,var(--nv-text-dark-bg))
        }

    .nv-post-cover .container {
        display: flex;
        justify-content: var(--justify,center)
    }

.nv-is-boxed {
    padding: var(--padding);
    background: var(--bgcolor,var(--nv-light-bg));
    color: var(--color,var(--nv-text-color))
}

    .nv-is-boxed a {
        color: var(--color,var(--nv-text-color))
    }

.nv-overlay {
    background: var(--bgcolor,var(--nv-dark-bg));
    mix-blend-mode: var(--blendmode,normal);
    opacity: calc(var(--opacity)/ 100);
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0
}

.nv-comment-content {
    margin-bottom: 0 !important
}

    .nv-comment-content > :last-child {
        margin-bottom: 0
    }

#comments li.comment {
    border-bottom: 2px solid;
    padding-bottom: 40px;
    margin-bottom: 40px
}

#comments article {
    display: flex;
    gap: 20px
}

#comments .nv-comment-avatar {
    flex-shrink: 0
}

#comments .avatar {
    border-radius: 100%
}

#comments input:not([type=submit]):not([type=checkbox]) {
    width: 100%
}

#comments ol {
    list-style: none
}

#comments textarea {
    max-width: 100%;
    width: 100%;
    display: block
}

#comments .comment-reply-title {
    margin-bottom: 15px
}

    #comments .comment-reply-title small {
        float: right
    }

.nv-comment-header {
    display: flex;
    align-items: center;
    margin-bottom: 30px
}

    .nv-comment-header .vcard {
        display: grid
    }

        .nv-comment-header .vcard a {
            color: var(--color,var(--nv-text-color))
        }

        .nv-comment-header .vcard .author {
            font-weight: 700
        }

        .nv-comment-header .vcard time {
            font-size: .9em;
            opacity: .7
        }

    .nv-comment-header .edit-reply {
        font-size: .9em;
        font-weight: 700;
        text-transform: uppercase;
        margin-left: auto
    }

.comments-title {
    margin-bottom: 80px
}

.comment-content {
    flex: 1
}

.comment-form {
    display: grid;
    grid-column-gap: 15px;
    grid-row-gap: 10px
}

    .comment-form > p:not(.comment-notes) {
        margin-bottom: 0
    }

    .comment-form label {
        display: inline-block
    }

.nv-comments-list {
    margin-bottom: 80px
}

    .nv-comments-list .children {
        padding-left: 15px
    }

ul.page-numbers {
    display: flex;
    flex-wrap: wrap
}

    ul.page-numbers li {
        margin-bottom: 15px
    }

    ul.page-numbers input[type=submit] {
        all: unset;
        cursor: pointer
    }

    ul.page-numbers form {
        display: flex
    }

    ul.page-numbers .page-input {
        line-height: 1;
        margin-right: 10px;
        padding: 8px 15px;
        font-size: var(--bodyfontsize)
    }

    ul.page-numbers a, ul.page-numbers input[type=submit], ul.page-numbers span {
        line-height: 1;
        margin-right: 20px;
        background: var(--nv-light-bg);
        border-radius: 3px;
        padding: 12px 15px;
        color: var(--nv-text-color);
        display: block
    }

    ul.page-numbers .dots {
        background: 0
    }

    ul.page-numbers .current {
        background: var(--nv-primary-accent);
        color: var(--nv-text-dark-bg)
    }

dl {
    margin: 20px 0
}

    dl dd {
        padding-left: 30px
    }

    dl dt {
        font-weight: 600
    }

.nv-iframe-embed {
    position: relative;
    padding-bottom: 56.25%;
    height: 0
}

    .nv-iframe-embed iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }

figcaption {
    font-size: .9em;
    opacity: .75
}

code {
    background: #d0effb;
    border-radius: 5px;
    border: 1px solid var(--nv-light-bg);
    padding: 0 3px;
    color: #333
}

pre {
    display: block;
    padding: 30px;
    background: var(--nv-light-bg);
    margin: 20px 0;
    white-space: pre-wrap;
    font-size: .9em;
    font-family: Courier,monospace
}

    pre code {
        border: 0;
        background: 0 0
    }

.excerpt-wrap, .nv-content-wrap {
    --listpad: 20px;
    --liststyle: disc;
    --img-m: 24px
}

    .excerpt-wrap ol, .excerpt-wrap ul, .nv-content-wrap ol, .nv-content-wrap ul {
        margin: 30px 0
    }

    .excerpt-wrap li, .nv-content-wrap li {
        margin-top: 10px
    }

.alignleft {
    float: left;
    margin: 20px 20px 20px 0
}

.alignright {
    float: right;
    margin: 20px 0 20px 20px
}

.aligncenter {
    display: block;
    text-align: center;
    margin: 0 auto
}

.wp-caption {
    max-width: 100%
}

.wp-caption-text {
    text-align: center;
    font-size: .8em;
    font-weight: 500
}

.twitter-tweet.twitter-tweet-rendered {
    padding: 15px 0;
    margin: auto
}

hr {
    color: inherit;
    height: 0;
    border: 0;
    border-top: 2px solid;
    margin: 10px 0 20px;
    display: inline-block;
    width: 100%
}

audio {
    display: flex;
    height: 50px
}

.gallery-columns-1 .gallery-item {
    width: 100%;
    max-width: 100%
}

.gallery-columns-2 .gallery-item {
    max-width: 48%;
    width: 48%
}

.gallery-columns-3 .gallery-item {
    max-width: 31.3333333333%;
    width: 31.3333333333%
}

.gallery-columns-4 .gallery-item {
    max-width: 23%;
    width: 23%
}

.gallery-columns-5 .gallery-item {
    max-width: 18%;
    width: 18%
}

.gallery-columns-6 .gallery-item {
    max-width: 14.6666666667%;
    width: 14.6666666667%
}

.gallery-columns-7 .gallery-item {
    max-width: 12.2857142857%;
    width: 12.2857142857%
}

.gallery-columns-8 .gallery-item {
    max-width: 10.5%;
    width: 10.5%
}

.gallery-columns-9 .gallery-item {
    max-width: 9.1111111111%;
    width: 9.1111111111%
}

.gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.gallery-item {
    display: inline-block;
    text-align: center;
    vertical-align: top
}

.nv-content-wrap ul.wp-block-gallery {
    padding-left: 0
}

.gallery-caption {
    box-sizing: border-box
}

.nv-index-posts, .nv-single-post-wrap {
    margin-bottom: 60px
}

.nv-sidebar-wrap {
    padding: 60px 15px;
    margin-bottom: 20px;
    flex-grow: 1
}

    .nv-sidebar-wrap.hide:not(.shop-sidebar) {
        display: none
    }

.widget {
    word-break: break-word;
    margin-bottom: 40px
}

    .widget:last-child {
        margin: 0
    }

    .widget select {
        max-width: 100%;
        width: 100%
    }

    .widget .widget-title {
        margin-bottom: 10px;
        font-weight: 700;
        font-size: var(--h4fontsize)
    }

    .widget ul {
        padding: 0
    }

        .widget ul ul {
            padding-left: 10px
        }

    .widget li {
        margin-top: 10px
    }

.post-date {
    display: block;
    font-size: .9em;
    opacity: .7
}

.widget_recent_entries a {
    color: var(--nv-text-color)
}

.widget_calendar td, .widget_calendar th {
    padding: 10px
}

.nv-page-title .neve-breadcrumbs-wrapper, .nv-title-meta-wrap .neve-breadcrumbs-wrapper {
    margin-bottom: 30px;
    display: block
}

.neve-breadcrumbs-wrapper {
    font-size: 14px
}

    .neve-breadcrumbs-wrapper a {
        color: #676767
    }

.hfg-is-group {
    display: flex;
    align-items: center
}

.builder-item--footer-menu, .component-wrap, .item--inner, .menu-item-nav-search, .nav-ul .wrap a .dd-title, .nav-ul a, .palette-icon-wrapper, .site-logo, footer .nav-ul {
    justify-content: var(--justify,flex-start);
    text-align: var(--textalign,left)
}

@media (min-width:769px) {
    #comments .comment-form {
        grid-template-columns: repeat(3,1fr)
    }

        #comments .comment-form > :not(.comment-form-author):not(.comment-form-url):not(.comment-form-email) {
            grid-column: 1/-1
        }
}

@media (min-width:960px) {
    .neve-main > .container .col {
        max-width: 70%
    }

    .neve-main > .container > .row {
        flex-wrap: nowrap
    }

    .nv-non-grid-article .nv-post-thumbnail-wrap {
        margin-bottom: 0;
        grid-column: var(--thumbgridcolumn,1)
    }

    .nv-non-grid-article .nv-ft-wrap {
        display: grid;
        grid-gap: 20px;
        align-items: center;
        grid-auto-flow: dense
    }

    .posts-wrapper > article.has-post-thumbnail .nv-ft-wrap {
        grid-template-columns: var(--postcoltemplate,35fr 65fr)
    }

    .posts-wrapper > article.has-post-thumbnail.layout-alternative:nth-child(even) {
        --thumbgridcolumn: 2
    }

        .posts-wrapper > article.has-post-thumbnail.layout-alternative:nth-child(even) .nv-ft-wrap {
            grid-template-columns: var(--postcoltemplate,65fr 35fr)
        }

    .nv-sidebar-wrap {
        max-width: 30%
    }

        .nv-sidebar-wrap.nv-right {
            padding-left: 45px
        }

        .nv-sidebar-wrap.nv-left {
            padding-right: 45px
        }

        .nv-sidebar-wrap.hide.shop-sidebar {
            display: none
        }

    .alignwide {
        width: 70vw;
        max-width: 70vw;
        margin-left: calc(50% - 35vw);
        margin-right: calc(50% - 35vw)
    }
}

.elementor-widget-text-editor {
    --listpad: 15px;
    --liststyle: disc
}

body.elementor-page .wrapper {
    overflow: visible
}

.elementor select {
    background-image: none
}

.header-menu-sidebar {
    padding: 0;
    position: fixed;
    max-width: 100%;
    top: 0;
    z-index: 999900;
    visibility: hidden;
    display: flex;
    height: 100vh
}

    .header-menu-sidebar .navbar-toggle-wrapper {
        display: flex;
        justify-content: flex-end;
        padding: 8px 10px
    }

        .header-menu-sidebar .navbar-toggle-wrapper button.navbar-toggle {
            position: relative
        }

.tcb {
    transition: all .3s cubic-bezier(.79,.14,.15,.86)
}

.header-menu-sidebar-bg {
    background: var(--bgcolor);
    color: var(--color);
    position: relative;
    display: flex;
    flex-direction: column;
    word-wrap: break-word;
    width: 100%
}

.header-menu-sidebar-inner {
    padding: 20px 0;
    overflow-x: hidden;
    height: 100%;
    display: none;
    opacity: 0;
    transition: opacity .3s ease
}

.is-menu-sidebar .header-menu-sidebar-inner {
    display: block;
    opacity: 1
}

.hiding-header-menu-sidebar .header-menu-sidebar-inner {
    display: block;
    transition: all .3s ease;
    opacity: 0
}

.header-menu-sidebar-inner .item--inner {
    width: 100%
}

.hiding-header-menu-sidebar .close-sidebar-panel {
    transition: .3s ease;
    opacity: 0
}

.menu_sidebar_slide_left .header-menu-sidebar {
    left: 0;
    transform: translateX(-100%)
}

.menu_sidebar_slide_right .header-menu-sidebar {
    right: 0;
    transform: translateX(100%)
}

.menu_sidebar_pull_left .wrapper {
    left: 0
}

    .menu_sidebar_pull_left .wrapper .header-menu-sidebar {
        left: 0;
        transform: translateX(-100%)
    }

.menu_sidebar_pull_right .wrapper {
    right: 0
}

    .menu_sidebar_pull_right .wrapper .header-menu-sidebar {
        right: 0;
        transform: translateX(100%)
    }

.menu_sidebar_dropdown .hfg-ov {
    display: none
}

.menu_sidebar_dropdown .header-menu-sidebar {
    box-shadow: none;
    position: absolute;
    top: unset;
    width: 100%;
    display: block
}

.menu_sidebar_dropdown .header-menu-sidebar-inner {
    max-height: 0;
    padding: 0
}

.menu_sidebar_full_canvas .header-menu-sidebar {
    width: 100%;
    bottom: 0;
    right: 0;
    opacity: 0
}

.menu_sidebar_full_canvas .header-menu-sidebar-inner {
    flex-grow: 1
}

.header-menu-sidebar .menu-item-nav-search {
    display: flex;
    align-items: center
}

.hfg-ov {
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background: rgba(0,0,0,.5);
    position: fixed;
    transform: translate3d(0,0,0);
    z-index: 999899;
    transition: all .3s linear;
    visibility: hidden;
    opacity: 0
}

.is-menu-sidebar .hfg-ov {
    visibility: visible;
    opacity: 1
}

.hfg-pe {
    pointer-events: none
}

.is-menu-sidebar .hfg-pe {
    pointer-events: unset
}

.site-footer {
    position: relative;
    z-index: 11
}

    .site-footer .item--inner {
        width: 100%
    }

        .site-footer .item--inner.has_menu {
            display: flex
        }

    .site-footer p:last-child {
        margin-bottom: 0
    }

.footer--row .hfg-slot {
    display: flex;
    flex-direction: column
}

.footer--row .row {
    display: grid;
    align-items: var(--valign)
}

.footer--row .builder-item {
    width: 100%
}

@media (max-width:960px) {
    footer .footer--row-inner .row {
        grid-template-columns: 1fr
    }
}

.site-header {
    position: relative
}

    .site-header .header--row-inner {
        align-items: center;
        display: flex
    }

#header-grid.global-styled:not(.neve-transparent-header):not(.has-sticky-rows--mobile):not(.has-sticky-rows--desktop) {
    position: relative
}

#header-grid.global-styled:not(.neve-transparent-header) {
    background: var(--bgcolor);
    background-image: var(--bgimage,var(--bgcolor,none));
    background-position: var(--bgposition,center);
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: var(--bgattachment)
}

    #header-grid.global-styled:not(.neve-transparent-header)::before {
        display: block;
        width: 100%;
        top: 0;
        bottom: 0;
        position: absolute;
        content: "";
        background-color: var(--overlaycolor);
        opacity: var(--bgoverlayopacity)
    }

    #header-grid.global-styled:not(.neve-transparent-header) .header--row, #header-grid.global-styled:not(.neve-transparent-header) .header--row-inner {
        background: 0 0
    }

.builder-item {
    margin: 4px 0;
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px
}

    .builder-item.hfg-end {
        margin-left: auto
    }

    .builder-item.hfg-start {
        margin-right: auto
    }

@media (min-width:960px) {
    .builder-item {
        margin: 8px 0
    }
}

.hfg-slot {
    display: flex;
    align-items: center
}

    .hfg-slot.right {
        justify-content: flex-end
    }

    .hfg-slot.center {
        justify-content: center
    }

.layout-fullwidth .container {
    max-width: 100% !important
}

.layout-contained {
    max-width: var(--container);
    margin: 0 auto
}

.header-menu-sidebar-bg, [class*=row-inner] {
    position: relative;
    background: var(--bgimage,var(--bgcolor,#fff));
    background-position: var(--bgposition,center);
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: var(--bgattachment)
}

    .header-menu-sidebar-bg::before, [class*=row-inner]::before {
        display: block;
        width: 100%;
        top: 0;
        bottom: 0;
        position: absolute;
        content: "";
        background-color: var(--overlaycolor);
        opacity: var(--bgoverlayopacity)
    }

    [class*=row-inner]:not(.footer--row-inner) {
        border-bottom: var(--rowbwidth,0) solid var(--rowbcolor)
    }

.footer--row-inner {
    border-top: var(--rowbwidth,0) solid var(--rowbcolor)
}

[data-row-id] {
    color: var(--color);
    background: var(--bgcolor)
}

    [data-row-id] a {
        color: var(--color)
    }

    [data-row-id] .row {
        display: grid;
        grid-template-columns: auto auto;
        min-height: var(--height,auto)
    }

.has-center .row--wrapper {
    grid-template-columns: 1fr auto 1fr
}

.hfg_header.site-header {
    box-shadow: 0 -1px 3px rgba(0,0,0,.1)
}

.hfg-is-group > div:first-of-type .button {
    margin-right: 20px
}

.hfg-is-group > div:last-of-type .button {
    margin-left: 20px
}

.header .builder-item .item--inner[class*=button_base], .header .builder-item .item--inner[class*=nav-icon] {
    padding: 0 !important
}

.header .builder-item [class*=button_base] .button {
    --primarybtnpadding: var(--padding)
}

.hfg-grid {
    display: flex
}

@media (min-width:960px) {
    .hide-on-desktop {
        display: none
    }
}

@media (max-width:959px) {
    .hide-on-tablet {
        display: none
    }
}

@media (max-width:576px) {
    .hide-on-mobile {
        display: none
    }
}

.component-wrap {
    display: flex;
    margin: 4px 0
}

.builder-item .item--inner {
    color: var(--color);
    font-family: var(--fontfamily,var(--bodyfontfamily));
    font-size: var(--fontsize,var(--bodyfontsize));
    line-height: var(--lineheight,var(--bodylineheight));
    letter-spacing: var(--letterspacing,var(--bodyletterspacing));
    font-weight: var(--fontweight,var(--bodyfontweight));
    text-transform: var(--texttransform,var(--bodytexttransform));
    padding: var(--padding,0);
    margin: var(--margin,0);
    position: relative
}

    .builder-item .item--inner.has_menu {
        position: unset
    }

.inherit-ff {
    font-family: var(--inheritedff);
    font-weight: var(--inheritedfw)
}
