/* Footer */
.developer a {
    opacity: 0.4;
    font-size: 10px;
    text-transform: uppercase;
    transition: opacity 0.3s ease;
}

.developer a:hover {
    opacity: 1;
}

.social svg {
    vertical-align: baseline;
}

.social a {
    width: 28px;
    height: 28px;
    display: inline-block;
    transition: all 0.3s ease;
    color: rgba(255, 255, 255, .7) !important;
}

.social a:hover {
    color: white !important;
}

.footer-menu {
    text-transform: uppercase;
}

.footer-menu a {
    font-size: 12px;
}

.footer .company-name {
    font-size: 16px;
}

@media (max-width: 639px) {
    .footer-menu div.uk-grid-margin {
        margin-top: 0;
    }
}

.copyright {
    font-size: 10px;
    text-transform: uppercase;
}

/* New tags styling */
.tags-container .el-title {
    font-size: 14px;
    text-transform: uppercase;
    transition: all 0.3s ease;
    font-weight: 500;
}

.tags-container .el-item > a {
    padding: 12px 20px;
}

@media (max-width: 639px) {
    .tags-container .el-item > a {
        padding: 6px 10px;
    }

    .tags-container .el-title {
        font-size: 12px;
    }
}

.tags-container-heroes .el-item > a {
    border: 1px solid #e2e2e2;
}

.tags-container.tags-container-heroes .el-content {
    background: #eee;
    color: #646970;
}

.tags-container.tags-container-anime .el-content {
    background: #595a5a;
    color: #a1a1a1;
}

.tags-container.tags-container-anime a:hover .el-title {
    color: white;
}

.tags-container.tags-container-anime .el-title:first-letter {
    color: white;
}

.tags-container.tags-container-heroes .el-title:first-letter {
    color: #CC0908;
}

/* Language switcher styles */
.wpml-ls-legacy-list-horizontal {
    padding: 0;
}

.wpml-ls-legacy-list-horizontal .wpml-ls-link {
    padding: 0;
}

.wpml-ls-legacy-list-horizontal ul {
    display: flex;
    gap: 10px;
}

.wpml-ls-flag {
    border: 1px solid grey;
}

/* Currency switcher styles */
.widget_currency_sel_widget {
    max-width: 90px;
    font-size: 14px;
}

.tm-header-mobile .widget_currency_sel_widget {
    max-width: 48px;
}

.mobile-menu .wcml_currency_switcher a,
.widget_currency_sel_widget a {
    color: #a1a1a1;
}

.mobile-menu .wcml_currency_switcher li:hover,
.wcml-dropdown-click li:hover {
    background: transparent;
}

.mobile-menu .wcml_currency_switcher li:hover a,
.widget_currency_sel_widget li:hover a {
    color: black;
}

.mobile-menu .wcml_currency_switcher {
    width: 298px;
    margin: auto;
}

/* Desktop Menu */
.menu-item {
    text-transform: uppercase;
}

.uk-nav-default,
.uk-navbar-item, .uk-navbar-nav > li > a, .uk-navbar-toggle,
.uk-navbar-subtitle {
    font-size: 14px !important;
}

@media (max-width: 959px) {
    .uk-nav-default,
    .uk-navbar-item, .uk-navbar-nav > li > a, .uk-navbar-toggle,
    .uk-navbar-subtitle {
        font-size: 12px !important;
    }
}

.uk-navbar-item,
.uk-navbar-nav > li > a,
.uk-navbar-nav > li:not(.uk-active):not(:hover) > a:not([aria-expanded=true]):not(:active) .uk-navbar-subtitle {
    color: black !important;
    position: relative;
}

.uk-navbar-dropdown {
    text-transform: uppercase;
}

.uk-navbar-nav > li > a span[data-cart-badge] {
    position: absolute;
    top: 32px;
    right: -8px;
}

.uk-navbar-dropdown .categories .uk-link-toggle:hover .uk-link-heading {
    color: #CC0908;
}

/* Desktop header navbar styles */
.uk-navbar-nav,
.uk-navbar-left {
    gap: clamp(15px, 2vw, 48px) !important;
}

.uk-navbar .uk-logo {
    max-width: clamp(68px, 10vw, 120px);
}

@media (max-width: 359px) {
    .uk-navbar .uk-logo {
        max-width: 52px;
    }

    .uk-navbar-right {
        gap: 7px !important;
    }
}

.tm-header .uk-navbar-nav {
    display: grid !important;
    grid-template-columns: auto auto auto 1fr auto auto;
}

.tm-header .uk-navbar-nav > li:nth-child(4) {
    justify-self: end;
}

/* Offcanvas mobile menu text */
#tm-dialog-mobile {
    text-transform: uppercase;
}

#mobile-bottom-block ul > li:last-child {
    margin-top: 20px;
}

.uk-navbar-container.uk-navbar-sticky .uk-navbar .uk-logo {
    max-width: clamp(68px, 10vw, 84px);
}

.mobile-menu .el-link, .mobile-menu .uk-heading-line {
    font-size: clamp(14px, 2.5vw, 17px);
}

.shop-info {
    list-style-type: '☑︎ ' !important;
}

.soft-background {
    background: #e8e8ea !important;
}

.main-column .uk-slideshow-items .el-item .el-overlay .el-title {
    font-size: clamp(24px, 6vw, 36px);
    text-transform: uppercase;
    text-align: center;
}

.main-column .uk-slideshow-items .el-item .el-overlay .el-meta {
    font-size: clamp(12px, 3.8vw, 18px);
    text-transform: uppercase;
    text-align: center;
}

.main-column .uk-slideshow-items .el-item .el-overlay {
    width: 100%;
}

@media (min-width: 960px) {
    .main-column .uk-slideshow-items .el-item > .uk-position-cover:nth-child(2) {
        display: none;
    }
}

.slideshow-section .uk-slideshow-items .el-item {
    background: #e8e8ea;
}

.slideshow-section .uk-slideshow-items [uk-cover]:where(img,video) {
    object-position: top center;
    top: 90px;
}

.slideshow-section .uk-slideshow-items .el-item > .uk-position-cover:nth-child(2) {
    bottom: 90px;
}


@media (max-width: 639px) {
    .slideshow-section .uk-slideshow-items [uk-cover]:where(img,video) {
        top: 65px;
    }

    .slideshow-section .uk-slideshow-items .el-item > .uk-position-cover:nth-child(2) {
        bottom: 65px;
    }
}

/* Panel text block */
.mirror-section .mirror .uk-card,
.slider-section .uk-slider-container .el-item > div {
    width: 100%;
    bottom: calc(100lvh - 100svh); /* Fix for mobile browsers */
}

/*
Fix for preview mode in mobile phones, i.e. Telegram or Instagram in-app browser.
In this mode the viewport related units do not work properly and lead to height jumping issues.
*/
body.in-app-preview .mirror-section .mirror .uk-card,
body.in-app-preview .slider-section .uk-slider-container .el-item > div {
    bottom: 0;
}

body.in-app-preview .slider-section {
    min-height: unset !important;
    height: 100% !important;
}

body.in-app-preview .uk-slider-items.uk-grid {
    height: 100% !important;
}

.mirror-section .mirror .uk-card,
.slider-section .uk-slider-container .el-item .uk-overlay {
    text-transform: uppercase;
}

@media (max-width: 639px) {
    .mirror-section .mirror .uk-card,
    .slider-section .uk-slider-container .el-item .uk-overlay {
        padding: 12px 80px 12px 12px;
    }
}

.slider-section .uk-slider-container img {
    object-fit: contain;
    height: 100%;
    width: auto;
}

@media (orientation: portrait) {
    .slider-section .uk-slider-container img {
        object-fit: cover;
    }
}

@media (min-width: 960px) {
    .slider-section .uk-slider-container img {
        /* Align image to the right */
        margin-left: auto;
    }

    /* Hide text block on desktop */
    .mirror .uk-card,
    .slider-section .uk-slider-container .el-item > div {
        display: none;
    }
}

@media (max-width: 959px) {
    .slider-section .uk-slider-container img {
        /* Center image */
        margin: auto;
    }

    /* Show slider on the left instead of right */
    .slider-section .uk-slider-container > div > .uk-position-center-right.uk-dark {
        left: 20px;
        right: auto;
    }

    /* Position navigation arrows 80px from the top */
    .slider-section .uk-slidenav-container {
        top: 80px;
        bottom: auto;
    }
}

.home-title {
    font-size: clamp(38px, 6vw, 80px);
    text-transform: uppercase;
    font-weight: bold;
}

.home-pretitle {
    font-size: clamp(24px, 3vw, 50px);
}

/* Hide hero info section on mobile */
@media (max-width: 959px) {
    .info-column {
        display: none !important;
    }
}

/* Mirror section styles */
.mirror {
    display: flex;
    flex-direction: column;
    height: 100vh;
    justify-content: end;
    overflow: hidden;
}

.mirror .walitoff-image-comparison-after-label {
    color: #e91e63;
}

.mirror .walitoff-image-comparison-before-label {
    color: #2196f3;
}

.mirror .el-title {
    color: white !important;
}

.go-down a {
    animation: bouncing 0.7s ease-in-out infinite alternate;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

/* Make vertical bounce animation */
@keyframes bouncing {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-10px);
    }
}

.uk-navbar-container.uk-navbar-sticky {
    border-bottom: 1px solid #9e9e9e52;
}

.uk-offcanvas-bar {
    border-left: 1px solid #9e9e9e57;
}

/* Show number input arrows in browser, not only on hover */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    opacity: 1;
}

/* Change WooCommerce product gallery zoom trigger button to magnifying glass with plus */
.tm-page .woocommerce-product-gallery__trigger {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 50%;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    padding: 5px;
}

.tm-page .woocommerce-product-gallery__trigger:hover {
    background: rgba(255, 255, 255, 1);
    transform: scale(1.1);
}

.tm-page .woocommerce-product-gallery__trigger::before {
    content: '';
    width: 48px;
    height: 48px;
    background-image: url('/wp-content/themes/yootheme-walitoff/images/magnify-plus.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    position: static;
    color: inherit;
    visibility: visible;
    border: none;
}

.tm-page .woocommerce-product-gallery__trigger::after {
    display: none;
}

/* Image hover effect for WooCommerce product slider */
.categories div.el-item > a:hover img,
.product-collections div.el-item > a:hover img,
.products-grid div.el-item > a:hover img,
.products-slider div.el-item > a:hover img {
    filter: brightness(1.1);
}

.time-info {
    font-size: 14px;
    color: black;
}

.care-instructions li,
.time-info li {
    display: flex;
    gap: 10px;
    align-items: center;
}

.care-instructions li img {
    width: 32px;
    height: 32px;
}

.care-instructions .label {
    font-size: 20px;
    margin-top: 20px;
    color: black;
}

.size-info .uk-description-list {
    display: grid;
    grid-template-columns: 40px auto;
}

.size-info .uk-description-list > dt {
    margin-top: 0 !important;
}

.materials table th, .materials table td,
.size-info table th, .size-info table td {
    text-align: center;
}

.widgethelptext {
    display: none !important;
}

#widgethelp_uniquecssid {
    z-index: 9998 !important;
}

/* Cookie consent notification styles */
#cookie-consent-notification {
    position: fixed;
    bottom: 20px;
    left: 50%;
    padding: 15px 20px;
    border-radius: 5px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    z-index: 9999;
    max-width: min(600px, calc(100% - 240px));
    width: auto;
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 14px;
    line-height: 1.4;
    opacity: 0;
    transform: translateX(-50%) translateY(20px);
    transition: all 0.3s ease-out;
    border: 1px solid #424242;
}

@media (min-width: 769px) {
    #cookie-consent-notification {
        max-width: calc(100% - 160px);
    }
}

#cookie-consent-notification.show {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

#cookie-consent-notification .message {
    flex: 1;
}

@media (max-width: 768px) {
    #cookie-consent-notification {
        bottom: 0;
        left: 0;
        right: 0;
        transform: none;
        max-width: none;
        flex-direction: column;
        gap: 10px;
    }

    #cookie-consent-notification.show {
        transform: translateY(0);
    }
}

#cookie-consent-notification a, #cookie-consent-notification button {
    color: white;
}

#cookie-consent-notification a:hover {
    color: #CC0908;
}

.woocommerce_gc_giftcard_form {
    margin-top: 20px;
}

.woocommerce-error {
    background-color: #CC0908 !important;
    color: white !important;
    outline: none;
}

.woocommerce-error a {
    color: white !important;
    text-decoration: underline;
}

:not(.woocommerce-message) > .button:not(.alt,.checkout,.view,.pay,[name*=save_]), :not(.woocommerce-message) > input[type=submit]:not(.alt,.checkout,.view,.pay,[name*=save_]) {
    background-color: black !important;
    color: white !important;
    box-shadow: none !important;
    font-size: 12px;
    text-transform: uppercase;
    line-height: normal;
    padding: 12px 12px;
}

:not(.woocommerce-message) > .button:not(.alt,.checkout,.view,.pay,[name*=save_]):hover, :not(.woocommerce-message) > input[type=submit]:not(.alt,.checkout,.view,.pay,[name*=save_]):hover {
    background-color: black !important;
    color: white !important;
    box-shadow: none !important;
}

.return-to-shop {
    text-align: center;
}

.woocommerce-info,
.woocommerce-message {
    text-align: center;
    background: #000000 !important;
    color: #ffffffb3 !important;
    outline: none;
}

.woocommerce-message > .button, .woocommerce-message > input[type=submit] {
    color: white !important;
}

.woocommerce-message > .button:hover, .woocommerce-message > input[type=submit]:hover {
    color: #cc0908;
}

.woocommerce-info strong,
.woocommerce-message strong,
.woocommerce-info a,
.woocommerce-message a {
    color: white;
    font-weight: bold;
}

.woocommerce-account .woocommerce-Address {
    width: auto !important;
}

.woocommerce-account .woocommerce-Address a {
    line-height: normal;
    padding-top: 10px;
    padding-bottom: 10px;
}

/* Hide the "Return to shop" button in WooCommerce account page */
.woocommerce-account .wc-forward.button {
    display: none;
}

/* Add to wishlist button styles */
.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--themed-button).yith-wcwl-add-to-wishlist-button--added svg.yith-wcwl-add-to-wishlist-button-icon,
.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--themed-button) svg.yith-wcwl-add-to-wishlist-button-icon {
    color: inherit;
}

/* Products and categories styling */
body.single-product .description {
    margin-top: 0;
    text-align: justify;
}

body.single-product .description,
body.single-product #nickname_text {
    max-width: 280px;
    display: block;
}

body.single-product .digi-dolyame-product,
body.single-product .custom-points-earned,
.single_add_to_cart_button {
    min-width: 280px;
}

body.single-product .custom-points-earned,
.single_add_to_cart_button {
    border-radius: 7px !important;
}

.single_add_to_cart_button {
    text-transform: uppercase !important;
}

button.custom-points-earned {
    line-height: normal;
    display: block;
    margin-top: 15px;
    font-size: 13px;
    padding: 10px;
}

body.woocommerce-cart button.custom-points-earned {
    margin-top: 0;
    padding: 3px 10px 3px 10px;
}

@media (min-width: 960px) {
    body.woocommerce-cart button.custom-points-earned {
        margin-left: auto;
    }
}

.digi-dolyame-product {
    margin-left: auto;
    margin-right: auto;
    margin-top: 15px !important;
}

@media (max-width: 639px) {
    body.single-product .description,
    body.single-product #nickname_text,
    body.single-product .custom-points-earned {
        margin-left: auto;
        margin-right: auto;
    }

    .digi-dolyame-product {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .woocommerce table.variations th.label,
    .tm-element-woo-add-to-cart {
        text-align: center;
    }

    .yith-add-to-wishlist-button-block {
        margin: auto !important;
    }

    .product-buttons > div,
    .woocommerce_attribute ul.uk-subnav {
        justify-content: center;
    }

    .product-price .el-item > div {
        margin: auto;
        width: fit-content;
    }
}

.tm-element-woo-description {
    display: none;
}

.product-buttons a {
    font-size: 12px;
    text-transform: uppercase;
}

@media (max-width: 479px) {
    .product-buttons a span.uk-icon {
        display: none;
    }
}

.tags-container .el-content,
.content-badge .el-content {
    position: absolute;
    top: 5px;
    right: 5px;
    border-radius: 50%;
    background: #cc0908;
    color: white;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
}

.tags-container .el-content {
    top: -10px;
    right: -10px;
}

.soft-text,
.form-row .description,
.woocommerce-form-register .woocommerce-privacy-policy-text,
.category-name,
.categories .el-meta,
.categories .el-title {
    text-transform: uppercase;
}

.products-grid .el-item.uk-panel,
.products-slider .el-item.uk-panel {
    display: flex;
    flex-direction: column;
}

.products-grid .el-content,
.products-grid .el-meta,
.products-slider .el-content,
.products-slider .el-meta {
    flex: 1;
    justify-content: center;
    display: flex !important;
    flex-direction: column;
}

.soft-text,
.form-row .description,
.text-item:not(.header),
.product-collections .el-title,
.product-collections .el-meta,
.products-grid .el-content,
.products-slider .el-content,
.products-slider .el-title,
.product-title,
.products-grid .el-title {
    text-transform: uppercase;
}

.form-row .description {
    display: inline-block;
    margin-top: 10px;
}

@media (max-width: 639px) {
    .section-title {
        font-size: 20px;
        text-align: center;
    }
}

body.single-product.woocommerce td {
    padding-left: 0 !important;
}

.text-item {
    color: #444;
}

.text-item:not(.header) {
    font-weight: 500;
}

.text-item a:hover {
    color: #CC0908;
}

/* Product title */
.text-item,
.products-slider .el-title,
.categories .el-title,
.categories .el-meta,
.products-grid .el-title,
.product-collections .el-title {
    font-size: 14px;
}

/* Product collection meta */
.soft-text,
.form-row .description,
.woocommerce-form-register .woocommerce-privacy-policy-text,
.products-grid .el-content,
.products-slider .el-content {
    font-size: 10px;
}

/* Product/page pre-title */
.pre-title {
    text-transform: uppercase;
    font-size: clamp(13px, 3.5vw, 18px);
}

/* Product price */
.products-grid .tm-source-woo-price.price,
.products-slider .tm-source-woo-price.price {
    font-size: 13px;
}

.product-meta {
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 10px;
}

@media (min-width: 640px) {
    .product-meta {
        display: grid;
        grid-template-columns: auto auto;
        justify-content: space-around;
    }
}

.product-meta .el-content {
    text-transform: uppercase;
}

.product-meta .el-item .uk-first-column {
    width: 80px;
}

.products-multi-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px;
}

.products-multi-grid > div {
    margin: 0 !important;
}

.products-multi-grid ul.el-nav {
    flex-wrap: nowrap;
    gap: 10px;
    width: 100%;
    margin: 0;
    padding: 0;
}

.products-multi-grid ul.el-nav li {
    padding: 0;
    margin: 0;
    flex: auto;
}

.products-multi-grid ul.el-nav li a {
    width: 100%;
    height: 4px;
    border-radius: 10px;
}

.products-multi-grid ul.el-nav li:not(.uk-active) a {
    background: #d4d4d4;
}

.woocommerce_attribute ul.uk-subnav {
    gap: 15px;
    margin: 0;
}

.woocommerce_attribute ul.uk-subnav li {
    padding: 0;
}

/* Wishlist page styling */
.wishlist-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 0;
    margin: 0;
}

.wishlist-grid .wishlist-item-image {
    grid-area: image;
}

.wishlist-grid .wishlist-item-title {
    grid-area: title;
}

.wishlist-grid .product-title {
    margin: 0;
}

.wishlist-grid .wishlist-stock {
    grid-area: stock;
    font-size: 12px;
}

.wishlist-grid .wishlist-price {
    grid-area: price;
    font-size: 14px;
}

@media (min-width: 960px) {
    .wishlist-item-actions {
        flex-direction: column;
    }

    .wishlist-grid {
        grid-template-columns: 1fr;
    }

    .wishlist-grid > div {
        display: grid;
        column-gap: 20px;
        row-gap: 10px;
        align-items: center;
        grid-template-columns: 128px 1fr auto;
        grid-template-areas:
            "image title actions"
            "image stock actions"
            "image price actions";
        border-bottom: 1px solid #e2e2e2;
        padding-bottom: 20px;
    }
}

@media (max-width: 959px) {
    .wishlist-grid {
        text-align: center;
    }

    .wishlist-grid .wishlist-variation-attributes,
    .wishlist-item-actions {
        justify-content: center;
    }

    .wishlist-grid > div {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
}

.wishlist-empty {
    grid-column: 1 / -1;
}


.wishlist-item-actions {
    grid-area: actions;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
}

.wishlist-item-actions a {
    line-height: normal;
    padding: 12px;
    width: 100%;
    font-size: clamp(10px, 2.5vw, 14px);
    text-transform: uppercase;
}

.wishlist-price ins {
    background: none;
    color: black;
}

.wishlist-item-actions .wc-forward {
    display: none;
}

.wishlist-grid .wishlist-variation-attributes {
    display: flex;
    flex-wrap: wrap;
    text-transform: uppercase;
    gap: 10px;
    row-gap: 2px;
    font-size: 12px;
}

@media (max-width: 639px) {
    .wishlist-grid .product-title {
        font-size: 14px;
    }

    .wishlist-item-actions a {
        padding: 8px;
    }
}


/* Price filter design */
.widget_price_filter .ui-slider .ui-slider-handle {
    border: 1px solid #cc0908;
}

/* Collection page design */
.rus-brand {
    font-size: clamp(14px, 3vw, 22px);
}

.en-brand {
    font-size: clamp(18px, 5.5vw, 45px);
}

/* Loading overlay */
#loading-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.85);
    z-index: 9999; /* Ensure it’s above other content */
    display: none; /* Hidden by default */
    justify-content: center;
    align-items: center;
}

body.loading #loading-overlay {
    display: flex;
}

.loading-spinner {
    width: 100px; /* Adjust based on your SVG size */
    height: 100px;
    animation: spin 1.6s linear infinite; /* Smooth Sharingan rotation */
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* Prevent interaction with the page */
body.loading {
    pointer-events: none; /* Disables clicks and interactions */
}

/* Hide coupon field with CSS */
form.woocommerce-cart-form .coupon {
    display: none !important;
}

form.woocommerce-cart-form .product-name {
    font-size: clamp(12px, 4vw, 16px);
    text-transform: uppercase;
}

form.woocommerce-cart-form dl.variation dd,
form.woocommerce-cart-form dl.variation dt {
    font-size: clamp(10px, 3vw, 14px);
}

form.woocommerce-cart-form dl.variation {
    text-transform: uppercase;
}

@media (max-width: 639px) {
    .anbu-checkout-text {
        text-align: center;
    }
}

/* Cart Grid Layout */
.cart-grid {
    display: grid;
    gap: 15px;
    margin-bottom: 20px;
}

.cart-grid-row {
    display: grid;
    grid-template-areas:
        "thumbnail name"
        "price price"
        "controls controls";
    grid-template-columns: 100px 1fr;
    gap: 15px;
    align-items: center;
    border-bottom: 1px solid #eee;
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.cart-grid .subtotal {
    font-weight: bold;
}

.nickname-display {
    text-transform: none;
}

.price-label {
    display: none;
}

.anbu-checkout-text {
    text-align: justify;
}

@media (max-width: 639px) {
    .woocommerce-cart .uk-article-title {
        text-align: center;
    }

    .anbu-checkout-text {
        text-align: center;
    }
}

@media (min-width: 640px) {
    .price-label {
        display: inline;
    }

    .cart-grid-row {
        grid-template-areas:
        "thumbnail name"
        "thumbnail price"
        "thumbnail controls";
        grid-template-columns: 200px 1fr;
    }
}

@media (min-width: 960px) {
    .cart-grid-row {
        grid-template-areas:
        "thumbnail name price"
        "thumbnail name controls";
        grid-template-columns: 200px 1fr auto;
        column-gap: 40px;
    }

    .cart-grid-item.product-price {
        align-self: end;
    }

    .cart-grid-item.product-controls {
        align-self: start;
    }
}

.cart-grid-item.product-thumbnail {
    grid-area: thumbnail;
}

.cart-grid-item.product-name {
    grid-area: name;
}

.cart-grid-item.product-price {
    grid-area: price;
}

.cart-grid-item.product-controls {
    grid-area: controls;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 20px;
    padding-top: 10px;
}

.cart-grid-item.product-thumbnail img {
    max-width: 100%;
    height: auto;
}

.cart-grid-item.product-name a {
    color: #333;
    text-decoration: none;
}

.cart-grid-item.product-name a:hover {
    text-decoration: underline;
}

.quantity-control {
    display: flex;
    align-items: center;
    gap: 10px;
}

.quantity-control input.qty {
    width: 50px;
    text-align: center;
    border: 1px solid #ddd;
    padding: 5px;
}

.quantity-control button {
    background-color: #333;
    color: #fff;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    font-size: 1em;
}

.quantity-control button:hover {
    background-color: #555;
}

.remove-item .uk-button {
    padding-left: 12px;
    padding-right: 12px;
}

.coupon {
    margin-bottom: 15px;
}

.coupon input {
    padding: 8px;
    margin-right: 10px;
    border: 1px solid #ddd;
}

.total-grid {
    display: grid;
    grid-template-columns:  1fr auto;
    gap: 20px;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 20px;
}

.cart_totals {
    max-width: 400px;
    margin: auto;
    gap: 15px;
    display: flex;
    flex-direction: column;
}

@media (min-width: 640px) {
    .cart_totals {
        float: right;
    }
}

.payment_method_dolyamepayment span,
.payment_method_tbank img {
    display: none;
}

/* Checkout titles styling */
.woocommerce-checkout .add_gift_card_form h4,
.woocommerce-checkout h3 {
    text-transform: uppercase;
    font-size: 20px;
}

.woocommerce-shipping-methods li.uk-block {
    display: block !important;
}

.woocommerce-shipping-totals.shipping-title th,
.woocommerce-checkout-review-order-table tbody,
.woocommerce-checkout-review-order-table tfoot,
.woocommerce-checkout-review-order-table .cart-subtotal {
    font-size: 14px;
}

.woocommerce-shipping-totals.shipping-title th,
.woocommerce-checkout-review-order-table tbody,
.woocommerce-checkout-review-order-table tfoot th,
.woocommerce-checkout-review-order-table .cart-subtotal {
    text-transform: uppercase;
}

.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total .amount {
    font-weight: bold !important;
}

.woocommerce-shipping-totals.shipping-title th {
    text-align: left !important;
}

.woocommerce-checkout-review-order-table dl.variation dd,
.woocommerce-checkout-review-order-table dl.variation dt {
    font-size: 10px;
}

.woocommerce-shipping-totals.shipping-options {
    border-top: none !important;
}

.woocommerce-shipping-totals.shipping-options td {
    padding-top: 0 !important;
}

.woocommerce-shipping-methods li {
    flex-wrap: wrap;
}

.woocommerce-shipping-methods li > *:nth-child(1) {
    flex: 0 0 auto; /* Auto width, no grow, no shrink */
    max-width: none; /* Avoid width constraints */
    min-width: 0; /* Prevent overflow */
}

/* Second element: takes all remaining space */
.woocommerce-shipping-methods li > *:nth-child(2) {
    flex: 1 1 0; /* Grow to fill remaining space, shrink if needed */
    min-width: 0; /* Prevent content overflow */
}

/* Third and subsequent elements: wrap to new line, full width */
.woocommerce-shipping-methods li > *:nth-child(n+3) {
    flex: 1 1 100%; /* Take full width, forcing wrap */
    max-width: 100%;
}

/* Button for SDEK */
.open-pvz-btn {
    background: black;
}

.open-pvz-btn:hover {
    color: white;
}

.cdek-office-info {
    background: none;
    text-transform: uppercase;
    font-size: 12px;
}

/* Hide the map pin icon */
.cdek-office-info:before {
    display: none;
}

/* Russian post styling */
.wc-russian-post-method-additional-info .wc-russian-post-method-description,
.wc-russian-post-method-additional-info {
    background: none;
    margin: 0;
    padding: 0;
}

.wc-russian-post-method-additional-info .wc-russian-post-method-description,
.wc-russian-post-method-additional-info .wc-russian-post-method-delivery-time {
    font-size: 14px;
    margin: 0;
    border: none;
}

.wc-russian-post-chosen-address strong {
    font-weight: normal;
}

.wc-russian-post-choose-delivery-point {
    font-size: 12px !important;
    background: black !important;
    color: white !important;
    padding: 10px !important;
    box-shadow: none !important;
    opacity: 1 !important;
    line-height: normal !important;
    text-transform: uppercase !important;
}


.cart-delivery-points > th {
    white-space: nowrap;
}

.cart-delivery-points > td {
    width: 100%;
}

/* Hide some sections in category Разное */
body.category-258 #products-same-category {
    display: none;
}

/* Hide Dolyame widget if class no-dolyame is present on body */
body.no-dolyame div[data-name="DolyameCatalogButton"],
body.no-dolyame div[data-name="DolyameProductButton"] {
    display: none;
}

body.no-dolyame.single-product .product-price {
    margin-bottom: 0;
}

/* Filter widget styles */
.tm-element-woo-filter.walitoff a[role="button"] {
    position: relative;
}

.tm-element-woo-filter.walitoff .sorting-button > div,
.tm-element-woo-filter.walitoff a[role="button"] sup {
    position: absolute;
    top: -10px;
    right: -10px;
    background: #cc0908;
    color: white;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 400;
}

.tm-element-woo-filter.walitoff .sorting-button > div {
    font-weight: bold;
    font-size: 22px;
    font-family: 'serif';
}

.tm-element-woo-filter.walitoff a[role="button"],
.tm-element-woo-filter.walitoff .sorting-button {
    padding: 0 14px;
}

.tm-element-woo-filter.walitoff .widget_layered_nav_filters li > a {
    font-size: 14px;
    text-transform: uppercase;
    padding: 9px;
    color: #000;
}

.tm-element-woo-filter.walitoff .result-count {
    text-align: center;
    font-size: 12px;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.tm-element-woo-filter.walitoff .filter-controls {
    display: grid;
    grid-template-columns: 1fr auto;
}

.tm-element-woo-filter.walitoff .woocommerce-ordering {
    margin-bottom: 0;
}

.tm-element-woo-filter.walitoff .sorting-button {
    margin-left: 59px;
}

.names-list .el-item a {
    color: initial;
    text-transform: uppercase;
}

.collections-row {
    max-height: calc(100dvh - 140px);
    overflow: hidden;
}

.infinite-slider .uk-slider-items {
    transition-timing-function: linear !important;
    background: black;
    /* Make it move left infinite */
    animation: slide-left 40s linear infinite;
    min-width: fit-content;
}

.infinite-slider .uk-slider-items > div {
    width: 50vw;
}

@keyframes slide-left {
    0% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(calc(-100% + 100vw));
    }
    100% {
        transform: translateX(0);
    }
}

/* Home hero video section styles - old version V1 */
.home-2 .home-hero-container .uk-cover-container {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.home-2 .home-hero-container .home-title,
.home-2 .home-hero-container .home-pretitle {
    color: white;
}

@media (max-width: 959px) {
    .home-2 .hero-info-section {
        display: none;
    }
}

.home-2 .home-hero-container .uk-cover-container video[uk-cover] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.home-2 .home-hero-container {
    position: relative;
}

.home-2 .hero-video-section .uk-panel,
.home-2 .hero-info-section .uk-card-body > .uk-panel {
    z-index: 3;
}

.home-2 .home-hero-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
    background-size: 3px 3px, /* Grid horizontal lines */ 3px 3px, /* Grid vertical lines */ auto; /* Shadow gradient covers full area */
    pointer-events: none; /* Allows interaction with elements below */
}

.home-2 .home-hero-container .uk-grid .uk-position-cover {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0)), no-repeat center center;
}

.home-2.uk-sticky:not(.uk-sticky-fixed) .uk-navbar-dropdown {
    background: rgba(0, 0, 0, 0.95);
}

.home-2 .shop-info {
    color: white;
}

.home-2 .uk-navbar-container:not(.uk-navbar-sticky) .uk-logo {
    display: inline-block; /* Ensure the link behaves like an image container */
    width: 120px; /* Match the original image width */
    height: 105px; /* Match the original image height */
    background-image: url('/wp-content/uploads/2025/06/logo-white-text.svg');
    background-size: contain; /* Ensure the image fits within the container */
    background-repeat: no-repeat; /* Prevent image repetition */
    background-position: center; /* Center the image */
}

.home-2 .uk-navbar-container:not(.uk-navbar-sticky) .uk-logo img {
    display: none;
}

@media (min-width: 960px) {
    .home-2 .hero-video-section .uk-panel > * {
        display: none;
    }
}

.home-2 .uk-sticky:not(.uk-sticky-fixed) .uk-navbar-dropdown .el-link:not(:hover) {
    color: white !important;
}

.home-2 .uk-navbar-container:not(.uk-navbar-sticky) .uk-navbar-nav > li:hover .uk-badge {
    background-color: #CC0908;
    color: white !important;
}

.home-2 .uk-navbar-container:not(.uk-navbar-sticky) .uk-navbar-nav > li > a,
.home-2 .uk-navbar-container:not(.uk-navbar-sticky) .uk-navbar-nav > li:not(.uk-active):not(:hover) > a:not([aria-expanded=true]):not(:active) .uk-navbar-subtitle {
    color: white !important;
}

.home-2 .uk-navbar-container.uk-navbar-transparent .uk-navbar-toggle:not(:hover) {
    color: white !important;
}

.home-2 .uk-navbar-container:not(.uk-navbar-sticky) .uk-navbar-nav > li:hover > a {
    color: #CC0908;
}

.home-2 .uk-navbar-container:not(.uk-navbar-sticky) .uk-navbar-item.widget_currency_sel_widget a {
    color: white;
}

.home-2 .uk-navbar-container:not(.uk-navbar-sticky) .uk-navbar-item .wcml-dropdown li,
.home-2 .uk-navbar-container:not(.uk-navbar-sticky) .uk-navbar-item .wcml-dropdown-click li {
    background: transparent;
}

.home-2 .uk-navbar-container:not(.uk-navbar-sticky) .uk-navbar-item.widget_currency_sel_widget li:hover a {
    color: white;
}

/* End of Home hero video section styles - old version V1 */

/* Promo section */
.promo-counter .uk-countdown-number {
    font-size: clamp(40px, 6vw, 74px) !important;
}

.promo-counter > div {
    padding-left: clamp(6px, 1vw, 15px) !important;
}

@media (min-width: 640px) and (max-width: 959px) {
    .promo-counter .uk-countdown-separator {
        line-height: 0.8 !important;
    }
}

@media (min-width: 960px) {
    .promo-counter .uk-countdown-separator {
        line-height: 1 !important;
    }
}

.promo-subtitle,
.promo-counter .uk-countdown-label {
    text-transform: uppercase !important;
}

.counter-prefix {
    color: #a1a1a1 !important;
    text-transform: uppercase !important;
}

@media (max-width: 479px) {
    .counter-prefix,
    .promo-counter .uk-countdown-label {
        font-size: 14px !important;
    }

    .promo-subtitle {
        font-size: 16px !important;
    }

    .promo-details {
        font-size: 12px !important;
    }
}

.promo-subtitle em {
    font-style: normal;
    color: #cc0908 !important;
}

/* Checkout page styles */
#woocommerce-checkout-form-coupon > p,
#woocommerce-checkout-form-coupon input {
    width: 100%;
}

#woocommerce-checkout-form-coupon {
    display: block !important;
}

body.woocommerce-checkout div.woocommerce.wp-block-group > .woocommerce-info.wc_points_redeem_earn_points {
    display: none !important;
}

body.woocommerce-checkout button.points_apply_discount {
    margin-right: 0;
    margin-left: auto;
    text-transform: uppercase;
    font-size: 12px;
    padding: 12px;
    line-height: normal;
}

#points-redemption-modal .uk-modal-dialog {
    max-width: 400px !important;
}

#points-redemption-modal .uk-modal-title {
    font-size: 20px !important;
    text-transform: uppercase;
    line-height: normal !important;
}

/* Login and registration page styles */
body.woocommerce-account.unauthorized #tm-main {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

body.woocommerce-account.unauthorized .uk-article-title,
body.woocommerce-account.unauthorized h2,
body.woocommerce-account.unauthorized form {
    text-align: center !important;
}

.uk-modal-dialog .h-captcha,
body.woocommerce-account.unauthorized form .h-captcha {
    margin-left: auto;
    margin-right: auto;
}

body.woocommerce-account.unauthorized form button[name="register"],
body.woocommerce-account.unauthorized form button[name="login"] {
    min-width: 220px;
    text-transform: uppercase;
    font-size: 12px;
}

body.woocommerce-account.unauthorized .woocommerce-privacy-policy-text {
    text-align: justify;
}

body.woocommerce-account.unauthorized .uk-article-title {
    display: none;
}

/* My Account page styles */
.woocommerce-MyAccount-navigation > ul > li > a {
    text-transform: uppercase;
    font-size: 15px;
}

@media (max-width: 639px) {
    .woocommerce-MyAccount-navigation ul {
        font-size: 12px;
        margin-left: 0 !important;
        gap: 10px;
        display: grid !important;
        grid-template-columns: 1fr auto;
    }

    .woocommerce-MyAccount-navigation ul > li {
        padding-left: 0 !important;
    }

    .woocommerce-MyAccount-navigation ul > li > a {
        margin-left: 0;
        font-size: min(16px, 3.5vw) !important;
    }
}

.woocommerce-MyAccount-Giftcards-balance-amount {
    font-size: 24px;
    font-weight: bold;
}

.woocommerce-MyAccount-content h2 {
    font-size: 20px;
}

.woocommerce-MyAccount-content h4 {
    font-size: 16px;
    text-transform: uppercase;
}

.woocommerce-MyAccount-content h5,
.woocommerce-MyAccount-content .uk-h5 {
    text-transform: uppercase;
}

.woocommerce-orders-table__cell-order-actions a {
    text-transform: uppercase;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
    background: black;
    color: white;
}

.anbu-lang-curr-trigger {
    position: relative;
    cursor: pointer;
}

.anbu-lang-flag {
    width: 32px;
    height: 22px;
    object-fit: cover;
    display: inline-block;
    border: 1px solid #777;
}

.anbu-currency-badge {
    position: absolute;
    bottom: -6px;
    right: -6px;
    font-size: 10px;
    padding: 2px 5px;
    line-height: 1;
}

.anbu-lang-curr-dropdown {
    padding: 12px 14px;
    text-transform: uppercase;
}

.anbu-dropdown-grid {
    display: grid;
    grid-template-columns:1fr auto;
    grid-auto-rows: auto;
    gap: 8px;
}

.anbu-dropdown-cancel {
    grid-column: span 2;
}

.anbu-cell {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border: 1px solid #eee;
    border-radius: 6px;
    background: #fff;
    font-size: 14px;
    line-height: 1.2;
    cursor: pointer;
    text-decoration: none;
    color: inherit !important;
    transition: background .15s, border-color .15s, box-shadow .15s;
    min-width: max-content;
}

.anbu-cell:hover:not(.is-active) {
    background: #f7f7f7;
}

.anbu-cell.is-active {
    border-color: #222;
    background: #fafafa;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, .05);
    cursor: default;
}

.anbu-placeholder {
    visibility: hidden;
}

@media (min-width: 640px) {
    .orders-grid .order-meta {
        gap: 10px;
    }
}

.orders-grid .uk-button-group {
    gap: 10px;
    display: flex;
}

.shipping-methods-placeholder {
    display: none;
}

.form-row .optional {
    display: none;
}

.woocommerce-form-register .woocommerce-privacy-policy-text {
    text-align: justify;
}

/**
Fix for Cumulative Layout Shift (CLS) when loading variation images at product page
 */
.product-type-variable .woocommerce-product-gallery {
    display: none;
}

#coupon-modal .wc_points_redeem_earn_points {
    display: none !important;
}
