/* =========================================================
   MEDCARE MOBILITY — SAFE HEADER / POPUP / FILTER FIX
   Remove all previous popup/header-fix snippets first
========================================================= */

:root{
  --mcm-header-offset: 120px;
  --mcm-header-gap: 8px;
}

/* ---------------------------------------------------------
   HEADER
--------------------------------------------------------- */
#header,
.header-wrapper,
.sticky-header,
.porto-sticky-header,
.mobile-header-wrapper,
.main-header,
.header-main,
.header-container{
  z-index: 9999 !important;
}

/* ---------------------------------------------------------
   QUICKVIEW / FANCYBOX
   Do NOT reposition the popup itself.
   Only make the CONTENT respect the header.
--------------------------------------------------------- */
.fancybox-overlay,
.fancybox-overlay-fixed{
  z-index: 10050 !important;
}

.fancybox-wrap,
.fancybox-opened,
.fancybox-type-ajax{
  z-index: 10060 !important;
}

.fancybox-skin,
.fancybox-outer,
.fancybox-inner{
  box-sizing: border-box !important;
}

.fancybox-inner{
  overflow-x: hidden !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
  padding-top: calc(var(--mcm-header-offset) + var(--mcm-header-gap)) !important;
  max-height: 100vh !important;
}

/* quickview structure */
.quickview-wrap,
.quickview-wrap .product,
.quickview-wrap .product-summary-wrap,
.quickview-wrap .summary-before,
.quickview-wrap .summary,
.quickview-wrap .entry-summary,
.quickview-wrap .quickview-inner{
  box-sizing: border-box !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

/* keep bottom content inside the popup */
.quickview-wrap .entry-summary > *,
.quickview-wrap .summary > *,
.quickview-wrap .product-summary-wrap > *,
.quickview-wrap .yith-wcwl-add-to-wishlist,
.quickview-wrap .share-links,
.quickview-wrap .social-icons,
.quickview-wrap .product_meta,
.quickview-wrap .single-share,
.quickview-wrap .wishlist{
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
  clear: both !important;
}

/* close button visible below header */
.fancybox-item.fancybox-close,
.fancybox-close{
  z-index: 10070 !important;
  position: fixed !important;
  top: calc(var(--mcm-header-offset) + 6px) !important;
}

/* desktop close button */
@media (min-width: 768px){
  .fancybox-item.fancybox-close,
  .fancybox-close{
    right: 18px !important;
  }
}

/* mobile close button */
@media (max-width: 767px){
  .fancybox-item.fancybox-close,
  .fancybox-close{
    right: 10px !important;
  }

  .fancybox-inner{
    padding-top: calc(var(--mcm-header-offset) + 6px) !important;
  }
}

/* ---------------------------------------------------------
   CATEGORY FILTER SIDEBAR
   DO NOT move the whole sidebar.
   Only make the sidebar CONTENT start under header
   and remain scrollable.
--------------------------------------------------------- */
.porto-woo-category-sidebar .sidebar-content{
  box-sizing: border-box !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
  padding-top: calc(var(--mcm-header-offset) + 6px) !important;
  max-height: 100vh !important;
}

/* keep widget content inside */
.porto-woo-category-sidebar .sidebar-content *,
.porto-woo-category-sidebar .sidebar-content aside,
.porto-woo-category-sidebar .sidebar-content .widget,
.porto-woo-category-sidebar .sidebar-content ul,
.porto-woo-category-sidebar .sidebar-content li,
.porto-woo-category-sidebar .sidebar-content a,
.porto-woo-category-sidebar .sidebar-content label,
.porto-woo-category-sidebar .sidebar-content span,
.porto-woo-category-sidebar .sidebar-content div{
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow-wrap: break-word !important;
  word-break: break-word !important;
}

/* desktop filter: just enough room below header */
@media (min-width: 992px){
  .porto-woo-category-sidebar.mobile-sidebar .sidebar-content,
  .porto-woo-category-sidebar .sidebar-content{
    padding-top: calc(var(--mcm-header-offset) + 4px) !important;
    max-height: 100vh !important;
    overflow-y: auto !important;
  }
}

/* mobile filter: do not force it visible or move it sideways */
@media (max-width: 991px){
  .porto-woo-category-sidebar.mobile-sidebar .sidebar-content{
    padding-top: calc(var(--mcm-header-offset) + 4px) !important;
    max-height: 100vh !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }
}

/* ---------------------------------------------------------
   PAGE SAFETY
--------------------------------------------------------- */
body.fancybox-lock{
  overflow: hidden !important;
}

html,
body{
  overflow-x: clip !important;
}
/* =========================================================
   FINAL POLISH FIXES — REVISED REPLACEMENT VERSION
========================================================= */

/* -----------------------------------------
   1) QUICKVIEW — tighten top spacing more
----------------------------------------- */
.fancybox-inner{
  padding-top: 12px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

/* tighten inner quickview wrappers too */
.quickview-wrap,
.quickview-wrap .product,
.quickview-wrap .summary-before,
.quickview-wrap .product-summary-wrap,
.quickview-wrap .summary,
.quickview-wrap .entry-summary,
.quickview-wrap .images,
.quickview-wrap .img-thumbnail,
.quickview-wrap .quickview-inner{
  margin-top: 0 !important;
  padding-top: 0 !important;
  box-sizing: border-box !important;
}

/* keep a tiny neat breathing room only */
.quickview-wrap .product{
  padding-top: 6px !important;
}

/* mobile slightly tighter */
@media (max-width: 767px){
  .fancybox-inner{
    padding-top: 8px !important;
  }

  .quickview-wrap .product{
    padding-top: 4px !important;
  }
}

/* -----------------------------------------
   2) QUICKVIEW CLOSE BUTTON — FIX DESKTOP
----------------------------------------- */
.fancybox-close,
.fancybox-item.fancybox-close{
  position: fixed !important;
  top: calc(var(--mcm-header-offset) + 6px) !important;
  right: 18px !important;
  z-index: 10080 !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* mobile positioning */
@media (max-width: 767px){
  .fancybox-close,
  .fancybox-item.fancybox-close{
    right: 10px !important;
    top: calc(var(--mcm-header-offset) + 4px) !important;
  }
}

/* -----------------------------------------
   3) QUICKVIEW — keep everything inside box
----------------------------------------- */
.fancybox-skin{
  overflow: hidden !important;
}

.quickview-wrap,
.quickview-wrap .product,
.quickview-wrap .summary,
.quickview-wrap .entry-summary{
  overflow: hidden !important;
}

.quickview-wrap .entry-summary > *,
.quickview-wrap .summary > *,
.quickview-wrap .product-summary-wrap > *,
.quickview-wrap .yith-wcwl-add-to-wishlist,
.quickview-wrap .share-links,
.quickview-wrap .social-icons,
.quickview-wrap .product_meta,
.quickview-wrap .single-share,
.quickview-wrap .wishlist{
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
  clear: both !important;
}

/* -----------------------------------------
   4) REMOVE MOBILE SIDEBAR ICON ONLY ON HOMEPAGE
   while keeping category-page mobile filter button
----------------------------------------- */
@media (max-width: 767px){
  body.home .sidebar-toggle,
  body.home .mobile-sidebar-toggle,
  body.home .floating-filter-btn,
  body.home .shop-sidebar-btn,
  body.home .btn-show-sidebar,
  body.home .show-category-filter{
    display: none !important;
  }

  /* keep filters visible on shop/category/archive pages */
  body.post-type-archive-product .filter-toggle,
  body.post-type-archive-product .porto-filter-toggle,
  body.post-type-archive-product .mobile-filter-toggle,
  body.tax-product_cat .filter-toggle,
  body.tax-product_cat .porto-filter-toggle,
  body.tax-product_cat .mobile-filter-toggle,
  body.woocommerce-shop .filter-toggle,
  body.woocommerce-shop .porto-filter-toggle,
  body.woocommerce-shop .mobile-filter-toggle{
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}
/* Desktop only — pull quickview content slightly higher */
@media (min-width: 768px){
  .fancybox-inner{
    padding-top: 4px !important;
  }

  .quickview-wrap .product{
    padding-top: 0 !important;
  }

  .quickview-wrap,
  .quickview-wrap .summary-before,
  .quickview-wrap .product-summary-wrap,
  .quickview-wrap .summary,
  .quickview-wrap .entry-summary,
  .quickview-wrap .images,
  .quickview-wrap .img-thumbnail,
  .quickview-wrap .quickview-inner{
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}