@import url('https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&family=Cormorant:ital,wght@0,300..700;1,300..700&family=Manrope:wght@200..800&display=swap');
@font-face {
    font-family: 'Masvol';
    font-style: normal;
    font-weight: 100;
    src: local('Masvol'), url('../fonts/cd-masvol-thin.woff') format('woff');
}

:root {
    --neutral_10: #1B1A18;
    --neutral_20: #363330;
    --neutral_30: #514D48;
    --neutral_40: #6C6660;
    --neutral_50: #878078;
    --neutral_60: #9F9993;
    --neutral_70: #B7B3AE;
    --neutral_80: #CFCCC9;
    --neutral_88: #E2E1DF;
    --neutral_90: #E7E6E4;
    --neutral_94: #F0F0F0;
    --neutral_100: #FFFFFF;
    --skin_tones_lighter: #F3E4D3;
    --skin_tones_0: #EAD1B5;
    --skin_tones_darker: #E2BF98;
    --nature_lighter: #68701F;
    --nature_0: #4A5016;
    --nature_darker: #3B4012;
    --intuition_lighter: #C695DB;
    --intuition_0: #B576D0;
    --intuition_darker: #A558C6;
    --femine_lighter: #FADBDE;
    --femine_0: #F7C9CD;
    --femine_darker: #F2A6AD;
    --energy_lighter: #FFA27A;
    --energy_0: #FF8049;
    --energy_darker: #FF6A29;
    --joy_lighter: #FBE193;
    --joy_0: #FAD66D;
    --joy_darker: #F8C83A;
    --calm_lighter: #B7EAEC;
    --calm_0: #9EE3E5;
    --calm_darker: #7EDADD;
    --error: #FF4848;
}

html, body {
    font-family: 'Ubuntu', sans-serif;
    background: var(--neutral_100);
}

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

html {
    box-sizing: border-box;
}

body {
    margin: 0!important;
}

.lang-switcher {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-right: 15px;
}
.lang-switcher li a {
    text-transform: uppercase;
}
.site-header.header-main.home-header .lang-switcher li.lang-item a {
    text-transform: uppercase;
    color: #fff;
    opacity: 0.5;
}
.site-header.header-main.home-header .lang-switcher li.current-lang a {
    text-transform: uppercase;
    color: #fff;
    opacity: 1;
}
.site-header.header-main.fixed-header .lang-switcher li.lang-item a {
    text-transform: uppercase;
    color: #363330;
    opacity: 0.5;
}
.site-header.header-main.fixed-header .lang-switcher li.current-lang a {
    text-transform: uppercase;
    color: #363330;
    opacity: 1;
}
.site-header.header-main .lang-switcher li.lang-item a {
    text-transform: uppercase;
    color: #363330;
    opacity: 0.5;
}
.site-header.header-main .lang-switcher li.current-lang a {
    text-transform: uppercase;
    color: #363330;
    opacity: 1;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Masvol';
    font-size: 120px;
    font-weight: 100;
    line-height: 138px;
    text-transform: uppercase;
    text-align: left;
    margin: 0;
}

img {
    max-width: 100%;
}

button, input, textarea {
    font-family: 'Manrope', sans-serif;
    font-size: 24px;
    font-weight: 300;
    line-height: 32.78px;
    text-align: left;
    transition: all 0.2s;
    border: none;
}
input, textarea {
    padding: 16px;
    border-bottom: 1px solid #000000;
    background: none;
}
button {
    cursor: pointer;
    transition: all 0.2s;
}

button:disabled {
    pointer-events: none;
    opacity: 0.5;
    cursor: default;
}

a {
    text-decoration: none;
    transition: all 0.2s;
    color: var(--neutral_20);
    border-bottom: 1px solid transparent;
}

a:hover {
    color: var(--neutral_10);
}

p, li {
    font-family: 'Manrope', sans-serif;
}

body {
    font-size: 16px;
    color: var(--neutral_10);
    font-weight: 400;
    letter-spacing: -0.02em;
    padding-top: 100px;
}
.swiper-button-next svg, .swiper-button-prev svg {
    display: none;
}

body.logged-in {
    padding-top: 132px;
}

/* body.logged-in header {
    top: 32px;
} */
body.logged-in .home-page {
    margin-top: -132px;
}
body .home-page {
    margin-top: -100px;
}
body.logged-in .section-about-banner {
    margin-top: -132px;
}
body .section-about-banner {
    margin-top: -100px;
}

.container {
    max-width: 1710px;
    margin: 0 auto;
    width: 100%;
    padding: 0 15px;
}

input {
    outline: none;
    box-shadow: none;
}

.hidden-lg {
    display: none;
    visibility: hidden;
}
.hidden-button {
    display: none;
    visibility: hidden;
}
.form-group {
    width: 100%;
    margin-bottom: 36px;
    position: relative;
}
.form-group .error-message {
    position: absolute;
    left: 0;
    bottom: -20px;
    font-family: 'Manrope', sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 17.76px;
    color: var(--error);
}
.form-group input, .form-group textarea {
    width: 100%;
}
.custom-rating-stars {
    display: inline-flex;
    font-size: 50px;
    color: #FAD66D; /* Золотой цвет */
}

.custom-rating-stars .star {
    margin-right: 2px;
}

.custom-rating-stars .star.empty {
    color: #ccc;
}

.custom-rating-stars .star.half::before {
    content: '★';
    color: #FAD66D;
    position: absolute;
    overflow: hidden;
    width: 50%;
}
.btn {
    font-size: 16px;
    font-weight: 300;
    line-height: 18.38px;
    text-align: left;
    outline: none;
    box-shadow: none;
    padding: 9px 20px;
    border-radius: 200px;
    color: var(--neutral_20);
    border: 1px solid transparent;
    display: flex;
    text-transform: uppercase;
}
.btn-white {
    background: var(--neutral_90);
}
.btn-border {
    background: transparent;
    border: 1px solid var(--neutral_100);
    color: var(--neutral_100);
}
.btn-border-black {
    background: transparent;
    border: 1px solid var(--neutral_30);
    color: var(--neutral_30);
}
.btn-border-black svg {
    margin-right: 8px;
}
.majc-cart-action-btn-wrap .majc-button {
    background: transparent;
    border: 1px solid var(--neutral_10);
    font-size: 16px;
    font-weight: 300;
    line-height: 18.38px;
    text-align: center;
    outline: none;
    box-shadow: none;
    padding: 9px 20px;
    border-radius: 200px;
    color: var(--neutral_20);
    text-transform: uppercase!important;
    margin: 0;
}
.btn-orange {
    background: var(--energy_0);
    color: var(--neutral_100);
}
.btn-purple {
    background: var(--intuition_0);
    color: var(--neutral_100);
}
.btn-skin-tones {
    background: var(--skin_tones_0);
    color: var(--neutral_100);
}
.btn-white:hover {
    background: var(--neutral_94);
}
.btn-border:hover {
    background: transparent;
    color: var(--neutral_100);
    border-color: var(--skin_tones_0);
    text-decoration: underline;
}
.btn-border-black:hover {
    text-decoration: underline;
}
.btn-white:active {
    background: var(--neutral_88);
}
.btn-orange:hover {
    background: var(--energy_lighter);
    color: var(--neutral_100);
}
.btn-purple:hover {
    background: var(--intuition_lighter);
    color: var(--neutral_100);
}
.btn-skin-tones:hover {
    background: var(--skin_tones_lighter);
    color: var(--neutral_100);
}
.btn-orange:active {
    background: var(--energy_darker);
}
.btn-purple:active {
    background: var(--intuition_darker);
}
.btn-skin-tones:active {
    background: var(--skin_tones_darker);
}
.circle-btn {
    width: 41px;
    height: 41px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    background: var(--neutral_90);
}
.circle-btn:hover {
    background: var(--neutral_94);
}
.circle-btn:active {
    background: var(--neutral_88);
}
.styled-letter {
    position: relative;
}
.styled-letter:after {
    content: '';
    position: absolute;
    left: 50%;
    top: 46%;
    transform: translateY(-50%) translateX(-50%);
    width: 70%;
    height: 80%;
    background: url("../../assets/images/global/styled-letter.svg") no-repeat center center;
    background-size: contain;
}

/**

Search

 */

.section-search-wrapper__head_title {
    font-family: 'Manrope', sans-serif;
    font-size: 28px;
    font-weight: 500;
    line-height: 38.25px;
    text-align: left;
    margin-bottom: 28px;
}
.woocommerce-product-search {
    margin-bottom: 120px;
}
.woocommerce-product-search input[type="search"] {
    width: 100%;
    max-width: 675px;
}
.woocommerce-product-search input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    display: none;
}
.section-other-shop-item__head h2 {
    font-size: 56px;
    line-height: 64.4px;
    text-align: left;
    margin-bottom: 44px;
}
.section-other-shop-item {
    margin-bottom: 200px;
    padding-bottom: 60px;
    overflow: hidden;
}
.section-other-shop-item .swiper-container {
    position: relative;
    overflow: hidden;
    padding-bottom: 30px;
}
.section-other-shop-item .swiper-scrollbar {
    bottom: 0;
    height: 1px;
    width: 100%;
    left: 0;
}
.section-other-shop-item .swiper-scrollbar .swiper-scrollbar-drag {
    background: var(--neutral_20);
    height: 5px;
    margin-top: -4px;
}

/**

Product card

 */

.product__image-wrapper {
    width: 100%;
    height: 468px;
    display: block;
    margin-bottom: 24px;
    position: relative;
}
/*.product .add_to_cart_button {*/
/*    display: none;*/
/*    visibility: hidden;*/
/*}*/
.custom-product {
    position: relative;
}
.custom-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {
    position: absolute;
    right: 16px;
    top: 16px;
    z-index: 16;
    margin-top: 0;
    width: 41px;
    height: 41px;
    border-radius: 100%;
    background: var(--neutral_90);
}
.custom-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart:before {
    font-size: 25px;
}
.custom-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before {
    margin-top: -12px;
    margin-left: -12px;
}
.custom-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.tinvwl-product-in-list:before {
    color: var(--energy_0);
}
.product__image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.product__tag {
    margin-bottom: 8px;
    font-family: 'Ubuntu', sans-serif;
    font-size: 18px;
    font-weight: 300;
    line-height: 20.68px;
    text-align: left;
    color: var(--neutral_60);
    text-transform: uppercase;
}
.product__title {
    font-family: 'Masvol', sans-serif;
    font-size: 36px;
    line-height: 41.4px;
    text-align: left;
    max-height: 82px;
    overflow: hidden;
    text-transform: uppercase;
    display: block;
    margin-bottom: 24px;
}
.product:hover .product__title {
    color: var(--nature_0);
}
.product__price {
    font-family: 'Ubuntu', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 27.58px;
    text-align: left;
    color: var(--neutral_10);
}
.custom-add-to-cart-button {
    position: absolute!important;
    right: 16px;
    top: 411px;
    width: 41px!important;
    height: 41px!important;
    border-radius: 100%!important;
    background: var(--skin_tones_0)!important;
    display: flex!important;
    align-items: center!important;
    justify-content: center!important;
    opacity: 0;
    transition: all 0.6s;
    padding: 0!important;
}
.custom-add-to-cart-button.added svg {
    display: none;
}
.custom-add-to-cart-button.loading svg {
    display: none;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.added::after {
    margin-left: 0;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.loading::after {
    top: auto;
    right: auto;
}
.majc-toggle-open-btn {
    display: none!important;
    opacity: 0;
    visibility: hidden;
}
.majc-layout-slidein.majc-position-right .majc-cart-popup:not(.majc-cartpop-animation-enabled) {
    transition: all 0.6s;
}
.majc-layout-slidein .majc-cart-popup {
    padding: 80px 120px 80px 40px;
}
.majc-header h2 {
    font-family: 'Masvol', sans-serif;
    font-size: 56px;
    line-height: 64.4px;
    text-align: left;
    text-transform: uppercase!important;
    padding: 0;
    border-bottom: 0;
}
.majc-header .majc-cart-close {
    position: relative;
    background: none;
    right: 0;
    top: 0;
}
.majc-header .majc-cart-close:before {
    color: var(--neutral_10);
}
.majc-header .majc-sub-header {
    display: none;
}
.majc-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 25px;
}
.majc-body {
    margin: 0;
}
.majc-cartitem-list .majc-cart-items-inner .majc-item-img {
    width: 200px;
    height: 183px;
    flex: none;
}
.majc-item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.majc-cartitem-list .majc-cart-items-inner .majc-item-desc {
    padding: 16px;
    position: relative;
}
.majc-item-qty {
    position: absolute;
    right: 16px;
    bottom: 16px;
    background: var(--neutral_94);
    border-radius: 30px;
    overflow: hidden;
    padding: 12px;
}
.majc-item-qty .majc-qty[type=number] {
    font-family: 'Ubuntu', sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 20.56px;
    text-align: center;
}
.majc-item-qty .majc-qty-minus, .majc-item-qty .majc-qty-plus, .majc-item-qty .majc-qty {
    height: 24px;
    width: 24px;
    background: none!important;
    color: var(--neutral_10)!important;
}
.majc-cart-items-inner .majc-item-price {
    position: absolute;
    left: 16px;
    bottom: 16px;
    font-family: 'Ubuntu', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 27.58px;
    text-align: left;

}
.majc-cart-items-inner .majc-item-remove {
    right: 16px;
    top: 16px;
}
.icon_trash_alt:before {
    width: 24px;
    height: 24px;
    content: '';
    background: url("../../assets/images/global/delete.svg") no-repeat center center;
    display: block;
}
/*.majc-coupon {*/
/*    display: none;*/
/*}*/
#majc-main-wrapper-189 .majc-cart-items-inner .majc-item-name {
    font-family: 'Masvol', sans-serif;
    font-size: 32px;
    font-weight: normal;
    line-height: 36.8px;
    text-align: left;
    text-transform: uppercase!important;
}
.woocommerce a.added_to_cart {
    display: none;
}
.custom-button-icon {
    display: flex;
}
.custom-product:hover .custom-add-to-cart-button {
    opacity: 1;
}
.section-product-list {
    margin-bottom: 210px;
}
.section-product-list__wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 29px;
}
.product__thumbnail.absolute-image {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    transition: all 0.6s;
}
.custom-product:hover .product__thumbnail.absolute-image {
    opacity: 1;
}

.custom-wishlist-message {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background-color: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 15px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    z-index: 9999;
    max-width: 500px;
    width: 100%;
}

.custom-wishlist-message .wishlist-message-image img {
    max-width: 50px;
    max-height: 50px;
    margin-right: 15px;
}

.custom-wishlist-message .wishlist-message-content {
    flex-grow: 1;
}

.custom-wishlist-message .wishlist-link {
    color: #fff;
    text-decoration: underline;
    margin-top: 10px;
    display: inline-block;
}

/* Для сообщения об удалении товара из избранного */
.custom-wishlist-message.removed {
    background-color: rgba(255, 0, 0, 0.8); /* Красный фон для удаления */
}
.wpfLiLabel {
    position: relative;
}
.filter-popup .wpfFilterWrapper#wpfBlock_1 .wpfCheckbox label {
    width: 36px!important;
    height: 15px!important;
}
.filter-popup .wpfFilterWrapper#wpfBlock_1 .wpfFilterVerScroll li label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: row-reverse;
}
.filter-popup .wpfFilterWrapper#wpfBlock_1 .wpfFilterVerScroll li .wpfLiLabel {
    padding: 10px 0;
}
.filter-popup .wpfFilterWrapper#wpfBlock_1 .wpfValue{
    padding-left: 0!important;
}
.filter-popup .wpfFilterWrapper#wpfBlock_1 .wpfFilterTaxNameWrapper {
    padding-left: 0!important;
}
.wpfMainWrapper {
    font-family: 'Ubuntu', sans-serif!important;
    text-transform: uppercase;
}
.filter-popup .wpfFilterWrapper#wpfBlock_1 .wpfCheckbox label::before {
    background: var(--neutral_90)!important;
    border-radius: 20px;
    border: none!important;
}
.filter-popup .wpfFilterWrapper#wpfBlock_1 .wpfCheckbox label::after {
    content: ''!important;
    position: absolute!important;
    left: 0!important;
    top: 7px !important;
    width: 25px !important;
    height: 25px !important;
    border-radius: 100%!important;
    border: 1px solid #CFCCC9;
    background: var(--neutral_100);
    transition: all 0.2s;
}
.wpfFilterVerScroll {
    overflow: visible!important;
}
.filter-popup .wpfFilterWrapper#wpfBlock_1 .wpfCheckbox input[type="checkbox"]:checked + label::after {
    left: 100%!important;
    background: var(--neutral_20)!important;
}

.filter-popup .wpfFilterWrapper .wfpTitle {
    font-weight: 300;
    font-size: 18px;
    line-height: 20.68px;
    letter-spacing: 0%;
    color: var(--neutral_20);
}
.wpfCheckboxHier {
    margin-top: 15px;
}
.filter-popup .fa-plus:before {
    content: '';
    width: 20px;
    height: 20px;
    background: url("../images/f_arrow.svg") no-repeat center center;
}
.filter-popup .fa-minus:before {
    content: '';
    width: 20px;
    height: 20px;
    background: url("../images/f_arrow.svg") no-repeat center center;
    transform: rotate(180deg);
}
.wpfFilterWrapper .wpfCheckbox label::before, .wpfFilterWrapper .wpfCheckbox label::after {
    transition: all 0.3s;
}
.wpfFilterWrapper .wpfCheckbox label::before {
    border-radius: 2px;
}
.filter-popup .wpfFilterWrapper .wpfCheckbox input[type="checkbox"]:checked + label::before {
    background: var(--energy_0)!important;
    border-color: var(--energy_0)!important;
}
@media screen and (max-width: 1900px) {
    .container {
        max-width: 1280px;
    }
}
.custom-checkout-terms .checkbox:first-child {
	display: none;
}

/* Стили для формы */


.error-message {
    color: #dc3545;
    font-size: 12px;
    margin-top: 5px;
    display: none;
}

.success-message {
    background: #d4edda;
    color: #155724;
    font-size: 14px!important;
    line-height: 14px!important;
    padding: 15px 0;
    border-radius: 4px;
    margin-top: 15px;
    text-align: center;
}

.loading-spinner {
    animation: spin 1s linear infinite;
    margin: 0!important;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.form-info {
    font-size: 12px;
    color: #666;
    margin: 10px 0;
    line-height: 1.4;
}

.custom-popup .form-group {
    margin: 0!important;
    display: block;
}
.custom-popup__modal form label {
    display: block;
}

.custom-popup .btn:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}