span.wpcf7-spinner {
    position: absolute;
    top: calc(50% - 12px);
    left: calc(50% - 48px);
}

form input,
form textarea {
    font-size: 14px;
    color: var(--gray);
    background-color: var(--light);
    border: 1px solid var(--light) !important;
    border: none;
    padding: 10px 14px;
    border-radius: 6px;
    width: 100%;
}

form input::placeholder,
form textarea::placeholder {
    font-size: 14px;
    color: rgba(51, 51, 51, 0.5);
}

form input:focus,
form textarea:focus {
    outline: none;
    border: 1px solid var(--red) !important;
    box-shadow: 0 0 0 2px rgba(255, 156, 156, 0.3);
}

form.init input[type="submit"] {
    display: block !important;
    width: 100% !important;
    margin-top: 24px;
    background-color: var(--red) !important;
    color: white;
    font-size: 14px !important;
    font-weight: 300 !important;
    padding: 12px 20px !important;
    border-radius: 4px !important;
    border: none !important;
    cursor: pointer !important;
}

form.init input[type="submit"]:hover {
    filter: brightness(0.95);
}

form.init input[type="submit"]:focus {
    box-shadow: 0 0 0 2px rgba(255, 156, 156, 0.3);
}

form.init input[type="submit"]:active {
    filter: brightness(0.85);
}

input.wpcf7-form-control.wpcf7-submit.has-spinner {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
}

.confidentiality,
.tnp-field.tnp-privacy-field label a {
    display: block;
    font-size: 14px;
    text-decoration: underline !important;
    color: var(--red);
    text-align: center;
}

.form-check-label span {
    margin-left: 32px;
}

.confidentiality:hover,
.tnp-field.tnp-privacy-field label a:hover,
.form-check-label span:hover {
    opacity: 0.8;
}

.wpcf7-list-item,
.tnp-subscription label,
.form-check-label {
    display: inline-block;
    margin: 0;
}

.wpcf7 .wpcf7-list-item,
.tnp-subscription label,
.form-check-label {
    display: block;
    margin-bottom: 10px;
}

.wpcf7-checkbox label,
.tnp-subscription label,
.form-check-label {
    position: relative;
    cursor: pointer;
}

.wpcf7-checkbox input[type=checkbox],
.tnp-subscription label input[type=checkbox],
.form-check-label input[type=checkbox] {
    position: relative;
    position: absolute;
    visibility: hidden;
    width: 20px;
    height: 20px;
    top: 0;
    left: 0;
}

.wpcf7-checkbox input[type=checkbox]+span:before,
.tnp-subscription label input[type=checkbox]+a:before,
.form-check-label input[type=checkbox]+span:before {
    display: block;
    position: absolute;
    content: '';
    border-radius: 0;
    height: 20px;
    width: 20px;
    top: 4px;
    left: 0;
    background: var(--orange) !important;
    border-radius: 4px;
}

.wpcf7-checkbox input[type=checkbox]+span:after,
.tnp-subscription label input[type=checkbox]+a:after,
.form-check-label input[type=checkbox]+span:after {
    display: block;
    position: absolute;
    content: "\2713";
    height: 20px;
    width: 20px;
    top: 4px;
    left: 0;
    opacity: 0;
    font-size: 12px;
    font-weight: 800;
    text-align: center;
    line-height: 20px;
    color: white;
    transition: .2s;
}

.tnp-subscription label input[type=checkbox]+a:before,
.tnp-subscription label input[type=checkbox]+a:after {
    margin-top: -2px;
}

.form-check-label input[type=checkbox]+span:before,
.form-check-label input[type=checkbox]+span:after {
    margin-top: -4px;
}

.wpfMainWrapper {
    position: sticky !important;
    top: 100px;
}

.wpcf7-checkbox input[type=checkbox]:checked+span:after,
.tnp-subscription label input[type=checkbox]:checked+a:after,
.form-check-label input[type=checkbox]:checked+span:after {
    opacity: 1;
}

.wpcf7-list-item-label {
    margin-left: 30px;
    display: inline-block;
    font-size: 14px;
    line-height: 130%;
    color: var(--gray);
}

.wpfPriceInputs {
    margin-top: 0 !important;
}

.wfpTitle {
    color: black;
    font-size: 14px;
    font-weight: 300;
    line-height: 140%;
    text-align: left;
    margin-bottom: 6px;
}

.wpfFilterWrapper {
    margin-top: 0 !important;
    padding: 0 !important;
}

.wpfFilterWrapper select,
.wpfFilterWrapper input {
    background-color: var(--light);
    color: #828282;
    padding: 8px 15px;
    border: 1px solid var(--light);
    outline: none !important;
    border-radius: 6px;
}

.wpfPriceInputs input {
    background-color: var(--light) !important;
    color: #828282 !important;
    padding: 8px 15px !important;
    border: 1px solid var(--light) !important;
    outline: none !important;
    border-radius: 6px !important;
}

select,
table.variations tbody tr td select {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    -moz-appearance: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    background-color: var(--light) !important;
    color: #828282 !important;
    padding: 8px 15px !important;
    border: 1px solid var(--light) !important;
    outline: none !important;
    border-radius: 6px !important;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23000000%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E") !important;
    background-repeat: no-repeat, repeat !important;
    background-position: right 0.7em top 50%, 0 0 !important;
    background-size: 0.65em auto, 100% !important;
}

table.variations tbody tr td select {
    min-width: 0 !important;
    width: 100%;
}

.wpfFilterWrapper input {
    min-width: calc(50% - 5px) !important;
    text-align: center;
}

.wpfFilterWrapper input:focus,
.wpfFilterWrapper textarea:focus,
.wpfFilterWrapper select:focus,
table.variations tbody tr td select:focus {
    outline: none;
    border: 1px solid var(--red) !important;
    box-shadow: 0 0 0 2px rgba(255, 156, 156, 0.3) !important;
}

ul.wpfFilterVerScroll {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.wpfLiLabel {
    display: flex;
    align-items: center;
    gap: 10px;
    /* Расстояние между чекбоксом и текстом */
    cursor: pointer;
    /* Указатель мыши для всей строки */
}

.wpfCheckbox {
    position: relative;
    display: inline-block;
    width: 18px;
    /* Размер чекбокса */
    height: 18px;
}

.wpfCheckbox input[type="checkbox"] {
    opacity: 0;
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    cursor: pointer;
    /* Указатель мыши для чекбокса */
}

.wpfCheckbox input[type="checkbox"]:checked+label::after {
    content: '\2713';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-size: 10px;
    font-weight: 600;
}

.wpfCheckbox input[type=checkbox]:checked+label:before {
    background-color: #f2994a;
    border-color: #f2994a;
}

.wpfCheckbox label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: transparent;
    transition: background-color 0.3s ease;
    border-radius: 3px;
    background-color: transparent;
    border: 1.5px solid rgb(130, 130, 130);
}

.wpfValue span {
    color: var(--gray) !important;
    font-family: 'Manrope', sans-serif !important;
    font-size: 14px !important;
    font-weight: 300;
    line-height: 140%;
    text-align: left;
    margin-left: 4px;
}

.rudr-variation-radios input[type="radio"] {
    display: none;
}

/* Стилизуем label как кнопки */
.rudr-variation-radios label {
    display: inline-block;
    padding: 6px 12px;
    background-color: var(--light);
    border: none;
    border-radius: 4px;
    cursor: pointer;
    color: var(--gray);
    font-family: 'Cormorant SC', serif;
    font-size: 18px;
    line-height: 120%;
}

.pa_colorrrr4 label,
.pa_kammm4 label {
    display: block;
    height: 44px;
    width: 44px;
    border-radius: 50% !important;
    padding: 4px !important;
}

.pa_colorrrr4 label img,
.pa_kammm4 label img {
    border-radius: 50% !important;
}

/* Стиль для активной кнопки (выбранной радио-кнопки) */
.rudr-variation-radios input[type="radio"]:checked+label {
    background-color: var(--gold);
    color: #fff;
    position: relative;
}

.rudr-variation-radios.pa_colorrrr4 input[type="radio"]:checked+label::before,
.rudr-variation-radios.pa_kammm4 input[type="radio"]:checked+label::before {
    content: '';
    position: absolute;
    border: 1px solid var(--gold);
    top: -4px;
    left: -4px;
    bottom: -4px;
    right: -4px;
    opacity: 0;
    border-radius: 50%;
    animation: pulse 2s linear infinite;
    animation-delay: .25s;
    z-index: -1;
}

.rudr-variation-radios.pa_colorrrr4 input[type="radio"]:checked+label::after,
.rudr-variation-radios.pa_kammm4 input[type="radio"]:checked+label::after {
    content: '';
    position: absolute;
    top: -4px;
    left: -4px;
    bottom: -4px;
    right: -4px;
    background-color: rgb(255 206 147 / 70%);
    opacity: 0;
    border-radius: 50%;
    animation: scale 2s linear infinite;
    z-index: -1;
}

@keyframes pulse {
    0% {
        transform: scale(0.5);
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    100% {
        transform: scale(1.1);
        opacity: 0;
    }
}

@keyframes scale {
    0% {
        transform: scale(0.5);
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    100% {
        transform: scale(1.2);
        opacity: 0;
    }
}

.rudr-variation-radios.pa_ring_size input[type="radio"]:checked+label {
    background-color: var(--red);
    color: #fff;
}

/* Наведение на кнопку */
.rudr-variation-radios label:hover {
    opacity: 0.8;
}

.rudr-variation-radios label:focus {
    box-shadow: 0 0 0 2px rgba(255, 156, 156, 0.3) !important;
}

.rudr-variation-radios label:active {
    opacity: 0.7;
}

.woocommerce-checkout input[type=checkbox],
.woocommerce-checkout input[type=radio] {
    padding: 0 !important;
    outline: none !important;
}

.wc-block-components-radio-control .wc-block-components-radio-control__input:checked:before {
    background: var(--orange) !important;
}

.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:before {
    background: var(--orange);
    position: relative;
    display: block;
    height: 100%;
}

.wc-block-components-checkbox .wc-block-components-checkbox__mark {
    fill: white !important;
    stroke: white;
    stroke-width: 2px;
}

.woocommerce-order-details h3,
.woocommerce-customer-details h3 {
    font-family: 'Cormorant SC', serif;
}

.woocommerce-order-details a {
    color: var(--gray);
    font-weight: 700;
}

.woocommerce-order-details a:hover {
    color: var(--orange);
}

input#dgwt-wcas-search-input-1::placeholder {
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 140%;
}

.home input#dgwt-wcas-search-input-1::placeholder {
    color: white;
}

input#dgwt-wcas-search-input-1 {
    padding: 7px 16px !important;
    border-radius: 8px;
    background-color: transparent;
    border-color: #828282 !important;
    color: #828282 !important;
    transition: .2s;
}

input#dgwt-wcas-search-input-1:focus {
    background-color: white;
    border-color: var(--red) !important;
}

.dgwt-wcas-sf-wrapp {
    padding: 0 !important;
    background-color: transparent !important;
}

.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit {
    top: 3px !important;
    right: 16px !important;
    left: auto;
}

.dgwt-wcas-preloader {
    margin-right: 22px !important;
}

.dgwt-wcas-search-wrapp .dgwt-wcas-ico-magnifier,
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit svg path,
.dgwt-wcas-om-bar .dgwt-wcas-om-return svg path {
    fill: #BDBDBD !important;
}

.codedropz-upload-inner h3 {
    font-size: 14px;
    max-width: 75%;
    margin: auto;
    line-height: 185%;
}

.codedropz-upload-inner span {
    display: none;
}

.codedropz-upload-handler {
    border-color: var(--gold);
    transition: 0.2s !important;
    -webkit-transition: all 0.2s !important;
    -moz-transition: all 0.2s ease-in-out !important;
    -o-transition: all 0.2s ease-in-out !important;
}

.codedropz-upload-handler:hover{
    border-color: var(--orange);
}

.codedropz-upload-container {
    background: rgb(255 206 147 / 25%);
    transition: 0.2s !important;
    -webkit-transition: all 0.2s !important;
    -moz-transition: all 0.2s ease-in-out !important;
    -o-transition: all 0.2s ease-in-out !important;
}

.codedropz-upload-handler:hover .codedropz-upload-container {
    background: rgb(255 206 147 / 35%);
}

a.cd-upload-btn {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
}

span.wpcf7-list-item.first.last {
    text-align: center;
}

.grecaptcha-badge {
    z-index: 2;
}