/* FlySpark overrides for the Olight theme — loaded after the theme bundle + Elementor post CSS.
   The theme CSS files are never edited; every deviation lives here. */

/* Root layout puts Tailwind `bg-background` (dark) on <html>; theme pages are white like the demo.
   The dark color-scheme also turns UA `buttontext` white (invisible mobile menu toggler). */
html:root:has(.olight-body) {
  background: #fff;
  color-scheme: light;
}

/* Tailwind utilities generated from non-theme pages share Bootstrap class names; Bootstrap's
   `.collapse` never sets visibility, Tailwind's sets `visibility: collapse` (hides the mega-menu). */
.olight-body .collapse {
  visibility: visible;
}

/* `body#index …` rules: the id is server-rendered on the .olight-body stand-in, then moved to <body>. */
#index .breadcrumb-bg {
  display: none;
}

.olight-body .navbar-header .navbar-toggler {
  color: #22201d;
}
.off-canvas-active .navbar-header .navbar-toggler {
  color: #000;
}

/* FlySpark logo is 512x152; the theme slot was built for a 124x31 image. */
.olight-body img.logo {
  width: auto;
  max-height: 44px;
}

/* The theme CSS ships its RTL variants as bare `[dir] …` rules (the demo <html> has no dir), but the
   root layout always sets dir="ltr"|"rtl". Each `[dir]` rule is restored to its LTR base values under
   [dir=ltr] and kept as the RTL variant under [dir=rtl]. Same specificity, later file: these win. */
[dir=ltr] .box__fullwidth {
  left: 50%;
  right: auto;
  transform: translateX(-50%);
}
[dir=rtl] .box__fullwidth {
  right: 50%;
  left: auto;
  transform: translateX(50%);
}
[dir=ltr] .leo-megamenu .dropdown.aligned-fullwidth > .dropdown-menu {
  left: 50%;
  right: auto;
  transform: translate(-50%, 20px);
}
[dir=ltr] .leo-megamenu .dropdown:hover.aligned-fullwidth > .dropdown-menu {
  left: 50%;
  right: auto;
  transform: translate(-50%, 0);
}
[dir=ltr] #wrapper .breadcrumb-bg {
  right: auto;
  transform: none;
}
[dir=ltr] #wrapper .breadcrumb-bg.breadcrumb-full {
  left: 50%;
  right: auto;
  transform: translateX(-50%);
}
[dir=rtl] #wrapper .breadcrumb-bg.breadcrumb-full {
  right: 50%;
  left: auto;
  transform: translateX(50%);
}
[dir=ltr] #wrapper .breadcrumb ol {
  text-align: inherit;
}

/* The theme's float grid has no RTL build: mirror column floats and offsets in RTL editions.
   :where() keeps the float rule at single-class specificity so the theme's own float:none overrides still win. */
:where(.rtl) :is([class^='col-'], [class*=' col-']) {
  float: right;
}
@media (min-width:576px){.rtl .offset-sm-1{margin-left:0;margin-right:8.33333%}.rtl .offset-sm-2{margin-left:0;margin-right:16.66667%}.rtl .offset-sm-3{margin-left:0;margin-right:25%}.rtl .offset-sm-4{margin-left:0;margin-right:33.33333%}.rtl .offset-sm-5{margin-left:0;margin-right:41.66667%}.rtl .offset-sm-6{margin-left:0;margin-right:50%}.rtl .offset-sm-7{margin-left:0;margin-right:58.33333%}.rtl .offset-sm-8{margin-left:0;margin-right:66.66667%}.rtl .offset-sm-9{margin-left:0;margin-right:75%}.rtl .offset-sm-10{margin-left:0;margin-right:83.33333%}.rtl .offset-sm-11{margin-left:0;margin-right:91.66667%}}
@media (min-width:768px){.rtl .offset-md-1{margin-left:0;margin-right:8.33333%}.rtl .offset-md-2{margin-left:0;margin-right:16.66667%}.rtl .offset-md-3{margin-left:0;margin-right:25%}.rtl .offset-md-4{margin-left:0;margin-right:33.33333%}.rtl .offset-md-5{margin-left:0;margin-right:41.66667%}.rtl .offset-md-6{margin-left:0;margin-right:50%}.rtl .offset-md-7{margin-left:0;margin-right:58.33333%}.rtl .offset-md-8{margin-left:0;margin-right:66.66667%}.rtl .offset-md-9{margin-left:0;margin-right:75%}.rtl .offset-md-10{margin-left:0;margin-right:83.33333%}.rtl .offset-md-11{margin-left:0;margin-right:91.66667%}}
@media (min-width:992px){.rtl .offset-lg-1{margin-left:0;margin-right:8.33333%}.rtl .offset-lg-2{margin-left:0;margin-right:16.66667%}.rtl .offset-lg-3{margin-left:0;margin-right:25%}.rtl .offset-lg-4{margin-left:0;margin-right:33.33333%}.rtl .offset-lg-5{margin-left:0;margin-right:41.66667%}.rtl .offset-lg-6{margin-left:0;margin-right:50%}.rtl .offset-lg-7{margin-left:0;margin-right:58.33333%}.rtl .offset-lg-8{margin-left:0;margin-right:66.66667%}.rtl .offset-lg-9{margin-left:0;margin-right:75%}.rtl .offset-lg-10{margin-left:0;margin-right:83.33333%}.rtl .offset-lg-11{margin-left:0;margin-right:91.66667%}}
@media (min-width:1200px){.rtl .offset-xl-1{margin-left:0;margin-right:8.33333%}.rtl .offset-xl-2{margin-left:0;margin-right:16.66667%}.rtl .offset-xl-3{margin-left:0;margin-right:25%}.rtl .offset-xl-4{margin-left:0;margin-right:33.33333%}.rtl .offset-xl-5{margin-left:0;margin-right:41.66667%}.rtl .offset-xl-6{margin-left:0;margin-right:50%}.rtl .offset-xl-7{margin-left:0;margin-right:58.33333%}.rtl .offset-xl-8{margin-left:0;margin-right:66.66667%}.rtl .offset-xl-9{margin-left:0;margin-right:75%}.rtl .offset-xl-10{margin-left:0;margin-right:83.33333%}.rtl .offset-xl-11{margin-left:0;margin-right:91.66667%}}
/* Bootstrap .sr-only has no left/top: in RTL it sits past the right edge and adds a horizontal scroll.
   Its margin:-1px (and .elementor-screen-only's) then puts the 1px box at x=-1, which WebKit scrolls to in RTL. */
[dir=rtl] .sr-only:not(:focus) {
  left: 0;
  margin: 0;
}
[dir=rtl] .elementor-screen-only {
  margin: 0;
}

/* Breadcrumb trail colours are the theme's (white on the darkened fs/vt_olight_breadcrumb.jpg photo, like the demo). */
#wrapper .breadcrumb-bg.center .breadcrumb,
#wrapper .breadcrumb-bg.center .breadcrumb ol {
  text-align: center;
}
[dir=ltr] .popup-over.leo_block_top .popup-content {
  right: 0;
  left: auto;
}
@media (min-width: 992px) {
  [dir=ltr] .plist-2 .thumbnail-container:hover .product-price-and-shipping {
    transform: translateX(-100%);
  }
}
[dir=ltr] .pagination .page-list li a.next i::before,
[dir=ltr] .elementor-slick-slider .slick-arrows .slick-next::before,
[dir=ltr] .leoslick .slick-arrows .slick-next::before {
  content: "\f105";
}
[dir=ltr] .pagination .page-list li a.previous i::before,
[dir=ltr] .elementor-slick-slider .slick-arrows .slick-prev::before,
[dir=ltr] .leoslick .slick-arrows .slick-prev::before {
  content: "\f104";
}
[dir=ltr] .total-products.filter-toggle p {
  margin-left: 30px;
  margin-right: 0;
}
[dir=ltr] .product-detail .lSSlideOuter li,
[dir=ltr] .quickview .lSSlideOuter li {
  margin-right: 6px;
}
[dir=ltr] #_desktop_cart .leo-dropdown-cart .leo-cart-item-info .product-discount .regular-price {
  margin-left: 0;
  margin-right: 5px;
}
[dir=ltr] .paneltool .group-input > label {
  text-align: left;
}
[dir=ltr] .paneltool .group-input > label .fa {
  margin-left: 0;
  margin-right: 5px;
}
[dir=ltr] .el-scrolling-inner {
  animation: marquee 85s linear infinite;
}

/* BEGIN generated recolour (build-olight-recolour.mjs) — do not edit by hand */
:root {
  --theme-color-default: #fade58;
  --link-color-hover: #22201d;
  --product-button-bg-hover: #fade58;
  --product-button-color-hover: #000;
}
.slick-slider .slick-next:hover:before,.slick-slider .slick-prev:hover:before { color: #22201d; }
ul.slick-dots li.slick-active button:before { color: #22201d; }
.leo-megamenu .navbar-nav>li>a:hover,.leo-megamenu .navbar-nav>li>a:focus,.leo-megamenu .navbar-nav>li>a:active { color: #22201d; }
.leo-megamenu .navbar-nav>li.active>a,.leo-megamenu .navbar-nav>li:hover>a,.leo-megamenu .navbar-nav>li:focus>a { color: #22201d; }
.leo-megamenu .navbar-nav>li:hover>.caret,.leo-megamenu .navbar-nav>li:active>.caret { color: #22201d; }
.leo-megamenu .dropdown-menu li a:hover { color: #22201d; }
.leo-megamenu .dropdown-menu li a:hover .fa { color: #22201d; }
.leo-megamenu .dropdown-menu .menu-title a:hover { color: #22201d; }
.leo-megamenu .dropdown-menu a>.menu-title:hover { color: #22201d; }
.leo-megamenu .dropdown:hover>a { color: #22201d; }
.leo-megamenu .dropdown:hover>a .fa { color: #22201d; }
.leo-widget .widget-tab .nav-tabs>li a:hover,.leo-widget .widget-tab .nav-tabs>li a.active { color: #22201d; }
.leo-widget .widget-tab .nav-tabs>li.active a { color: #22201d; }
.leo-verticalmenu .title_block:hover { color: #22201d; }
.leo-verticalmenu.active .title_block { color: #22201d; }
div.verticalmenu .navbar-nav>li:hover>a { color: #22201d; }
div.verticalmenu .navbar-nav>li:hover>a:hover,div.verticalmenu .navbar-nav>li:hover>a:focus { color: #22201d; }
div.verticalmenu .navbar-nav>li:hover .caret { color: #22201d; }
div.verticalmenu .navbar-nav>li:hover .caret:before { color: #22201d; }
div.verticalmenu .navbar-nav>li.open>a { color: #000; }
div.verticalmenu .navbar-nav>li.open>a:hover,div.verticalmenu .navbar-nav>li.open>a:focus { color: #000; }
div.verticalmenu .navbar-nav>li.open .caret { color: #22201d; }
div.verticalmenu .navbar-nav>li.open .caret:before { color: #22201d; }
div.verticalmenu .navbar-nav>li .parent>.dropdown-toggle:hover { color: #22201d; }
div.verticalmenu .navbar-nav li.parent:hover>a:after { color: #22201d; }
div.verticalmenu ul li a:hover,div.verticalmenu ul li a:focus { color: #22201d; }
div.verticalmenu ul li a:hover .menu-title,div.verticalmenu ul li a:focus .menu-title { color: #22201d; }
div.verticalmenu .dropdown-menu ul li a:hover { color: #22201d; }
div.verticalmenu .dropdown-menu ul li a:hover .menu-title { color: #22201d; }
.off-canvas-active .navbar-header .navbar-toggler { color: #000; }
.off-canvas-button-megamenu:focus .off-canvas-nav:before { color: #22201d; }
.popup-over.leo_block_top .popup-content a:hover { color: #22201d; }
#_desktop_cart .cart-products-count { color: #000; }
.leo-plist-style .thumbnail-container .functional-buttons .btn-product.added,.leo-plist-style .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.leo-plist-style-1 .thumbnail-container .functional-buttons .btn-product.added,.leo-plist-style-1 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.leo-plist-style-1-1 .thumbnail-container .functional-buttons .btn-product.added,.leo-plist-style-1-1 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.leo-plist-style-2 .thumbnail-container .product-image .quick-view:hover { color: #22201d; }
.leo-plist-style-3 .thumbnail-container .functional-buttons .leo-wishlist-button i:hover { color: #22201d; }
.leo-plist-style-4 .thumbnail-container .functional-buttons .btn-product.added,.leo-plist-style-4 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.leo-plist-style-4 .thumbnail-container .button-review .btn-product i:hover,.leo-plist-style-4 .thumbnail-container .button-review .quick-view i:hover { color: #22201d; }
.leo-plist-style-5 .thumbnail-container .leo-more-cdown ul { color: #000; }
.leo-plist-style-6 .thumbnail-container .functional-buttons .btn-product.added,.leo-plist-style-6 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.leo-plist-style-7 .thumbnail-container .functional-buttons>div .btn-product:hover,.leo-plist-style-7 .thumbnail-container .functional-buttons>div .quick-view:hover { color: #22201d; }
.leo-plist-style-7 .thumbnail-container .functional-buttons>div .btn-product:hover i,.leo-plist-style-7 .thumbnail-container .functional-buttons>div .quick-view:hover i { color: #22201d; }
.leo-plist-style-8 .thumbnail-container .functional-buttons .btn-product:hover i,.leo-plist-style-8 .thumbnail-container .functional-buttons .quick-view:hover i { color: #22201d; }
.plist-1 .thumbnail-container .functional-buttons .btn-product.added,.plist-1 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.plist-2 .thumbnail-container .functional-buttons .btn-product.added,.plist-2 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.plist-2 .thumbnail-container .functional-buttons .btn-product:hover,.plist-2 .thumbnail-container .functional-buttons .quick-view:hover { color: #000; }
.plist-2 .thumbnail-container .cart .btn-product:hover { color: #22201d; }
.plist-3 .thumbnail-container .functional-buttons .btn-product.added,.plist-3 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.plist-3 .thumbnail-container .functional-buttons .btn-product.added i,.plist-3 .thumbnail-container .functional-buttons .quick-view.added i { color: #22201d; }
.plist-3 .thumbnail-container .functional-buttons .btn-product:hover i,.plist-3 .thumbnail-container .functional-buttons .quick-view:hover i { color: #22201d; }
.plist-4 .thumbnail-container .functional-buttons .btn-product.added,.plist-4 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.plist-5 .thumbnail-container .functional-buttons .btn-product.added,.plist-5 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.plist-5 .thumbnail-container .button-review .btn-product i:hover,.plist-5 .thumbnail-container .button-review .quick-view i:hover { color: #22201d; }
.plist-5 .thumbnail-container .button-review .btn-product:hover,.plist-5 .thumbnail-container .button-review .quick-view:hover { color: #22201d; }
.plist-6 .thumbnail-container .functional-buttons .btn-product.added,.plist-6 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.plist-7 .thumbnail-container .add-to-cart:hover { color: #000; }
.plist-7 .thumbnail-container .functional-buttons .btn-product:hover i,.plist-7 .thumbnail-container .functional-buttons .btn-product.added i,.plist-7 .thumbnail-container .functional-buttons .quick-view:hover i,.plist-7 .thumbnail-container .functional-buttons .quick-view.added i { color: #22201d; }
.plist-8 .thumbnail-container .product-image .quickview .btn-product.added,.plist-8 .thumbnail-container .product-image .quickview .quick-view.added { color: #000; }
.category-default a:hover { color: #22201d; }
.plist-style-1 .thumbnail-container .functional-buttons .btn-product.added,.plist-style-1 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.plist-df .thumbnail-container .functional-buttons .btn-product.added,.plist-df .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.plist-df .thumbnail-container .functional-buttons .btn-product:hover,.plist-df .thumbnail-container .functional-buttons .btn-product.added,.plist-df .thumbnail-container .functional-buttons .quick-view:hover,.plist-df .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.plist-style-2 .thumbnail-container .functional-buttons .btn-product.added,.plist-style-2 .thumbnail-container .functional-buttons .quick-view.added { color: #000; }
.btn-unstyle:focus .expand-more { color: #22201d; }
.group-span-filestyle .btn-default,.group-span-filestyle .bootstrap-touchspin .btn-touchspin,.bootstrap-touchspin .group-span-filestyle .btn-touchspin { color: #000; }
.custom-radio input[type="radio"]:checked+span { color: #000; }
.custom-checkbox input[type="checkbox"]:checked+span .checkbox-checked { color: #000; }
.search-widget form input[type="text"]:focus+button { color: #000; }
#header .top-menu a[data-depth="0"]:hover { color: #22201d; }
.top-menu .sub-menu a:hover { color: #22201d; }
.page-my-account #content .links a:hover i { color: #22201d; }
.page-footer .account-link:hover { color: #22201d; }
.products-selection .display>div a:hover { color: #22201d; }
.products-selection .display>div.selected a { color: #22201d; }
.products-sort-order .select-list:hover { color: #22201d; }
.facet-dropdown .select-list:hover { color: #000; }
.pagination .page-list li a.next:hover,.pagination .page-list li a.previous:hover { color: #22201d; }
.pagination .page-list li.current a,.pagination .page-list li:hover a { color: #000; }
.pagination a:hover,.pagination a:focus { color: #22201d; }
.pagination .current a { color: #22201d; }
.block-categories .category-sub-menu li>a:hover { color: #22201d; }
.block-categories .collapse-icons .add:hover,.block-categories .collapse-icons .remove:hover { color: #22201d; }
.block-categories .arrows .arrow-right:hover,.block-categories .arrows .arrow-down:hover { color: #22201d; }
#subcategories ul li .subcategory-name:hover { color: #22201d; }
.product-quantity .w-full .btn.added { color: #22201d; }
.product-cover .layer:hover { color: #000; }
#product-modal .modal-content .modal-body .arrows i:hover { color: #000; }
#product-modal .modal-content .modal-body .slick-arrow:before:hover { color: #22201d; }
.product-variants>.product-variants-item ul li .input-radio:checked+span,.product-variants>.product-variants-item ul li .input-color:checked+span { color: #000; }
.category-products .elementor-slick-slider ul.slick-dots li.slick-active button:before,.product-accessories .elementor-slick-slider ul.slick-dots li.slick-active button:before,.viewed-products .elementor-slick-slider ul.slick-dots li.slick-active button:before { color: #22201d; }
.products-accordion .card-header a:hover:after { color: #22201d; }
.product-detail .arrows-product-fake .slick-arrow:hover { color: #000; }
.product-detail.product-thumbs-left .product-thumb-images .slick-arrow:hover:before,.product-detail.product-thumbs-right .product-thumb-images .slick-arrow:hover:before { color: #22201d; }
.product-detail .reviews_advices li a:hover { color: #22201d; }
.product-detail .productcats a:hover,.product-detail .product-manufacturer a:hover,.product-detail .product-reference a:hover,.product-detail .product-quantities a:hover { color: #22201d; }
.product-detail .leonextprevious-container .leonextprevious-btn>p:hover { color: #22201d; }
.product-detail .leonextprevious-container .leonextprevious-btn .leonextprevious_info .price { color: #22201d; }
.product-detail .leonextprevious-container .leonextprevious-btn:hover>p { color: #22201d; }
.product-detail .leonextprevious-container .leonextprevious-btn:hover i { color: #22201d; }
.leo-more-cdown .deal-clock>li b { color: #000; }
.cart-grid-body a.label:hover { color: #22201d; }
.quickview .slick-arrows .slick-arrow:hover:before { color: #22201d; }
.footer-container li a:hover { color: #22201d; }
#products .page-not-found h1,#pagenotfound .page-not-found h1 { color: #22201d; }
.block_newsletter form input[type="text"]:focus+button { color: #000; }
#manufacturer #main ul .brand:hover-info .brand-name { color: #22201d; }
#back-top a:hover { color: #000; }
.blog-item .title a:hover { color: #22201d; }
.blog-item .more:hover { color: #22201d; }
.blog-tags a:hover span { color: #000; }
.blog-menu ul>li>a:hover { color: #22201d; }
.blog-menu .collapse-icons .add:hover,.blog-menu .collapse-icons .remove:hover { color: #22201d; }
.blog-lastest-rss a:hover { color: #22201d; }
#search-blog #blog-nav li a:hover { color: #22201d; }
ul.lists>li .post-name a:hover { color: #22201d; }
.leo-blog-tags .block_content>a:hover { color: #000; }
.blogs-container .childrens h4 a:hover { color: #22201d; }
.leo-modal-review .btn:hover { color: #000; }
.leo-compare-button.added,.leo-wishlist-button.added { color: #22201d; }
.wishlist-product-action .leo-wishlist-button-dropdown .move-wishlist-item { color: #000; }
#mywishlist .footer_links .btn:hover,#view_wishlist .footer_links .btn:hover { color: #22201d; }
.leo-productscompare-item .thumbnail-container .product-price-and-shipping .discount-percentage,.leo-wishlist-product .thumbnail-container .product-price-and-shipping .discount-percentage { color: #000; }
.leo-productscompare-item .thumbnail-container .product-flags li.new,.leo-wishlist-product .thumbnail-container .product-flags li.new { color: #000; }
.leo-productscompare-item .leo-touchspin .btn:hover,.leo-wishlist-product .leo-touchspin .btn:hover { color: #22201d; }
.leo-fly-cart .leo-fly-cart-icon { color: #22201d; }
.leo-remove-from-cart:hover { color: #22201d; }
.leo-cart-dropdown-action .cart-dropdow-viewcart:hover { color: #000; }
.footer_link .lnk_view:hover { color: #22201d; }
.iview-directionNav a:hover { color: #000; }
.iview-controlNav div.iview-items.customHtmlBullet a.iview-control.active span,.iview-controlNav div.iview-items.customHtmlBullet a.iview-control:hover span { color: #000; }
#leosearchtopbox a.cate-item.active,#leosearchtopbox a.cate-item:hover,#leosearchbox a.cate-item.active,#leosearchbox a.cate-item:hover { color: #000; }
#leo_search_block_top .btn:hover { color: #22201d; }
#leo_search_block_top.show_search .title_block:hover:before { color: #22201d; }
.leoproductsearch-result .ac_results ul li a:hover .lps-result-title { color: #22201d; }
.color-primary { color: #22201d; }
#leo_block_top.popup-over a.popup-title:hover { color: #22201d; }
.userinfo-selector>a:hover .fa-user { color: #22201d; }
.userinfo-selector .user-info a:hover { color: #22201d; }
.userinfo-selector .dropdown-item:hover { color: #22201d; }
.header__button--wishlist .ap-btn-wishlist .ap-total-wishlist { color: #000; }
.header__button--wishlist .ap-btn-wishlist:hover { color: #22201d; }
#_desktop_cart .header:hover i,#_desktop_cart .header:hover svg,#_desktop_cart .header a:hover i,#_desktop_cart .header a:hover svg { color: #22201d; }
.search__col--close i:hover,.closebox i:hover { color: #22201d; }
.icon__search:hover { color: #22201d; }
.btn_bar:hover svg path,.btn_search:hover svg path { fill: #22201d; }
.box__slide .slide__btn .caption-contain:hover { color: #000; }
.box__newletter .block_newsletter form button[type="submit"] { color: #000; }
.box__newletter .gdpr_consent .psgdpr_consent_message span a { color: #22201d; }
.elementor-LeoProductTab .widget-tabs-wrapper .widget-tab-title:hover { color: #22201d; }
.box__category--5 a:hover .item-sub-title { color: #22201d; }
.box__category--6 a:hover .item-image { color: #000; }
.box__category--6 a:hover .item-sub-title { color: #22201d; }
.menu--custom--left .btn__close:hover { color: #22201d; }
.leo-megamenu .menu__banner .menu__banner--button a:hover { color: #000; }
.menu-gallery .menu-gallery-item .caption a:hover { color: #22201d; }
.elementor-10 .elementor-element.elementor-element-d8d04d6 .elementor-social-icon:hover { background-color: #fade58; color: #000; }
.elementor-10 .elementor-element.elementor-element-92482cb .linklist-menu:hover, .elementor-10 .elementor-element.elementor-element-92482cb .linklist-menu *:hover { color: #22201d; }
.elementor-10 .elementor-element.elementor-element-92482cb .linklist-menu:focus, .elementor-10 .elementor-element.elementor-element-92482cb .linklist-menu *:focus { color: #22201d; }
.elementor-10 .elementor-element.elementor-element-aa4e806 .linklist-menu:hover, .elementor-10 .elementor-element.elementor-element-aa4e806 .linklist-menu *:hover { color: #22201d; }
.elementor-10 .elementor-element.elementor-element-aa4e806 .linklist-menu:focus, .elementor-10 .elementor-element.elementor-element-aa4e806 .linklist-menu *:focus { color: #22201d; }
.elementor-10 .elementor-element.elementor-element-14b89b0 .linklist-menu:hover, .elementor-10 .elementor-element.elementor-element-14b89b0 .linklist-menu *:hover { color: #22201d; }
.elementor-10 .elementor-element.elementor-element-14b89b0 .linklist-menu:focus, .elementor-10 .elementor-element.elementor-element-14b89b0 .linklist-menu *:focus { color: #22201d; }
.elementor-12 .elementor-element.elementor-element-887ca4f a.elementor-button:hover, .elementor-12 .elementor-element.elementor-element-887ca4f .elementor-button:hover, .elementor-12 .elementor-element.elementor-element-887ca4f a.elementor-button:focus, .elementor-12 .elementor-element.elementor-element-887ca4f .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-12 .elementor-element.elementor-element-c2166ad a.elementor-button:hover, .elementor-12 .elementor-element.elementor-element-c2166ad .elementor-button:hover, .elementor-12 .elementor-element.elementor-element-c2166ad a.elementor-button:focus, .elementor-12 .elementor-element.elementor-element-c2166ad .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-12 .elementor-element.elementor-element-eb4fb54 a.elementor-button:hover, .elementor-12 .elementor-element.elementor-element-eb4fb54 .elementor-button:hover, .elementor-12 .elementor-element.elementor-element-eb4fb54 a.elementor-button:focus, .elementor-12 .elementor-element.elementor-element-eb4fb54 .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-12 .elementor-element.elementor-element-a5fb50b a.elementor-button:hover, .elementor-12 .elementor-element.elementor-element-a5fb50b .elementor-button:hover, .elementor-12 .elementor-element.elementor-element-a5fb50b a.elementor-button:focus, .elementor-12 .elementor-element.elementor-element-a5fb50b .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-12 .elementor-element.elementor-element-4e768a3 a.elementor-button:hover, .elementor-12 .elementor-element.elementor-element-4e768a3 .elementor-button:hover, .elementor-12 .elementor-element.elementor-element-4e768a3 a.elementor-button:focus, .elementor-12 .elementor-element.elementor-element-4e768a3 .elementor-button:focus { color: #22201d; }
.elementor-12 .elementor-element.elementor-element-5650617 a.elementor-button:hover, .elementor-12 .elementor-element.elementor-element-5650617 .elementor-button:hover, .elementor-12 .elementor-element.elementor-element-5650617 a.elementor-button:focus, .elementor-12 .elementor-element.elementor-element-5650617 .elementor-button:focus { color: #22201d; }
.elementor-12 .elementor-element.elementor-element-f6acf29 a.elementor-button:hover, .elementor-12 .elementor-element.elementor-element-f6acf29 .elementor-button:hover, .elementor-12 .elementor-element.elementor-element-f6acf29 a.elementor-button:focus, .elementor-12 .elementor-element.elementor-element-f6acf29 .elementor-button:focus { color: #22201d; }
.elementor-12 .elementor-element.elementor-element-b8e0a2f a.elementor-button:hover, .elementor-12 .elementor-element.elementor-element-b8e0a2f .elementor-button:hover, .elementor-12 .elementor-element.elementor-element-b8e0a2f a.elementor-button:focus, .elementor-12 .elementor-element.elementor-element-b8e0a2f .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-12 .elementor-element.elementor-element-ccd5c64 a.elementor-button:hover, .elementor-12 .elementor-element.elementor-element-ccd5c64 .elementor-button:hover, .elementor-12 .elementor-element.elementor-element-ccd5c64 a.elementor-button:focus, .elementor-12 .elementor-element.elementor-element-ccd5c64 .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-12 .elementor-element.elementor-element-26ffe27 a.elementor-button:hover, .elementor-12 .elementor-element.elementor-element-26ffe27 .elementor-button:hover, .elementor-12 .elementor-element.elementor-element-26ffe27 a.elementor-button:focus, .elementor-12 .elementor-element.elementor-element-26ffe27 .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-12 .elementor-element.elementor-element-18a4f67 .blog-title:hover, .elementor-12 .elementor-element.elementor-element-18a4f67 .blog-title *:hover { color: #22201d; }
.elementor-12 .elementor-element.elementor-element-18a4f67 .blog-title:focus, .elementor-12 .elementor-element.elementor-element-18a4f67 .blog-title *:focus { color: #22201d; }
.elementor-12 .elementor-element.elementor-element-18a4f67 .blog-readmore:hover, .elementor-12 .elementor-element.elementor-element-18a4f67 .blog-readmore *:hover { color: #22201d; }
.elementor-12 .elementor-element.elementor-element-18a4f67 .blog-readmore:focus, .elementor-12 .elementor-element.elementor-element-18a4f67 .blog-readmore *:focus { color: #22201d; }
.elementor-13 .elementor-element.elementor-element-afc14fc .elementor-social-icon:hover i { color: #fade58; }
.elementor-13 .elementor-element.elementor-element-afc14fc .elementor-social-icon:hover svg { color: #fade58; }
.elementor-13 .elementor-element.elementor-element-2a87e5c .linklist-menu:hover, .elementor-13 .elementor-element.elementor-element-2a87e5c .linklist-menu *:hover { color: #22201d; }
.elementor-13 .elementor-element.elementor-element-2a87e5c .linklist-menu:focus, .elementor-13 .elementor-element.elementor-element-2a87e5c .linklist-menu *:focus { color: #22201d; }
.elementor-13 .elementor-element.elementor-element-f887a18 .elementor-icon-box-content .elementor-icon-box-title { color: #22201d; }
.elementor-13 .elementor-element.elementor-element-f887a18 .elementor-icon-box-content .elementor-icon-box-description { color: #22201d; }
.elementor-13 .elementor-element.elementor-element-4762212 .elementor-icon-box-content .elementor-icon-box-description { color: #22201d; }
.elementor-14 .elementor-element.elementor-element-684aede .elementor-social-icon:hover { background-color: #fade58; color: #000; }
.elementor-14 .elementor-element.elementor-element-a129617 .linklist-menu:hover, .elementor-14 .elementor-element.elementor-element-a129617 .linklist-menu *:hover { color: #22201d; }
.elementor-14 .elementor-element.elementor-element-a129617 .linklist-menu:focus, .elementor-14 .elementor-element.elementor-element-a129617 .linklist-menu *:focus { color: #22201d; }
.elementor-14 .elementor-element.elementor-element-133cb4d .linklist-menu:hover, .elementor-14 .elementor-element.elementor-element-133cb4d .linklist-menu *:hover { color: #22201d; }
.elementor-14 .elementor-element.elementor-element-133cb4d .linklist-menu:focus, .elementor-14 .elementor-element.elementor-element-133cb4d .linklist-menu *:focus { color: #22201d; }
.elementor-14 .elementor-element.elementor-element-9c771bc .linklist-menu:hover, .elementor-14 .elementor-element.elementor-element-9c771bc .linklist-menu *:hover { color: #22201d; }
.elementor-14 .elementor-element.elementor-element-9c771bc .linklist-menu:focus, .elementor-14 .elementor-element.elementor-element-9c771bc .linklist-menu *:focus { color: #22201d; }
.elementor-19 .elementor-element.elementor-element-b939b1a a.elementor-button:hover, .elementor-19 .elementor-element.elementor-element-b939b1a .elementor-button:hover, .elementor-19 .elementor-element.elementor-element-b939b1a a.elementor-button:focus, .elementor-19 .elementor-element.elementor-element-b939b1a .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-19 .elementor-element.elementor-element-bfc3b85 a.elementor-button:hover, .elementor-19 .elementor-element.elementor-element-bfc3b85 .elementor-button:hover, .elementor-19 .elementor-element.elementor-element-bfc3b85 a.elementor-button:focus, .elementor-19 .elementor-element.elementor-element-bfc3b85 .elementor-button:focus { color: #22201d; }
.elementor-19 .elementor-element.elementor-element-3bb3200 a.elementor-button:hover, .elementor-19 .elementor-element.elementor-element-3bb3200 .elementor-button:hover, .elementor-19 .elementor-element.elementor-element-3bb3200 a.elementor-button:focus, .elementor-19 .elementor-element.elementor-element-3bb3200 .elementor-button:focus { color: #22201d; }
.elementor-19 .elementor-element.elementor-element-f9425c8 a.elementor-button:hover, .elementor-19 .elementor-element.elementor-element-f9425c8 .elementor-button:hover, .elementor-19 .elementor-element.elementor-element-f9425c8 a.elementor-button:focus, .elementor-19 .elementor-element.elementor-element-f9425c8 .elementor-button:focus { color: #22201d; }
.elementor-19 .elementor-element.elementor-element-819de4e a.elementor-button:hover, .elementor-19 .elementor-element.elementor-element-819de4e .elementor-button:hover, .elementor-19 .elementor-element.elementor-element-819de4e a.elementor-button:focus, .elementor-19 .elementor-element.elementor-element-819de4e .elementor-button:focus { color: #22201d; }
.elementor-19 .elementor-element.elementor-element-fc56899 a.elementor-button:hover, .elementor-19 .elementor-element.elementor-element-fc56899 .elementor-button:hover, .elementor-19 .elementor-element.elementor-element-fc56899 a.elementor-button:focus, .elementor-19 .elementor-element.elementor-element-fc56899 .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-7 .elementor-element.elementor-element-d03f31c .elementor-social-icon:hover i { color: #22201d; }
.elementor-7 .elementor-element.elementor-element-d03f31c .elementor-social-icon:hover svg { color: #22201d; }
.elementor-7 .elementor-element.elementor-element-9367d94 .linklist-menu:hover, .elementor-7 .elementor-element.elementor-element-9367d94 .linklist-menu *:hover { color: #22201d; }
.elementor-7 .elementor-element.elementor-element-9367d94 .linklist-menu:focus, .elementor-7 .elementor-element.elementor-element-9367d94 .linklist-menu *:focus { color: #22201d; }
.elementor-7 .elementor-element.elementor-element-ecd487d .elementor-icon-box-content .elementor-icon-box-title { color: #22201d; }
.elementor-7 .elementor-element.elementor-element-ecd487d .elementor-icon-box-content .elementor-icon-box-description { color: #22201d; }
.elementor-7 .elementor-element.elementor-element-21e654b .elementor-icon-box-content .elementor-icon-box-description { color: #22201d; }
.elementor-9 .elementor-element.elementor-element-88f2255 a.elementor-button:hover, .elementor-9 .elementor-element.elementor-element-88f2255 .elementor-button:hover, .elementor-9 .elementor-element.elementor-element-88f2255 a.elementor-button:focus, .elementor-9 .elementor-element.elementor-element-88f2255 .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-9 .elementor-element.elementor-element-2b67a7c a.elementor-button:hover, .elementor-9 .elementor-element.elementor-element-2b67a7c .elementor-button:hover, .elementor-9 .elementor-element.elementor-element-2b67a7c a.elementor-button:focus, .elementor-9 .elementor-element.elementor-element-2b67a7c .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-9 .elementor-element.elementor-element-e9feeda a.elementor-button:hover, .elementor-9 .elementor-element.elementor-element-e9feeda .elementor-button:hover, .elementor-9 .elementor-element.elementor-element-e9feeda a.elementor-button:focus, .elementor-9 .elementor-element.elementor-element-e9feeda .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-9 .elementor-element.elementor-element-1b2f7f3 a.elementor-button:hover, .elementor-9 .elementor-element.elementor-element-1b2f7f3 .elementor-button:hover, .elementor-9 .elementor-element.elementor-element-1b2f7f3 a.elementor-button:focus, .elementor-9 .elementor-element.elementor-element-1b2f7f3 .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-9 .elementor-element.elementor-element-7158fce a.elementor-button:hover, .elementor-9 .elementor-element.elementor-element-7158fce .elementor-button:hover, .elementor-9 .elementor-element.elementor-element-7158fce a.elementor-button:focus, .elementor-9 .elementor-element.elementor-element-7158fce .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-9 .elementor-element.elementor-element-1e0d64c a.elementor-button:hover, .elementor-9 .elementor-element.elementor-element-1e0d64c .elementor-button:hover, .elementor-9 .elementor-element.elementor-element-1e0d64c a.elementor-button:focus, .elementor-9 .elementor-element.elementor-element-1e0d64c .elementor-button:focus { background-color: #fade58; color: #000; }
.elementor-9 .elementor-element.elementor-element-7876fbe a.elementor-button:hover, .elementor-9 .elementor-element.elementor-element-7876fbe .elementor-button:hover, .elementor-9 .elementor-element.elementor-element-7876fbe a.elementor-button:focus, .elementor-9 .elementor-element.elementor-element-7876fbe .elementor-button:focus { color: #22201d; }
.elementor-9 .elementor-element.elementor-element-162a859 a.elementor-button:hover, .elementor-9 .elementor-element.elementor-element-162a859 .elementor-button:hover, .elementor-9 .elementor-element.elementor-element-162a859 a.elementor-button:focus, .elementor-9 .elementor-element.elementor-element-162a859 .elementor-button:focus { color: #22201d; }
.elementor-9 .elementor-element.elementor-element-7e789e0 a.elementor-button:hover, .elementor-9 .elementor-element.elementor-element-7e789e0 .elementor-button:hover, .elementor-9 .elementor-element.elementor-element-7e789e0 a.elementor-button:focus, .elementor-9 .elementor-element.elementor-element-7e789e0 .elementor-button:focus { color: #22201d; }
.elementor-9 .elementor-element.elementor-element-1750e4f a.elementor-button:hover, .elementor-9 .elementor-element.elementor-element-1750e4f .elementor-button:hover, .elementor-9 .elementor-element.elementor-element-1750e4f a.elementor-button:focus, .elementor-9 .elementor-element.elementor-element-1750e4f .elementor-button:focus { color: #22201d; }
.elementor-9 .elementor-element.elementor-element-8706e38 .blog-title:hover, .elementor-9 .elementor-element.elementor-element-8706e38 .blog-title *:hover { color: #22201d; }
.elementor-9 .elementor-element.elementor-element-8706e38 .blog-title:focus, .elementor-9 .elementor-element.elementor-element-8706e38 .blog-title *:focus { color: #22201d; }
.elementor-9 .elementor-element.elementor-element-8706e38 .blog-readmore:hover, .elementor-9 .elementor-element.elementor-element-8706e38 .blog-readmore *:hover { color: #22201d; }
.elementor-9 .elementor-element.elementor-element-8706e38 .blog-readmore:focus, .elementor-9 .elementor-element.elementor-element-8706e38 .blog-readmore *:focus { color: #22201d; }
/* END generated recolour */

/* Recolour exceptions the generated block above can't infer. */
/* The theme's own hover colours here are `var(--theme-color-default) !important` (yellow on white). */
.elementor-LeoProductTab .widget-tabs-wrapper .widget-tab-title:hover,
.box__category--5 a:hover .item-sub-title,
.box__category--6 a:hover .item-sub-title {
  color: #22201d !important;
}
.elementor-element-bea04ba .color-primary {
  color: #fade58;
}
.box__newletter .block_newsletter form button[type="submit"]:hover {
  color: #fff;
}

/* Country switcher (root layout, outside the theme markup). Tailwind v4 utilities live in
   @layer and lose to the unlayered theme CSS, so the shell widgets are styled here. */
.fs-country-toast {
  position: fixed;
  z-index: 60;
  right: 20px;
  bottom: 80px;
  width: 340px;
  max-width: calc(100vw - 24px);
  padding: 12px 12px 14px;
  background: #fff;
  border: 1px solid #eaeae9;
  border-radius: 10px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  color: #22201d;
  font-size: 13px;
  line-height: 1.45;
}
.fs-country-toast > div {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.fs-country-toast > div > div {
  flex: 1 1 auto;
  min-width: 0;
}
.fs-country-toast p {
  margin: 0;
  color: #22201d;
  font-size: 13px;
  line-height: 1.45;
}
.fs-country-toast svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
}
.fs-country-toast .fs-country-toast__cta {
  display: inline-block;
  margin-top: 10px;
  padding: 7px 14px;
  background: #fade58;
  color: #000;
  border-radius: 5px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  white-space: nowrap;
}
.fs-country-toast .fs-country-toast__cta:hover,
.fs-country-toast .fs-country-toast__cta:focus {
  background: #22201d;
  color: #fff;
}
.fs-country-toast .fs-country-toast__close {
  margin: -4px -4px 0 0;
  padding: 4px;
  border: 0;
  background: transparent;
  color: #6b6b6b;
  line-height: 0;
  cursor: pointer;
}
.fs-country-toast .fs-country-toast__close:hover {
  color: #22201d;
}
@media (max-width: 575px) {
  .fs-country-toast {
    left: 12px;
    right: 12px;
    width: auto;
    bottom: 76px;
  }
}
/* Mobile cookie banner is a full-width bottom bar (~152px), and up to ~880px the 448px tablet card still reaches under
   the right-anchored toast: lift the toast above it. */
@media (max-width: 879px) {
  body:has(#cookie-consent) .fs-country-toast {
    bottom: 164px;
  }
}

/* Floating edition pill (bottom-left, as on the pre-redesign site); desktop/tablet only. */
.fs-country-float {
  display: none;
  position: fixed;
  z-index: 55;
  left: 16px;
  bottom: 16px;
}
@media (min-width: 640px) {
  .fs-country-float {
    display: block;
  }
}
body:has(#cookie-consent) .fs-country-float {
  bottom: 148px;
}
.fs-country-pill {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid #eaeae9;
  border-radius: 6px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  color: #22201d;
  font-size: 12px;
  line-height: 1.3;
  cursor: pointer;
}
.fs-country-pill:hover,
.fs-country-pill[aria-expanded='true'] {
  border-color: #22201d;
}
.fs-country-pill svg {
  width: 14px;
  height: 14px;
}
.fs-country-list {
  width: 256px;
  max-height: 288px;
  overflow: auto;
  margin: 8px 0 0;
  padding: 4px;
  list-style: none;
  background: #fff;
  border: 1px solid #eaeae9;
  border-radius: 6px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  font-size: 12px;
}
.fs-country-list a {
  display: block;
  padding: 8px 12px;
  color: #22201d;
  border-radius: 4px;
}
.fs-country-list a:hover,
.fs-country-list a:focus {
  background: #fade58;
  color: #000;
}
.fs-country-list a.is-current {
  font-weight: 600;
}
/* Cookie consent (components/cookie-consent.tsx): theme btn-primary / btn-secondary in a fixed bar. */
#cookie-consent {
  position: fixed;
  z-index: 100;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 16px;
  background: #fff;
  border-top: 1px solid #eaeae9;
  box-shadow: 0 -6px 24px rgba(0, 0, 0, 0.1);
  color: #22201d;
  font-size: 14px;
  line-height: 1.5;
}
@media (min-width: 768px) {
  #cookie-consent {
    left: 16px;
    right: auto;
    bottom: 16px;
    max-width: 448px;
    border: 1px solid #eaeae9;
    border-radius: 10px;
  }
}
@media (max-width: 767px) {
  body:has(#cookie-consent) #back-top {
    bottom: 164px;
  }
}
#cookie-consent .cookie-law-content {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
#cookie-consent .cookie-law-content > .material-icons {
  flex: 0 0 auto;
  font-size: 20px;
  color: #22201d;
}
#cookie-consent p {
  margin: 0 0 12px;
  color: #22201d;
  font-size: 14px;
}
#cookie-consent p a {
  color: #22201d;
  text-decoration: underline;
}
#cookie-consent .cookie-law-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
#cookie-consent .btn {
  padding: 7px 16px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  border-radius: 5px;
}
@media (max-width: 1024px) {
  #cookie-consent .btn {
    min-height: 44px;
  }
}
#cookie-consent .btn-secondary {
  border: 1px solid #22201d;
  background: #fff;
  color: #22201d;
}
#cookie-consent .btn-secondary:hover,
#cookie-consent .btn-secondary:focus {
  background: #22201d;
  color: #fff;
}

.fs-country-pill {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  background: #fff;
  border: 1px solid #eaeae9;
  border-radius: 5px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  color: #22201d;
  font-size: 12px;
  line-height: 1.3;
  cursor: pointer;
}
.fs-country-pill:hover {
  border-color: #22201d;
}
.fs-country-pill svg {
  width: 14px;
  height: 14px;
}
.fs-country-list {
  margin: 8px 0 0;
  padding: 4px;
  width: 256px;
  max-height: 288px;
  overflow: auto;
  list-style: none;
  background: #fff;
  border: 1px solid #eaeae9;
  border-radius: 5px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  font-size: 12px;
}
.fs-country-list a {
  display: block;
  padding: 8px 12px;
  color: #22201d;
  border-radius: 3px;
}
.fs-country-list a:hover,
.fs-country-list a:focus {
  background: #fade58;
  color: #000;
}

/* "Shop by category": FlySpark category names wrap to two lines; the theme's 36px line-height
   (sized for one-word demo items) would double-space them. Same 36px row height for single lines. */
div.verticalmenu .navbar-nav > li > a {
  padding: 8px 0;
  line-height: 20px;
}

/* Side cart (components/theme/cart-drawer.tsx): the Leo markup uses <a>; ours are <button>s. */
#_desktop_cart .leo-dropdown-cart .leo-dropdown-cart-content {
  padding-left: 15px;
  padding-right: 15px;
}
#_desktop_cart .leo-dropdown-cart .leo-bt-product-quantity {
  padding: 0;
  color: #22201d;
  cursor: pointer;
}
#_desktop_cart .leo-dropdown-cart .leo-remove-from-cart {
  padding: 0;
  border: 0;
  background: none;
  color: #6b6b6b;
  cursor: pointer;
}
#_desktop_cart .leo-dropdown-cart .leo-remove-from-cart:hover {
  color: #22201d;
}
#_desktop_cart .leo-dropdown-cart .leo-cart-item-info {
  padding-right: 24px;
}
#_desktop_cart .leo-dropdown-cart-total .label {
  color: #22201d;
}
#_desktop_cart .leo-dropdown-cart .cart-dropdow-checkout {
  background: #fade58;
  border-color: #fade58;
  color: #000;
}
#_desktop_cart .leo-dropdown-cart .cart-dropdow-checkout:hover {
  background: #22201d;
  border-color: #22201d;
  color: #fff;
}
#_desktop_cart .fs-cart-empty {
  padding: 30px 15px;
  text-align: center;
  color: #22201d;
}

/* Float header (body.keep-header, desktop only in the theme JS): in-page anchors land below it. */
@media (min-width: 991px) {
  html:has(body.keep-header) {
    scroll-padding-top: 120px;
  }
}

/* Footer is white: theme-colour text would be yellow on white. */
#footer .color-primary {
  color: #22201d !important;
  font-weight: 600;
}
#footer a.fs-footer-wa {
  color: #22201d;
  font-weight: 600;
  text-decoration: underline;
}
#footer a.fs-footer-wa:hover {
  color: #000;
}
/* Product-card action is a link, not the theme's <button>: size it like the button (shrink to its label). */
.product-miniature .button-container.cart > a.btn-product {
  width: fit-content;
  max-width: 100%;
  margin-inline: auto;
}
.product_list.list .product-miniature .button-container.cart > a.btn-product {
  margin-inline: 0;
}

/* Country-editions links under the copyright: one centred secondary line, like the copyright row. */
#footer .footer-editions .list-items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2px 14px;
  margin: 6px auto 0;
  padding: 0;
  max-width: 1100px;
  font-size: 12px;
  line-height: 20px;
  color: #6e6e6e;
}
#footer .footer-editions .list-item {
  margin: 0;
  padding: 0;
}
#footer .footer-editions .list-item a {
  color: #6e6e6e;
}
#footer .footer-editions .list-item a:hover {
  color: #22201d;
}

/* Elementor default-kit colours (global.css: blue #6ec1e4 / green #61ce70) for widgets without per-post styles.
   Same selectors, later file; per-post Elementor CSS is more specific and still wins. */
.elementor-widget-heading.elementor-widget-heading .elementor-heading-title {
  color: #22201d;
}
.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap {
  background-color: #fade58;
}
.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap,
.elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap {
  color: #22201d;
  border-color: #22201d;
}
.elementor-widget-button a.elementor-button,
.elementor-widget-button .elementor-button {
  background-color: #fade58;
  color: #000;
}
.elementor-widget-image-box .elementor-image-box-content .elementor-image-box-title {
  color: #22201d;
}
.elementor-widget-icon.elementor-view-stacked .elementor-icon {
  background-color: #fade58;
}
.elementor-widget-icon.elementor-view-framed .elementor-icon,
.elementor-widget-icon.elementor-view-default .elementor-icon {
  color: #22201d;
  border-color: #22201d;
}
.elementor-widget-icon.elementor-view-framed .elementor-icon,
.elementor-widget-icon.elementor-view-default .elementor-icon svg {
  fill: #22201d;
}
.elementor-widget-icon-box.elementor-view-stacked .elementor-icon {
  background-color: #fade58;
}
.elementor-widget-icon-box.elementor-view-framed .elementor-icon,
.elementor-widget-icon-box.elementor-view-default .elementor-icon {
  fill: #22201d;
  color: #22201d;
  border-color: #22201d;
}
.elementor-widget-icon-box .elementor-icon-box-content .elementor-icon-box-title {
  color: #22201d;
}
.elementor-widget-icon-list .elementor-icon-list-icon i {
  color: #22201d;
}
.elementor-widget-icon-list .elementor-icon-list-icon svg {
  fill: #22201d;
}
.elementor-widget-counter .elementor-counter-number-wrapper {
  color: #22201d;
}
.elementor-widget-progress .elementor-progress-wrapper .elementor-progress-bar {
  background-color: #fade58;
}
.elementor-widget-progress .elementor-title {
  color: #22201d;
}
.elementor-widget-testimonial .elementor-testimonial-name {
  color: #22201d;
}
.elementor-widget-tabs .elementor-tab-title {
  color: #22201d;
}
.elementor-widget-tabs .elementor-tab-title.elementor-active {
  color: #22201d;
}
.elementor-widget-accordion .elementor-accordion .elementor-tab-title {
  color: #22201d;
}
.elementor-widget-accordion .elementor-accordion .elementor-tab-title.elementor-active {
  color: #22201d;
}
.elementor-widget-toggle .elementor-toggle .elementor-tab-title {
  color: #22201d;
}
.elementor-widget-toggle .elementor-toggle .elementor-tab-title.elementor-active {
  color: #22201d;
}

/* ---- Shell accessibility (header/footer/menus) ---- */
/* Visible keyboard focus everywhere (the theme sets outline:none); yellow ring where the surface is dark. */
.olight-body :focus-visible,
#page :focus-visible {
  outline: 2px solid #22201d !important;
  outline-offset: 2px;
  box-shadow: 0 0 0 4px #fff;
}
.olight-body .btn-primary:focus-visible,
.olight-body .breadcrumb-bg :focus-visible,
.olight-body .elementor-element-bea04ba :focus-visible {
  outline-color: #fade58 !important;
  box-shadow: 0 0 0 4px #22201d;
}

/* Edition / currency menus sit at the left of the top bar: open to the right so they stay on screen. */
[dir=ltr] #header #_desktop_language_selector .popup-content,
[dir=ltr] #header #_desktop_currency_selector .popup-content {
  left: 0;
  right: auto;
}
[dir=rtl] #header #_desktop_language_selector .popup-content,
[dir=rtl] #header #_desktop_currency_selector .popup-content {
  right: 0;
  left: auto;
}

/* Products mega menu opens on keyboard focus like on hover (site-header-a11y.ts adds .fs-popup-closed on Esc). */
@media (min-width: 992px) {
  .leo-megamenu .dropdown:focus-within:not(.fs-popup-closed) > .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: none;
  }
  [dir=ltr] .leo-megamenu .dropdown:focus-within:not(.fs-popup-closed).aligned-fullwidth > .dropdown-menu {
    left: 50%;
    right: auto;
    transform: translate(-50%, 0);
  }
  [dir=rtl] .leo-megamenu .dropdown:focus-within:not(.fs-popup-closed).aligned-fullwidth > .dropdown-menu {
    right: 50%;
    left: auto;
    transform: translate(50%, 0);
  }
}
.leo-verticalmenu .verticalmenu-button {
  cursor: pointer;
}

/* Search toggle is a theme <div role=button>; the account trigger an <a role=button>. */
#header .btn_search {
  cursor: pointer;
}

/* Mobile menu: 44px hamburger target (icon unchanged), page behind does not scroll while it is open. */
@media (max-width: 991px) {
  #header .navbar-header .navbar-toggler {
    min-width: 44px;
    min-height: 44px;
  }
  html.fs-menu-open,
  html.fs-menu-open body {
    overflow: hidden;
  }
}

/* Footer quote form (components/theme/site-footer-quote.tsx) in the theme newsletter block. */
#footer .fs-quote-form .input-wrapper input[type="email"] {
  width: 100%;
}
#footer .fs-quote-details {
  margin-top: 15px;
  text-align: start;
}
#footer .fs-quote-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 15px;
}
#footer .fs-quote-grid label {
  display: block;
  margin: 0;
}
#footer .fs-quote-grid label > span {
  display: block;
  margin-bottom: 4px;
  font-size: 13px;
  color: #22201d;
}
#footer .fs-quote-grid .fs-quote-wide {
  grid-column: 1 / -1;
}
#footer .fs-quote-hp {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
#footer .fs-quote-note {
  margin: 10px 0;
  font-size: 12px;
  color: #6b6b6b;
}
#footer .fs-quote-note a {
  color: #22201d;
  text-decoration: underline;
}
#footer .fs-quote-details .alert,
#footer .fs-quote-done {
  margin: 10px 0 0;
  border-radius: 0;
  text-align: start;
}
@media (max-width: 575px) {
  #footer .fs-quote-grid {
    grid-template-columns: 1fr;
  }
}

/* Side cart close: a real button over the theme's corner. */
#_desktop_cart .leo-dropdown-cart::after {
  content: none;
}
#_desktop_cart .leo-dropdown-cart .fs-cart-close {
  position: absolute;
  top: 13px;
  right: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  background: none;
  color: #22201d;
  cursor: pointer;
}
#_desktop_cart .leo-dropdown-cart .fs-cart-close .material-icons {
  font-size: 22px;
}
[dir=rtl] #_desktop_cart .leo-dropdown-cart .fs-cart-close {
  right: auto;
  left: 13px;
}

/* RTL phone menu: the theme anchors the closed panel right but still slides it -100%, which parks it
   past the left edge where WebKit lets the page scroll sideways. Park it off the right edge instead,
   clipped by its zero-width wrapper until the menu opens. */
[dir=rtl] .off-canvas-nav-megamenu .offcanvas-mainnav {
  transform: translateX(100%);
}
[dir=rtl] .off-canvas-nav-megamenu:not(.active) {
  overflow: hidden;
}

/* The theme forces `.rtl *{direction:rtl!important}`, which overrides dir="ltr" (phone numbers, untranslated English
   lines, FAQ copy): let elements that ask for LTR keep it, so their full stop / "?" / "+91" stay where they belong. */
.rtl [dir=ltr],
.rtl [dir=ltr] * {
  direction: ltr !important;
}

/* RTL editions: Latin product names take their own direction (no truncation from the wrong end). */
[dir=rtl] .product-miniature .product-title,
[dir=rtl] .product-miniature .product-title a,
[dir=rtl] .leo-dropdown-cart .product-name a,
[dir=rtl] .lps-result-title {
  unicode-bidi: plaintext;
}

/* Text contrast: theme greys (#a1a1a0 2.6:1, #7a7a7a 4.3:1 on white) darkened to #6b6b6b (5.3:1). */
:root {
  --product-regular-price-color: #6b6b6b;
  --new-badge-background: #fade58;
  --new-badge-color: #22201d;
}
#product #wrapper .breadcrumb li a,
#product #wrapper .breadcrumb li::after,
.category-default a,
.social-sharing span,
.productcats .label,
.product-detail .product-manufacturer .label,
.product-detail .product-reference .label,
.product-detail .product-quantities .label,
.blog-item .blog-cat a,
ul.lists > li .info,
.elementor-12 .elementor-element.elementor-element-e68b8fe .widget-tab-title,
.elementor-12 .elementor-element.elementor-element-18a4f67 .cat,
.elementor-12 .elementor-element.elementor-element-18a4f67 .cat *,
.elementor-12 .elementor-element.elementor-element-18a4f67 .created,
.elementor-12 .elementor-element.elementor-element-18a4f67 .created *,
.text-muted,
.elementor-widget-text-editor,
.elementor-widget-image-box .elementor-image-box-content .elementor-image-box-description,
.elementor-widget-icon-box .elementor-icon-box-content .elementor-icon-box-description,
.elementor-widget-tabs .elementor-tab-content *,
.elementor-widget-accordion .elementor-accordion .elementor-tab-content,
.elementor-widget-toggle .elementor-toggle .elementor-tab-content {
  color: #6b6b6b;
}
.text-muted {
  color: #6b6b6b !important;
}

/* Touch targets in the header top bar and footer: at least 24px tall on phones. */
@media (max-width: 767px) {
  #header .js-dropdown > .btn-unstyle.popup-title {
    min-width: 24px;
    min-height: 24px;
  }
  #header .elementor-element-bea04ba a,
  #footer .elementor-widget-text-editor a,
  #footer .linklist-menu .list-item a,
  #footer .elementor-icon-list-item > a {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
  }
}

/* ---- Devices (phones/tablets, motion) ---- */
/* Touch widths: top-bar toggles, links and social icons fill a 44px row; header icons get a 44px hit area
   (negative margin keeps the theme's icon spacing). */
@media (max-width: 1024px) {
  #header .elementor-element-bea04ba {
    padding-top: 0;
    padding-bottom: 0;
  }
  #header .elementor-element-7d2d02a > .elementor-element-populated {
    margin-top: 0;
  }
  #header .header_logo a {
    display: inline-block;
  }
  #header .elementor-element-bea04ba .js-dropdown > .btn-unstyle.popup-title,
  #header .elementor-element-bea04ba .linklist-menu .item-text,
  #header .elementor-element-bea04ba .elementor-text-editor a,
  #header .elementor-element-bea04ba .elementor-social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
  }
  #header .elementor-element-bea04ba .js-dropdown > .btn-unstyle.popup-title,
  #header .elementor-element-bea04ba .elementor-social-icon {
    min-width: 44px;
  }
  #header .elementor-element-bea04ba .elementor-social-icon:not(:last-child) {
    margin-right: 0;
  }
  #header .elementor-element-bea04ba .linklist-menu .list-item {
    margin-top: 0;
    margin-bottom: 0;
  }
  #header .header-top .btn_search,
  #header .header-top #_desktop_cart a.header,
  #header .header-top #leo_block_top > .popup-title {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    margin: -10px;
  }
}
/* Tablets: the theme's 50/50 columns wrap the quick links under the edition menus; size the columns to their
   content so the bar stays one row, and drop the social icons below 992px (the theme hides them on phones). */
@media (min-width: 768px) and (max-width: 1024px) {
  #header .elementor-element-bea04ba .elementor-element-be43490 {
    flex: 1 1 auto;
    width: auto;
  }
  #header .elementor-element-bea04ba .elementor-element-7d2d02a {
    flex: 0 0 auto;
    width: auto;
  }
  #header .elementor-element-bea04ba .elementor-element-be43490 > .elementor-column-wrap > .elementor-widget-wrap {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  #header .elementor-element-afc14fc {
    display: none;
  }
}
/* Phones/tablets: the theme only floats the header above 990px. Keep the logo/menu/cart row on screen; the top
   bar scrolls away (--fs-topbar-h is its live height, set by site-header). */
@media (max-width: 991px) {
  #page {
    overflow: clip;
  }
  #header {
    position: sticky;
    top: calc(-1 * var(--fs-topbar-h, 0px));
    z-index: 1030;
  }
  #header.fs-header-stuck .header-top {
    box-shadow: 0 2px 12px rgba(34, 32, 29, 0.1);
  }
  html {
    scroll-padding-top: 80px;
  }
}
/* 992–1199px: the theme moves the menu to a second row (140px header); once the header floats (mini-navbar)
   keep it to one row like the >=1200px layout. */
@media (min-width: 992px) and (max-width: 1199px) {
  #header.mini-navbar .main__header {
    padding-top: 0 !important;
  }
  #header.mini-navbar .col__menu {
    order: 0;
    flex: 1;
    width: auto !important;
    padding-left: 24px;
  }
  [dir=rtl] #header.mini-navbar .col__menu {
    padding-left: 0;
    padding-right: 24px;
  }
  #header.mini-navbar .col__menu .elementor-element-aefa088 > .elementor-widget-container {
    padding-right: 16px;
  }
  #header.mini-navbar .col__menu .verticalmenu-button {
    font-size: 0;
  }
  #header.mini-navbar .col__menu .main--menu {
    flex: 1;
  }
  #header.mini-navbar .col__info {
    flex: 0 0 auto;
  }
}
/* prefers-reduced-motion: no entrance animations or long transitions (the hero and carousels stop
   auto-advancing in home5-template / hero-pause). */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    animation-delay: 0s !important;
    transition-duration: 0.01ms !important;
    transition-delay: 0s !important;
  }
  .elementor-invisible,
  .wow {
    visibility: visible !important;
  }
}

/* ---- Country editions: scripts, long labels, RTL ---- */
/* Inter Tight has no Arabic/Hebrew/CJK glyphs: name a native face per script instead of the platform's Arial/SC fallback. */
html:lang(ar) {
  --fs-script: "Noto Sans Arabic", "Geeza Pro", "Segoe UI", Tahoma;
}
html:lang(he) {
  --fs-script: "Noto Sans Hebrew", "Arial Hebrew", "Segoe UI";
}
html:lang(ja) {
  --fs-script: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, "Noto Sans JP";
}
html:lang(zh-Hant) {
  --fs-script: "PingFang TC", "Microsoft JhengHei", "Noto Sans TC";
}
html:lang(ko) {
  --fs-script: "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR";
}
html:is(:lang(ar), :lang(he), :lang(ja), :lang(zh-Hant), :lang(ko)) {
  --font-family-base: "Inter Tight", var(--fs-script), sans-serif;
  --font-family-heading: "Inter Tight", var(--fs-script), sans-serif;
  --font-family-megamenu: "Inter Tight", var(--fs-script), sans-serif;
  --font-family-senary: "Inter Tight", var(--fs-script), sans-serif;
  --font-family-septenary: "Inter Tight", var(--fs-script), sans-serif;
  --font-family-slider: "Inter Tight", var(--fs-script), sans-serif;
}

/* Long localized CTA labels (uk "Переглянути специфікацію", el, fi, hu) wrap inside the card button. */
.plist-style-1 .thumbnail-container .cart .btn-product {
  white-space: normal;
  max-width: 100%;
  height: auto;
  text-align: center;
}
.widget-tab-title {
  max-width: 100%;
  overflow-wrap: anywhere;
}

/* Safety net against sideways panning in RTL editions (slider tracks / parked panels overflow to the left). */
html[dir=rtl] body {
  overflow-x: clip;
}

/* RTL header: Elementor's per-widget spacing is physical (left/right) — mirror it so the category button keeps
   its gap before "Home" and the top-bar separators/icons sit between the items they divide. */
html[dir=rtl] .elementor-11 .elementor-element.elementor-element-aefa088 > .elementor-widget-container {
  padding: 0 0 0 54px;
}
html[dir=rtl] .elementor-13 .elementor-element.elementor-element-afc14fc {
  text-align: right;
}
html[dir=rtl] .elementor-13 .elementor-element.elementor-element-afc14fc > .elementor-widget-container {
  margin: 0 0 0 14px;
  padding: 0 0 0 15px;
  border-width: 0 0 0 1px;
}
html[dir=rtl] .elementor-13 .elementor-element.elementor-element-afc14fc .elementor-social-icon:not(:last-child) {
  margin-right: 0;
  margin-left: 15px;
}
html[dir=rtl] .elementor-13 .elementor-element.elementor-element-408b1b7 > .elementor-widget-container {
  margin: 0 15px 0 0;
  padding: 0 14px 0 0;
  border-width: 0 1px 0 0;
}
html[dir=rtl] .elementor-13 .elementor-element.elementor-element-408b1b7 .linklist-menu li.horizontal:after {
  right: auto;
  left: calc(-16px / 2);
}
html[dir=rtl] .elementor-13 .elementor-element.elementor-element-a2d3e6c > .elementor-widget-container {
  margin: 0 0 0 16px;
}
html[dir=rtl] .elementor-13 .elementor-element:is(.elementor-element-408b1b7, .elementor-element-2a87e5c) .list-items,
html[dir=rtl] .elementor-13 .elementor-element:is(.elementor-element-408b1b7, .elementor-element-2a87e5c) .list-items * {
  text-align: right;
  justify-content: right;
}
/* RTL hero: the slide photos keep their subject on the right, so the caption stays on the clear left side;
   carry the scrim further right so right-aligned lines ending near the middle stay legible. */
html[dir=rtl] .page-home .iviewSlider::before,
html[dir=rtl] .page-home .iview:not(:has(> .iviewSlider))::before {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.66) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0) 78%);
}

/* Edition-switch toast on phones: one compact row (prompt, CTA, 44px close) instead of a 20%-of-viewport card. */
@media (max-width: 575px) {
  .fs-country-toast {
    padding: 6px 4px 6px 10px;
  }
  .fs-country-toast > div {
    align-items: center;
    gap: 8px;
  }
  /* long CTAs (e.g. "Zur Ausgabe für Deutschland wechseln") drop under the prompt instead of squeezing it */
  .fs-country-toast > div > div {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 8px;
  }
  .fs-country-toast p {
    flex: 1 1 130px;
    min-width: 0;
    font-size: 12px;
    line-height: 1.3;
  }
  .fs-country-toast .fs-country-toast__cta {
    margin-top: 0;
    padding: 8px 10px;
  }
  .fs-country-toast .fs-country-toast__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    margin: 0;
  }
}
/* Full-screen menu overlay: hidden (opacity/visibility) but on-screen, so its lazy images loaded on every
   page. Not rendered until the theme runtime is up (only the theme can open it); then it is as before. */
html:not([data-olight-ready]) .box__menu--custom:not(.active) {
  content-visibility: hidden;
}

/* Currency signs (₹ on every page, ₴ ₪ ₺ zł in PDP price tables) from a 10 KB subset of Inter Tight latin-ext:
   declared after the theme's faces, so it is checked first for these characters and the 81 KB latin-ext file
   loads only for text that really needs it (e.g. Polish). Same font, same glyphs. */
@font-face {
  font-family: "Inter Tight";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/olight/fonts/inter-tight/inter-tight-currency.woff2) format("woff2");
  unicode-range: U+0141-0142, U+20A0-20AB, U+20AD-20C0;
}
@font-face {
  font-family: "Inter Tight";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(/olight/fonts/inter-tight/inter-tight-currency-italic.woff2) format("woff2");
  unicode-range: U+0141-0142, U+20A0-20AB, U+20AD-20C0;
}
