body:not(.modal-open) html:not(.wtypc-noscroll) .btn, body:not(.modal-open) html:not(.wtypc-noscroll) .button, body:not(.modal-open) html:not(.wtypc-noscroll) .wp-block-button__link, body:not(.modal-open) html:not(.wtypc-noscroll) button, body:not(.modal-open) html:not(.wtypc-noscroll) input[type=button], body:not(.modal-open) html:not(.wtypc-noscroll) input[type=reset], body:not(.modal-open) html:not(.wtypc-noscroll) input[type=submit] {
    cursor: pointer;
    box-sizing: border-box;
    border-color: currentColor;
    text-align: center;
    font-family: var(--buttonfontfamily),var(--nv-fallback-ff);
    font-weight: var(--buttonfontweight)
}

    .is-style-primary body:not(.modal-open) html:not(.wtypc-noscroll) .wp-block-button__link, .wp-block-search body:not(.modal-open) html:not(.wtypc-noscroll) .wp-block-search__button, body:not(.modal-open) html:not(.wtypc-noscroll) .btn, body:not(.modal-open) html:not(.wtypc-noscroll) .button.button-primary, body:not(.modal-open) html:not(.wtypc-noscroll) .is-style-primary .wp-block-button__link, body:not(.modal-open) html:not(.wtypc-noscroll) .wp-block-search .wp-block-search__button, body:not(.modal-open) html:not(.wtypc-noscroll) button, body:not(.modal-open) html:not(.wtypc-noscroll) input[type=button], body:not(.modal-open) html:not(.wtypc-noscroll) input[type=reset], body:not(.modal-open) html:not(.wtypc-noscroll) input[type=submit] {
        cursor: pointer;
        box-sizing: border-box;
        background: var(--sol-color-button-initial);
        color: var(--primarybtncolor);
        border-style: solid;
        fill: currentColor;
        font-weight: var(--buttonfontweight,var(--bodyfontweight));
        font-size: var(--buttonfontsize);
        line-height: var(--buttonlineheight,var(--bodylineheight));
        letter-spacing: var(--buttonletterspacing,var(--bodyletterspacing));
        text-transform: var(--buttontexttransform,none)
    }

        .is-style-primary body:not(.modal-open) html:not(.wtypc-noscroll) .wp-block-button__link:hover, body:not(.modal-open) html:not(.wtypc-noscroll) .btn:hover, body:not(.modal-open) html:not(.wtypc-noscroll) .button.button-primary:hover, body:not(.modal-open) html:not(.wtypc-noscroll) .is-style-primary .wp-block-button__link:hover, body:not(.modal-open) html:not(.wtypc-noscroll) button:hover, body:not(.modal-open) html:not(.wtypc-noscroll) input[type=button]:hover, body:not(.modal-open) html:not(.wtypc-noscroll) input[type=reset]:hover, body:not(.modal-open) html:not(.wtypc-noscroll) input[type=submit]:hover {
            background: var(--sol-color-button-hover);
            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(--bodyfontweight,400);
    font-size: var(--btnfs,var(--bodyfontsize));
    line-height: var(--btnlineheight,1.6);
    letter-spacing: var(--btnletterspacing,var(--bodyletterspacing));
    text-transform: var(--btntexttransform,none)
}

.is-style-secondary body:not(.modal-open) html:not(.wtypc-noscroll) .wp-block-button__link, body:not(.modal-open) html:not(.wtypc-noscroll) .button, body:not(.modal-open) html:not(.wtypc-noscroll) .is-style-secondary .wp-block-button__link {
    cursor: pointer;
    box-sizing: border-box;
    background-color: var(--secondarybtnbg);
    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(--bodyfontweight,400);
    font-size: var(--btnfs,var(--bodyfontsize));
    line-height: var(--btnlineheight,1.6);
    letter-spacing: var(--btnletterspacing);
    text-transform: var(--btntexttransform,none)
}

    .is-style-secondary body:not(.modal-open) html:not(.wtypc-noscroll) .wp-block-button__link:hover, body:not(.modal-open) html:not(.wtypc-noscroll) .button:hover, body:not(.modal-open) html:not(.wtypc-noscroll) .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(--sol-color-border);
    border-width: var(--formfieldborderwidth);
    border-radius: var(--formfieldborderradius,3px);
    background: var(--formfieldbgcolor);
    color: var(--sol-color-base-font);
    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 body:not(.modal-open) html:not(.wtypc-noscroll) .wpforms-field-label, body:not(.modal-open) html:not(.wtypc-noscroll) .wpforms-container .wpforms-field-label, body:not(.modal-open) html:not(.wtypc-noscroll) form label, form body:not(.modal-open) html:not(.wtypc-noscroll) 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(--sol-color-base-font)
}

.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
}

.solace-sitebuilder-singleproduct .row {
    margin: 0
}

.col {
    padding: 0 15px;
    margin: 0 auto;
    flex-grow: 1;
    max-width: 100%
}

html {
    font-size: 100%
}

body {
    background-color: var(--sol-color-background);
    color: var(--sol-color-base-font);
    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
}

small {
    font-family: var(--smallerfontfamily);
    font-size: var(--smallerfontsize);
    line-height: var(--smallerlineheight);
    letter-spacing: var(--smallerletterspacing);
    font-family: var(--smallerfontfamily),var(--nv-fallback-ff);
    text-transform: var(--smallertexttransform);
    font-weight: var(--smallerfontweight)
}

h1, h2, h3, h4, h5, h6 {
    margin-bottom: 16px;
    font-family: var(--headingsfontfamily),var(--nv-fallback-ff)
}

p {
    margin-bottom: 24px
}

a {
    --linkdeco: none;
    color: var(--sol-color-link-button-initial);
    cursor: pointer;
    text-decoration: var(--linkdeco)
}

    a:focus, a:hover {
        opacity: .9;
        color: var(--sol-color-link-button-initial)
    }

.entry-content a:not([class]), .nv-comment-content a:not([class]), .nv-template .solace-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: 20px;
    margin: 30px 0
}

    ol li, ul li {
        margin-top: 10px
    }

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(--sol-color-background);
    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: collapse;
    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
    }

td, th {
    padding: 20px
}

th {
    padding-bottom: 10px
}

td {
    font-size: .9em;
    border: 1px solid
}

.wp-block-separator {
    display: block;
    width: 100% !important;
    border-bottom: 0;
    border-top: 2px solid
}

    .wp-block-separator.is-style-wide {
        border-width: 4px
    }

    .wp-block-separator.is-style-dots {
        border-top: 4px dotted !important
    }

        .wp-block-separator.is-style-dots::before {
            content: none
        }

.alignfull {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw)
}

.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 {
    margin-left: auto;
    margin-right: auto
}

blockquote {
    margin: 40px 0;
    border-color: var(--sol-color-base-font);
    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(--sol-color-border);
    border-bottom: 4px solid var(--sol-color-border);
    padding: 30px 20px;
    font-size: 16px
}

    .wp-block-pullquote p {
        font-size: 1.5em
    }

    .wp-block-pullquote cite {
        font-size: 1.5em !important;
        font-style: italic;
        text-transform: none
    }

    .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-solace-link-color-color {
    color: var(--sol-color-link-button-initial) !important
}

.has-solace-link-color-background-color {
    background-color: var(--sol-color-link-button-initial) !important
}

.has-solace-link-hover-color-color {
    color: var(--sol-color-link-button-initial) !important
}

.has-solace-link-hover-color-background-color {
    background-color: var(--sol-color-link-button-initial) !important
}

.has-solace-text-color-color {
    color: var(--nv-text-color) !important
}

.has-solace-text-color-background-color {
    background-color: var(--nv-text-color) !important
}

.has-sol-color-background-color {
    color: var(--sol-color-background) !important
}

.has-sol-color-background-background-color {
    background-color: var(--sol-color-background) !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-sol-color-border-color {
    color: var(--sol-color-border) !important
}

.has-sol-color-border-background-color {
    background-color: var(--sol-color-border) !important
}

.has-sol-color-page-title-background-color {
    color: var(--sol-color-page-title-background) !important
}

.has-sol-color-page-title-background-background-color {
    background-color: var(--sol-color-page-title-background) !important
}

.has-nv-dark-bc-color {
    color: var(--nv-dark-bc) !important
}

.has-nv-dark-bc-background-color {
    background-color: var(--nv-dark-bc) !important
}

.has-sol-color-page-title-text-color {
    color: var(--sol-color-page-title-text) !important
}

.has-sol-color-page-title-text-background-color {
    background-color: var(--sol-color-page-title-text) !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(--logotitlefontsize);
        font-weight: var(--logotitlefontweight);
        line-height: var(--logotitlelineheight);
        letter-spacing: var(--logotitleletterspacing);
        text-transform: var(--logotitletexttransform,var(--bodytexttransform));
        margin: 0
    }

    .site-logo small {
        display: block
    }

.header-menu-sidebar .nav-ul .sub-menu, .nav-ul li:focus-within > .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);
    margin-top: 0;
    margin-bottom: 0;
    padding: 0
}

    .nav-ul li > a {
        display: flex;
        align-items: center;
        min-height: var(--height);
        color: var(--color);
        position: relative
    }

    .nav-ul a:hover {
        color: var(--hovercolor)
    }

    .nav-ul > li {
        margin: 0 calc(var(--spacing)/ 2)
    }

    .nav-ul li {
        display: block;
        position: relative;
		background-color: #f7d633;
    
    padding: 9px;
    border-radius: 4px;
    }

        .nav-ul li.current-menu-item > a:not([href*="#"]) {
            color: var(--activecolor)
        }

    .nav-ul .caret {
        display: flex;
        justify-content: center
    }

        .nav-ul .caret svg {
            fill: currentColor;
            width: .5em;
            height: .5em
        }

    .nav-ul .sub-menu {
        background: var(--sol-color-bg-menu-dropdown,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;
        padding-left: 0
    }

        .nav-ul .sub-menu li {
            min-width: 150px
        }

            .nav-ul .sub-menu li > a {
                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 a {
            color: var(--sol-color-page-title-text);
            color: var(--link-color)
        }

            .header-menu-sidebar .nav-ul li a:hover {
                color: var(--sol-color-page-title-text);
                color: var(--link-hover-color)
            }

        .header-menu-sidebar .nav-ul li svg {
            fill: var(--link-color)
        }

            .header-menu-sidebar .nav-ul li svg:hover {
                fill: var(--link-hover-color)
            }

        .header-menu-sidebar .nav-ul li button:hover svg {
            fill: var(--link-hover-color) !important
        }

        .header-menu-sidebar .nav-ul li:not([class*=block]) > a {
            padding: 15px 0;
            white-space: unset
        }

    .header-menu-sidebar .nav-ul .caret svg {
        width: 1em;
        height: 1em
    }

    .header-menu-sidebar .nav-ul button:focus {
        outline-color: var(--sol-color-page-title-text)
    }

    .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
        }

.header-menu-sidebar .builder-item .builder-item--primary-menu ul li a {
    color: var(--sol-color-link-button-initial)
}

    .header-menu-sidebar .builder-item .builder-item--primary-menu ul li a:hover {
        color: var(--sol-color-link-button-hover)
    }

.header-menu-sidebar .builder-item .builder-item--primary-menu ul li:first-child {
    margin-top: 0
}

.header-menu-sidebar .builder-item .builder-item--primary-menu ul.sub-menu {
    background: 0 0
}

    .header-menu-sidebar .builder-item .builder-item--primary-menu ul.sub-menu li a {
        color: var(--sol-color-link-button-initial)
    }

        .header-menu-sidebar .builder-item .builder-item--primary-menu ul.sub-menu li a:hover {
            color: var(--sol-color-link-button-hover)
        }

.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(--sol-color-background);
    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 .sol_search_icon svg {
        color: var(--color);
        fill: var(--color)
    }

    .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
    }

    .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;
            top: 60px;
            text-align: right
        }

            .menu-item-nav-search.canvas .nv-nav-search .close-container button svg {
                position: relative;
                top: 1px
            }

.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(--sol-color-base-font);
        width: var(--formfieldfontsize);
        min-width: 25px;
        min-height: 25px
    }

p.woocommerce-store-notice.demo_store {
    position: sticky
}

.wrapper + p.woocommerce-store-notice.demo_store {
    display: none !important
}

.sm-style-border-bottom .sub-menu a::after, .style-border-bottom > ul > li > a::after {
    bottom: 0
}

.sm-style-border-top .sub-menu a::after, .style-border-top > ul > li > a::after {
    top: 0
}

.m-style > ul > li > a:hover::after, .sm-style .sub-menu a:hover::after {
    width: 100%
}

.m-style > ul > li > a::after, .sm-style .sub-menu a::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,currentColor)
}

.sm-style-full-height .sub-menu a:hover, .style-full-height > ul > li > a:hover {
    color: currentColor
}

    .sm-style-full-height .sub-menu a:hover, .sm-style-full-height .sub-menu a:hover i, .sm-style-full-height .sub-menu a:hover span, .style-full-height > ul > li > a:hover, .style-full-height > ul > li > a:hover i, .style-full-height > ul > li > a:hover span {
        color: var(--hovertextcolor,var(--color)) !important
    }

        .sm-style-full-height .sub-menu a:hover::after, .style-full-height > ul > li > a:hover::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::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
}

.solace-main {
    flex: 1 auto
}

.nv-page-title-wrap .nv-page-title {
    text-align: var(--textalign,left)
}

body.solacewp input:not([type=button]):not([type=submit]), body.solacewp textarea {
    border-style: solid
}

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
}

    input[type=submit]:not(.solace-mc-embedded-subscribe) {
        padding: 8px 12px
    }

    [tabindex="-1"]:focus, input:read-write:focus, select:focus, textarea:focus {
        outline: 0;
        box-shadow: 0 0 3px 0 var(--sol-color-link-button-initial);
        --formfieldbordercolor: var(--sol-color-link-button-initial)
    }

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(--sol-color-border)
}

    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)
}

.btn, button, input[type=button], input[type=reset], input[type=submit] {
    border: none
}

.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: .8;
        height: auto
    }

    .search-form .search-submit, .search-form button.search-submit {
        padding: 12px 24px;
        display: flex;
        justify-content: center;
        align-items: center;
        min-width: 45px;
        z-index: 1;
        border: none;
        border-radius: 0;
        font-size: 16px;
        --primarybtnborderwidth: var(--formfieldborderwidth);
        --primarybtnbordercolor: var(--formfieldbordercolor);
        --primarybtnborderradius: var(--formfieldborderradius);
        --primarybtnpadding: var(--formfieldpadding);
        border-bottom-left-radius: 0;
        border-top-left-radius: 0;
        border-left: 0;
        position: relative;
        height: var(--height);
        overflow: hidden
    }

        .search-form .search-submit::before, .search-form button.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-submit svg, .search-form button.search-submit svg {
            fill: unset !important
        }

        .search-form .search-submit:hover svg, .search-form button.search-submit:hover svg {
            fill: unset !important
        }

    .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(--sol-color-link-button-initial);
            border-color: var(--sol-color-link-button-initial)
        }

.nv-nav-search form.search-form input.search-field {
    font-size: 15px
}

.builder-item--header_search_responsive .solace-nav-search button.close-responsive-search {
    height: auto;
    padding: 0;
    margin: 0;
    line-height: 1;
    background: 0 0
}

    .builder-item--header_search_responsive .solace-nav-search button.close-responsive-search svg {
        border-radius: 0 !important
    }

.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(--sol-color-base-font)
    }

.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(--sol-color-link-button-initial);
    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 {
    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-page-title-wrap {
    margin-top: 60px
}

.entry-header {
    text-align: var(--textalign,center)
}

    .entry-header .title {
        margin-bottom: 10px
    }

.attachment-solace-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(--sol-color-base-font);
        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:not(.elementor-button), .tagcloud a:not(.elementor-button) {
    margin: 0 10px 10px 0;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff !important;
    padding: 10px;
    border-radius: 4px;
    background: var(--sol-color-link-button-initial);
    line-height: 1;
    font-size: .75em !important;
    display: inline-block
}

.nv-tags-list span, .tagcloud span {
    margin-right: 10px
}

.tagcloud {
    display: flex;
    flex-wrap: wrap
}

.page .nv-post-cover {
    margin-bottom: 60px
}

.nv-post-cover {
    min-height: var(--height);
    padding: var(--padding);
    justify-content: var(--justify,center);
    display: none;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center
}

    .nv-post-cover .nv-title-meta-wrap {
        color: var(--color,var(--sol-color-page-title-text));
        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(--sol-color-page-title-text))
        }

    .nv-post-cover .container {
        display: flex;
        justify-content: var(--justify,center);
        text-align: var(--textalign,center)
    }

.nv-is-boxed {
    padding: var(--padding);
    background: var(--bgcolor,var(--nv-light-bg));
    color: var(--color,var(--sol-color-base-font))
}

    .nv-is-boxed a {
        color: var(--color,var(--sol-color-base-font))
    }

.nv-overlay {
    background: var(--bgcolor,var(--sol-color-page-title-background));
    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 .avatar {
    border-radius: 100%;
    margin-right: 20px
}

#comments .comment-content {
    flex-grow: 1
}

#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(--sol-color-base-font))
        }

        .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-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 li:not(.children) {
        padding-left: 40px
    }

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(--sol-color-base-font);
        display: block
    }

    ul.page-numbers .dots {
        background: 0
    }

    ul.page-numbers .current {
        background: var(--sol-color-link-button-initial);
        color: var(--sol-color-page-title-text)
    }

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
}

code {
    border-radius: 5px;
    border: 1px solid var(--sol-color-border);
    padding: 0 3px
}

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
}

    .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
}

.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 li {
        margin-top: 10px
    }

        .widget li > ul {
            margin-left: unset
        }

    .widget .customize-partial-edit-shortcut-button {
        display: none
    }

.post-date {
    display: block;
    font-size: .9em;
    opacity: .7
}

.widget_recent_entries a {
    color: var(--sol-color-base-font)
}

.widget_calendar td, .widget_calendar th {
    padding: 10px
}

.nv-page-title .solace-breadcrumbs-wrapper, .nv-title-meta-wrap .solace-breadcrumbs-wrapper {
    margin-bottom: 30px;
    display: block
}

.solace-breadcrumbs-wrapper {
    font-size: 14px
}

    .solace-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)
}

li, p, ul {
    font-size: var(--bodyfontsize);
    line-height: var(--bodylineheight);
    letter-spacing: var(--bodyletterspacing);
    text-transform: var(--bodytexttransform);
    font-weight: var(--bodyfontweight)
}

@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) {
    .solace-main > .container .col {
        max-width: 70%
    }

    .solace-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
}

body.elementor-page .elementor-button svg {
    fill: inherit
}

body.elementor-page .elementor-button .transparent .elementor-button {
    background-color: transparent !important
}

.elementor select {
    background-image: none
}

:root {
    --e-global-color-primary: var(--sol-color-button-initial);
    --e-global-color-secondary: var(--sol-color-page-title-background);
    --e-global-color-text: var(--sol-color-base-font);
    --e-global-color-accent: var(--sol-color-bg-menu-dropdown)
}

.site-footer .widget-area h5 {
    font-size: var(--h5fontsize);
    color: inherit
}

body .footer--row.footer-bottom a:not(.solace-component-button-customizer), body .footer--row.footer-main a:not(.solace-component-button-customizer), body .footer--row.footer-top a:not(.solace-component-button-customizer) {
    color: var(--link-color)
}

    body .footer--row.footer-bottom a:not(.solace-component-button-customizer):hover, body .footer--row.footer-main a:not(.solace-component-button-customizer):hover, body .footer--row.footer-top a:not(.solace-component-button-customizer):hover {
        color: var(--link-hover-color)
    }

.builder-item .builder-item--footer-menu ul li a {
    color: var(--link-color);
    font-family: var(--font-family);
    text-transform: var(--text-transform);
    font-weight: var(--font-weight);
    font-size: var(--font-size);
    line-height: var(--line-height);
    letter-spacing: var(--letter-spacing)
}

.builder-item .builder-item--footer-menu ul li > a:hover {
    color: var(--link-hover-color) !important
}

.builder-item .builder-item--footer-menu ul li.current-menu-parent > a {
    color: var(--link-hover-color)
}

.builder-item .builder-item--footer-menu ul li.current_page_item a {
    color: var(--link-hover-color)
}

.site-header h1.site-title, .site-header p.site-title {
    color: inherit;
    font-family: var(--logotitlefontfamily);
    font-weight: var(--logotitlefontweight);
    line-height: var(--logotitlelineheight);
    letter-spacing: var(--logotitleletterspacing);
    text-transform: var(--logotitletexttransform,var(--bodytexttransform))
}

.site-header .nv-html-content {
    color: inherit
}

    .site-header .nv-html-content h1, .site-header .nv-html-content h2, .site-header .nv-html-content h3, .site-header .nv-html-content h4, .site-header .nv-html-content h5, .site-header .nv-html-content h6, .site-header .nv-html-content p {
        color: inherit
    }

.site-header .container {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    padding-left: clamp(1.5rem,5vw,2rem);
    padding-right: clamp(1.5rem,5vw,2rem)
}

.site-header .sub-menu {
    border-radius: 4px;
    left: 0;
    margin-left: 0;
    padding-top: 16px;
    padding-bottom: 16px;
    min-width: fit-content;
    margin-top: 0
}

    .site-header .sub-menu li a {
        padding: 8px 28px
    }

    .site-header .sub-menu .sub-menu {
        margin-left: 0
    }

.header-menu-sidebar .sub-menu.dropdown-open {
    padding-top: 5px;
    padding-bottom: 5px
}

    .header-menu-sidebar .sub-menu.dropdown-open li a {
        padding: 0;
        padding-top: 8px;
        padding-bottom: 8px
    }

    .header-menu-sidebar .sub-menu.dropdown-open .wrap {
        padding: 0
    }

.menu-item-nav-search.canvas .close-responsive-search svg {
    background: var(--formfieldbgcolor)
}

.menu-item-nav-search.canvas .nv-nav-search {
    background: rgba(0,0,0,.9)
}

.header--row .my-row-inner {
    padding: var(--padding);
    margin: var(--margin)
}

.footer--row .my-row-inner {
    padding: var(--padding);
    margin: var(--margin)
}

body header .header-bottom a, body header .header-main a, body header .header-top a {
    color: var(--link-color);
    color: var(--color)
}

    body header .header-bottom a:hover, body header .header-main a:hover, body header .header-top a:hover {
        color: var(--link-hover-color)
    }

.builder-item .builder-item--primary-menu ul li a {
    color: var(--link-color);
    font-family: emoji;
    text-transform: var(--text-transform);
    font-weight: var(--font-weight);
    font-size: 20px;
    line-height: var(--line-height);
    letter-spacing: var(--letter-spacing)
}

.builder-item .builder-item--primary-menu ul li > a:hover {
    color: var(--link-hover-color)
}

.builder-item .builder-item--primary-menu ul li.current-menu-parent > a {
    color: var(--link-hover-color)
}

.builder-item .builder-item--primary-menu ul li.current_page_item a {
    color: var(--link-hover-color)
}

.builder-item .builder-item--primary-menu ul.sub-menu {
    background: var(--submenu-bg)
}

    .builder-item .builder-item--primary-menu ul.sub-menu li a {
        color: var(--submenu-text-color)
    }

    .builder-item .builder-item--primary-menu ul.sub-menu li > a:hover {
        color: var(--link-hover-color)
    }

    .builder-item .builder-item--primary-menu ul.sub-menu li.current-menu-item > a, .builder-item .builder-item--primary-menu ul.sub-menu li.current-menu-parent > a {
        color: var(--link-hover-color)
    }

    .builder-item .builder-item--primary-menu ul.sub-menu li.current_page_item a {
        color: var(--link-hover-color)
    }

.builder-item .builder-item--secondary-menu ul li a {
    color: var(--link-color);
    font-family: var(--font-family);
    text-transform: var(--text-transform);
    font-weight: var(--font-weight);
    font-size: var(--font-size);
    line-height: var(--line-height);
    letter-spacing: var(--letter-spacing)
}

.builder-item .builder-item--secondary-menu ul li > a:hover {
    color: var(--link-hover-color)
}

.builder-item .builder-item--secondary-menu ul li.current-menu-parent > a {
    color: var(--link-hover-color)
}

.builder-item .builder-item--secondary-menu ul li.current_page_item a {
    color: var(--link-hover-color)
}

.builder-item .sol-account-element.user-login img {
    display: block;
    border-radius: 100%
}

.header-menu-sidebar {
    padding: 0;
    position: fixed;
    max-width: 100%;
    top: 0;
    z-index: 999900;
    visibility: hidden;
    display: flex;
    transition: all .3s cubic-bezier(.79,.14,.15,.86);
    height: 100vh
}

    .header-menu-sidebar .navbar-toggle-wrapper {
        display: flex;
        justify-content: flex-end;
        padding: 8px 10px;
        margin-top: 30px
    }

        .header-menu-sidebar .navbar-toggle-wrapper button.navbar-toggle {
            position: relative
        }

.header-menu-sidebar-bg {
    background-color: 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 {
    transition: all .3s cubic-bezier(.79,.14,.15,.86);
    max-height: 0;
    padding: 0
}

.menu_sidebar_full_canvas .header-menu-sidebar {
    width: 100%;
    bottom: 0;
    right: 0;
    opacity: 0;
    transition: all .3s cubic-bezier(.79,.14,.15,.86)
}

.menu_sidebar_full_canvas .header-menu-sidebar-inner {
    flex-grow: 1
}

.is-menu-sidebar .header-menu-sidebar {
    visibility: visible
}

.is-menu-sidebar.menu_sidebar_slide_left .header-menu-sidebar {
    transform: translate3d(0,0,0);
    left: 0
}

.is-menu-sidebar.menu_sidebar_slide_right .header-menu-sidebar {
    transform: translate3d(0,0,0);
    right: 0
}

.is-menu-sidebar.menu_sidebar_pull_left .header-menu-sidebar, .is-menu-sidebar.menu_sidebar_pull_right .header-menu-sidebar {
    transform: translateX(0)
}

.is-menu-sidebar.menu_sidebar_dropdown .header-menu-sidebar {
    height: auto
}

.is-menu-sidebar.menu_sidebar_dropdown .header-menu-sidebar-inner {
    max-height: 400px;
    padding: 20px 0
}

.is-menu-sidebar.menu_sidebar_full_canvas .header-menu-sidebar {
    opacity: 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
}

#solace-nav-menu-company li, #solace-nav-menu-services li {
    list-style: none;
    margin-left: 0
}

.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
    }

    .site-footer .widget-area h5 {
        font-size: var(--h5fontsize);
        color: inherit
    }

.footer--row .hfg-slot {
    display: flex;
    flex-direction: column
}

    .footer--row .hfg-slot.right .item--inner {
        display: flex
    }

.footer--row .row {
    display: grid;
    align-items: var(--valign)
}

.footer--row .builder-item {
    width: 100%;
    flex-direction: column
}

    .footer--row .builder-item .builder-item--button_base3 a.button, .footer--row .builder-item .builder-item--button_base4 a.button {
        margin-left: 0 !important;
        margin-right: 0 !important;
        flex-basis: content
    }

@media (max-width:960px) {
    footer .footer--row-inner .row {
        grid-template-columns: 1fr
    }
}

.site-header {
    position: relative;
    z-index: 99
}

    .site-header .header--row-inner {
        align-items: center;
        display: flex
    }

#header-grid.global-styled:not(.solace-transparent-header):not(.has-sticky-rows--mobile):not(.has-sticky-rows--desktop) {
    position: relative
}

#header-grid.global-styled:not(.solace-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(.solace-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(.solace-transparent-header) .header--row, #header-grid.global-styled:not(.solace-transparent-header) .header--row-inner {
        background: 0 0
    }

.builder-item {
    margin: 4px 0;
    margin: 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;
        margin: 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-image: var(--bgimage,none);
    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;
        left: 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)
}

body.elementor-page header [data-row-id] {
    background: var(--bgcolorelementor)
}

body.elementor-page footer [data-row-id] {
    background: var(--bgcolorelementor)
}

[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
}

div.preview a:not(.wp-block-button__link) {
    color: var(--single-link-color)
}

    div.preview a:not(.wp-block-button__link):hover {
        color: var(--single-link-hover)
    }

body.single, div.preview {
    background: var(--single-bg)
}

    body.single textarea#comment, div.preview textarea#comment {
        background: var(--single-bg)
    }

    body.single .main-single-custom .boxes-ordering, div.preview .main-single-custom .boxes-ordering {
        border-radius: var(--single-border-radius);
        box-shadow: 0 2px 40px var(--single-box-shadow)
    }

    body.single .main-single-custom article.status-publish, div.preview .main-single-custom article.status-publish {
        padding: var(--single-padding-area)
    }

.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*=header_button2], .header .builder-item .item--inner[class*=nav-icon] {
    padding: 0 !important
}

.header .builder-item [class*=button_base] .button, .header .builder-item [class*=header_button2] .button {
    padding: var(--padding,8px 12px);
    --primarybtnpadding: var(--padding);
    flex-basis: content
}

.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;
    margin: 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)
}
