/*
 * Furnicom Modern Refresh v3
 * Scope: conservative visual modernization without changing legacy layout mechanics.
 * Important: do not override Bootstrap grid widths, generic .container, or every .button.
 */

:root {
  --fm-accent: #beae59;
  --fm-accent-hover: #a99a4c;
  --fm-accent-soft: rgba(190, 174, 89, .10);
  --fm-text: #26313f;
  --fm-muted: #687386;
  --fm-border: #e6e9ee;
  --fm-surface: #fff;
  --fm-soft: #f7f8fa;
  --fm-radius: 14px;
  --fm-shadow: 0 8px 26px rgba(24, 35, 52, .07);
  --fm-shadow-hover: 0 14px 34px rgba(24, 35, 52, .11);
}

/* Keep the refresh in sync with the selected legacy color scheme. */
body.furnicom-scheme-red {
  --fm-accent: #e93712;
  --fm-accent-hover: #cf2f0d;
  --fm-accent-soft: rgba(233, 55, 18, .09);
}
body.furnicom-scheme-roman {
  --fm-accent: #d66666;
  --fm-accent-hover: #c65353;
  --fm-accent-soft: rgba(214, 102, 102, .10);
}
body.furnicom-scheme-orange,
body.furnicom-scheme-orange2,
body.furnicom-scheme-orange3 {
  --fm-accent: #f06a2b;
  --fm-accent-hover: #d85a20;
  --fm-accent-soft: rgba(240, 106, 43, .10);
}
body.furnicom-scheme-blue,
body.furnicom-scheme-darkblue {
  --fm-accent: #2780c2;
  --fm-accent-hover: #1f6ca6;
  --fm-accent-soft: rgba(39, 128, 194, .10);
}
body.furnicom-scheme-cyan {
  --fm-accent: #18a9b5;
  --fm-accent-hover: #118f99;
  --fm-accent-soft: rgba(24, 169, 181, .10);
}

html,
body {
  background: #fff;
}

body {
  color: var(--fm-text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a {
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

/* --------------------------------------------------------------------------
   Header: retain the original dimensions so menu items never wrap unexpectedly
   -------------------------------------------------------------------------- */
.header-msg {
  border-bottom: 1px solid #eceef1;
}

.top-header {
  background: #fff;
}

#main-menu,
.main-menu {
  background: #fff;
  border-top: 1px solid #eceef1;
  border-bottom: 1px solid #e4e7eb;
  box-shadow: 0 4px 16px rgba(24, 35, 52, .045);
}

/* Undo the v1 generic nav treatment; keep Furnicom's proven 50px menu geometry. */
.primary-menu .navbar-inner .nav > li > a {
  border-radius: 0;
  transition: color .18s ease, background-color .18s ease;
}

.header-style1 .primary-menu .navbar-inner .nav > li > a,
.header-style3 .primary-menu .navbar-inner .nav > li > a {
  padding-left: 18px;
  padding-right: 18px;
  line-height: 50px;
}

/* Desktop main menu must remain one row. */
@media (min-width: 992px) {
  .primary-menu .navbar-inner,
  .primary-menu .navbar-inner .nav {
    height: 50px;
  }

  .primary-menu .navbar-inner .nav > li {
    height: 50px;
    white-space: nowrap;
  }

  .primary-menu .navbar-inner .nav > li > a {
    height: 50px;
    line-height: 50px;
    padding-top: 0;
    padding-bottom: 0;
  }
}

/* Search input modernization without touching unrelated forms. */
.top-form.top-search .topsearch-entry {
  border-radius: 10px;
  overflow: visible;
}

.widget_product_search form {
  border-radius: 10px;
  overflow: hidden;
}

.top-form.top-search .topsearch-entry input,
.widget_product_search input.search-field {
  border-color: #dfe3e8;
  background: #fff;
  box-shadow: none;
}

/* --------------------------------------------------------------------------
   Mega menu: compact grid instead of a giant overlay / nested floating panels
   -------------------------------------------------------------------------- */
@media (min-width: 992px) {
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu {
    position: static;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu {
    box-sizing: border-box;
    right: 0;
    left: auto;
    width: min(940px, calc(100vw - 48px));
    min-width: 0 !important;
    max-height: calc(100vh - 145px);
    overflow-x: hidden;
    overflow-y: auto;
    margin-top: 7px;
    padding: 20px 18px 18px;
    border: 1px solid var(--fm-border);
    border-radius: 16px;
    background: rgba(255,255,255,.985);
    box-shadow: 0 18px 50px rgba(18, 28, 45, .14);
    direction: rtl;
    text-align: right;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    column-gap: 0;
    row-gap: 18px;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li,
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu.two-column > li,
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu.three-column > li,
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu.four-column > li,
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu.five-column > li {
    box-sizing: border-box;
    display: block;
    float: none;
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 15px;
    border-left: 1px solid #edf0f3;
    vertical-align: top;
  }

  .rtl .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li {
    border-right: 0;
    border-left: 1px solid #edf0f3;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li:nth-child(5n),
  .rtl .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li:nth-child(5n) {
    border-left: 0;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li > a,
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li > span.have-title {
    position: relative;
    display: block;
    margin: 0 0 8px;
    padding: 0 0 10px;
    color: #202a36;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.7;
    text-transform: none;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li > a:after,
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li > span.have-title:after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 28px;
    height: 2px;
    border-radius: 99px;
    background: var(--fm-accent);
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li > .dropdown-sub.nav-level2 {
    margin: 0;
    padding: 0;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li > .dropdown-sub.nav-level2 > li {
    margin: 0;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li > .dropdown-sub.nav-level2 > li > a {
    display: block;
    min-height: 0;
    padding: 5px 8px 5px 0;
    border-radius: 7px;
    color: #586474;
    font-size: 12.5px;
    font-weight: 400;
    line-height: 1.65;
    text-transform: none;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li > .dropdown-sub.nav-level2 > li > a:before {
    content: "";
    width: 4px;
    height: 4px;
    margin: 0 0 0 7px;
    border-radius: 50%;
    background: #c7cdd5;
    display: inline-block;
    vertical-align: middle;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li > .dropdown-sub.nav-level2 > li > a:hover,
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li > .dropdown-sub.nav-level2 > li.active > a {
    color: var(--fm-accent);
    background: var(--fm-accent-soft);
  }

  /* Normal nested dropdowns stay compact and attached to their parent. */
  .primary-menu .navbar-inner .nav.nav-css > li > .dropdown-menu,
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-menu-custom > .dropdown-menu {
    min-width: 230px;
    padding: 8px;
    border: 1px solid var(--fm-border);
    border-radius: 12px;
    box-shadow: 0 14px 36px rgba(18, 28, 45, .12);
  }

  .primary-menu .navbar-inner .nav.nav-css > li ul > li > a,
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-menu-custom > .dropdown-menu > li > a {
    padding: 7px 10px;
    border-radius: 7px;
    line-height: 1.7;
  }

  .rtl .primary-menu .navbar-inner .nav.nav-css > li ul > li > .dropdown-menu,
  .rtl .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-menu-custom > .dropdown-menu > li .dropdown-sub {
    right: calc(100% + 5px);
    left: auto;
    top: -8px;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: calc(100vw - 40px);
  }
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li:nth-child(5n) {
    border-left: 1px solid #edf0f3;
  }
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu > li:nth-child(4n) {
    border-left: 0;
  }
}

/* --------------------------------------------------------------------------
   Product cards: modernize the actual Furnicom card nodes, not generic buttons
   -------------------------------------------------------------------------- */
.sw-woo-container-slider .item-wrap,
.sw-woo-tab .item-wrap,
.sw-woo-tab-cat .item-wrap,
.woocommerce ul.products-loop.grid li.product .products-entry,
.search ul.products-loop.grid li.product .products-entry {
  border: 1px solid var(--fm-border) !important;
  border-radius: 14px;
  background: var(--fm-surface);
  box-shadow: 0 3px 12px rgba(24, 35, 52, .045);
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.sw-woo-container-slider .item-wrap:hover,
.sw-woo-tab .item-wrap:hover,
.sw-woo-tab-cat .item-wrap:hover,
.woocommerce ul.products-loop.grid li.product .products-entry:hover,
.search ul.products-loop.grid li.product .products-entry:hover {
  transform: translateY(-3px);
  border-color: #daddE3 !important;
  box-shadow: var(--fm-shadow-hover);
}

.sw-woo-container-slider .item-wrap .item-img,
.sw-woo-tab .item-wrap .item-img,
.sw-woo-tab-cat .item-wrap .item-img,
ul.grid li.product .products-entry .products-thumb {
  background: #fafbfc;
}

.sw-woo-container-slider .item-wrap .item-content,
.sw-woo-tab .item-wrap .item-content,
.sw-woo-tab-cat .item-wrap .item-content,
ul.grid li.product .products-entry .products-content {
  padding-left: 14px;
  padding-right: 14px;
}

.item-content h4,
.products-content h4,
.woocommerce ul.products-loop li.product .products-content h3,
.woocommerce ul.products-loop li.product .products-content h4 {
  color: #293441;
  font-weight: 700;
  line-height: 1.85;
  text-transform: none;
}

.item-content .item-price,
.item-content .price,
.products-content .item-price,
.products-content .price {
  color: var(--fm-accent);
  font-weight: 800;
}

/* Rebuild the legacy bottom action strip so the v1 pill/outline regression is gone. */
.item-bottom {
  min-height: 45px;
  border-top: 1px solid #edf0f3;
  background: #fff;
}

.item-bottom .button,
.item-bottom > a.button,
.item-bottom .button.add_to_cart_button,
.item-bottom .button.product_type_grouped,
.item-bottom .button.product_type_external {
  min-height: 45px;
  height: 45px;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--fm-accent) !important;
  font-size: 12px;
  font-weight: 700;
  line-height: 45px !important;
  transform: none !important;
}

.item-bottom .button:hover,
.item-bottom > a.button:hover {
  color: #fff !important;
  background: var(--fm-accent) !important;
}

.item-bottom .button:before,
.item-bottom > a.button:before,
.item-bottom .compare-button:before,
.item-bottom .yith-wcwl-add-to-wishlist:before {
  border-radius: 0 !important;
}

.item-bottom .compare-button,
.item-bottom .yith-wcwl-add-to-wishlist {
  min-height: 45px;
  border: 0;
  border-radius: 0;
  background: transparent;
}

/* Product sale badge */
.onsale,
.woocommerce span.onsale {
  border-radius: 999px;
  box-shadow: 0 5px 14px rgba(0, 0, 0, .08);
}

/* --------------------------------------------------------------------------
   Shop/sidebar: card surfaces only where a contained panel already exists
   -------------------------------------------------------------------------- */
.woocommerce-page .sidebar .widget,
.archive .sidebar .widget,
.search .sidebar .widget,
.single-product .sidebar .widget {
  border: 1px solid var(--fm-border);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 16px rgba(24, 35, 52, .04);
  overflow: hidden;
}

.woocommerce-page .sidebar .widget .widget-title,
.archive .sidebar .widget .widget-title,
.search .sidebar .widget .widget-title,
.single-product .sidebar .widget .widget-title {
  border-bottom: 1px solid #eceff2;
}

/* Forms: only commerce/content fields, never icon buttons or card controls. */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
  border: 1px solid #dfe3e8;
  border-radius: 9px;
  background: #fff;
  box-shadow: none;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.comment-form input:focus,
.comment-form textarea:focus {
  border-color: var(--fm-accent);
  outline: none;
  box-shadow: 0 0 0 3px var(--fm-accent-soft);
}

.woocommerce div.product div.images,
.woocommerce div.product div.summary,
.woocommerce div.product .woocommerce-tabs,
#reviews,
#respond.comment-respond {
  border-radius: 12px;
}

/* --------------------------------------------------------------------------
   Section titles and content rhythm — no grid width/margin overrides
   -------------------------------------------------------------------------- */
.block-title h2,
.block-title h3,
.box-slider-title h2,
.resp-tab .top-tab-slider .resp-tabs-list li,
.widget-title-sidebar h3 {
  color: #26313f;
  text-transform: none;
}

.block-title h2:after,
.block-title h3:after,
.box-slider-title h2:after {
  border-radius: 99px;
}

/* --------------------------------------------------------------------------
   Footer: keep the legacy column grid. No isolated rounded widget cards.
   -------------------------------------------------------------------------- */
.footer {
  background-color: #171e27;
  background-size: cover;
  background-position: center;
}

.footer .footer-top .widget,
.footer .footer-bottom .widget {
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.footer .footer-top .widget_text {
  background: rgba(255,255,255,.065);
  border-right: 3px solid var(--fm-accent);
}

.rtl .footer .footer-top .widget_text {
  border-right: 0;
  border-left: 3px solid var(--fm-accent);
}

.footer .footer-top .widget .button-ver-menu:after {
  background: var(--fm-accent);
}

.footer .footer-top .widget_nav_menu .menu li a,
.footer .footer-top .contact-footer ul li,
.footer .footer-top .contact-footer ul li a,
.footer .copyright-text p {
  color: rgba(255,255,255,.80);
}

.footer .footer-top .widget_nav_menu .menu li a:hover,
.footer .footer-top .contact-footer ul li a:hover,
.footer .copyright-text p a {
  color: #fff;
}

/* --------------------------------------------------------------------------
   Responsive safeguards
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
  /* Let the original mobile stylesheet own navigation layout. */
  .primary-menu .navbar-inner,
  .primary-menu .navbar-inner .nav > li,
  .primary-menu .navbar-inner .nav > li > a {
    height: auto;
  }

  .sw-woo-container-slider .item-wrap,
  .sw-woo-tab .item-wrap,
  .sw-woo-tab-cat .item-wrap,
  .woocommerce ul.products-loop.grid li.product .products-entry {
    transform: none !important;
  }
}

@media (max-width: 767px) {
  .footer .footer-top .widget_text {
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 3px solid var(--fm-accent);
  }
}

/* ==========================================================================
   v3 interaction fixes: deterministic desktop menu + modern mini cart
   ========================================================================== */
@media (min-width: 992px) {
  /* The legacy theme script used inline display animations while v2 forced
     display:grid. State is now controlled only by .fm-menu-open. */
  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu > .dropdown-menu {
    display: none !important;
    top: 100% !important;
    margin-top: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-mega-menu.fm-menu-open > .dropdown-menu {
    display: grid !important;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-menu-custom > .dropdown-menu {
    display: none !important;
    top: 100% !important;
    margin-top: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  .primary-menu .navbar-inner .nav.nav-mega > li.furnicom-menu-custom.fm-menu-open > .dropdown-menu {
    display: block !important;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  /* Invisible hover bridge. It removes the tiny dead zone between the 50px
     navigation bar and the absolutely positioned dropdown panel. */
  .primary-menu .navbar-inner .nav.nav-mega > li.dropdown > .dropdown-menu:before {
    content: "" !important;
    display: block !important;
    position: absolute;
    top: -12px;
    right: 0;
    left: 0;
    width: 100%;
    height: 14px;
    background: transparent;
    border: 0;
    pointer-events: auto;
  }

  /* Header style 1 originally expected a dark navigation background. The
     refreshed bar is white, so force readable dark labels in its idle state. */
  .header-style1 #main-menu .primary-menu .navbar-inner .nav > li > a,
  .header-style1 .main-menu .primary-menu .navbar-inner .nav > li > a {
    color: #303a47 !important;
  }

  .header-style1 #main-menu .primary-menu .navbar-inner .nav > li:hover > a,
  .header-style1 #main-menu .primary-menu .navbar-inner .nav > li.hover > a,
  .header-style1 #main-menu .primary-menu .navbar-inner .nav > li.fm-menu-open > a,
  .header-style1 #main-menu .primary-menu .navbar-inner .nav > li.active > a,
  .header-style1 #main-menu .primary-menu .navbar-inner .nav > li.current-menu-item > a,
  .header-style1 #main-menu .primary-menu .navbar-inner .nav > li.current-menu-ancestor > a,
  .header-style1 .main-menu .primary-menu .navbar-inner .nav > li:hover > a,
  .header-style1 .main-menu .primary-menu .navbar-inner .nav > li.fm-menu-open > a {
    color: #fff !important;
    background: var(--fm-accent) !important;
  }

  .header-style1 #main-menu,
  .header-style1 .main-menu {
    position: relative;
    z-index: 10020;
    background: rgba(255,255,255,.985);
  }

  .header-style1 #main-menu .nav.nav-mega,
  .header-style1 .main-menu .nav.nav-mega {
    z-index: 10030;
  }
}

/* --------------------------------------------------------------------------
   Mini cart popover
   -------------------------------------------------------------------------- */
.top-form.top-form-minicart .wrapp-minicart {
  box-sizing: border-box;
  width: 360px;
  max-width: calc(100vw - 30px);
  top: calc(100% + 10px) !important;
  right: 0;
  left: auto;
  overflow: visible;
  border: 1px solid #e3e7ec;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 20px 55px rgba(18, 28, 45, .18);
  transform: translateY(10px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}

.rtl .top-form.top-form-minicart .wrapp-minicart {
  right: auto;
  left: 0;
}

.top-form.top-form-minicart:hover .wrapp-minicart {
  transform: translateY(0);
}

/* Maintain a hoverable connection between the cart trigger and popover. */
.top-form.top-form-minicart .wrapp-minicart:before {
  content: "";
  display: block;
  position: absolute;
  top: -14px;
  right: 0;
  width: 100%;
  height: 16px;
  background: transparent;
}

.top-form.top-form-minicart .wrapp-minicart:after {
  content: "";
  position: absolute;
  top: -7px;
  right: 28px;
  width: 14px;
  height: 14px;
  background: #fff;
  border-top: 1px solid #e3e7ec;
  border-left: 1px solid #e3e7ec;
  transform: rotate(45deg);
}

.rtl .top-form.top-form-minicart .wrapp-minicart:after {
  right: auto;
  left: 28px;
}

.top-form.top-form-minicart .wrapp-minicart .minicart-padding {
  position: relative;
  z-index: 1;
  overflow: hidden;
  border-radius: 15px;
  background: #fff;
}

.top-form.top-form-minicart .wrapp-minicart .minicart-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 50px;
  padding: 0 18px;
  background: #fff;
  border-bottom: 1px solid #edf0f3;
}

.top-form.top-form-minicart .wrapp-minicart .minicart-title:before {
  display: none !important;
}

.top-form.top-form-minicart .wrapp-minicart .minicart-title span,
.top-form.top-form-minicart .wrapp-minicart .minicart-title span.price-title {
  float: none;
  color: #27313e;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.5;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content {
  max-height: 310px;
  margin: 0;
  padding: 8px 14px;
  background: #fff;
  scrollbar-width: thin;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content:empty {
  min-height: 18px;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid #f0f2f5;
  overflow: visible;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li:last-child {
  border-bottom: 0;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .minicart-img {
  float: none;
  flex: 0 0 68px;
  margin: 0;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .minicart-img a.product-image {
  display: block;
  overflow: hidden;
  width: 68px;
  height: 68px;
  padding: 4px;
  border: 1px solid #e9edf1;
  border-radius: 11px;
  background: #fafbfc;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .minicart-img a.product-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .minicart-img .product-action {
  right: -5px;
  bottom: -5px;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .minicart-img .product-action a.btn-remove span {
  position: relative;
  width: 20px;
  height: 20px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: #ef4444 !important;
  box-shadow: 0 3px 8px rgba(239,68,68,.25);
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .minicart-img .product-action a.btn-remove span:before,
.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .minicart-img .product-action a.btn-remove span:after {
  content: "";
  position: absolute;
  top: 7px;
  left: 4px;
  width: 8px;
  height: 2px;
  background: #fff;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .minicart-img .product-action a.btn-remove span:before {
  transform: rotate(45deg);
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .minicart-img .product-action a.btn-remove span:after {
  transform: rotate(-45deg);
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .detail-item {
  flex: 1 1 auto;
  min-width: 0;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .detail-item .product-details {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .detail-item .product-details .product-information,
.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .detail-item .product-details .product-price {
  float: none;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .detail-item .product-details .product-information {
  width: auto;
  flex: 1 1 auto;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .detail-item .product-name a {
  display: block;
  color: #27313e;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.8;
  text-transform: none;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .detail-item .qty {
  margin-top: 3px;
  color: #7a8491;
  font-size: 11px;
}

.top-form.top-form-minicart .wrapp-minicart ul.minicart-content li .detail-item .product-price .price span.amount {
  white-space: nowrap;
  padding: 5px 8px;
  border-radius: 8px;
  background: var(--fm-accent-soft);
  color: var(--fm-accent);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.4;
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout {
  background: #fafbfc;
  border-top: 1px solid #edf0f3;
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout .price-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 50px;
  padding: 0 18px;
  border: 0;
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout .price-total .label-price-total {
  color: #27313e;
  font-size: 14px;
  font-weight: 800;
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout .price-total .price-total-w {
  float: none;
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout .price-total .price-total-w span.price span.amount {
  color: var(--fm-accent);
  font-size: 14px;
  font-weight: 800;
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout .cart-links {
  display: flex;
  gap: 8px;
  padding: 0 14px 14px;
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout .cart-links .cart-link,
.top-form.top-form-minicart .wrapp-minicart .cart-checkout .cart-links .checkout-link {
  float: none;
  flex: 1 1 50%;
  margin: 0;
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout .cart-links .cart-link a,
.top-form.top-form-minicart .wrapp-minicart .cart-checkout .cart-links .checkout-link a {
  display: block;
  padding: 0 10px;
  border: 1px solid #dfe4e9;
  border-radius: 10px;
  background: #fff;
  color: #3b4654;
  font-size: 12px;
  line-height: 40px;
  text-align: center;
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout .cart-links .checkout-link a {
  border-color: var(--fm-accent);
  background: var(--fm-accent);
  color: #fff;
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout .cart-links .cart-link:hover a {
  border-color: var(--fm-accent);
  background: var(--fm-accent-soft);
  color: var(--fm-accent);
}

.top-form.top-form-minicart .wrapp-minicart .cart-checkout .cart-links .checkout-link:hover a {
  border-color: var(--fm-accent-hover);
  background: var(--fm-accent-hover);
  color: #fff;
}
