img:is([sizes="auto" i], [sizes^="auto," i]) {
    contain-intrinsic-size: 3000px 1500px
}

@keyframes cgkit-loading {
    0% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0 50%;
    }
}

body ul.products li.product.cgkit-swatch-loading .woocommerce-image__wrapper,
body ul.products li.product.cgkit-swatch-loading .woocommerce-card__header>* {
    color: transparent !important;
    background: linear-gradient(100deg, #ececec 30%, #f5f5f5 50%, #ececec 70%);
    border-radius: 5px;
    background-size: 400%;
    animation: cgkit-loading 1.2s ease-in-out infinite;
}

body ul.products li.product.cgkit-swatch-loading .woocommerce-image__wrapper>*,
body ul.products li.product.cgkit-swatch-loading .woocommerce-card__header>*>* {
    visibility: hidden;
}

ul.products li.product.cgkit-swatch-loading .woocommerce-card__header .product__categories,
ul.products li.product.cgkit-swatch-loading .woocommerce-card__header .woocommerce-loop-product__title,
ul.products li.product.cgkit-swatch-loading .woocommerce-card__header .price {
    display: table;
    width: auto;
}

ul.products li.product.cgkit-swatch-loading .woocommerce-card__header .star-rating:before {
    visibility: hidden;
}

*,
::before,
::after {
    box-sizing: border-box
}

html {
    font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
    tab-size: 4
}

body {
    margin: 0
}

strong {
    font-weight: bolder
}

button,
select {
    text-transform: none
}

button,
[type='button'],
[type='submit'] {
    -webkit-appearance: button
}

::-moz-focus-inner {
    border-style: none;
    padding: 0
}

:-moz-focusring {
    outline: 1px dotted ButtonText
}

:-moz-ui-invalid {
    box-shadow: none
}

legend {
    padding: 0
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto
}

[type='search'] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

summary {
    display: list-item
}

html {
    text-size-adjust: 100%;
    overflow-wrap: break-word;
    scrollbar-gutter: stable
}

img {
    display: block;
    vertical-align: middle
}

img {
    display: block;
    max-width: 100%;
    height: auto
}

h1,
h2 {
    text-wrap: pretty
}

a,
button,
input {
    touch-action: manipulation
}

body,
button,
input {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

h1,
h2,
p {
    margin: 0
}

fieldset {
    margin: 0;
    padding: 0;
    border: 0
}

ul {
    list-style: none;
    margin: 0;
    padding: 0
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    padding: 0;
    border: 0
}

button {
    -webkit-appearance: button;
    background-color: transparent;
    background-image: none
}

@media (prefers-reduced-motion:reduce) {

    *,
    ::before,
    ::after {
        animation-delay: -1ms !important;
        animation-duration: 1ms !important;
        animation-iteration-count: 1 !important;
        background-attachment: initial !important;
        scroll-behavior: auto !important
    }
}

header,
main,
nav,
section {
    display: block
}

a {
    color: #2c2d33;
    background-color: transparent;
    text-decoration: none
}

a,
button,
input {
    -ms-touch-action: manipulation;
    touch-action: manipulation
}

img {
    max-width: 100%;
    height: auto;
    border: 0;
    border-radius: 0
}

svg:not(:root) {
    overflow: hidden
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    height: auto
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

fieldset {
    margin: 1.618em 0;
    padding: 1em 1.618em 1.618em;
    border: 0
}

legend {
    border: 0
}

legend,
td,
ul {
    padding: 0
}

p {
    margin: 0 0 1.21575rem
}

ul {
    margin: 0 0 1.41575em 20px
}

ul {
    list-style: disc
}

strong {
    font-weight: 600
}

ins {
    background: 0 0;
    font-weight: 400;
    text-decoration: none
}

table td {
    text-align: left;
    vertical-align: middle
}

select {
    max-width: 100%
}

button,
input,
select {
    vertical-align: baseline
}

button {
    border: none
}

input[type="number"] {
    -webkit-appearance: none;
    border-radius: 0
}

fieldset legend {
    width: calc(100% + 60px);
    margin-left: -30px;
    padding: 10px 30px 10px;
    color: #111;
    font-size: 20px;
    font-weight: 600
}

select {
    width: 100%;
    padding: 0 40px 0 0.7em;
    padding-right: 40px;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg'%3E%3Cg%3E%3Ctitle%3Ebackground%3C/title%3E%3Crect fill='none' id='canvas_background' height='402' width='582' y='-1' x='-1'/%3E%3C/g%3E%3Cg%3E%3Ctitle%3ELayer 1%3C/title%3E%3Cpath fill='%23888' id='svg_1' d='m1408,704q0,26 -19,45l-448,448q-19,19 -45,19t-45,-19l-448,-448q-19,-19 -19,-45t19,-45t45,-19l896,0q26,0 45,19t19,45z'/%3E%3C/g%3E%3C/svg%3E") calc(100% - 12px) 12px no-repeat;
    margin: 0;
    background-size: 15px 15px;
    appearance: none;
    outline: 0;
    border: 1px solid #d2d6dc;
    border-radius: 0.3rem;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    height: 40px
}

@media all and (-ms-high-contrast:none),
(-ms-high-contrast:active) {
    select {
        padding-right: 0;
        background-image: none
    }
}

.button {
    display: inline-block;
    padding: 0.8180469716em 1.41575em;
    border: 0;
    border-color: #43454b;
    border-radius: 4px;
    font-size: clamp(0.875rem, 0.8115rem + 0.2033vw, 0.9375rem);
    outline: 0;
    background: 0 0;
    background-color: #43454b;
    font-weight: 600;
    text-shadow: none;
    text-decoration: none;
    -webkit-appearance: none
}

input[type="search"],
input[type="number"] {
    outline: 0;
    margin-bottom: 0;
    border: 1px solid #d2d6dc;
    border-radius: 0.3rem;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    height: 40px;
    padding: 0 0.7em
}

input[type="search"] {
    padding-left: 43px
}

input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

.site-search input[type="search"] {
    border: 0;
    background: #f8f8f8;
    border: 1px solid #f8f8f8
}

.site-search form:before {
    left: 15px;
    top: 50%;
    margin-top: -7px;
    width: 16px;
    height: 16px
}

.woocommerce-product-search:before {
    width: 18px;
    height: 18px;
    content: "";
    display: inline-block;
    position: absolute;
    z-index: 1;
    top: 0.7em;
    left: 0.8em;
    background-color: #ccc;
    mask-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 21L15 15M17 10C17 13.866 13.866 17 10 17C6.13401 17 3 13.866 3 10C3 6.13401 6.13401 3 10 3C13.866 3 17 6.13401 17 10Z' stroke='%234A5568' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain
}

a.reset_variations {
    text-decoration: underline;
    text-underline-offset: 0.12em;
    text-decoration-thickness: 0.75px
}

h1,
h2 {
    margin: 0 0 1rem
}

.alignright {
    display: inline;
    margin-top: 5px
}

.alignright {
    float: right;
    margin-left: 2.5em
}

.entry-content ul ul {
    margin: 1em 0 1em 2em
}

@media (max-width:768px) {

    .site,
    .entry-content {
        font-size: 15px
    }

    input,
    select {
        font-size: 16px
    }

    .site h1 {
        font-size: 30px;
        letter-spacing: -0.01em
    }

    .site h2 {
        font-size: clamp(1.375rem, 0.9939rem + 1.2195vw, 1.75rem);
        letter-spacing: -0.01em
    }
}

@media (min-width:993px) {
    .site-header .col-full {
        display: flex;
        flex-wrap: wrap;
        align-items: center
    }

    .site-header {
        position: relative;
        z-index: 20
    }

    .site-header .site-branding {
        line-height: 1
    }

    .site-header .custom-logo-link img {
        width: auto
    }

    .site-header .site-search {
        margin-left: 3em;
        flex-grow: 1
    }

    .site-search input {
        padding-top: 1.45rem;
        padding-bottom: 1.45rem
    }

    .site-header .widget {
        margin-bottom: 0
    }

    .site-branding a {
        color: #111;
        font-weight: bold
    }

    .site-branding p {
        margin-top: 5px;
        margin-bottom: 0;
        color: #555;
        font-size: 12px
    }

    .site-branding .site-description {
        display: block;
        margin-top: 0.35rem;
        font-size: 0.755em
    }

    .main-header {
        display: flex
    }
}

@media (max-width:1060px) and (min-width:993px) {
    body:not(.header-4):not(.header-5) .site-header .site-search {
        width: 100px
    }
}

@media (max-width:992px) {
    .main-header {
        position: relative
    }

    .site-branding {
        display: flex;
        flex-direction: column;
        width: 100%;
        height: 70px;
        justify-content: center;
        align-items: center;
        text-align: center
    }

    .site-header .custom-logo-link img {
        width: auto
    }

    .site-branding p {
        margin: 5px 0 -3px 0;
        font-size: 11px;
        line-height: 1.22;
        display: none
    }

    .site-header .shoptimizer-cart a.cart-contents .amount {
        display: none
    }

    .site-branding button.menu-toggle {
        position: absolute;
        left: 15px;
        width: 60px;
        height: 30px;
        padding: 0;
        background-color: transparent;
        display: block
    }

    .menu-toggle .bar {
        display: block;
        position: absolute;
        top: calc(50% - 1px);
        z-index: 0;
        width: 22px;
        height: 2px;
        opacity: 1;
        background-color: #222;
        transform: rotate(0deg)
    }

    .menu-toggle .bar:nth-child(1) {
        margin-top: -7px
    }

    .menu-toggle .bar:nth-child(2) {
        margin-top: -1px
    }

    .menu-toggle .bar:nth-child(3) {
        margin-top: 5px
    }

    .menu-toggle .bar-text {
        position: absolute;
        top: 0;
        left: 0;
        margin-top: 8px;
        margin-left: 28px;
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 0.03em
    }

    .site-header .site-header-cart {
        position: absolute;
        z-index: 2;
        right: 15px
    }

    body:not(.mobile-toggled).sticky-m .site-header {
        position: sticky;
        z-index: 9;
        top: 0;
        box-shadow: 0 1px 15px rgba(0, 0, 0, 0.08)
    }
}

@media (max-width:480px) {
    .site .site-branding p {
        max-width: 240px;
        line-height: 1.2
    }
}

footer.copyright .widget:last-child img {
    width: auto;
    height: 28.5px;
    margin: 0
}

@media (max-width:992px) {
    footer.copyright .widget:last-child img {
        display: block;
        float: none
    }
}

@media (min-width:993px) {
    .col-full {
        box-sizing: content-box;
        margin-right: auto;
        margin-left: auto;
        max-width: 1170px;
        padding-right: 2.617924em;
        padding-left: 2.617924em
    }

    .col-full:after {
        display: block;
        clear: both;
        content: ""
    }
}

@media (max-width:992px) {
    .col-full {
        padding-right: 1em;
        padding-left: 1em
    }
}

.page-template-template-canvas .site-content .col-full {
    max-width: inherit
}

.page-template-template-canvas:not(.pdp-shortcode) .site-content .col-full {
    padding: 0
}

.page-template-template-canvas .content-area {
    width: 100%;
    clear: both
}

.site-content {
    position: relative
}

@media (min-width:993px) {
    .site-content:after {
        display: block;
        visibility: hidden;
        position: absolute;
        z-index: 5;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        background: rgba(0, 0, 0, 0.7);
        content: ""
    }
}

@media (max-width:992px) {
    .mobile-overlay {
        visibility: hidden;
        position: fixed;
        z-index: 101;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        background: rgba(0, 0, 0, 0.65);
        background: rgba(52, 53, 55, 0.4);
        content: ""
    }

    .close-drawer {
        color: #fff
    }
}

ul.products {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 30px);
    margin-left: -15px;
    margin-bottom: 0;
    clear: both
}

ul.products li.product {
    position: relative;
    padding-right: 15px;
    padding-left: 15px;
    list-style: none
}

@media (min-width:993px) {
    body:not(.static-cta-buttons) ul.products li.product {
        align-self: flex-start
    }
}

@media (min-width:993px) {
    ul.products li.product:not(.product-category) {
        padding-bottom: 40px
    }
}

@media (max-width:992px) {
    ul.products {
        display: grid;
        grid-template-columns: repeat(2, minmax(10px, 1fr));
        column-gap: 20px;
        row-gap: 30px;
        width: 100%;
        margin-left: 0
    }

    ul.products li.product {
        display: flex;
        flex-direction: column;
        height: 100%;
        width: 100%;
        padding: 0;
        margin-bottom: 0
    }

    ul.products li.product .button {
        margin-top: auto
    }
}

.header-widget-region {
    position: relative;
    color: #fff;
    background-color: #dc9814;
    text-align: center
}

.header-widget-region .widget {
    margin: 0;
    padding: 1em 0
}

.header-widget-region .widget p {
    margin: 0;
    font-size: clamp(0.75rem, 0.5938rem + 0.5vw, 0.875rem)
}

@media (max-width:768px) {
    .header-widget-region .widget {
        padding: 0.6em 0;
        font-size: clamp(0.8125rem, 0.749rem + 0.2033vw, 0.875rem)
    }
}

.ajax_add_to_cart.add_to_cart_button:after {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -9px;
    margin-left: -9px;
    opacity: 0;
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-left-color: #fff;
    border-radius: 50%;
    vertical-align: middle
}

@media (max-width:992px) {
    ul.products li.product .button {
        opacity: 1
    }
}

@media (min-width:993px) {
    .site-header-cart {
        line-height: 60px;
        margin-left: auto
    }

    .shoptimizer-cart .cart-contents {
        padding: 0;
        color: #fff
    }

    .shoptimizer-cart a.cart-contents .count {
        position: relative
    }

    .site-header .site-header-cart {
        display: none;
        width: auto
    }
}

.shoptimizer-cart .cart-contents .count {
    opacity: 1;
    font-size: 0.8em
}

.shoptimizer-cart .cart-contents:after {
    margin-left: 10px
}

.shoptimizer-cart a.cart-contents .count {
    display: inline-block;
    position: relative;
    width: auto;
    min-width: 28px;
    height: 28px;
    margin-left: 5px;
    padding: 3px;
    border: 1px solid #dc9814;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
    color: #dc9814;
    font-size: 12px;
    line-height: 22px;
    text-align: center;
    letter-spacing: -0.7px
}

.shoptimizer-cart a.cart-contents .count:after {
    position: absolute;
    bottom: 90%;
    left: 50%;
    width: 10px;
    height: 6px;
    margin-bottom: 1px;
    margin-left: -6px;
    border: 1px solid #dc9814;
    border-bottom: 0;
    border-top-left-radius: 99px;
    border-top-right-radius: 99px;
    content: ""
}

.shoptimizer-cart .cart-contents {
    display: block;
    text-decoration: none
}

.shoptimizer-mini-cart-wrap {
    overflow: hidden;
    position: fixed;
    z-index: 102;
    top: 0;
    right: -420px;
    left: auto;
    width: 420px;
    height: 100%;
    background-color: #fff;
    outline: none
}

@media (max-width:480px) {
    .shoptimizer-mini-cart-wrap {
        width: 100%;
        right: -100%
    }
}

#ajax-loading {
    position: absolute;
    z-index: 100;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.5)
}

.shoptimizer-loader {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%
}

.spinner {
    width: 38px;
    height: 38px;
    border: 1px solid #ccc;
    border-bottom-color: #111;
    border-radius: 50%;
    display: inline-block;
    box-sizing: border-box;
    animation: rotation 0.8s linear infinite
}

.cart-drawer-heading {
    position: absolute;
    margin: 12px 20px;
    font-size: 17px;
    font-weight: 600;
    color: #111
}

.shoptimizer-mini-cart-wrap .close-drawer {
    display: block;
    position: absolute;
    top: 12.5px;
    right: 16px;
    width: 26px;
    height: 26px;
    color: #111;
    padding: 0;
    background: none
}

.shoptimizer-mini-cart-wrap .close-drawer span {
    display: flex;
    width: 26px;
    height: 26px
}

.shoptimizer-mini-cart-wrap .widget_shopping_cart {
    display: flex;
    overflow-x: hidden;
    overflow-y: auto;
    position: relative;
    z-index: 10;
    top: auto;
    left: auto;
    height: calc(100% - 50px);
    margin: 0;
    margin-top: 50px;
    padding: 0px 20px 0 20px;
    background: #fff
}

.shoptimizer-mini-cart-wrap .widget_shopping_cart_content {
    display: flex;
    flex-direction: column;
    width: 100%
}

@media (min-width:993px) {

    body:not(.header-4) .col-full-nav .site-search,
    .mobile-menu.close-drawer,
    .menu-toggle,
    .mobile-extra {
        display: none
    }

    .logo-mark,
    .logo-mark img {
        display: inline-block;
        position: absolute
    }

    .menu-primary-menu-container {
        margin-left: 0
    }

    .logo-mark {
        float: left;
        overflow: hidden;
        width: 0;
        margin-right: 0
    }

    .logo-mark img {
        position: relative;
        top: -1px;
        vertical-align: middle
    }

    .col-full-nav {
        width: 100%;
        border-top: 1px solid transparent
    }

    .shoptimizer-primary-navigation {
        display: flex
    }

    body:not(.header-4).sticky-d .col-full-nav {
        position: -webkit-sticky;
        position: sticky;
        z-index: 10;
        top: 0
    }

    .main-navigation ul {
        margin: 0
    }

    .main-navigation ul li {
        display: inline-block
    }

    .main-navigation ul li.menu-item>a {
        display: block
    }

    .menu-primary-menu-container>ul>li>a span {
        position: relative
    }

    .menu-primary-menu-container>ul>li>a {
        padding-right: 0.55em;
        padding-left: 0.55em
    }

    .menu-primary-menu-container>ul>li:first-child>a {
        padding-left: 0
    }

    .main-navigation ul.menu>li.menu-item-has-children {
        position: relative;
        text-align: left
    }

    .menu-primary-menu-container>ul>li>a span:before {
        display: block;
        position: absolute;
        top: calc(100% + 2px);
        left: 0;
        width: 100%;
        border-bottom: 1px solid #ccc;
        content: "";
        transform: scale(0, 1);
        transform-origin: right center
    }

    .menu-primary-menu-container>ul>li.menu-item-has-children>a:after {
        display: inline-block;
        position: relative;
        top: 1px;
        margin-left: 6px;
        width: 12px;
        height: 12px;
        content: "";
        background-color: #fff
    }

    .menu-primary-menu-container>ul>li.menu-button>a span {
        padding: 6px 16px;
        border-radius: 30px;
        color: #fff;
        background: #444;
        font-size: 13px;
        font-weight: bold
    }

    .menu-primary-menu-container>ul>li.menu-button>a span:before {
        display: none
    }

    .main-navigation ul ul {
        position: absolute
    }

    .main-navigation ul.menu>li:not(.full-width)>.sub-menu-wrapper {
        visibility: hidden;
        position: absolute;
        right: 0;
        left: 0;
        opacity: 0;
        transform: scale(0.8)
    }

    .main-navigation ul.menu>li:not(.full-width) ul.sub-menu {
        padding: 20px 12px;
        box-shadow: 0 1px 15px rgba(0, 0, 0, 0.08);
        line-height: 1.4;
        margin: 0;
        width: 200px;
        box-sizing: content-box
    }

    .main-navigation ul.menu>li:not(.full-width) a.sub-menu-link {
        padding: 0.3em 0.8em
    }

    .main-navigation ul ul li {
        display: block;
        position: relative
    }

    .main-navigation ul.menu>li:not(.full-width) ul li .sub-menu-wrapper {
        visibility: hidden;
        position: absolute;
        top: -20px;
        left: 220px;
        opacity: 0
    }

    .main-navigation ul.menu>li:not(.full-width) ul li.menu-item-has-children>a:after {
        position: absolute;
        top: 0px;
        display: inline-block;
        right: 15px;
        width: 13px;
        height: 13px;
        content: "";
        background-color: #111;
        transform: translateX(50%) translateY(50%)
    }

    .main-navigation ul li a span strong {
        color: #fff;
        background-color: #222;
        font-size: 9px;
        height: 16px;
        line-height: 16px;
        padding: 0px 6px;
        display: inline-flex;
        margin-left: 7px;
        position: absolute;
        top: 2.5px;
        border-radius: 3px
    }

    .main-navigation ul.menu li.full-width>.sub-menu-wrapper {
        position: absolute;
        visibility: hidden;
        left: 0;
        width: 100%;
        opacity: 0;
        background: #fff;
        border-top: 1px solid #eee
    }

    .main-navigation ul.menu li.full-width ul li>.sub-menu-wrapper {
        position: relative;
        top: auto;
        right: auto
    }

    .main-navigation ul.menu li.full-width {
        position: inherit
    }

    .main-navigation ul li.full-width .container {
        max-width: 1170px;
        margin: 0 auto;
        padding: 0
    }

    .main-navigation ul li.full-width ul {
        position: inherit
    }

    .main-navigation ul li.full-width ul.products {
        display: block
    }

    .main-navigation ul li.full-width>.sub-menu-wrapper>.container>ul.sub-menu {
        display: flex;
        justify-content: center;
        width: 100%;
        padding: 40px 0
    }

    .main-navigation ul li.full-width>.sub-menu-wrapper>.container>ul.sub-menu>li {
        display: inline-block;
        float: none;
        width: 23%;
        padding-right: 25px;
        padding-left: 25px;
        border-left: 1px solid #eee;
        break-inside: avoid
    }

    .main-navigation ul li.full-width>.sub-menu-wrapper>.container>ul.sub-menu>li:last-child {
        border-right: 1px solid #eee
    }

    .main-navigation ul li.full-width>.sub-menu-wrapper>.container>ul.sub-menu ul {
        width: 100%
    }

    .main-navigation ul.menu li.full-width>.sub-menu-wrapper li.menu-item-has-children>a,
    .main-navigation ul.menu li.full-width>.sub-menu-wrapper li.heading>a {
        margin-bottom: 0.25rem
    }

    .main-navigation ul.menu li.full-width li.heading {
        clear: both;
        padding-top: 15px
    }

    .main-navigation ul.menu li.full-width>.sub-menu-wrapper li {
        margin-bottom: 0.25rem
    }

    .main-navigation ul.products li.product:not(.product-category):before {
        display: none
    }

    .main-navigation ul.menu li.full-width>.sub-menu-wrapper li.product:not(.product-category) {
        padding-bottom: 0
    }

    .main-navigation ul.products li.product {
        padding: 0
    }

    .main-navigation ul.menu li.full-width>.sub-menu-wrapper li a.button {
        width: 100%
    }

    .main-navigation ul.menu li.full-width>.sub-menu-wrapper li a.button {
        position: relative
    }

    .main-navigation ul.menu ul li.menu-item-image span {
        font-size: 0px;
        display: block
    }

    .main-navigation ul.menu ul li.menu-item-image img {
        margin-bottom: 0.5rem;
        border-radius: 4px;
        width: 100%
    }

    .main-navigation ul.menu ul li.menu-item-image span.sub {
        font-size: 14px;
        text-align: center;
        font-weight: 600
    }
}

.secondary-navigation {
    display: none
}

@media (min-width:993px) {
    .secondary-navigation {
        display: block;
        float: right;
        margin-left: auto;
        padding-left: 1.2em
    }

    .secondary-navigation .menu {
        margin-right: -15px
    }

    .secondary-navigation ul {
        margin: 0
    }

    .secondary-navigation ul li {
        display: inline-block;
        position: relative
    }

    .secondary-navigation ul li a {
        position: relative;
        display: block;
        padding: 0.7em 0.875em 0;
        color: #111;
        font-size: 14px
    }

    .secondary-navigation .menu li:not(.ri) a {
        padding-top: 35px
    }

    .secondary-navigation .icon-wrapper {
        position: absolute;
        top: 0px;
        left: 50%;
        top: 5px;
        transform: translate(-50%, 0%)
    }

    .secondary-navigation .icon-wrapper svg {
        width: 28px;
        height: 28px
    }

    .secondary-navigation .icon-wrapper svg path {
        stroke-width: 1.5px
    }

    .secondary-navigation .menu-item {
        padding: 0 5px;
        border-left: 1px solid #eee
    }

    .secondary-navigation .menu-item:first-child {
        border: 0
    }
}

@media (max-width:992px) {

    .col-full-nav .logo-mark,
    .col-full-nav .site-header-cart {
        display: none
    }

    .col-full-nav .shoptimizer-primary-navigation.col-full {
        padding: 0
    }

    .main-navigation {
        padding-top: 1rem
    }

    .main-navigation ul {
        list-style: none;
        margin: 0
    }

    .main-navigation ul li {
        position: relative
    }

    .menu-primary-menu-container>ul>li>a {
        display: block;
        padding: 0.35rem 0
    }

    .main-navigation ul.menu ul li {
        position: relative
    }

    .main-navigation ul.menu ul li>a {
        padding: 0.15rem 0;
        display: block
    }

    .main-navigation ul.menu .sub-menu-wrapper {
        margin-top: 0.25rem;
        padding-bottom: 1rem;
        padding-left: 0.5rem
    }

    .main-navigation ul.menu .sub-menu-wrapper .sub-menu-wrapper {
        margin-top: 0.25rem;
        padding-bottom: 0.5rem;
        padding-left: 0.5rem
    }

    .main-navigation ul.menu>li.menu-item-has-children {
        position: relative
    }

    .main-navigation ul.menu .sub-menu-wrapper a.cg-menu-link {
        width: calc(100% - 40px)
    }

    .main-navigation ul.menu li.menu-item-has-children .sub-menu-wrapper {
        position: fixed;
        left: -99999px;
        opacity: 0;
        transform: translateX(-10px)
    }

    .main-navigation ul.menu li.menu-item-has-children:not(.dropdown-open) .sub-menu-wrapper {
        display: block
    }

    .main-navigation ul.menu li.menu-item-has-children.dropdown-open>.sub-menu-wrapper {
        position: inherit;
        left: auto;
        opacity: 1;
        transform: translateX(0)
    }

    .site-search {
        display: none
    }

    .col-full-nav .site-search {
        display: block;
        padding-top: 20px;
        position: relative;
        z-index: 4
    }

    .main-navigation ul.menu li.menu-item-has-children span.caret {
        display: flex;
        position: absolute;
        z-index: 3;
        top: 0px;
        right: 0;
        width: 30px;
        justify-content: center;
        align-items: center
    }

    .main-navigation ul.menu li.menu-item-has-children li.menu-item-has-children.dropdown-open>span.caret {
        transform: rotate(180deg)
    }

    .main-navigation ul.menu li.menu-item-has-children span.caret:after {
        display: inline-flex;
        width: 20px;
        height: 20px;
        background-color: #111;
        content: ""
    }

    .main-navigation ul.menu li.menu-item-has-children span.caret {
        height: 35px
    }

    .main-navigation ul.menu li.menu-item-has-children li.menu-item-has-children span.caret {
        height: 27px;
        opacity: 0.5
    }

    .main-navigation ul.menu li.full-width>.sub-menu-wrapper li.menu-item-has-children>a+span.caret {
        height: 24px
    }

    .main-navigation ul.menu li.full-width>.sub-menu-wrapper li.heading>a.sub-menu-link {
        margin-top: 0.5rem
    }

    .main-navigation ul li a span strong {
        position: absolute;
        color: #fff;
        background-color: #222;
        font-size: 9px;
        height: 16px;
        line-height: 16px;
        padding: 0px 6px;
        display: inline-flex;
        margin-left: 7px;
        margin-top: 3.5px;
        border-radius: 2px
    }

    .main-navigation ul.products {
        grid-template-columns: repeat(1, minmax(10px, 1fr));
        padding-right: 0.5rem;
        margin-top: 1.15rem;
        margin-bottom: 1.5rem
    }

    .main-navigation ul.products li.product .button {
        margin-top: 0;
        opacity: 1
    }

    .main-navigation ul.menu ul li.menu-item-image {
        margin-top: 0.5rem;
        margin-bottom: 1rem
    }

    .main-navigation ul.menu .sub-menu-wrapper li.menu-item-image a.cg-menu-link {
        width: 100%;
        padding-right: 0.5rem
    }

    .main-navigation ul.menu ul li.menu-item-image span {
        font-size: 0px;
        display: block
    }

    .main-navigation ul.menu ul li.menu-item-image img {
        margin-bottom: 0.5rem;
        border-radius: 4px;
        width: 100%
    }

    .main-navigation ul.menu ul li.menu-item-image span.sub {
        font-size: 13px;
        text-align: center;
        font-weight: 600
    }

    .mobile-extra {
        padding: 1rem 0 2rem 0
    }

    .mobile-extra .widget {
        margin-bottom: 0
    }

    .mobile-extra .heading {
        margin-top: 0;
        margin-bottom: 0.25rem;
        padding: 1rem 0 0 0;
        opacity: 0.6;
        font-size: 11px;
        letter-spacing: 1px;
        text-transform: uppercase;
        font-weight: normal
    }

    .mobile-extra ul,
    .mobile-extra .widget p {
        margin: 0;
        padding: 0
    }

    .mobile-extra ul li {
        margin-bottom: 0.35rem
    }

    .mobile-extra a {
        font-size: 14px
    }

    .mobile-extra .review {
        text-align: center;
        border-top: 1px solid #e2e2e2;
        padding-top: 30px;
        font-size: 14px;
        line-height: 1.5;
        margin: 30px 0 0 0
    }

    .mobile-extra .review::before {
        display: block;
        font-size: 12px;
        letter-spacing: 3px;
        content: "\2605\2605\2605\2605\2605";
        margin-bottom: 5px;
        color: #ee9e13
    }

    .mobile-extra .review strong {
        display: block;
        margin-top: 0.5rem;
        font-size: 11px;
        letter-spacing: 1px;
        text-transform: uppercase
    }

    .mobile-extra .review .button {
        margin-top: 20px;
        display: block;
        font-weight: bold;
        color: #fff
    }

    .col-full-nav {
        position: fixed;
        z-index: 102;
        padding: 0 15px;
        top: 0;
        bottom: 0;
        height: 100%;
        left: -300px;
        width: 300px;
        min-height: 100vh;
        min-height: fill-available;
        min-height: -webkit-fill-available;
        max-height: 100vh;
        overflow-y: auto;
        overflow-x: hidden;
        background: #fff;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        box-shadow: 0 0 10 rgba(0, 0, 0, 0.15)
    }

    .mobile-menu.close-drawer {
        visibility: hidden;
        position: fixed;
        z-index: 999;
        top: 40px;
        left: 310px;
        padding: 0;
        opacity: 0
    }
}

@media (min-width:993px) {
    ul.products li.product:not(.product-category):before {
        visibility: hidden;
        position: absolute;
        left: 0;
        opacity: 0;
        background-color: #fff;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
        content: "";
        width: calc(100% + 0px);
        height: calc(100% + 30px);
        margin-top: -15px;
        margin-left: 0
    }
}

ul.products li.product img {
    display: block;
    width: 100%;
    margin: 0
}

.woocommerce-image__wrapper {
    position: relative;
    width: 100%
}

.woocommerce-image__wrapper .gallery-image {
    position: absolute;
    z-index: -10;
    top: 0;
    left: 0;
    opacity: 0
}

.woocommerce-card__header {
    clear: both;
    padding-top: 0.75rem
}

.woocommerce-card__header * {
    position: relative
}

@media (max-width:992px) {
    li.product:not(.product-category) .woocommerce-card__header {
        display: flex;
        flex-direction: column;
        flex: 1
    }
}

li.product p.product__categories,
li.menu-item-product p.product__categories {
    position: relative;
    margin-bottom: 0.25rem;
    -webkit-font-smoothing: antialiased;
    color: #444;
    line-height: 1.4;
    font-size: clamp(0.625rem, 0.5615rem + 0.2033vw, 0.6875rem);
    letter-spacing: 0.7px;
    text-transform: uppercase;
    margin-bottom: 0
}

li.product p.product__categories a,
li.menu-item-product p.product__categories a {
    color: #444
}

ul.products li.product .woocommerce-loop-product__title {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem
}

ul.products li.product .woocommerce-LoopProduct-link {
    display: block;
    color: #2c2d33;
    -webkit-backface-visibility: hidden
}

@media (max-width:770px) {
    .m-grid-2 ul.products li.product .woocommerce-loop-product__title {
        font-size: clamp(0.8125rem, 0.749rem + 0.2033vw, 0.875rem)
    }
}

ul.products li.product .price {
    display: block;
    margin-bottom: 0.75rem;
    color: #111;
    font-size: clamp(0.75rem, 0.623rem + 0.4065vw, 0.875rem)
}

.price del {
    color: #72767c;
    margin-right: 0.25rem;
    font-size: 0.85em;
    font-weight: normal
}

ul.products li.product .price ins {
    font-weight: bold
}

ul.products li.product .star-rating {
    margin-bottom: 0.15rem;
    font-size: 0.8em
}

ul.products li.product .button {
    display: block;
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: calc(100% - 30px);
    height: 40px;
    padding: 0;
    border-radius: 4px;
    opacity: 0;
    font-size: clamp(0.75rem, 0.623rem + 0.4065vw, 0.875rem);
    font-weight: 600;
    line-height: 40px;
    text-align: center
}

@media (max-width:992px) {

    ul.products li.product .button,
    ul.products li.product .add_to_cart_button {
        position: relative;
        width: 100%;
        opacity: 1
    }
}

@media (max-width:770px) {
    ul.products li.product .button {
        padding: 8px 12px;
        height: auto;
        line-height: inherit
    }
}

ul.products li.product .product-label {
    display: flex;
    flex-flow: row wrap;
    justify-content: center
}

.product-label {
    position: absolute;
    z-index: 1;
    top: -5px;
    left: 5px;
    min-width: 46px;
    max-width: 50%;
    min-height: 46px;
    align-items: center;
    padding: 5px 7px;
    border-radius: 35px;
    color: #fff;
    background-color: #3bb54a;
    font-size: 12px;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    word-break: break-all
}

.product-label.type-bubble {
    top: 10px;
    left: 10px;
    z-index: 1;
    min-width: inherit;
    min-height: inherit;
    font-size: 11px;
    border-radius: 3px;
    padding: 3px 6px;
    line-height: 15px
}

@media (max-width:992px) {
    .woocommerce-image__wrapper .gallery-image {
        position: relative;
        opacity: 1;
        z-index: inherit
    }

    .shoptimizer-plp-carousel-container {
        display: flex;
        width: 100%;
        height: 100%;
        overflow-x: scroll;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scroll-behavior: smooth;
        scrollbar-width: none
    }

    .shoptimizer-plp-carousel-container .shoptimizer-plp-image-wrapper {
        display: flex;
        width: calc(200%)
    }

    .shoptimizer-plp-carousel-container img {
        width: 100%;
        height: 100%;
        scroll-snap-align: center;
        object-fit: cover;
        flex-shrink: 0
    }

    .woocommerce-image__wrapper .shoptimizer-plp-carousel--pagination {
        display: none
    }

    .shoptimizer-plp-carousel--pagination {
        position: absolute;
        bottom: 5px;
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        justify-content: center;
        align-items: center
    }

    .shoptimizer-plp-carousel--dot {
        height: 6px;
        width: 6px;
        margin: 0 2px;
        background-color: #fff;
        border: 1px solid #111;
        border-radius: 50%;
        display: inline-block
    }

    .shoptimizer-plp-carousel--dot.active {
        background-color: #111
    }
}

.quantity {
    position: relative
}

.quantity .qty {
    text-align: center
}

.quantity input::-webkit-outer-spin-button,
.quantity input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.quantity input[type=number] {
    -moz-appearance: textfield
}

.product .cart .quantity .input-text {
    width: 50px;
    height: 52px;
    padding: 0 0.4em;
    border: 1px solid #e2e2e2;
    background-color: #fff;
    outline-offset: -3px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.col-full.topbar-wrapper {
    max-width: 100%;
    border-bottom: 1px solid #eee
}

.top-bar form {
    margin: 0
}

.top-bar select {
    font-size: 13px;
    height: 26px;
    background-size: 12px 12px;
    background-position: calc(100% - 7px)
}

.top-bar .col-full {
    display: flex;
    padding: 0;
    align-items: center
}

.top-bar p {
    margin: 0
}

.top-bar-left {
    display: flex;
    flex: 1
}

.top-bar-center {
    display: flex;
    justify-content: center;
    max-width: 45%;
    text-align: center
}

.top-bar-right {
    flex: 1;
    display: flex;
    justify-content: flex-end
}

@media (max-width:992px) {
    .topbar-wrapper .top-bar {
        padding: 0.6rem 0;
        font-size: clamp(0.75rem, 0.623rem + 0.4065vw, 0.875rem)
    }

    .top-bar {
        border-bottom: none
    }

    .top-bar select {
        font-size: 13px
    }

    .top-bar .col-full {
        padding: 0
    }
}

@media (max-width:768px) {
    .col-full.topbar-wrapper.hide-on-mobile {
        display: none
    }

    .top-bar .col-full,
    .top-bar-left,
    .top-bar-center,
    .top-bar-right {
        display: block;
        text-align: center;
        max-width: 100%
    }

    .top-bar select {
        margin-top: 5px;
        width: 100%
    }
}

.star-rating {
    height: 1.118em;
    position: relative;
    width: 5.6em;
    overflow: hidden
}

.star-rating:before {
    mask-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.04893 2.92707C9.34828 2.00576 10.6517 2.00576 10.951 2.92707L12.0206 6.21886C12.1545 6.63089 12.5384 6.90985 12.9717 6.90985H16.4329C17.4016 6.90985 17.8044 8.14946 17.0207 8.71886L14.2205 10.7533C13.87 11.0079 13.7233 11.4593 13.8572 11.8713L14.9268 15.1631C15.2261 16.0844 14.1717 16.8506 13.3879 16.2812L10.5878 14.2467C10.2373 13.9921 9.76269 13.9921 9.4122 14.2467L6.61203 16.2812C5.82832 16.8506 4.77384 16.0844 5.07319 15.1631L6.14276 11.8713C6.27663 11.4593 6.12997 11.0079 5.77949 10.7533L2.97932 8.71886C2.1956 8.14946 2.59838 6.90985 3.5671 6.90985H7.0283C7.46153 6.90985 7.84548 6.63089 7.97936 6.21886L9.04893 2.92707Z' fill='%234B5563'/%3E%3C/svg%3E");
    mask-position: left;
    mask-repeat: repeat-x;
    mask-size: 1.118em;
    background: #ccc;
    bottom: 0;
    content: "";
    display: block;
    height: 1.118em;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 5.6em
}

.star-rating>span {
    display: block;
    text-indent: -10000px;
    width: 5.6em;
    height: 1.118em;
    position: absolute;
    overflow: hidden
}

.star-rating>span:before {
    mask-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.04893 2.92707C9.34828 2.00576 10.6517 2.00576 10.951 2.92707L12.0206 6.21886C12.1545 6.63089 12.5384 6.90985 12.9717 6.90985H16.4329C17.4016 6.90985 17.8044 8.14946 17.0207 8.71886L14.2205 10.7533C13.87 11.0079 13.7233 11.4593 13.8572 11.8713L14.9268 15.1631C15.2261 16.0844 14.1717 16.8506 13.3879 16.2812L10.5878 14.2467C10.2373 13.9921 9.76269 13.9921 9.4122 14.2467L6.61203 16.2812C5.82832 16.8506 4.77384 16.0844 5.07319 15.1631L6.14276 11.8713C6.27663 11.4593 6.12997 11.0079 5.77949 10.7533L2.97932 8.71886C2.1956 8.14946 2.59838 6.90985 3.5671 6.90985H7.0283C7.46153 6.90985 7.84548 6.63089 7.97936 6.21886L9.04893 2.92707Z' fill='%234B5563'/%3E%3C/svg%3E");
    mask-position: left;
    mask-repeat: repeat-x;
    mask-size: 1.118em;
    background-repeat: repeat-x;
    bottom: 0;
    content: "";
    display: block;
    height: 1.118em;
    left: 0;
    position: absolute;
    right: 0;
    text-indent: 10000px;
    top: 0
}

.widget ul {
    margin-bottom: 0;
    margin-left: 0;
    list-style: none
}

.widget li {
    margin-bottom: 0.4em;
    font-size: 14px;
    line-height: 1.45
}

.widget_product_search form {
    position: relative
}

.widget_product_search input {
    width: 100%
}

.widget_product_search form button[type="submit"] {
    clip: rect(1px 1px 1px 1px);
    position: absolute !important;
    right: 0px
}

.widget p {
    margin-bottom: 1em;
    font-size: 14px;
    line-height: 1.5
}

.widget p:last-child {
    margin-bottom: 0
}

@keyframes rotation {
    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(360deg)
    }
}

.menu-primary-menu-container>ul>li.menu-item-has-children>a:after,
.main-navigation ul.menu li.menu-item-has-children span.caret:after {
    mask-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19 9L12 16L5 9' stroke='%234A5568' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
}

.main-navigation ul.menu>li:not(.full-width) ul li.menu-item-has-children>a:after {
    mask-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 5L16 12L9 19' stroke='%234A5568' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
}

.menu-primary-menu-container>ul>li.menu-item-has-children>a:after,
.main-navigation ul.menu>li:not(.full-width) ul li.menu-item-has-children>a:after,
.main-navigation ul.menu li.menu-item-has-children span.caret:after {
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain
}

.sr-only,
.screen-reader-text {
    position: absolute;
    visibility: hidden;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0
}

@media (max-width:992px) {
    .hide-on-mobile {
        display: none !important
    }
}

:root {
    --wp--preset--aspect-ratio--square: 1;
    --wp--preset--aspect-ratio--4-3: 4/3;
    --wp--preset--aspect-ratio--3-4: 3/4;
    --wp--preset--aspect-ratio--3-2: 3/2;
    --wp--preset--aspect-ratio--2-3: 2/3;
    --wp--preset--aspect-ratio--16-9: 16/9;
    --wp--preset--aspect-ratio--9-16: 9/16;
    --wp--preset--color--black: #000000;
    --wp--preset--color--cyan-bluish-gray: #abb8c3;
    --wp--preset--color--white: #ffffff;
    --wp--preset--color--pale-pink: #f78da7;
    --wp--preset--color--vivid-red: #cf2e2e;
    --wp--preset--color--luminous-vivid-orange: #ff6900;
    --wp--preset--color--luminous-vivid-amber: #fcb900;
    --wp--preset--color--light-green-cyan: #7bdcb5;
    --wp--preset--color--vivid-green-cyan: #00d084;
    --wp--preset--color--pale-cyan-blue: #8ed1fc;
    --wp--preset--color--vivid-cyan-blue: #0693e3;
    --wp--preset--color--vivid-purple: #9b51e0;
    --wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg, rgba(6, 147, 227, 1) 0%, rgb(155, 81, 224) 100%);
    --wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg, rgb(122, 220, 180) 0%, rgb(0, 208, 130) 100%);
    --wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg, rgba(252, 185, 0, 1) 0%, rgba(255, 105, 0, 1) 100%);
    --wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg, rgba(255, 105, 0, 1) 0%, rgb(207, 46, 46) 100%);
    --wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg, rgb(238, 238, 238) 0%, rgb(169, 184, 195) 100%);
    --wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg, rgb(74, 234, 220) 0%, rgb(151, 120, 209) 20%, rgb(207, 42, 186) 40%, rgb(238, 44, 130) 60%, rgb(251, 105, 98) 80%, rgb(254, 248, 76) 100%);
    --wp--preset--gradient--blush-light-purple: linear-gradient(135deg, rgb(255, 206, 236) 0%, rgb(152, 150, 240) 100%);
    --wp--preset--gradient--blush-bordeaux: linear-gradient(135deg, rgb(254, 205, 165) 0%, rgb(254, 45, 45) 50%, rgb(107, 0, 62) 100%);
    --wp--preset--gradient--luminous-dusk: linear-gradient(135deg, rgb(255, 203, 112) 0%, rgb(199, 81, 192) 50%, rgb(65, 88, 208) 100%);
    --wp--preset--gradient--pale-ocean: linear-gradient(135deg, rgb(255, 245, 203) 0%, rgb(182, 227, 212) 50%, rgb(51, 167, 181) 100%);
    --wp--preset--gradient--electric-grass: linear-gradient(135deg, rgb(202, 248, 128) 0%, rgb(113, 206, 126) 100%);
    --wp--preset--gradient--midnight: linear-gradient(135deg, rgb(2, 3, 129) 0%, rgb(40, 116, 252) 100%);
    --wp--preset--font-size--small: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.368), 1.2rem);
    --wp--preset--font-size--medium: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.92), 1.5rem);
    --wp--preset--font-size--large: clamp(1.5rem, 1.5rem + ((1vw - 0.2rem) * 0.92), 2rem);
    --wp--preset--font-size--x-large: clamp(1.5rem, 1.5rem + ((1vw - 0.2rem) * 1.379), 2.25rem);
    --wp--preset--font-size--x-small: 0.85rem;
    --wp--preset--font-size--base: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.46), 1.25rem);
    --wp--preset--font-size--xx-large: clamp(2rem, 2rem + ((1vw - 0.2rem) * 1.839), 3rem);
    --wp--preset--font-size--xxx-large: clamp(2.25rem, 2.25rem + ((1vw - 0.2rem) * 3.218), 4rem);
    --wp--preset--font-family--inter: "Inter", sans-serif;
    --wp--preset--font-family--cardo: Cardo;
    --wp--preset--spacing--20: 0.44rem;
    --wp--preset--spacing--30: 0.67rem;
    --wp--preset--spacing--40: 1rem;
    --wp--preset--spacing--50: 1.5rem;
    --wp--preset--spacing--60: 2.25rem;
    --wp--preset--spacing--70: 3.38rem;
    --wp--preset--spacing--80: 5.06rem;
    --wp--preset--spacing--small: clamp(.25rem, 2.5vw, 0.75rem);
    --wp--preset--spacing--medium: clamp(1rem, 4vw, 2rem);
    --wp--preset--spacing--large: clamp(1.25rem, 6vw, 3rem);
    --wp--preset--spacing--x-large: clamp(3rem, 7vw, 5rem);
    --wp--preset--spacing--xx-large: clamp(4rem, 9vw, 7rem);
    --wp--preset--spacing--xxx-large: clamp(5rem, 12vw, 9rem);
    --wp--preset--spacing--xxxx-large: clamp(6rem, 14vw, 13rem);
    --wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);
    --wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);
    --wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);
    --wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);
    --wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);
    --wp--custom--line-height--none: 1;
    --wp--custom--line-height--tight: 1.1;
    --wp--custom--line-height--snug: 1.2;
    --wp--custom--line-height--normal: 1.5;
    --wp--custom--line-height--relaxed: 1.625;
    --wp--custom--line-height--loose: 2;
    --wp--custom--line-height--body: 1.618;
}

:root {
    --wp--style--global--content-size: 900px;
    --wp--style--global--wide-size: 1190px;
}

:where(body) {
    margin: 0;
}

.wp-site-blocks {
    padding-top: var(--wp--style--root--padding-top);
    padding-bottom: var(--wp--style--root--padding-bottom);
}

.has-global-padding {
    padding-right: var(--wp--style--root--padding-right);
    padding-left: var(--wp--style--root--padding-left);
}

.has-global-padding>.alignfull {
    margin-right: calc(var(--wp--style--root--padding-right) * -1);
    margin-left: calc(var(--wp--style--root--padding-left) * -1);
}

.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull)) {
    padding-right: 0;
    padding-left: 0;
}

.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull))>.alignfull {
    margin-left: 0;
    margin-right: 0;
}

.wp-site-blocks>.alignleft {
    float: left;
    margin-right: 2em;
}

.wp-site-blocks>.alignright {
    float: right;
    margin-left: 2em;
}

.wp-site-blocks>.aligncenter {
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
}

:where(.wp-site-blocks)>* {
    margin-block-start: var(--wp--preset--spacing--medium);
    margin-block-end: 0;
}

:where(.wp-site-blocks)> :first-child {
    margin-block-start: 0;
}

:where(.wp-site-blocks)> :last-child {
    margin-block-end: 0;
}

:root {
    --wp--style--block-gap: var(--wp--preset--spacing--medium);
}

:root :where(.is-layout-flow)> :first-child {
    margin-block-start: 0;
}

:root :where(.is-layout-flow)> :last-child {
    margin-block-end: 0;
}

:root :where(.is-layout-flow)>* {
    margin-block-start: var(--wp--preset--spacing--medium);
    margin-block-end: 0;
}

:root :where(.is-layout-constrained)> :first-child {
    margin-block-start: 0;
}

:root :where(.is-layout-constrained)> :last-child {
    margin-block-end: 0;
}

:root :where(.is-layout-constrained)>* {
    margin-block-start: var(--wp--preset--spacing--medium);
    margin-block-end: 0;
}

:root :where(.is-layout-flex) {
    gap: var(--wp--preset--spacing--medium);
}

:root :where(.is-layout-grid) {
    gap: var(--wp--preset--spacing--medium);
}

.is-layout-flow>.alignleft {
    float: left;
    margin-inline-start: 0;
    margin-inline-end: 2em;
}

.is-layout-flow>.alignright {
    float: right;
    margin-inline-start: 2em;
    margin-inline-end: 0;
}

.is-layout-flow>.aligncenter {
    margin-left: auto !important;
    margin-right: auto !important;
}

.is-layout-constrained>.alignleft {
    float: left;
    margin-inline-start: 0;
    margin-inline-end: 2em;
}

.is-layout-constrained>.alignright {
    float: right;
    margin-inline-start: 2em;
    margin-inline-end: 0;
}

.is-layout-constrained>.aligncenter {
    margin-left: auto !important;
    margin-right: auto !important;
}

.is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: var(--wp--style--global--content-size);
    margin-left: auto !important;
    margin-right: auto !important;
}

.is-layout-constrained>.alignwide {
    max-width: var(--wp--style--global--wide-size);
}

body .is-layout-flex {
    display: flex;
}

.is-layout-flex {
    flex-wrap: wrap;
    align-items: center;
}

.is-layout-flex> :is(*, div) {
    margin: 0;
}

body .is-layout-grid {
    display: grid;
}

.is-layout-grid> :is(*, div) {
    margin: 0;
}

body {
    font-family: var(--wp--preset--font-family--primary);
    --wp--style--root--padding-top: 0;
    --wp--style--root--padding-right: var(--wp--preset--spacing--medium);
    --wp--style--root--padding-bottom: 0;
    --wp--style--root--padding-left: var(--wp--preset--spacing--medium);
}

a:where(:not(.wp-element-button)) {
    text-decoration: false;
}

:root :where(.wp-element-button, .wp-block-button__link) {
    background-color: #32373c;
    border-width: 0;
    color: #fff;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    padding: calc(0.667em + 2px) calc(1.333em + 2px);
    text-decoration: none;
}

.has-black-color {
    color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-color {
    color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-color {
    color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-color {
    color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-color {
    color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-color {
    color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-color {
    color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-color {
    color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-color {
    color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-color {
    color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-color {
    color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-color {
    color: var(--wp--preset--color--vivid-purple) !important;
}

.has-black-background-color {
    background-color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-background-color {
    background-color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-background-color {
    background-color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-background-color {
    background-color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-background-color {
    background-color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-background-color {
    background-color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-background-color {
    background-color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-background-color {
    background-color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-background-color {
    background-color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-background-color {
    background-color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-background-color {
    background-color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-background-color {
    background-color: var(--wp--preset--color--vivid-purple) !important;
}

.has-black-border-color {
    border-color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-border-color {
    border-color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-border-color {
    border-color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-border-color {
    border-color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-border-color {
    border-color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-border-color {
    border-color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-border-color {
    border-color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-border-color {
    border-color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-border-color {
    border-color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-border-color {
    border-color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-border-color {
    border-color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-border-color {
    border-color: var(--wp--preset--color--vivid-purple) !important;
}

.has-vivid-cyan-blue-to-vivid-purple-gradient-background {
    background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;
}

.has-light-green-cyan-to-vivid-green-cyan-gradient-background {
    background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;
}

.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background {
    background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;
}

.has-luminous-vivid-orange-to-vivid-red-gradient-background {
    background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;
}

.has-very-light-gray-to-cyan-bluish-gray-gradient-background {
    background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;
}

.has-cool-to-warm-spectrum-gradient-background {
    background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;
}

.has-blush-light-purple-gradient-background {
    background: var(--wp--preset--gradient--blush-light-purple) !important;
}

.has-blush-bordeaux-gradient-background {
    background: var(--wp--preset--gradient--blush-bordeaux) !important;
}

.has-luminous-dusk-gradient-background {
    background: var(--wp--preset--gradient--luminous-dusk) !important;
}

.has-pale-ocean-gradient-background {
    background: var(--wp--preset--gradient--pale-ocean) !important;
}

.has-electric-grass-gradient-background {
    background: var(--wp--preset--gradient--electric-grass) !important;
}

.has-midnight-gradient-background {
    background: var(--wp--preset--gradient--midnight) !important;
}

.has-small-font-size {
    font-size: var(--wp--preset--font-size--small) !important;
}

.has-medium-font-size {
    font-size: var(--wp--preset--font-size--medium) !important;
}

.has-large-font-size {
    font-size: var(--wp--preset--font-size--large) !important;
}

.has-x-large-font-size {
    font-size: var(--wp--preset--font-size--x-large) !important;
}

.has-x-small-font-size {
    font-size: var(--wp--preset--font-size--x-small) !important;
}

.has-base-font-size {
    font-size: var(--wp--preset--font-size--base) !important;
}

.has-xx-large-font-size {
    font-size: var(--wp--preset--font-size--xx-large) !important;
}

.has-xxx-large-font-size {
    font-size: var(--wp--preset--font-size--xxx-large) !important;
}

.has-inter-font-family {
    font-family: var(--wp--preset--font-family--inter) !important;
}

.has-cardo-font-family {
    font-family: var(--wp--preset--font-family--cardo) !important;
}

:root :where(.wp-block-columns) {
    margin-bottom: 0px;
}

:root :where(.wp-block-pullquote) {
    font-size: clamp(0.984em, 0.984rem + ((1vw - 0.2em) * 0.949), 1.5em);
    line-height: 1.6;
}

:root :where(.wp-block-spacer) {
    margin-top: 0 !important;
}