@font-face {
    font-family: 'Gilroy';
    src: url("../fonts/gilroy/Gilroy-Regular.ttf") format('truetype'); /* Safari, Android, iOS */
    font-weight: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url("../fonts/gilroy/Gilroy-SemiBold.ttf") format('truetype'); /* Safari, Android, iOS */
    font-weight: 600;
}

@font-face {
    font-family: 'Gilroy';
    src: url("../fonts/gilroy/Gilroy-Bold.ttf") format('truetype'); /* Safari, Android, iOS */
    font-weight: bold;
}

@font-face {
    font-family: 'Gilroy';
    src: url("../fonts/gilroy/Gilroy-ExtraBold.ttf") format('truetype'); /* Safari, Android, iOS */
    font-weight: 800;
}

@font-face {
    font-family: 'Gilroy';
    src: url("../fonts/gilroy/Gilroy-Black.ttf") format('truetype'); /* Safari, Android, iOS */
    font-weight: 900;
}

@font-face {
    font-family: 'Graphik LC Web';
    src: url("../fonts/graphiklcweb_medium.ttf") format('truetype'); /* Safari, Android, iOS */
    font-weight: normal;
}

:root {
    --bs-yellow: #FCBC10;
    --bs-warning: #FCBC10;
    --btn-hover: #e1a80e;
    --bs-blue: rgb(13, 52, 89);
    --bs-light: #F5F7FA;
    --bs-link-color: #0082FF;
}

html {
    height: 100%;
}

body, html {
    font-family: 'Gilroy', sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    overflow-x: hidden;
}

body {
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

body.no-scroll {
    overflow: hidden;
    position: fixed;
    width: 100%;
}

a {
    text-decoration: none;
    transition: all 0.15s ease-out;
    cursor: pointer;
}

a:not(.btn):hover {
    color: var(--bs-yellow) !important;
}

select {
    border: 1px solid #000;
    border-radius: 2px;
    height: 30px;
    padding-top: 2px;
}

#pageLoader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: #0D3459;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-container {
    position: fixed;
    z-index: 100;
}

section:first-of-type, main {
    margin-top: 136px;
}

.topbar {
    /*background-color: rgb(74 103 131);*/
    color: black;
    position: relative;
    z-index: 2;
}

.topbar .icon.phone {
    display: flex;
    height: 18px;
    align-items: center;
    justify-content: center;
    background-size: cover;
}

.topbar a {
    line-height: 1;
    padding-top: 2px;
    font-size: 14px;
}

.navbar {
    z-index: 2;
    padding-top: calc(21px + 0px);
    padding-bottom: 21px;
    --bs-navbar-toggler-icon-bg: url("../images/icons/burger.svg");
}

@media (max-width: 767.98px) {
    #navbar-container {
        flex-wrap: nowrap;
    }
}

.navbar-brand-wrapper {
    transition: all 1000ms ease-out;
    animation-duration: 1000ms;
}

.navbar-brand-wrapper img {
    width: 100%;
    max-width: 150px;
    height: auto;
}

.navbar-light .navbar-nav .nav-link {
    line-height: 1.1875;
    /* identical to box height */

    color: #FFFFFF;
}

.navbar-light.page-header .navbar-nav .nav-link {
    color: black;
}

.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
    color: var(--bs-yellow);
}

.submenu-container {
    display: none;
    position: absolute;
    top: 85%;
    left: 0;
    z-index: 1000;
    padding-top: 20px;
}

.navbar-light .navbar-nav .submenu-container .nav-link {
    color: #000;
}

.submenu-container-inner {
    padding: 26px;
    display: flex;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    width: max-content;
    align-items: center;
}

.submenu-columns {
    column-count: 2;
}

.top-menu .submenu-columns {
    column-gap: 113px;
}

.top-menu .submenu-columns a {
    display: block;
    text-decoration: none;
    padding: 13px 0 !important;
}

.nav-item:hover .submenu-container {
    /*display: flex;*/
}

.page-header .navbar-toggler-icon, .page-header .dgwt-wcas-search-submit {
    filter: invert(1);
}

.submenu-image img {
    max-width: 100%;
}

.header-right {
    display: flex;
    padding-right: 15px;
    /*column-gap: 22px;*/
}

.header-fibo-search .dgwt-wcas-search-form {
    width: 206px;
}

.mobile-menu-footer .header-fibo-search .dgwt-wcas-search-form {
    width: 100%;
}

.header-fibo-search .dgwt-wcas-sf-wrapp {
    background: rgba(255, 255, 255, 0.2);
    border: rgba(255, 255, 255, 0) 1px solid;
    border-radius: var(--bs-border-radius-pill);
    padding: 0;
}

.dgwt-wcas-open-pirx .dgwt-wcas-details-wrapp,
.dgwt-wcas-open-pirx .dgwt-wcas-suggestions-wrapp {
    border-radius: 8px;
    margin-top: 5px;
    background: #f5f5f5;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    border: 1px solid #f5f5f5;
}

.dgwt-wcas-overlay-mobile-on .dgwt-wcas-suggestions-wrapp {
    border-radius: 0;
    margin-top: 0;
    background: none;
    box-shadow: none;
    border: none;
}

.header-fibo-search .screen-reader-text {
    top: calc(50% - 0.5em);
    left: 80px;
    clip: unset;
    clip-path: unset;
    width: unset;
    height: unset;
    position: absolute;
    font-size: 0.75rem !important;
    /* identical to box height */
    color: #FFFFFF;
    pointer-events: none;
}

.header-fibo-search .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input {
    padding: 8px 24px 8px 24px;
    line-height: normal;
    background: transparent;
    border: none;
}

.header-fibo-search .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input::placeholder {
    opacity: 0;
}

.page-header .header-fibo-search .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input {
    background: #F5F7FA;
}

.page-header .header-fibo-search .screen-reader-text {
    color: black;
}

.search-clear-button {
    color: #fff;
    opacity: 0.7;
    text-decoration: none;
    align-content: center;
    line-height: 1;
    padding: 0 0.5rem 0 0;
    height: 1rem;
}

.page-header .search-clear-button {
    color: black;
}

.search-clear-button:hover {
    opacity: 1;
}

.header-fibo-search:has(.dgwt-wcas-search-input:not(:placeholder-shown)) .screen-reader-text,
.header-fibo-search:has(.dgwt-wcas-search-input:focus) .screen-reader-text,
.header-fibo-search:has(.dgwt-wcas-search-input:not(:placeholder-shown)) button.dgwt-wcas-search-submit,
.header-fibo-search:has(.dgwt-wcas-search-input:focus) button.dgwt-wcas-search-submit {
    display: none;
}

.dgwt-wcas-style-pirx.dgwt-wcas-search-wrapp.dgwt-wcas-search-focused input[type=search].dgwt-wcas-search-input:hover {
    background: none;
}

.page-header .dgwt-wcas-style-pirx.dgwt-wcas-search-wrapp.dgwt-wcas-search-focused input[type=search].dgwt-wcas-search-input:hover {
    background: #F5F7FA;
}

.header-fibo-search .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit {
    background: url("../images/icons/search.svg");
    width: 18px;
    height: 18px;
    top: 1px;
    left: 45px;
    background-repeat: no-repeat;
    background-position: center;
}

.header-fibo-search .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit svg {
    display: none;
}

.mobile-menu-footer .header-fibo-search .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit {
    left: 10px;
}

.mobile-menu-footer .header-fibo-search .screen-reader-text {
    left: 50px;
}

.dgwt-wcas-style-pirx .dgwt-wcas-preloader {
    right: 0 !important;
    margin-right: 20px;
}

.search-form .input-group-text .search-icon {
    margin-right: 8px;
    background: url("../images/icons/search.svg");
    width: 18px;
    height: 18px;
}

.search-form:has(input:not(:placeholder-shown)) {
    border: rgba(255, 255, 255, 0.25) 1px solid;
}

.navbar .dgwt-wcas-sf-wrapp input:not(:placeholder-shown), .navbar .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input:focus {
    caret-color: rgba(255, 255, 255, 0.25);
    color: white;
    border: none;
    box-shadow: none;
    outline: none;
    max-resolution: 8px;
}

.navbar:not(.page-header) .header-fibo-search .dgwt-wcas-close,
.mobile-menu-footer .header-fibo-search .dgwt-wcas-close {
    filter: invert(1);
}

.page-header.navbar .dgwt-wcas-sf-wrapp input:not(:placeholder-shown),
.page-header.navbar .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input:focus {
    caret-color: rgba(0, 0, 0, 0.75);
    color: black;
}

.dgwt-wcas-search-icon svg {
    fill: white;
}

.header-icons {
    display: flex;
    column-gap: 35px;
    align-items: center;
}

.header-icons .functions-icons {
    display: flex;
    align-items: center;
    column-gap: 35px;
}

.header-icons .icons-separator {
    width: 1px;
    height: 7px;
    background: #FFFFFF;
}

.page-header .header-icons .icons-separator {
    background: black;
}

.icon-btn {
    display: flex;
    cursor: pointer;
    height: 18px;
    align-items: center;
    justify-content: center;
    background-size: cover;
}

.icon-btn {
    transition-duration: 300ms, 300ms;
}

.header-icons .icon-btn {
    padding-top: 3px;
    transition-duration: 300ms, 300ms;
}

.icon-btn:hover {
    transform: translateY(-2px);
}

.icon-btn:active {
    transform: translateY(-4px);
}

.header-icons .icon-btn.has-value {
    font-weight: 600;
    font-size: 0.5rem;
    line-height: 1;
    color: #FFFFFF !important;
}

.icon-btn.search {
    width: 18px;
    background: url("../images/icons/search.svg");
}

.icon-btn.phone, .icon.phone {
    width: 20px;
    background: url("../images/icons/phone.svg");
}

.icon-btn.account {
    width: 11px;
    background: url("../images/icons/account.svg");
}

.icon-btn.compare {
    width: 27px;
    background: url("../images/icons/compare.svg");
}

.header-icons .compare.has-value {
    background: url("../images/icons/compare-filled.svg");
    padding-top: 0;
    padding-left: 8px;
}

.icon-btn.favorites {
    width: 20px;
    background: url("../images/icons/star.svg");
}

.header-icons .favorites.has-value {
    background: url("../images/icons/star-filled.svg");
}

.header-icons .cart {
    width: 16px;
    background: url("../images/icons/cart.svg");
}

.header-icons .cart.has-value {
    background: url("../images/icons/cart-filled.svg");
}

.page-header .icon-btn.search {
    filter: invert(1);
}

.page-header .icon-btn.phone, .page-header .icon.phone {
    background: url("../images/icons/phone-black.svg");
}

.page-header .icon-btn.account {
    background: url("../images/icons/account-black.svg");
}

.page-header .icon-btn.compare {
    background: url("../images/icons/compare-black.svg");
}

.page-header .header-icons .compare.has-value {
    background: url("../images/icons/compare-black-filled.svg");
}

.page-header .icon-btn.favorites {
    background: url("../images/icons/star-black.svg");
}

.page-header .header-icons .favorites.has-value {
    background: url("../images/icons/star-black-filled.svg");
}

.page-header .header-icons .cart {
    background: url("../images/icons/cart-black.svg");
}

.page-header .header-icons .cart.has-value {
    background: url("../images/icons/cart-black-filled.svg");
}

.page-title {
    font-family: 'Gilroy', serif;
    font-style: normal;
    font-weight: 800;
    font-size: 40px;
    line-height: 51px;
    color: #292929;
    margin-bottom: 15px;
}

.page-container {
    padding-top: 40px;
}

/** Hero section **/

.hero-section {
    margin-top: 0 !important;
}

.hero-section .swiper-slide {
    height: 100vh;
    background-size: cover !important;
}

.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: var(--bs-warning);
}

.hero-inside {
    padding-bottom: 18vh;
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.2;

    color: #FFFFFF;
}

.hero-content h1 {
    font-weight: 900;
    /*font-size: 46px;*/
    line-height: 1.239;
    text-transform: uppercase;

    color: #FFFFFF;
    /* Inside auto layout */
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;

    animation: fadeSlideUp 0.7s ease-out forwards;
}

.hero-content p {
    opacity: 0;
    animation: fadeSlideUp 0.7s ease-out forwards;
    animation-delay: 100ms;
}

@keyframes fadeSlideUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    50% { /* Faster opacity transition (fade-in faster) */
        opacity: 0.5;
    }
    to { /* Slower slide-up transition */
        opacity: 1;
        transform: translateY(0);
    }
}

.hero-content .btn {
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding-inline: 89px;
    margin-top: 55px;
    gap: 10px;
    width: fit-content;
    height: 40px;
    background: #FCBC10;
    align-items: center;

    font-weight: 600;
    line-height: 1.1875;

    color: #FFFFFF;

    transform: scale(0);
    animation: scaleFadeUp 0.5s ease-out forwards;
    animation-delay: 300ms;
}

.hero-content .btn:hover {
    background: var(--btn-hover) !important;
}

/* Keyframes for button */
@keyframes scaleFadeUp {
    from {
        /*opacity: 0;*/
        transform: scale(0.5);
    }
    to {
        /*opacity: 1;*/
        transform: scale(1);
    }
}

/** Sales section **/
.sales-section {
    padding-top: 40px;
    padding-bottom: 50px;
}

.section-header {
    font-family: 'Roboto', sans-serif;
    font-style: normal;
    font-weight: 700;
    /*font-size: 24px;*/
    line-height: 1.166;
    text-transform: uppercase;
    margin-bottom: 25px;
    width: fit-content;
}

.header-row.has-slider {
    margin-bottom: 25px;
}

.header-row.has-slider .section-header {
    margin-bottom: 0;
}

.right-arrow {
    width: 14px !important;
    height: 12px !important;
    padding: 0;
    background-image: url("../images/icons/right-arrow.svg");
    cursor: pointer;
}

.right-arrow.swiper-button-next {
    position: relative !important;
    margin: 0 14px 0 0;
    transition-duration: 300ms, 300ms;
}

.right-arrow.swiper-button-next:hover {
    transform: translateX(2px);
}

.right-arrow.swiper-button-next:after {
    content: none;
}

.swiper {
    width: 100%;
    /*padding: 15px;*/
    overflow: visible !important;
}

.swiper-slide {
    padding: 2px;
    overflow: visible;
    position: relative;
    z-index: 1;
}


.swiper-slide:hover {
    z-index: 10;
}

.product-card {
    background: #FFFFFF;
    position: relative;
}

.product-card .product-card-inner, .wc-block-product {
    padding: 7px 9px 14px;
    position: relative;
    transition: all 0.3s ease-out;
}

.product-card:hover {
    z-index: 2;
}

.product-card .product-card-inner:hover, .wc-block-product:hover {
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1);
    transform: scale(1.04) !important;
}

.card-img-container, .wc-block-components-product-image a {
    background: #F5F5F5;
    padding-left: 40px;
    padding-right: 40px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    height: 320px;
}

.card-img-container img, .wc-block-product-image img {
    max-width: 100%;
    height: auto;
}

.wc-block-components-product-sale-badge {
    display: block;
}

.product-card .shop-item-body {
    margin-top: 13px;
}

.product-card .shop-item__title, .wc-block-components-product-name, .wc-block-product .wp-block-post-title a {
    font-size: 0.875rem;
    line-height: 140%;
    text-decoration: none;
    color: black;
}

/* Override WooCommerce styles for add to cart button */
.add_to_cart_button,
.woocommerce a.button.add_to_cart_button,
.woocommerce button.button.add_to_cart_button {
    display: block !important;
    height: 24px !important;
    width: 24px !important;
    background: url("../images/icons/plus.svg") !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    margin-bottom: 2px !important;
    cursor: pointer !important;
    transition-duration: 300ms, 300ms !important;
    padding: 0 !important;
    border: none !important;
    text-indent: -9999px !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

.add_to_cart_button:hover,
.woocommerce a.button.add_to_cart_button:hover,
.woocommerce button.button.add_to_cart_button:hover {
    background-image: url("../images/icons/plus-filled.svg") !important;
    background-size: contain !important;
    animation: pulsate 1s ease-out infinite !important;
    box-shadow: none !important;
}

.add_to_cart_button.loading,
.woocommerce a.button.add_to_cart_button.loading,
.woocommerce button.button.add_to_cart_button.loading {
    background-image: url("../images/loading.gif") !important;
}

/* Hide the "View cart" link that appears after adding a product to cart */
.added_to_cart.wc-forward, .add_to_cart_button + span {
    display: none !important;
}

.shop-item__price {
    display: flex;
    align-items: center;
    column-gap: 10px;
}

.ac-shop .wc-block-components-product-price {
    display: flex;
    align-items: center;
    column-gap: 10px;
}

.shop-item__price .price,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price,
.wc-block-components-product-price bdi,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
    font-weight: 600;
    font-size: 1.125rem;
    color: inherit;
}

.shop-item__price .price,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
    line-height: 100%;
}

.shop-item__price .old-price, .wc-block-components-product-price del {
    font-size: 1.125rem;
    line-height: 100%;
    /* identical to box height, or 18px */
    text-decoration-line: line-through;
    color: #C4C4C4;
}

.shop-item__badges {
    position: absolute;
    left: 30px;
    top: 28px;
}

.sale_badge, .ac-shop .wc-block-grid__product-image .wc-block-grid__product-onsale {
    border-radius: var(--bs-border-radius-pill) !important;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;
    padding: 10px;
    font-family: 'DM Sans', sans-serif;
    font-style: normal;
    font-weight: 700;
    /*font-size: 16px;*/
    line-height: 100%;
    /* identical to box height, or 16px */
    border: none;

    color: #FFFFFF;
}

.ac-shop .wc-block-grid__product-image .wc-block-grid__product-onsale {
    top: 1rem;
    left: 1rem;
}

.shop-item__icons {
    display: flex;
    column-gap: 14px;
    position: absolute;
    right: 30px;
    top: 36px;
}

.shop-item__icons .icon-btn.compare {
    background: url("../images/icons/compare-black.svg");
}

.shop-item__icons .icon-btn.compare:hover, .shop-item__icons .icon-btn.compare.has-value {
    background: url("../images/icons/compare-black-filled.svg");
}

.shop-item__icons .icon-btn.favorites {
    background: url("../images/icons/star-black.svg");
}

.shop-item__icons .icon-btn.favorites:hover, .shop-item__icons .icon-btn.favorites.has-value {
    background: url("../images/icons/star-black-filled.svg");
}

@keyframes pulsate {
    from {
        transform: scale(1);
    }
    50% { /* Faster opacity transition (fade-in faster) */
        transform: scale(1.1);
    }
    to { /* Slower slide-up transition */
        transform: scale(1);
    }
}

/** categories section **/

#categories-section {
    padding-bottom: 51px;
}

#categories-section > .row {
    --bs-gutter-x: 10px;
    --bs-gutter-y: 10px;
}

.category-card {
    display: block;
    height: 100%;
    position: relative;
    /*padding: 5px;*/
    transition: all 0.3s ease-out;
}

#categories-section .category-card {
    height: 378px;
    /*z-index: 2;*/
    overflow: hidden;
}

.category-card a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.category-card-inner {
    position: relative;
    background-size: cover;
    background-position: center;
    height: 100%;
    width: 100%;
    transition: all 0.25s ease-out;
}

.category-card:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.25);
    z-index: 2;
}

.category-card-col:hover {
    z-index: 2;
}

.category-card:hover .category-card-inner {
    transform: scale(1.05);
}

.category-card .overlay {
    position: absolute;
    bottom: 0;
    background: rgba(0, 0, 0, 0.2);
    max-width: min-content;
    padding: 18px 35px 18px 35px;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);

}

/*.col-6 .category-card-inner .overlay {*/
/*    max-width: 50%;*/
/*}*/

.category-card .woocommerce-loop-category__title {
    font-weight: 800;
    font-size: 1.625rem;
    line-height: 1.23;
    text-transform: uppercase;
    color: white;
}

@media (max-width: 767.98px) {
  .category-card .overlay {
    display: flex;
    justify-content: center;
    padding: 18px 10px 18px 10px;
    min-width: 100%;
  }
  .category-card .woocommerce-loop-category__title {
    font-size: 1rem;
  }
}

/** info section **/
#info-section {
    background-color: #0D3459;
    padding-top: 65px;
    padding-bottom: 65px;
    margin-bottom: 50px;
}

#info-section .row {
    --bs-gutter-x: 47px;
}

#info-section img {
    max-width: 100%;
}

#info-section h2 {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    /*font-size: 44px;*/
    line-height: 100%;
    /* or 44px */
    text-transform: uppercase;

    color: #FFFFFF;

    margin-bottom: 32px;
}

#info-section .content {
    /*font-size: 16px;*/
    line-height: 140%;
    /* or 22px */

    color: #FFFFFF;

    margin-bottom: 24px;
}

#info-section .catalog-link a {
    font-weight: 800;
    font-size: 1rem;
    background: none;
    line-height: 1;
    color: var(--bs-yellow);
    display: block;
    margin: 0;
    padding: 0;
    width: fit-content;
}

#info-section .catalog-link a:hover {
    transform: translateY(-2px);
    color: #d7a10f !important;
}

/* Category products accent section */

#cat-products-accent {
    margin-bottom: 50px;
}

#cat-products-accent .category-card {
    height: calc(100% - 25px);
    min-height: 300px;
    margin-top: 7px;
}

#cat-products-accent .product-card {
    padding: 0;
}

/* Bestsellers section */
#bestsellers {
    padding-top: 40px;
    background-color: #F5F5F5;
}

#bestsellers .product-card {
    background: none;
}

#bestsellers .product-card-inner:hover {
    transform: none !important;
    box-shadow: none;
}

#bestsellers .card-img-container {
    background-color: white;
    transition: all 0.3s ease-out;
}

#bestsellers .card-img-container:hover {
    z-index: 2;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1);
}

#bestsellers .card-img-container img {
    transition: all 0.3s ease-out;
}

#bestsellers .card-img-container:hover img {
    transform: scale(1.05);
}

/* Bestsellers section */
#recently-viewed {
    padding-top: 40px;
    background-color: #F5F5F5;
}

#recently-viewed .product-card {
    background: none;
}

#recently-viewed .product-card-inner:hover {
    transform: none !important;
    box-shadow: none;
}

#recently-viewed .card-img-container {
    background-color: white;
    transition: all 0.3s ease-out;
}

#recently-viewed .card-img-container:hover {
    z-index: 2;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1);
}

#recently-viewed .card-img-container img {
    transition: all 0.3s ease-out;
}

#recently-viewed .card-img-container:hover img {
    transform: scale(1.05);
}


/* Product ad section */
#product-ad {
    /*padding-top: 40px;*/
    background-color: #F5F5F5;
    /*padding-top: 100px;*/
    padding-bottom: 92px;
}


#product-ad .product-features-wrapper {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
}

#product-ad .product-feature {
    position: relative;
    display: flex;
    flex-direction: row;
}

#product-ad .product-feature .feature-description {
    list-style: none;
    /*margin-left: 0;*/
    padding-left: 0;
    margin-bottom: 11px;

    font-family: 'Graphik LC Web', sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 0.875rem;
    line-height: 140%;
    /* or 20px */
    letter-spacing: -0.01em;
    color: #000000;
}

#product-ad .product-feature .feature-number {
    font-family: 'Graphik LC Web', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 1.5rem;
    line-height: 140%;
    /* identical to box height, or 34px */
    letter-spacing: -0.01em;

    color: #0082FF;
}

#product-ad .product-feature .feature-number::after {
    content: '.';
}

#product-ad .product-feature .product-feature-wrapper {
    padding-top: 8px;
    margin-left: 8px;
}

#product-ad .product-feature .feature-title {
    font-family: 'Graphik LC Web', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 0.875rem;
    line-height: 140%;
    /* identical to box height, or 20px */
    letter-spacing: -0.01em;

    color: #000000;

    /* Inside auto layout */
    flex: none;
    order: 1;
    flex-grow: 0;
}

#product-ad .product-ad-left {
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: flex-end;
}

#product-ad .product-ad-left .row {
    flex-grow: 1;
}


#product-ad .product-ad-left .title-wrapper {
    flex-direction: row;
    column-gap: 17px;
    padding-left: calc(var(--bs-gutter-x) * .5);
}

#product-ad .product-ad-left .product-title {
    margin-bottom: 0;
    padding: 0;
    font-size: 3rem;
    line-height: 100%;
    /* or 48px */
    letter-spacing: -0.01em;
    color: #000000;
    display: block;
    width: fit-content;
    align-content: end;
}

#product-ad .product-title {
    max-width: 388px;
}

@media (max-width: 767.98px) {
    #product-ad .product-title {
        max-width: 305px;
    }
}

#product-ad .product-title::first-line {
    font-weight: bold;
}

#product-ad .product-ad-left .link {
    font-family: 'Graphik LC Web';
    font-style: normal;
    font-weight: 700;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    color: #0082FF;
    display: flex;
    width: fit-content;
    height: fit-content;
    align-self: end;
    align-items: flex-end;
    padding: 0 0 8px;
}

#product-ad .product-ad-left .link::after {
    content: '';
    display: block;
    background-image: url("../images/icons/blue-arrow.svg");
    height: 13px;
    width: 13px;
    background-size: cover;
    margin-bottom: 1px;
    margin-left: 10px;
    transform: rotate(-130deg);
    transition: all 0.15s ease-out;
}

#product-ad .product-ad-left .link:hover::after {
    filter: invert(69%) sepia(93%) saturate(950%) hue-rotate(351deg) brightness(104%) contrast(98%);
}

#product-ad .product-ad-left .line {
    z-index: 1;
    position: absolute;
    display: flex;
    flex-direction: row;
    height: 2px;
    background-image: linear-gradient(to right, #0082FF 50%, rgba(255, 255, 255, 0) 0%);
    background-position: bottom;
    background-size: 23px 1px;
    background-repeat: repeat-x;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 400ms ease-out;
    transition-delay: 400ms;
}

#product-ad .product-ad-left .aos-animate .line {
    transform: scaleX(1);
}

#product-ad .product-ad-left .line::after {
    margin-left: 100%;
    top: -120%;;
    content: '';
    width: 1px;
    height: 1px;
    border: #0082FF 4px solid;
    border-radius: 4px;
    display: block;
    position: relative;
}

#product-ad .product-ad-img {
    transition: transform 0.3s ease-out;
}

#product-ad .product-ad-img:hover {
    transform: scale(1.05);
}

/* Subscribe section */
.subscribe-section {
    background-color: #0D3459;
    display: flex;
    flex-direction: row;
    width: 100%;
}

.subscribe-section-left {
    width: 50%;
    display: flex;
    flex-direction: column;
    padding-left: 12px;
    box-sizing: border-box;
    justify-content: flex-start;
    align-items: flex-start;
}

.subscribe-form {
    margin-top: 95px;
    padding: 4px 5px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    border: 1px solid white;
    border-radius: 50px;
    min-width: 484px;
    box-sizing: border-box;
}

.subscribe-input {
    margin-top: 5px;
    flex: 1 1 auto;
    min-width: 200px;
    border: none;
    outline: none;
    background-color: transparent;
    color: white;
    font-size: 16px;
    font-family: inherit;
    font-weight: 500;
    letter-spacing: 1px;
    padding-left: 30px;
}
.subscribe-input::placeholder {
    color: white;
    font-size: 16px;
    font-family: inherit;
    font-weight: 500;
    letter-spacing: 1px;
}

.subscribe-button {
    flex: 0 0 195px;
    height: 50px;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Gilroy';
    font-style: normal;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    color: #fff;
    background-color: #0082ff;
    border: none;
    padding-top: 4px;
    box-sizing: border-box;
    transition: background-color ease-out 0.2s;
}
.subscribe-button:hover {
    background-color: #000000;
}

.subscribe-text {
    margin: 27px 0;
    color: white;
    font-family: 'Gilroy';
    font-style: normal;
    font-size: 16px;
    line-height: 28px;
    font-weight: 400;
}

.subscribe-title {
    margin: 27px 0;
    color: white;
    text-transform: uppercase;
    font-family: 'Gilroy';
    font-style: normal;
    font-size: 63px;
    line-height: 63px;
    font-weight: 900;
}

.subscribe-section-right {
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0;
}

.subscribe-section-right img {
    max-width: 100%;
    max-height: 512px;
    height: auto;
    display: block;
    position: relative;
    right: -25%;
}

.page__heading-title-wrapper .sale_info {
    color: #0082FF;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 28px;
}

.page__heading-title-wrapper .page-title {
    margin-bottom: 5px;
}

@media (max-width: 991.98px) {
    .subscribe-section {
        flex-direction: column;
    }

    .subscribe-section-left {
        width: 100%;
        padding: 0 20px;
        box-sizing: border-box;
        justify-content: center;
        align-items: center;
    }

    .subscribe-form {
        margin-top: 28px;
    }

    .subscribe-title {
        font-size: 42px;
    }

    .subscribe-section-right {
        width: 100%;
        margin: 0 auto;
        padding: 20px;
    }

    .subscribe-section-right img {
        position: unset;
    }
}

@media (max-width: 575.98px) {
    .subscribe-form {
        flex-direction: column;
        margin-top: 28px;
        border: none;
        border-radius: 50px;
        min-width: unset;
        width: 100%;
        box-sizing: border-box;
    }

    .subscribe-input {
        border: 1px solid white;
        border-radius: 50px;
        padding: 13px 0 11px;
        max-width: 500px;
        min-width: 200px;
        width: 100%;
        text-align: center;
    }

    .subscribe-button {
        flex: 0 0 50px;
        max-width: 500px;
        min-width: 200px;
        width: 100%;
        box-sizing: border-box;
        margin-top: 14px;
    }

    .subscribe-title {
        font-size: 28px;
    }
}

/* Benefits section */
#benefits {
    display: flex;
    padding-top: 43px;
    margin-bottom: 54px;
}

.benefits {
    padding-right: calc(var(--bs-gutter-x) * .5);
    padding-left: calc(var(--bs-gutter-x) * .5);
}

#benefits .benefit {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 50px;
    padding: 25px;

    background: #0082FF;
}

#benefits .benefit img {
    max-height: 150px;
    width: fit-content;
    max-width: 100%;
}

#benefits .benefit div {
    font-size: 1.5rem;
    line-height: 1.219;
    color: #FFFFFF;
}

/* Brands section */

#brands {
    /*margin-bottom: 100px;*/
}

#brands .right-arrow.swiper-button-next {
    margin-left: 2px !important;
}

#brands .brand-card {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
    width: fit-content;
}

#brands .brand-card img {
    transition: all 0.3s ease-out;
    max-width: 99px;
}

#brands .brand-card img:hover {
    transform: scale(1.1);
}

/* Contacts section */
#contacts-menu {
    padding-top: 50px;
}

.contacts-menu-section {
    background-color: #F5F5F5;
}

.contacts-menu-section > .container {
    overflow: hidden;
}

.contacts-menu-section .logo {
    margin-bottom: 80px;
}

.contacts-menu-section .site-logo {
    max-width: 120px;
    height: auto;
}

.contacts-menu-section .menu {
    margin-bottom: 45px;
}

.contacts-menu-section .menu-title {
    text-transform: uppercase;
    margin-bottom: 20px;
}

.contacts-menu-section .menu-items {
    --bs-gutter-x: 5px;
}

.contacts-menu-section .contacts-menu-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 18px 22px;
    gap: 10px;
    height: 100%;

    font-size: 0.875rem;

    background: #FFFFFF;
    border-radius: 10px;
    color: black;
}

.contacts-menu-section .white-block {
    background-color: white;
}

.contacts-menu-section .col-contacts {
    padding-top: 35px;
    /*padding-left: 20px;*/
}

.map-section {
    background-color: white;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    margin-top: -80px;
}
@media (max-width: 1439.98px) {
    .map-section {
        margin-top: -83px;
    }
}
@media (max-width: 991.98px) {
    .map-section {
        margin-top: -160px;
        grid-template-columns: 1fr;
    }
}

.map-wrapper {
    min-height: 445px;
}
@media (max-width: 1439.98px) {
    .map-wrapper {
        min-height: 405px;
    }
}
@media (max-width: 991.98px) {
    .map-wrapper {
        min-height: 395px;
    }
}
@media (max-width: 767.98px) {
    .map-wrapper {
        min-height: 385px;
    }
}
@media (max-width: 575.98px) {
    .map-wrapper {
        min-height: 375px;
    }
}

.map-contacts {
    padding-top: 26px;
    padding-right: 56px;
    padding-left: 12px;
}
@media (max-width: 991.98px) {
    .map-contacts {
        margin-left: auto;
        margin-right: auto;
        padding: 26px 20px 0;
        width: 100%;
        margin-bottom: 45px;
    }
}
@media (max-width: 767.98px) {
    .map-contacts {
        margin-left: auto;
        margin-right: auto;
        padding: 26px 20px 0;
        margin-bottom: 45px;
    }
}

.contacts-menu-section h2 {
    font-family: 'Gilroy';
    font-style: normal;
    font-weight: 900;
    /*font-size: 40px;*/
    line-height: 1;
}
.contacts-title {
    text-transform: uppercase;
    margin-bottom: 30px;
}
.contacts-title-map {
    margin-bottom: 51px;
}

.contacts-menu-section h6 {
    font-weight: 800;
    font-size: 0.75rem;
    line-height: 1.166;
    text-transform: uppercase;
    color: #4C81FF;
    margin-bottom: 5px;
}

.contacts-menu-section .contact-badges-wrapper {
    margin-bottom: 20px;
}

.contacts-menu-section .contact-badges {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 10px;
}

.contacts-menu-section .contact-badge {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 7px 20px 4px 20px;

    /*font-family: 'Helvetica', sans-serif;*/
    /*font-size: 16px;*/

    font-weight: 600;
    line-height: 1.75;
    background: #F5F5F5;
    border-radius: 20px;
}

.contacts-menu-section .address-wrapper {
    margin-bottom: 30px;
}

.contacts-menu-section .address-wrapper h6 {
    margin-bottom: 10px;
}

.contacts-menu-section .socials-wrapper h6 {
    margin-bottom: 15px;
}

.contacts-menu-section .socials {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 25.18px;
}

.contacts-menu-section .social-icon {
    display: block;
    background-size: cover;
    height: 28px;
    width: 28px;
}

.contacts-menu-section .form-wrapper {
    background-color: #F5F5F7;
    /*padding: 35px 40px 40px 30px;*/
}

.contacts-menu-section .form-title {
    text-transform: uppercase;
    margin-bottom: 35px;
}

.contacts-menu-section form .row {
    --bs-gutter-x: 7px;
    margin-bottom: 10px;
}

.contacts-menu-section form input[type='text'], .contacts-menu-section form input[type='tel'] {
    background: #FFFFFF;
    border: rgba(255, 255, 255, 0) 1px solid;
    border-radius: 10px;
    padding: 17px 30px;

    color: #000000;
}

.contacts-menu-section form input::placeholder {
    color: #000000;
}

.contacts-menu-section form input[type='checkbox'] {
    /* Rectangle 117 */

    box-sizing: border-box;
    border: 1px solid #292929;
    border-radius: 6px;
    background-color: #F5F5F7;
    height: 20px;
    width: 20px;
    margin-right: 10px;
}

.contacts-menu-section form input[type='checkbox']:checked {
    background-color: #4C81FF;
    border-color: #4C81FF;
}

.contacts-menu-section form input[name='name'] {
    margin-bottom: 8px;
}

.contacts-menu-section form .form-check {
    display: flex;
    align-items: center;
    margin-bottom: 40px;
}

.contacts-menu-section form .form-check-label {
    font-size: 0.75rem;
    line-height: 1.166;
    padding-top: 8px;
}

.contacts-menu-section form button,
.wc-block-components-button.wp-element-button.wc-block-cart__submit-button,
.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button,
.wp-block-woocommerce-checkout-actions-block .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
    background: #000000;
    border-radius: 50px;

    line-height: 1;
    /* identical to box height */
    text-transform: uppercase;

    color: #FFFFFF;
}

.contacts-menu-section form button,
.wp-block-woocommerce-checkout-actions-block .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
    padding: 14px 80px 11px;
}

/* Main content containers should grow to push footer down */
.container {
    flex: 1 0 auto;
}

footer {
    --bs-gutter-x: 1.5rem;

    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    column-gap: 60px;
    row-gap: 20px;
    background-color: #F5F5F7;
    padding: 24px calc(var(--bs-gutter-x) * 0.5);
    color: #4C4C4C;
    margin-top: auto; /* Push footer to bottom */
}

footer a {
    color: #4C4C4C;
}

footer > * {
    opacity: 0.5;
}

/* Footer */
footer .footer-menu {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    column-gap: 60px;
    row-gap: 10px;
    margin: 0;
    padding: 0;
}

footer .footer-menu li {
    list-style: none;
    text-decoration: none;
}

footer .site-author {
    color: #4C4C4C;
    opacity: 0.3;
}

@-webkit-keyframes bounceInDown {
    0%,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }
    0% {
        -webkit-transform: translate3d(0, -3000px, 0);
        transform: translate3d(0, -3000px, 0);
        opacity: 0;
    }
    60% {
        -webkit-transform: translate3d(0, 25px, 0);
        transform: translate3d(0, 25px, 0);
        opacity: 1;
    }
    75% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0);
    }
    to {
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes bounceInDown {
    0%,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }
    0% {
        -webkit-transform: translate3d(0, -3000px, 0);
        transform: translate3d(0, -3000px, 0);
        opacity: 0;
    }
    60% {
        -webkit-transform: translate3d(0, 25px, 0);
        transform: translate3d(0, 25px, 0);
        opacity: 1;
    }
    75% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0);
    }
    to {
        -webkit-transform: none;
        transform: none;
    }
}

.bounceInDown {
    -webkit-animation-name: bounceInDown;
    animation-name: bounceInDown;
}

#scrollUpBtn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 999;
    display: none;
    width: 44px;
    height: 44px;
    font-size: 20px;
    line-height: 1;
    opacity: 0.5;
    padding: 0;
    text-align: center;
    transition: opacity 0.3s ease;
    background-color: #000;
    box-shadow: 0px 0px 5px 0px rgb(0 0 0 / 60%);
}

#scrollUpBtn:hover {
    opacity: 0.7;
}

#scrollUpBtn .arrow-up {
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: 20px;
    width: 20px;
    background-image: url("../images/icons/yellow-arrow.svg");
    background-size: cover;
    transform: rotate(90deg);
}

/*───────────────────────────────────────────
  FILTER SIDEBAR (widgets)
───────────────────────────────────────────*/

/* widget body initially open (Bootstrap collapses duplicate) */
#shop-sidebar .widget-content {
    margin-bottom: 18px;
}

/* Inputs */
#shop-sidebar input[type=radio],
#shop-sidebar input[type=checkbox] {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border: 2px solid #000;
    border-radius: 3px;
    flex: none;
    cursor: pointer;
    position: relative;
}

#shop-sidebar input[type=radio]:checked,
#shop-sidebar input[type=checkbox]:checked {
    background: #FCBC10;
    border-color: #FCBC10;
}

#shop-sidebar input[type=radio]:checked::before,
#shop-sidebar input[type=checkbox]:checked::before {
    content: '';
    position: absolute;
    inset: 4px;
    background: #fff;
    border-radius: inherit;
}

/* count badge */
#shop-sidebar .brand-filter span,
#shop-sidebar .aa-price-filter span.text-muted,
#shop-sidebar .widget_layered_nav .count {
    font-size: 0.8125rem; /* 13 px */
    color: #B3B3B3;
    margin-left: 4px;
}

/* reset link */
#shop-sidebar .reset-filters {
    color: #E53935; /* red 600 */
    font-weight: 600;
    display: inline-block;
    margin: 14px 0 0;
}

#shop-sidebar .reset-filters:hover {
    color: #B71C1C;
    text-decoration: none;
}

/* narrower gutter in sidebar */
@media (min-width: 992px) {
    #shop-sidebar {
        padding-right: 0.5rem;
    }
}

/* ─── Brand Filter Styling ───────────────────────────────────────────── */
.brand-filter {
    max-height: 200px; /* show roughly 5 items */
    overflow: hidden;
    transition: max-height .3s ease;
}

.brand-filter.expanded {
    max-height: none;
}

.brand-filter li {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 6px 0;
    font-size: .875rem;
    line-height: 1.3;
}

.brand-filter input[type=checkbox] {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border: 2px solid #000;
    border-radius: 3px;
    position: relative;
    cursor: pointer;
}

.brand-filter input[type=checkbox]:checked {
    background: #FCBC10;
    border-color: #FCBC10;
}

.brand-filter input[type=checkbox]:checked::before {
    content: '';
    position: absolute;
    inset: 4px;
    background: #fff;
    border-radius: 2px;
}

.brand-filter .count {
    color: #B3B3B3;
    font-size: .8125rem;
    margin-left: auto;
}

/* “Show more” link */
.brand-show-more {
    font-size: .875rem;
    font-weight: 600;
    color: #007bff;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
}

.brand-show-more .toggle-arrow {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    margin-left: 4px;
    transition: transform .25s ease;
}

.brand-show-more.expanded .toggle-arrow {
    transform: rotate(-135deg);
}

#brands-catalog .category-card {
    min-width: 325px; /* fill that 380px track */
    min-height: 368px;
    height: 100%;
}

.brands-catalog {
    display: flex;
    flex-wrap: wrap;
    column-gap: 20px;
    row-gap: 40px;
}

.brands-group {
    display: flex;
    gap: 15px;
    flex-direction: column;
    width: 100%;
}

.brands-group-full .brand-logos-grid {
    align-content: flex-start;
    flex-direction: row;
}

.brands-row {
    display: flex;
    gap: 10px;
}

.brand-logos-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    flex-direction: column;
}

.brand-logos-grid .brand-logo {
    position: relative;
    width: calc(50% - 5px);
    grid-column: span 2;
    height: 116px;
    background: var(--bs-light);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    transition: all .3s ease-out;
    transform-origin: center center; /* scale from center */
}

.brand-logos-grid .brand-logo:hover {
    transform: scale(1.05);
    z-index: 2;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.15);
}

.brand-logos-grid .brand-logo:hover img {
    transform: scale(1);
}

.brand-logos-grid .brand-logo img {
    transform: scale(0.95);
    display: block;
    transition: transform .3s ease-out;
    transform-origin: center center;
    max-width: 80%;
    height: auto;
}

/* Compare Notification Styles */
.compare-notification {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 9999;
    visibility: hidden;
    opacity: 0;
    transform: translateY(100%);
    transition: all 0.3s ease-in-out;
}

.compare-notification.show {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}

.compare-notification-content {
    background-color: var(--bs-blue);
    color: white;
    padding: 15px 20px;
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-width: 250px;
    max-width: 350px;
}

.compare-notification-close {
    background: none;
    border: none;
    color: white;
    font-size: 20px;
    cursor: pointer;
    margin-left: 10px;
    padding: 0 5px;
}

.compare-notification-close:hover {
    color: var(--bs-warning);
}

.wc-block-components-order-summary .wc-block-components-order-summary-item__quantity {
    border: 1px solid hsl(0deg 0% 7% / 27%) !important;
}

.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button {
    border: none;
}

.wc-block-components-button.wp-element-button.wc-block-cart__submit-button,
.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button
{
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out !important;
}

.wc-block-components-button.wp-element-button.wc-block-cart__submit-button:hover,
.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button:hover
{
    color: var(--bs-btn-hover-color) !important;
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
}

.wc-block-components-product-price__regular {
    color: #C4C4C4;
}

/* ─────────── Checkout Results / Thank You Page ─────────── */

.woocommerce-order {
    max-width: 750px;
    margin: 3rem auto 2rem auto;
    padding: 2.5rem 2rem;
    background: #fff;
    border-radius: 14px;
    border: 1px solid #ececec;
    box-shadow: 0 4px 16px rgba(0,0,0,0.04);
}

.woocommerce-order h1, .woocommerce-order h2, .woocommerce-order h3 {
    font-family: inherit;
    font-weight: 800;
    margin-bottom: 2rem;
    color: #171717;
}

.woocommerce-order .woocommerce-notice,
.woocommerce-order .woocommerce-thankyou-order-received {
    background: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
    padding: 1.2rem 1.5rem;
    border-radius: 8px;
    margin-bottom: 2rem;
    font-size: 1.1rem;
    font-weight: 600;
}

.woocommerce-order .order_details,
.woocommerce-order .woocommerce-order-overview,
.woocommerce-order .woocommerce-thankyou-order-details {
    margin-bottom: 2rem;
    padding: 1rem 0;
    border-bottom: 1px solid #ececec;
}

.woocommerce-order .order_details {
    list-style: none;
    margin: 0 0 2rem 0;
    padding: 0;
    font-size: 1rem;
}

.woocommerce-order .order_details li {
    margin-bottom: 0.7rem;
    font-size: 1rem;
    color: #222;
    font-weight: 400;
}

.woocommerce-order .order_details li strong {
    color: #171717;
    font-weight: 700;
}

.woocommerce-order .woocommerce-order-details {
    margin-bottom: 2.2rem;
}

.woocommerce-order .woocommerce-order-details h2,
.woocommerce-order .woocommerce-column__title {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 1.2rem;
}

.woocommerce-order .shop_table {
    width: 100%;
    border-radius: 10px;
    border: 1px solid #eee;
    background: #fafbfc;
    font-size: 1rem;
    margin-bottom: 2rem;
    box-shadow: none;
}

.woocommerce-order .shop_table th,
.woocommerce-order .shop_table td {
    padding: 0.8rem 1rem;
    text-align: left;
    border: none;
}

.woocommerce-order .shop_table th {
    background: #f3f3f3;
    font-weight: 700;
    color: #171717;
}

.woocommerce-order .shop_table tr:nth-child(even) td {
    background: #f7f8fa;
}

.woocommerce-order .woocommerce-table__product-name {
    color: #0456e6;
    font-weight: 500;
    font-size: 1rem;
}

.woocommerce-order address {
    background: #f5f7fa;
    padding: 1.2rem 1rem;
    border-radius: 8px;
    border: 1px solid #eee;
    margin-bottom: 1rem;
    font-size: 1rem;
}

.woocommerce-order .woocommerce-order-details__title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 1rem;
}

.page-template-page-favorites .page-title {
    margin-left: 8px;
}

/* Responsive */
@media (max-width: 900px) {
    .woocommerce-order {
        padding: 1.5rem 0.7rem;
        max-width: 100%;
    }
}

@media (max-width: 600px) {
    .woocommerce-order .shop_table th,
    .woocommerce-order .shop_table td {
        padding: 0.6rem 0.6rem;
        font-size: 0.97rem;
    }
    .woocommerce-order .woocommerce-order-details h2,
    .woocommerce-order .woocommerce-column__title {
        font-size: 1.3rem;
    }
}


.auth-modal {
    display: none; /* Показывается по клику */
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.7);
    z-index: 9999;
    justify-content: center;
    align-items: center;
    max-width: 100vw;
}
.auth-modal.active { display: flex; }
.auth-modal__content {
    background: #fff;
    border-radius: 24px;
    padding: 2.5rem 1.5rem 2rem 1.5rem;
    width: 450px;
    /*max-width: 70vw;*/
    box-shadow: 0 4px 32px rgba(0,0,0,0.2);
    position: relative;
    text-align: center;
}
.auth-modal__title {
    font-size: 2.5rem;
    font-weight: 800;
    margin-bottom: 2.125rem;
    text-align: left;
}
.auth-modal__input {
    width: 100%;
    background: #F5F5F5;
    border-radius: 50px;
    border: none;
    font-size: 1rem;
    margin-bottom: 5px;
    padding: 1rem 1.56rem;
    outline: none;
}
.auth-modal__btn {
    width: 100%;
    border-radius: 28px;
    border: none;
    padding: 1rem;
    font-size: 1.05rem;
    font-weight: 600;
    margin-bottom: 1rem;
    cursor: pointer;
}
.auth-modal__btn--primary {
    background: #000;
    color: #fff;
    margin-bottom: 1.2rem;
}
.auth-modal__forgot {
    text-align: right;
    font-size: 0.875rem;
    margin-bottom: 1rem;
}
.auth-modal__register {
    text-align: center;
    font-size: 0.875rem;
    margin-top: 1rem;
}
.auth-modal__register a {
    color: #fcbc10;
    text-decoration: none;
    font-weight: 500;
}

.auth-modal__register a:hover {
    color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1)) !important;
}

.auth-modal__close {
    position: absolute;
    right: 1.2rem;
    top: 1.2rem;
    background: none;
    border: none;
    font-size: 2rem;
    cursor: pointer;
}

body.home:not(.scrolled) .topbar {
    background-color: unset;
    transition: background-color 0.3s;
}
