/*
 * Crown Beef order form. Styles carried over 1:1 from the former pf-order-form plugin
 * (form3.css), plus the site's custom CSS for it and the per-product modal rules that
 * the plugin printed inline.
 */
[data-pf-order-form] {
	--e-global-color-accent: #d40f14;
	--e-global-color-primary: #333;
	--e-global-color-secondary: #bcbcbc;
	--e-global-color-text: #949494;
	--e-global-color-2016e66: #f2f2f2;
	--e-global-color-16005c1: #fff;
	--e-global-typography-accent-font-weight: 600;
	--e-global-typography-accent-line-height: 1.2;
	--e-global-typography-secondary-font-size: 1.82rem;
	--e-global-typography-secondary-font-weight: 500;
	--e-global-typography-secondary-line-height: 1.2;
}

/* Base form element reset the old theme (Hello Elementor + kit) provided */
:where([data-pf-order-form]) label { display: inline-block; vertical-align: middle; font-size: .8125em; color: #333; line-height: 1.618; }
:where([data-pf-order-form]) :where(input[type=text], input[type=email], input[type=tel], input[type=number], textarea, select) {
	width: 100%; border: 1px solid #e0e0e0; border-radius: 0; padding: 15px 20px; font-family: inherit; font-size: 1em; line-height: 1.618; color: #1a1a1a; background: transparent; transition: all .3s;
}
:where([data-pf-order-form]) textarea { padding: 5px 20px; font-size: 16px; background: #fff; }
:where([data-pf-order-form]) :is(input, textarea, select):focus { outline: 0; border-color: #949494; }
:where([data-pf-order-form]) :is(button, input, select, textarea) { font-family: inherit; }
:where([data-pf-order-form]) sup { line-height: 0; }
.order-form fieldset ol { margin: 0; line-height: 29.124px; }

/* Site custom CSS for the form */
.order-form legend { color: #7b7676 !important; padding: 0 10px; margin-left: -20px; }
.order-form fieldset { padding: 20px 30px 30px; border: 1px solid #dbdada; border-radius: 4px; }
.order-form fieldset + fieldset { margin-top: 40px; }
.pf-order-form__form { max-width: 960px; margin: auto; padding-bottom: 80px; }
form .submit-bar.is-hidden { display: none; }

.my-order {
    width: 100%
}

.order-summary table {
    border: 1px solid #ccc;
    border-collapse: collapse;
    width: 100%
}

.order-summary td,
.order-summary th {
    text-align: left;
    border: 1px solid #ccc;
    border-collapse: collapse;
    padding: .5em 1em
}

.order-summary td[colspan="2"] {
    text-align: right;
    border-color: transparent;
    padding-right: 0;
    font-weight: 700
}

.order-summary td[colspan="2"]+td {
    border-color: transparent
}

.order-summary tr:last-of-type {
    border-color: transparent
}

.order-summary caption {
    text-align: left;
    font-weight: 700;
    margin: 0 0 20px;
    padding: .5em 1em;
    border-color: transparent
}

.form-col--order {
    background: var(--e-global-color-2016e66)
}

.form-col--order .product {
    padding: 10px;
    border: 1px solid var(--e-global-color-16005c1, #fff);
    font-size: 14px;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px;
    background-color: var(--e-global-color-16005c1, #fff)
}

.form-col--order .product+.product {
    margin-top: 20px
}

.order-form {
    padding: 20px
}

.order-form p {
    margin: 0 !important
}

.pf-order-form__captcha {
    margin: 20px 0;
}

.pf-order-form__captcha .altcha-widget-wrap {
    display: inline-block;
    max-width: 100%;
}

.order-summary.is-hidden {
    overflow: hidden;
    max-height: 0;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.product [type=checkbox] {
    opacity: 0;
    position: absolute;
    width: 0;
    height: 0
}

.product [type=checkbox]+label:not(.CSSUI) {
    padding: 0 5px;
    background: transparent !important;
    border: 1px solid #ccc !important;
    color: var(--e-global-color-accent, #d40f14);
    margin: 0;
    line-height: 26px !important;
    height: 31px !important;
    text-align: center;
    cursor: pointer;
    font-size: 12px !important;
    border-radius: 0;
    text-transform: uppercase;
    white-space: nowrap;
    width: 100%;
    max-width: 240px;
    font-weight: var(--e-global-typography-accent-font-weight);
    line-height: var(--e-global-typography-accent-line-height);
    color: var(--e-global-color-primary);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.product [type=checkbox]+label span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: auto;
    height: var(--height);
    width: 30px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.product [type=checkbox]:checked+label:not(.CSSUI) {
    background: var(--e-global-color-accent, #d40f14) !important;
    border: 1px solid var(--e-global-color-accent, #d40f14) !important;
    color: #fff !important;
    fill: currentColor;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 1px solid var(--e-global-color-accent, #d40f14) !important
}

.product [type=checkbox]+label .order-me--remove {
    display: none;
}
.product [type=checkbox]:checked+label .order-me--remove {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.product [type=checkbox]:checked+label .order-me--add {
    display: none
}

.product [type=checkbox]:checked+label .order-me--remove {
    /* display: -webkit-box; */
    display: -ms-flexbox;
    /* display: flex; */
}

.product:not(.is-active) .quantity {
    visibility: hidden
}

.product-column--price {
    position: absolute;
    z-index: 2;
    top: 10px;
    right: 10px;
    white-space: nowrap;
    width: 58px;
    height: 22px;
    text-align: center;
    line-height: 22px;
    border-radius: 0;
    color: #111;
    font-size: 14px;
    border: 1px solid #ccc;
    font-weight: 500;
    opacity: 0;
}

form.is-invalid .product-column--price {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    opacity: 0
}

form.is-valid .product-column--price {
    /* opacity: 1; */
}

.product-column--price p {
    margin: auto
}

.product-column--name {
    padding-right: 60px;
    min-height: 60px;
    width: 100%
}

.product-name {
    color: var(--e-global-color-primary)
}

.product-column--quantity {
    width: calc(50% - 20px)
}

.product-column--order {
    width: calc(50% + 22px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: end;
    position: relative
}

.product-column--quantity label {
    clip: rect(1px, 1px, 1px, 1px);
    word-wrap: normal !important;
    border: 0;
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

[name="company_phone"]::-webkit-inner-spin-button,
[name="company_phone"]::-webkit-outer-spin-button,
.product input[type=number]::-webkit-inner-spin-button,
.product input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.product [type="number"],
[name="company_phone"] {
    -moz-appearance: textfield
}

.quantity-button,
.product [type="number"] {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    margin: 0;
    border-radius: 0;
    padding: 0;
    -webkit-transition: opacity 100ms ease;
    -o-transition: opacity 100ms ease;
    transition: opacity 100ms ease;
    color: #111;
    font-size: 14px
}

.quantity-button {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    width: 30px;
    min-width: 0;
    max-width: 0;
    -webkit-transition: opacity 100ms ease;
    -o-transition: opacity 100ms ease;
    transition: opacity 100ms ease
}

.product.is-active .quantity-button,
.product.is-active [type="number"] {
    max-width: var(--height);
    min-width: var(--height);
    opacity: 1;
    color: #333333 !important;
    padding: 0 !important;
    line-height: var(--height);
    height: var(--height);
    min-height: var(--height);
    border: 0 !important;
    outline: 0
}

@media (max-width:499px) {

    .product.is-active .quantity-button,
    .product.is-active [type="number"] {
        min-width: 20px
    }

    .order {
        width: calc(50% + 0px)
    }
}

.quantity {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    gap: 0;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    border: 1px solid #ccc;
    height: var(--height);
    position: relative;
}

.product-description {
    font-size: 14px
}

.form-col--info>div+div {
    margin-top: 20px
}

@-webkit-keyframes loading-stroke {
    0% {
        stroke-dashoffset: 376
    }

    100% {
        stroke-dashoffset: 0
    }
}

@keyframes loading-stroke {
    0% {
        stroke-dashoffset: 376
    }

    100% {
        stroke-dashoffset: 0
    }
}

.loading-animation .loading-inner {
    stroke-dasharray: 376;
    stroke-dashoffset: 376;
    -webkit-animation: loading-stroke 7s ease-in-out;
    animation: loading-stroke 7s ease-in-out;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1
}

.progress-button svg {
    display: inline-block;
    width: 38px;
    height: 38px;
    fill: #ddd
}

.progress-button svg circle {
    fill: transparent;
    stroke: #fff;
    stroke-width: 0;
    outline: 1px solid transparent;
    -webkit-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    border-radius: 38px
}

.progress-button.loading svg circle {
    stroke-width: 8px
}

.progress-button {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%
}

.progress-button button {
    height: 50px !important;
    padding: 0 54px !important;
    border: 1px solid #ddd;
    -webkit-transition: all 200ms ease-in-out;
    -o-transition: all 200ms ease-in-out;
    transition: all 200ms ease-in-out;
    width: 100%
}

.progress-button svg {
    width: 50px;
    height: 50px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    pointer-events: none
}

.progress-button.loading button {
    padding: 0px !important;
    color: transparent;
    font-size: 0;
    border-radius: 50px;
    min-width: 50px;
    border-width: 0;
    width: 50px;
    max-width: 50px
}

.progress-button.error svg circle {
    stroke: var(--e-global-color-accent, #d40f14)
}

.progress-button.error button {
    border-color: var(--e-global-color-accent, #d40f14);
    color: #fff;
    background: var(--e-global-color-accent, #d40f14)
}

.progress-button.success button {
    border-color: #4CAF50;
    background: #4caf50;
    color: #fff
}

.progress-button.error {
    display: none
}

p.error {
    color: var(--e-global-color-accent, #d40f14);
    margin: 0
}

.ajax-order-form-response {
    margin: 0;
    font-size: .8em
}

.submit-bar, form .submit-bar:not(.is-hidden) {
    left: 0;
    right: 0;
    height: 60px;
    background: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 30px;
    margin-bottom: 30px
}

form .submit-bar:not(.is-hidden) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.progress-button.success,
form.is-valid .submit-bar.is-hidden {
    /* display: none; */
}

.is-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.ajax-order-form-response {
    padding: 10px 20px;
    border: 2px solid green
}

.ajax-order-form-response:empty {
    display: none !important
}

.form-col label {
    font-weight: 700 !important;
    line-height: 1.618em !important;
    color: var(--e-global-color-text)
}

.order-form .req {
    color: red !important;
    font-weight: 700 !important;
    margin-left: 4px;
    font-size: 1em;
    vertical-align: sub;
    display: inline-block
}

.form-col input:not([type="checkbox"]):focus {
    -webkit-box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .1);
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .1);
    outline: 0
}

form.is-invalid .product [type=checkbox]+label:not(.CSSUI) {
    border-color: #f2f2f2 !important;
    color: #ccc !important
}

span.order-me--remove {
    color: #fff;
}
span.order-me--remove .order-me--desc {
    color: #cccccc;
}
.product [type=checkbox]+label svg {
    height: 30px;
    width: 30px
}

@media (min-width:882px) {
    .form-cols {
        display: -ms-grid;
        -ms-grid-columns: 340px 20px auto
    }

    .form.is-block-status .form-col--info,
    .form.is-block-status .form-col--order {
        height: calc(100vh - 80px - var(--wp-admin--admin-bar--height, 0px))
    }

    .form-col--info {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        overflow-y: auto;
        padding-top: 60px
    }

    .form-col--order .product {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: auto 30px 75px 30px 136px 30px 200px;
        grid-template-columns: auto 75px 136px 200px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        min-height: 78px;
        gap: 30px
    }

    .product [type=checkbox]+label:not(.CSSUI) {
        height: var(--height) !important;
        line-height: var(--height) !important;
        font-size: 15px !important;
        padding: 0;
        width: calc(3 * var(--height));
        min-width: calc(3 * var(--height));
        max-width: calc(3 * var(--height));
        position: relative;
    }

    .product-column--price {
        position: initial;
        top: initial;
        right: initial;
        height: initial;
        border: initial;
        font-size: 16px;
        text-align: right;
        width: 0px;
        overflow: hidden;
        white-space: nowrap;
        line-height: 54px
    }

    .product-column--quantity {
        width: 136px;
        height: var(--height);
        margin-top: -22px;
    }

    .product-column--order {
        width: calc(3 * var(--height));
        margin-top: -22px;
    }

    .product [type="number"],
    .quantity-button {
        width: initial;
        min-width: 30px;
        max-width: initial;
        opacity: initial;
        -webkit-transition: opacity 100ms ease;
        -o-transition: opacity 100ms ease;
        transition: opacity 100ms ease
    }

    .quantity-button {
        opacity: 0;
        font-size: 26px
    }

    .product.is-active .quantity-button {
        opacity: 1
    }

    .product [type="number"] {
        font-size: 16px !important
    }

    .product-name {
        line-height: 1.2;
        display: block;
        font-size: 18px
    }

    .product-description {
        line-height: 1
    }

    .product .quantity {
        opacity: 0;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        pointer-events: none
    }

    .product.is-active .quantity {
        opacity: 1;
        -webkit-user-select: initial;
        -moz-user-select: initial;
        -ms-user-select: initial;
        user-select: initial;
        pointer-events: initial;
        margin: 0
    }
}

@media (max-width:881px) {

    body.page-id-3155 .elementor-element-3b7c9b7,
    body.page-id-3309 .elementor-element-3b7c9b7,
    body.page-id-3155 .elementor-element-efc7b93 .jet-popup-target,
    body.page-id-3309 .elementor-element-efc7b93 .jet-popup-target {}

    .form-col--order {
        padding: 20px 10px 100px 10px;
        margin-top: 20px
    }

    form.is-invalid .form-col--order {
        display: none !important
    }
}

.d-grid {
    display: -ms-grid;
    display: grid;
    gap: 20px;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr
}

@media (min-width:882px) {
    .d-grid {
        display: -ms-grid;
        display: grid;
        gap: 20px
    }

    .d-grid-2 {
        -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr
    }
}

.success-message {
    display: none
}

form.submit-success .success-message {
    display: block
}

form.submit-success .form-cols {
    display: none
}

.success-message-inner {
    margin: auto;
    max-width: 880px;
    padding: 20px;
    display: none;
    height: calc(100% - 0px)
}

form.submit-success .success-message {
    height: calc(100vh - 40px - var(--wp-admin--admin-bar--height, 0px));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

form.submit-success .success-message h2 {
    color: #111
}

.order-form-header {
    width: 100%;
    height: 60px;
    z-index: 999;
    left: 0;
    right: auto;
    background-color: #fff;
    overflow: hidden;
    top: calc(0px + var(--wp-admin--admin-bar--height, 0px))
}

.order-form-header-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 5px 20px 5px 20px
}

.order-form-header-inner .custom-logo-link {
    display: block;
    height: 40px;
    margin: auto 0
}

.order-form-header-inner .custom-logo-link img {
    width: auto;
    max-height: 40px
}

#ajax-order-form,
.pf-order-form__form {
    margin: 0 auto;
    --height: 42px;
    max-width: 980px;
    counter-reset: checkout-step
}

.fake-bag {
    --size: 20px;
    font-size: 14px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
    color: #000
}

.fake-bag span {
    font-size: 14px
}

.fake-bag svg {
    --size: inherit;
    width: var(--size);
    height: var(--size)
}

.fake-bag-icon {
    --size: inherit;
    height: var(--size)
}

.jet-popup__container-content .order-form {
    height: calc(100vh - var(--wp-admin--admin-bar--height, 0px));
    overflow-y: scroll;
    position: fixed;
    top: var(--wp-admin--admin-bar--height, 0);
    left: 0;
    right: 0;
    bottom: 0
}

/* form.is-invalid [data-aof="order"], */
/* form.is-invalid [data-aof="summary"], */
form.is-invalid [data-aof="summary"] .submit-bar .progress-button {
    opacity: .3;
    pointer-events: none;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-filter: grayscale(1);
            filter: grayscale(1);
}

#ajax-order-form fieldset,
.pf-order-form__form fieldset {
    margin: 30px 0;
    border: 1px solid #ccc;
    border: 0 solid transparent;
    padding: 30px 0 0 30px;
    position: relative
}

#ajax-order-form fieldset>div+div,
.pf-order-form__form fieldset>div+div {
    margin-top: 20px
}

#ajax-order-form legend,
.pf-order-form__form legend {
    background: #fff;
    padding: 10px 0 !important;
    color: #1a1a1a;
    font-weight: 500;
    margin-left: -30px;
    display: block;
    position: relative;
    z-index: 2;
    width: auto;
    font-size: 1.2em
}

.product {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.product+.product {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #ccc
}

.order-me--add {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

#ajax-order-form input:not([type="checkbox"]),
.pf-order-form__form input:not([type="checkbox"]) {
    height: var(--height);
    line-height: calc(var(--height) - 2px);
    padding-top: 0;
    padding-bottom: 0;
    font-size: 16px;
    background: transparent
}

#ajax-order-form textarea,
.pf-order-form__form textarea {
    font-size: 16px;
    padding-top: 5px;
    padding-bottom: 5px
}

.jet-popup.jet-popup--front-mode {
    top: var(--wp-admin--admin-bar--height, 0)
}

[data-aof="billing"] [type="checkbox"] {
    margin-right: .5em
}

#ajax-order-form legend:before,
.pf-order-form__form legend:before {
    content: " " counter(checkout-step) "." / "";
    counter-increment: checkout-step 1;
    margin-right: .5em
}

#ajax-order-form fieldset:before,
.pf-order-form__form fieldset:before {
    border-left: 1px solid #ccc;
    content: "";
    height: 100%;
    left: 3px;
    position: absolute;
    top: 16px
}

#ajax-order-form textarea.my-order,
.pf-order-form__form textarea.my-order {
    visibility: hidden;
    padding: 0;
    overflow: hidden;
    height: 0;
    min-height: 0;
    border: 0;
    pointer-events: none;
    margin: 0;
    position: absolute
}

[data-aof="terms"],
.acceptation-checkbox {
    margin-top: 20px;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 20px 1fr;
    grid-template-columns: 20px 1fr;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start
}

[data-aof="terms"] input,
[data-aof="shipping_address"] input {
    margin-top: 4px
}

#ajax-order-form [name="for-shipping"],
.pf-order-form__form [name="for-shipping"],
#ajax-order-form [name="terms"],
.pf-order-form__form [name="terms"] {
    -webkit-appearance: checkbox;
    appearance: auto;
    accent-color: auto;
    background: initial;
    border: initial;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.for-shipping-content {
    display: none;
    width: 100%
}

.for-shipping-content.is-active {
    display: block;
    margin-top: 10px
}

.order-summary table {
    border: 1px solid #ccc;
    border-collapse: collapse;
    width: 100%
}

.order-summary td,
.order-summary th {
    text-align: left;
    border: 1px solid #ccc;
    border-collapse: collapse;
    padding: .5em 1em
}

table thead th {
    border-color: #ccc !important
}

table td,
table tr {
    background: #fff !important;
    color: #1a1a1a
}

.order-summary tr:last-of-type td:nth-child(1),
.order-summary tr:last-of-type td:nth-child(2) {
    visibility: hidden;
    opacity: 0;
    border-color: transparent
}

.order-summary tr:last-of-type td:nth-child(2) {
    border-right: 1px solid #ccc
}

.order-summary tr:last-of-type td:nth-child(3) {
    border-left: 1px solid #ccc
}

.order-summary td[colspan="2"] {
    text-align: right;
    border-color: transparent;
    padding-right: 0;
    font-weight: 700
}

.order-summary td[colspan="2"]+td {
    border-color: transparent
}

.order-summary tr:last-of-type {
    border-color: transparent
}

.order-summary caption {
    text-align: left;
    font-weight: 500;
    margin: 0 0 20px;
    padding: .5em 1em;
    border-color: transparent
}

.product-image-cover {
    display: block;
    width: 150px;
    height: 120px;
    margin: 10px 0;
    position: relative
}

.product-image-cover>.product-image {
    max-width: initial;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width:881px) {
    .order-summary table {
        font-size: 14px
    }

    .order-summary table,
    .order-summary table tr {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        background: transparent !important
    }

    .order-summary table tr {
        gap: 10px;
        border-top: 0 solid #ccc
    }

    .order-summary table thead {
        display: none
    }

    .order-summary table td::before {
        content: attr(data-label);
        font-weight: 500;
        color: #1a1a1a;
        display: block;
        font-size: 16px
    }

    .order-summary tr:last-of-type {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .order-summary tr:last-of-type td:nth-child(1),
    .order-summary tr:last-of-type td:nth-child(2) {
        display: none
    }

    .order-summary tr {
        width: calc(100% - 20px);
        padding: 10px
    }

    .order-summary tr+tr {
        border-top: 1px solid #ccc !important;
        margin-top: 10px
    }

    .order-summary td {
        border: 0;
        text-align: right;
        width: calc(100% - 0px);
        padding: 0;
        background: transparent !important
    }

    .order-summary td:before {
        text-align: left
    }

    .product {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .product .product-column.product-column--price {
        display: none
    }

    .product .product-name {
        position: relative;
        font-size: 16px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: .5em
    }

    .product .product-name:after {
        content: " (" attr(data-price) ")";
        opacity: .7
    }

    .product .product-column {
        width: 100%;
        max-width: 100%;
        padding-right: 0
    }

    .product-image-cover {
        width: 100%;
        height: auto;
        aspect-ratio: 4/3
    }

    .product [type=checkbox]+label {
        width: 100%;
        max-width: 100%;
        padding-left: 0;
        padding-right: 0;
        --height: 42px;
        height: var(--height) !important;
        min-height: var(--height) !important;
        line-height: var(--height) !important
    }

    .product .quantity {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .quantity-button {
        font-size: 20px
    }

    .order-summary td {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 100px auto;
        grid-template-columns: 100px auto
    }

    .order-summary caption {
        margin: 0;
        padding: 10px;
        color: #1a1a1a
    }
}

form.submit-success .success-message-inner p,
form.submit-success #append-summary {
    display: none
}

form.submit-success {
    display: none
}

.submit-success .success-message-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.submit-success .success-message-inner h2 {
    color: #1a1a1a;
    text-align: center;
    font-size: 26px
}

.submit-success #append-summary {
    display: none
}

#ajax-order-form input:not([type="checkbox"]):focus,
.pf-order-form__form input:not([type="checkbox"]):focus,
#ajax-order-form textarea:focus,
.pf-order-form__form textarea:focus {
    outline: none;
    -webkit-box-shadow: inset 0 0 0 1px #e0e0e0;
    box-shadow: inset 0 0 0 1px #e0e0e0
}

#ajax-order-form [name="for-shipping"]:focus,
.pf-order-form__form [name="for-shipping"]:focus,
#ajax-order-form [name="terms"]:focus,
.pf-order-form__form [name="terms"]:focus {
    outline: auto;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.order-form ::-webkit-input-placeholder {
    color: #ddd;
    opacity: 1
}

.order-form ::-moz-placeholder {
    color: #ddd;
    opacity: 1
}

.order-form :-ms-input-placeholder {
    color: #ddd;
    opacity: 1
}

.order-form ::-ms-input-placeholder {
    color: #ddd;
    opacity: 1
}

.order-form ::placeholder {
    color: #ddd;
    opacity: 1
}

@media (max-width:881px) {
    .product:not(.is-active) .quantity {
        display: none
    }
}

form .submit-bar, form .submit-bar:not(.is-hidden) {
    display: -ms-grid;
    display: grid;
    gap: 20px;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr
}
form .submit-bar.is-hidden {
    /* display: none; */
}
@media (min-width:882px) {
    form .submit-bar, form .submit-bar:not(.is-hidden) {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 340px;
        grid-template-columns: 1fr 340px
    }
}

@media (max-width:480px) {
    ol[data-aof="notice"] {
        padding-left: 15px !important
    }

    #ajax-order-form,
    .pf-order-form__form {
        max-width: calc(100svw - 60px)
    }

    #ajax-order-form fieldset,
    .pf-order-form__form fieldset {
        padding-left: 15px;
        margin: 15px 0
    }

    #ajax-order-form legend,
    .pf-order-form__form legend {
        margin-left: -15px;
        font-size: 1.1em
    }

    #ajax-order-form fieldset:before,
    .pf-order-form__form fieldset:before {
        left: 5px
    }

    .product .product-column {
        display: block
    }

    .order-summary table,
    .order-summary tr,
    .product .product-column {
        max-width: calc(100svw - 70px)
    }

    .product .product-column--name {
        max-width: initial;
        width: initial
    }

    html form.is-valid .submit-bar:not(.is-hidden),
    html form.is-valid div.submit-bar:not(.is-hidden)>* {
        max-width: initial !important
    }

    .submit-bar>p {
        font-size: 14px;
        margin-bottom: 15px !important;
        line-height: 1.4
    }

    html form .submit-bar:not(.is-hidden) {
        display: block;
        height: auto;
        margin: 15px 0 0 0
    }

    .progress-button,
    .progress-button button {
        min-width: initial !important
    }

    html form .submit-bar:not(.is-hidden)>.progress-button {
        max-width: calc(100svw - 30px) !important;
        margin: 0 auto 0 0;
        display: block
    }

    .progress-button button {
        padding: 0 10px !important;
        margin: 0
    }

    .order-summary tr:last-of-type td:nth-child(3) {
        border-left: 0
    }

    .order-summary td,
    .order-summary th {
        padding: .5em !important;
        font-size: 12px
    }

    .order-summary table td::before {
        font-size: 12px !important
    }

    .order-summary table tr {
        width: 100%;
        padding: .5em
    }
}

[for="terms"] a {
    display: inline;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto
}

body.page-id-3155 .elementor-element-f7e5200,
body.page-id-3309 .elementor-element-adc6ffe {
    visibility: hidden
}


































.pf-modal-slider {
    position: relative;
    width: 100%;
}

.pf-modal-slider__viewport {
    position: relative;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    background: #bdbdbd;
    border-radius: 0;
}

.pf-modal-slider__track {
    display: flex;
    height: 100%;
    transition: transform 0.25s ease-in-out;
    will-change: transform;
}

.pf-modal-slider__slide {
    flex: 0 0 100%;
    min-width: 100%;
    height: 100%;
}

.pf-modal-slider__slide img {
    display: block;
    width: 100%;
    max-width: unset;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
    pointer-events: none;
    user-select: none;
    -webkit-user-select: none;
    -webkit-user-drag: none;
}

.pf-modal-slider__arrow {
    cursor: pointer !important;
    display: block !important;
    width: 56px !important;
    height: 56px !important;
    position: absolute !important;
    top: 50% !important;
    z-index: 4 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: rgb(0 0 0 / 66%) !important;
    font-size: 0 !important;
    transform: translateY(-50%) !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.pf-modal-slider__arrow::before {
    font-size: 54px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 52px;
    height: 52px;
    border-radius: 50%;
    line-height: 46px;
    background: rgba(255, 255, 255, 0.92);
    text-align: center;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.16);
}

.pf-modal-slider__arrow--prev {
    left: 16px;
}

.pf-modal-slider__arrow--prev::before {
    content: '‹' !important;
    font-weight: 400 !important;
}

.pf-modal-slider__arrow--next {
    right: 16px;
}

.pf-modal-slider__arrow--next::before {
    content: '›' !important;
    font-weight: 400 !important;
}

.pf-modal-slider__arrow:hover {
    color: #000;
}

.pf-modal-slider__dots {
    position: absolute;
    left: 50%;
    bottom: 16px;
    z-index: 4;
    display: flex;
    gap: 8px;
    transform: translateX(-50%);
    align-items: center;
    padding: 8px 12px;
    background: rgba(0, 0, 0, 0.12);
    border-radius: 999px;
    backdrop-filter: blur(2px);
}

.pf-modal-slider__dot {
    width: 12px !important;
    height: 12px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.5) !important;
    cursor: pointer !important;
    box-shadow: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.pf-modal-slider__dot.is-active {
    background: red !important;
}

.pf-modal-slider__dot:hover {
    background: #fff;
}
  




  
  .modal-container {
    margin: 0;
    padding-top: 0px;
    position: relative;
    width: 100%;
  }
  .modal-container .modal-btn {
    display: block;
    margin: -35px auto auto;
    color: #fff;
    width: calc(100% - 20px) !important;
    height: 40px;
    line-height: 40px;
    background: #181818;
    /* background: var(--e-global-color-accent, #d40f14); */
    font-size: 14px;
    border: 0;
    border-radius: 0px;
    cursor: pointer;
    text-align: center;
    -webkit-box-shadow: 0 5px 5px -5px #333;
    box-shadow: 0 5px 5px -5px #333;
    -webkit-transition: background 0.3s ease-in;
    -o-transition: background 0.3s ease-in;
    transition: background 0.3s ease-in;
  }
  .modal-container .modal-btn:hover {
    background: #000000;
  }
  .modal-container .modal-content,
  .modal-container .modal-backdrop {
    height: 0;
    width: 0;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    cursor: pointer;
    -webkit-transition: opacity 0.2s ease-in;
    -o-transition: opacity 0.2s ease-in;
    transition: opacity 0.2s ease-in;
  }
  .modal-container .modal-close {
    position: absolute;
    right: 5px;
    top: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: fixed;
    top: 20px;
    right: 35px;
    cursor: pointer;
    z-index: 2;
    -webkit-transition: all .2s ease;
    -o-transition: all .2s ease;
    transition: all .2s ease;
    width: var(--jp-close-button-size, 32px);
    height: var(--jp-close-button-size, 32px);
    font-size: var(--jp-close-button-icon-size, 16px);
    border: var(--jp-close-button-border, none);
    border-radius: var(--jp-close-button-border-radius, inherit);
    color: var(--jp-close-button-icon-color, #fff) !important;
    background-color: var(--jp-close-button-bg-color, #000);
    -webkit-transform: translate(var(--jp-close-button-translate-x, 0), var(--jp-close-button-translate-y, 0));
    -ms-transform: translate(var(--jp-close-button-translate-x, 0), var(--jp-close-button-translate-y, 0));
    transform: translate(var(--jp-close-button-translate-x, 0), var(--jp-close-button-translate-y, 0));
  }
  .modal-container .modal-close:hover {
    color: #333;
  }
  .modal-container .modal-content-btn {
    position: absolute;
    text-align: center;
    cursor: pointer;
    bottom: 20px;
    right: 30px;
    background: #181818;
    color: #fff;
    width: 50px;
    border-radius: 2px;
    font-size: 14px;
    height: 32px;
    padding-top: 9px;
    font-weight: normal;
    display: none;
  }
  .modal-container .modal-content-btn:hover {
    color: #fff;
    background: #000000;
  }
  
  .modal-content-columns {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 20px 1fr;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    width: 100%;
    max-width: 980px;
    margin: auto;
}

.modal-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
}
.inner-modal-active .jet-popup__close-button {
    z-index: -1 !important;
}

@media (max-width: 767px) {
    .modal-container .modal-close {
        right: 10px;
        top: 10px;
    }
    .modal-content-columns {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
    .modal-content {
        display: block;
    }
    .product [type=checkbox]+label:not(.CSSUI) {
        max-width: 100%;
    }
    .submit-bar {
        display:block;
        height: initial;
        margin: 10px 0 20px;
    }
    .progress-button {
        margin-bottom: 10px;
    }
}

#wpadminbar {
    z-index: 999999999999999;
}


h3.modal-content-product-name {
    font-size: calc(var(--e-global-typography-secondary-font-size) - .5vw);
    font-weight: var(--e-global-typography-secondary-font-weight);
    line-height: var(--e-global-typography-secondary-line-height);
    color: var(--e-global-color-primary);
    margin-top: 0;
    margin-bottom: 0;
}

.modal-content-pre-title {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: -6px;
}

p.modal-content-product-sub-title {
    font-size: 16px;
    font-weight: 600;
    margin-top: -3px !important;
    color: var(--e-global-color-primary);
    margin-bottom: 30px !important;
}

.modal-content-product-description {
    margin: 30px 0 30px!important;
    font-size: 16px;
    margin-top: -3px !important;
    color: var(--e-global-color-primary);
}

h4.modal-content-product-details-heading {
    font-weight: var(--e-global-typography-secondary-font-weight);
    line-height: var(--e-global-typography-secondary-line-height);
    color: var(--e-global-color-primary);
}

ul.modal-content-product-details-list {
    padding: 0 0 0 16px;
    margin: 0;
    list-style: initial;
    font-size: 16px;
    color: var(--e-global-color-primary);
}
ul.modal-content-product-details-list ::marker {
    color: black;
}

.order-me--desc {
    position: absolute;
    top: auto;
    line-height: 1;
    font-size: 12px;
    bottom: -20px;
    left: 0;
    width: 100%;
    display: block;
    font-weight: 400;
    text-transform: none;
}

.quantity-button-desc {
    color: #cccccc;
    font-size: 12px!important;
    font-weight: 400;
    position: absolute;
    top: auto;
    line-height: 1;
    font-size: 12px;
    bottom: -20px;
    left: 0;
    width: 100%;
    display: block;
    text-align: center;
}
@media (max-width: 881px) {
    
.product .product-column--order [type=checkbox]+label:not(.CSSUI),
form.is-invalid .product .product-column--order [type=checkbox]+label:not(.CSSUI) {
    border: 1px solid #181818 !important;
    max-width: 100%;
}
.product .product-column--order [type=checkbox]:checked+label:not(.CSSUI),
form.is-invalid .product .product-column--order [type=checkbox]:checked+label:not(.CSSUI) {
    border: 1px solid #d5392e !important;
}

.product-column.product-column--quantity {
    margin-bottom: 10px;
}

.order-me--desc {
    display: none;
}
}

/* Product detail modal (the plugin printed these per product) */
.modal-container > .CSSUI[type="checkbox"] { display: none; }
.modal-container > .CSSUI.active ~ .modal-backdrop, .modal-container > .CSSUI:checked ~ .modal-backdrop { background-color: rgba(0, 0, 0, .6); width: 100vw; height: 100vh; position: fixed; left: 0; top: 0; z-index: 9; visibility: visible; opacity: 1; transition: opacity .2s ease-in; }
.modal-container > .CSSUI.active ~ .modal-content, .modal-container > .CSSUI:checked ~ .modal-content { opacity: 1; background-color: #fff; max-width: 100%; width: 100%; height: calc(100% - var(--wp-admin--admin-bar--height, 0px)); bottom: 0; padding: 20px; position: fixed; left: 0; top: var(--wp-admin--admin-bar--height, 0px) !important; z-index: 999; pointer-events: auto; cursor: auto; visibility: visible; overflow-y: auto; }

/* Anti-spam honeypot */
.pf-order-form__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

[data-pf-order-form] [name="for-shipping"], [data-pf-order-form] [name="terms"] { width: 12px !important; height: 12px !important; line-height: 12px !important; padding: 0 !important; } [data-pf-order-form] input, [data-pf-order-form] textarea { color: #1a1a1a !important; } .jet-popup__close-button-trigger { margin-top: 30px; } .success-message-inner, .success-message-inner * { text-align: center; } .shop-button a { background: linear-gradient(-45deg, #d5392e, #8d2922, #d5392e, #e44a3f); background-size: 600%; -webkit-animation: anime 6s linear infinite; animation: anime 6s linear infinite; } @-webkit-keyframes anime { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } @keyframes anime { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }

/* Heading/list metrics the old Elementor kit gave the product modal */
[data-pf-order-form] .modal-content-product-name { font-size: 1.8rem; font-weight: 600; line-height: 1.25; }
[data-pf-order-form] .modal-content-product-details-heading { font-size: 1.5rem; font-weight: 600; line-height: 1.25; margin: 8px 0 16px; }
[data-pf-order-form] .modal-content-column :is(ul, .modal-content-product-description) { line-height: 29.124px; }
