/*
Theme Name: Martfury Child
Theme URI: https://themeforest.net/item/martfury-woocommerce-marketplace-wordpress-theme/21273233
Author: DrFuri
Author URI: http://drfuri.com
Description: Martfury Child Theme.
Version: 1.0
License: GNU General Public License v2+
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: martfury-child
Domain Path: /lang/
Tags: one-column, two-columns, left-sidebar, right-sidebar, full-width-template, post-formats, theme-options, threaded-comments, translation-ready
Template: martfury
*/

/* -------------------------
   MF Child: Accordion UI
   - Styles product accordions (.mf-product-accordion, <details>/<summary>)
   - Adds chevron icon, padding, transitions and improved spacing
   - Adds small fallback styles for category lists that use .opened and .cat-menu-close
   ------------------------- */

/* Base accordion container */
.mf-product-accordion {
	background: #fff;
	overflow: hidden;
}

/* Hide native marker and make summary a nicer button */
details.mf-acc-item {
	margin-bottom: 10px;
}

summary.mf-acc-title {
	list-style: none; /* older browsers */
	-webkit-user-select: none;
	user-select: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 16px;
	gap: 12px;
	font-weight: 600;
	color: #222;
	background: #f7f7f7;   
    border: 1px solid rgba(0,0,0,0.06); 
}

/* Remove default marker in WebKit */
summary.mf-acc-title::-webkit-details-marker {
	display: none;
}

/* Custom chevron (SVG data-uri), rotates when open */
summary.mf-acc-title::after {
	content: '';
	flex: 0 0 18px;
	height: 18px;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 18px 18px;
	transform: rotate(0deg);
	transition: transform .22s ease, opacity .18s ease;
	opacity: .95;
}

details[open] > summary.mf-acc-title::after {
	transform: rotate(180deg);
}

/* Content area */
.mf-acc-content {
	padding: 12px 16px 18px;
	color: #444;
	line-height: 1.5;
	font-size: 14px;
}

/* Small list tweaks used inside content */
.mf-acc-content ul {
	margin: 0 0 0 18px;
}

/* Gentle show animation for content (only visual; details handles toggle)
   Note: we avoid trying to animate height exactly because content is dynamic.
*/
details .mf-acc-content {
	animation: mfFadeIn .16s ease-in;
    border: 1px solid rgba(0,0,0,0.06);
    border-top: 0;
}
@keyframes mfFadeIn {
	from { opacity: 0; transform: translateY(-4px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* Responsive spacing */
@media (max-width: 782px) {
	summary.mf-acc-title { padding: 12px 14px; }
	.mf-acc-content { padding: 10px 14px 16px; }
}

/* Fallback / Category list styles (matches example structure with .opened and .cat-menu-close) */
li.cat-item { display: block; }
li.cat-item > a { display: inline-block; vertical-align: middle; padding: 8px 6px; color: inherit; }
li.cat-item .cat-menu-close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	margin-right: 8px;
	border-radius: 4px;
	cursor: pointer;
	transition: transform .18s ease, background-color .12s ease;
}


/* When category is opened rotate chevron and show children */
li.cat-item.opened > .cat-menu-close::after { transform: rotate(180deg); }
li.cat-item .children { margin-left: 22px; padding-left: 6px; }
li.cat-item .children { display: none; }
li.cat-item.opened > .children { display: block; }

/* Minor visual polish */

.woocommerce table.shop_attributes {
  border: 0!important;
}

.woocommerce table.shop_attributes td{
    border: 0!important;
    font-style: unset!important;
}
.woocommerce table.shop_attributes th{
    border: 0!important;
}

/* Delivery badge on stock line */
.mf-badge {
  display: inline-flex;
  align-items: center;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  padding: 6px 10px;
  border-radius: 999px;
  margin-right: 10px;
  text-transform: none;
}
.mf-badge--delivery {
  background: #e8f5e9; /* light green */
  color: #2e7d32; /* green text */
  border: 1px solid #c8e6c9;
}

/* Price note */
.mf-price-note {
  display: block;
  font-size: 12px;
  color: #6b7280; /* gray-500 */
  margin-top: 4px;
}

/* Adjust product gallery and summary layout */
.single-product div.product .entry-summary {
    width: 45%;
}

.single-product div.product .woocommerce-product-gallery {
    width: 55%;
}

/* Ensure proper responsive behavior */
@media (max-width: 991px) {
    .single-product div.product .entry-summary,
    .single-product div.product .woocommerce-product-gallery {
        width: 100%;
        padding: 0 15px;
    }
}


.woocommerce div.product div.images .flex-control-nav {
    opacity: 1!important;
}

.yith-wapo-block .yith-wapo-addon.yith-wapo-addon-type-checkbox .yith-wapo-option input {
    height: 20px!important;
}

.yith-wapo-addon.yith-wapo-addon-type-checkbox .checkbox-button-container {
    height: 20px!important;
}

.footer-payments img {
    width: 45px;
}

.site-footer .footer-payments ul li {
    padding-left: 0px;
}

.backtotop {
    color: #ad5d1e;
}

a {
    color: #ba6d30;
}
.below-gallery-widget-wrapper .widget {
    margin: 20px auto;
}

.bcc-wg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;}
.bcc-wg-item{background:#faebc9;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:15px;cursor:pointer;transition:all .3s}
.bcc-wg-item:hover{background:#e8e8e8;transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.1)}
.bcc-wg-item img{width:125px!important;height:auto;object-fit:contain}
@media(max-width:768px){.bcc-wg-grid{grid-template-columns:repeat(2,1fr);gap:12px}.bcc-wg-item{padding:12px}}
@media(max-width:480px){.bcc-wg-grid{gap:10px}.bcc-wg-item{padding:10px}}
.topbar {
    color: #ffffff;
    background-color: #c66f2b;
}

/* ===================================
   WordPress Vertical Mega Menu Styles
   FIXED: Force hide nested submenus + Screen overflow fix
   =================================== */

/* Hide mega menu until JS loads - prevents flash of old structure */
.is-mega-menu .mega-menu-content {
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.3s ease, visibility 0.3s ease !important;
}

.is-mega-menu .mega-menu-content.js-ready {
  opacity: 1 !important;
  visibility: visible !important;
}

/* ✨ AUTO WIDTH - Menu adjusts based on visible columns, max 90% screen */
.is-mega-menu .mega-menu-content.js-ready {
  display: inline-flex !important;
  flex-direction: row !important;
  position: relative !important;
  background: white !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 8px !important;
  overflow: visible !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;
  min-height: 500px !important;
  max-height: 500px !important;
  padding: 0 !important;
  width: auto !important;
  max-width: 90vw !important; /* Prevent screen overflow */
}

.is-mega-menu .mega-menu-content .row {
  display: flex !important;
  width: auto !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
}

/* Level 1: Main Menu Column (Vertical Left Side) */
.is-mega-menu .mega-menu-content .mr-col {
  flex: 0 0 220px !important;
  width: 220px !important;
  min-width: 220px !important;
  max-width: 220px !important;
  background: #f8f9fa !important;
  border-right: 1px solid #e0e0e0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  max-height: 500px !important;
  padding: 0 !important;
  margin: 0 !important;
  position: relative !important;
  display: block !important;
}

/* Main menu column - specific */
.is-mega-menu .mega-menu-content .mr-col.main-menu-column {
  background: #f8f9fa !important;
  display: block !important;
}

/* ✅ Submenu columns - SHOW WHEN ACTIVE - Supports 3+ levels */
.is-mega-menu .mega-menu-content .mr-col.submenu-column-active {
  background: white !important;
  display: block !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

/* Level 2 column */
.is-mega-menu .mega-menu-content .mr-col.submenu-level-2 {
  background: #fefefe !important;
}

/* Level 3 column */
.is-mega-menu .mega-menu-content .mr-col.submenu-level-3 {
  background: #f9f9f9 !important;
}

/* Level 4+ columns */
.is-mega-menu .mega-menu-content .mr-col.submenu-level-4,
.is-mega-menu .mega-menu-content .mr-col.submenu-level-5 {
  background: #f5f5f5 !important;
}

/* 🔥 CRITICAL: Force show ONLY the TOP LEVEL submenu in column */
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu {
  display: block !important;
  position: static !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* 🔥 CRITICAL: FORCE HIDE ALL NESTED SUBMENUS (Level 3 inside Level 2) */
.is-mega-menu .mega-menu-content .submenu-column-active .sub-menu,
.is-mega-menu .mega-menu-content .submenu-column-active .mega-menu-submenu {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  position: absolute !important;
  left: -9999px !important;
  height: 0 !important;
  overflow: hidden !important;
  max-height: 0 !important;
  clip: rect(0,0,0,0) !important;
}

/* 🔥 BUT allow the immediate child (direct submenu of column) */
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > ul,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu > ul {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: static !important;
  left: auto !important;
  height: auto !important;
  overflow: visible !important;
  max-height: none !important;
  clip: auto !important;
}

/* Submenu list styling - TOP LEVEL ONLY */
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > .sub-menu,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > ul {
  display: block !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* List items - DIRECT CHILDREN ONLY */
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > .sub-menu > li,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu > li,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > ul > li {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid #f0f0f0 !important;
  list-style: none !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > .sub-menu > li:last-child,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu > li:last-child,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > ul > li:last-child {
  border-bottom: none !important;
}

/* Links - DIRECT CHILDREN ONLY */
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > .sub-menu > li > a,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu > li > a,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > ul > li > a {
  display: block !important;
  padding: 12px 40px 12px 20px !important;
  color: #333 !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  font-size: 14px !important;
  background: transparent !important;
  position: relative !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > .sub-menu > li > a:hover,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu > li > a:hover,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > ul > li > a:hover {
  background-color: #f5f5f5 !important;
  color: #000 !important;
  padding-left: 25px !important;
}

/* Active state */
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > .sub-menu > li.menu-item-active > a,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu > li.menu-item-active > a,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > ul > li.menu-item-active > a {
  background-color: #e9ecef !important;
  color: #000 !important;
  font-weight: 500 !important;
}

/* ✅ FORCE ARROW for submenu items with children - DIRECT CHILDREN ONLY */
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > .sub-menu > li.has-nested-submenu > a::after,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu > li.has-nested-submenu > a::after,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > ul > li.has-nested-submenu > a::after {
  content: '›' !important;
  position: absolute !important;
  right: 15px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: bold !important;
  color: #666 !important;
  transition: color 0.3s ease !important;
  display: block !important;
}

.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > .sub-menu > li.has-nested-submenu:hover > a::after,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu > li.has-nested-submenu:hover > a::after,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > ul > li.has-nested-submenu:hover > a::after,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > .sub-menu > li.has-nested-submenu.menu-item-active > a::after,
.is-mega-menu .mega-menu-content .submenu-column-active > .sub-menu > li.has-nested-submenu.menu-item-active > a::after,
.is-mega-menu .mega-menu-content .submenu-column-active > .mega-menu-submenu > ul > li.has-nested-submenu.menu-item-active > a::after {
  color: #000 !important;
}

/* Image preview column */
.is-mega-menu .mega-menu-content .mr-col.image-preview-column {
  flex: 0 0 400px !important;
  width: 400px !important;
  min-width: 300px !important;
  max-width: 500px !important;
  background: #fafafa !important;
  border-right: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  max-height: 500px !important;
  overflow: hidden !important;
}

/* Menu Item Mega Container */
.is-mega-menu .mega-menu-content .menu-item-mega {
  position: relative !important;
  border-bottom: 1px solid #e8e8e8 !important;
  margin: 0 !important;
  list-style: none !important;
}

.is-mega-menu .mega-menu-content .menu-item-mega:last-child {
  border-bottom: none !important;
}

/* Menu Item Links - Level 1 */
.is-mega-menu .mega-menu-content .menu-item-mega > a,
.is-mega-menu .mega-menu-content .menu-item-mega > a.dropdown-toggle {
  display: block !important;
  padding: 8px 40px 8px 14px !important;
  color: #333 !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  position: relative !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  background: transparent !important;
  border: none !important;
  width: 100% !important;
  text-align: left !important;
}

.is-mega-menu .mega-menu-content .menu-item-mega > a:hover,
.is-mega-menu .mega-menu-content .menu-item-mega.menu-item-active > a {
  background-color: #e9ecef !important;
  color: #000 !important;
  padding-left: 25px !important;
}

/* FORCE Arrow for items with submenus - Level 1 */
.is-mega-menu .mega-menu-content .main-menu-column .menu-item-mega.has-submenu > a::after {
  content: '›' !important;
  position: absolute !important;
  right: 15px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  font-size: 20px !important;
  line-height: 1 !important;
  font-weight: bold !important;
  color: #666 !important;
  transition: color 0.3s ease !important;
  display: block !important;
}

.is-mega-menu .mega-menu-content .main-menu-column .menu-item-mega.menu-item-active.has-submenu > a::after,
.is-mega-menu .mega-menu-content .main-menu-column .menu-item-mega.has-submenu:hover > a::after {
  color: #000 !important;
}

/* Hide original dropdown-toggle arrow */
.is-mega-menu .mega-menu-content .dropdown-toggle::after {
  display: none !important;
  content: none !important;
}

/* Hide original submenus in main column */
.is-mega-menu .mega-menu-content .main-menu-column .mega-menu-submenu,
.is-mega-menu .mega-menu-content .main-menu-column .sub-menu {
  display: none !important;
  position: static !important;
}

/* Image Container */
.is-mega-menu .mega-menu-content .mega-content {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.is-mega-menu .mega-menu-content .mega-content.show-image {
  opacity: 1 !important;
  visibility: visible !important;
}

.is-mega-menu .mega-menu-content .mega-content img {
  max-width: 100% !important;
  max-height: 450px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
}

/* Scrollbar Styling - Each column scrolls independently */
.is-mega-menu .mega-menu-content .mr-col::-webkit-scrollbar {
  width: 6px !important;
}

.is-mega-menu .mega-menu-content .mr-col::-webkit-scrollbar-track {
  background: #f1f1f1 !important;
  border-radius: 3px !important;
}

.is-mega-menu .mega-menu-content .mr-col::-webkit-scrollbar-thumb {
  background: #888 !important;
  border-radius: 3px !important;
}

.is-mega-menu .mega-menu-content .mr-col::-webkit-scrollbar-thumb:hover {
  background: #555 !important;
}

/* Firefox scrollbar */
.is-mega-menu .mega-menu-content .mr-col {
  scrollbar-width: thin !important;
  scrollbar-color: #888 #f1f1f1 !important;
}

/* Responsive Design */
@media (max-width: 1400px) {
  .is-mega-menu .mega-menu-content .mr-col {
    flex: 0 0 200px !important;
    width: 200px !important;
    min-width: 200px !important;
    max-width: 200px !important;
  }
  
  .is-mega-menu .mega-menu-content .mr-col.image-preview-column {
    flex: 0 0 350px !important;
    width: 350px !important;
  }
}

@media (max-width: 1200px) {
  .is-mega-menu .mega-menu-content .mr-col {
    flex: 0 0 180px !important;
    width: 180px !important;
    min-width: 180px !important;
    max-width: 180px !important;
  }
  
  .is-mega-menu .mega-menu-content .mr-col.image-preview-column {
    flex: 0 0 300px !important;
    width: 300px !important;
  }
}

@media (max-width: 992px) {
  .is-mega-menu .mega-menu-content {
    flex-direction: column !important;
    min-height: auto !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  
  .is-mega-menu .mega-menu-content .row {
    flex-direction: column !important;
  }
  
  .is-mega-menu .mega-menu-content .mr-col,
  .is-mega-menu .mega-menu-content .mr-col.image-preview-column {
    flex: 1 !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    max-height: 300px !important;
    border-right: none !important;
    border-bottom: 1px solid #e0e0e0 !important;
  }
  
  .is-mega-menu .mega-menu-content .mr-col:last-child {
    min-height: 250px !important;
    max-height: 300px !important;
  }
}

@media (max-width: 768px) {
  .is-mega-menu .mega-menu-content .menu-item-mega > a,
  .is-mega-menu .mega-menu-content .submenu-column-active li > a {
    padding: 8px 40px 8px 12px !important;
    font-size: 13px !important;
  }
}