/* ==========================================================================
   WP-MEGA-MENU.CSS (CLEANED)
   Styles & media queries related to WP Mega Menu / wpmm / #wp-megamenu-*
   Notes:
   - Consolidated duplicate @media (max-width: 1200px) blocks into one.
   - Removed redundant declarations and grouped common selectors.
   - Kept “plugin mobile defaults” (the long block) but trimmed obvious duplicates
	 and conflicts where your custom mobile rules already define behavior.
   - Ordering: Base → Desktop enhancements (>=1200) → Responsive (<=1600, <=1200,
	 <=359, device landscape)
   ========================================================================== */


/* ==========================================================================
   Base / shared (all viewports unless overridden)
   ========================================================================== */

/* Main container sizing (desktop; overridden at <=1200) */
#wp-megamenu-main-menu { min-width: 65%; }

/* Zero-out whitespace gaps between inline-block list items */
header .menu { font-size: 0; }

/* Keep “native menu” and WP Mega Menu top-level items consistent */
header .menu li,
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li {
  display: inline-block;
  margin: 0 20px;
  font-size: 17.5px !important;
}

/* Top-level link typography */
header .menu li a,
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li a {
  font-size: 17.5px !important;
  font-family: "PP Neue Montreal";
  text-transform: uppercase;
  padding: 5px 0;
  position: relative;
  color: #0180a6;
}

/* First/last item spacing */
header .menu li:first-child,
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li:first-child { margin-left: 0; }

header .menu li:last-child,
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li:last-child { margin-right: 0; }

/* Underline hover effect (top-level only) */
header .menu li a::after,
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 3px;
  background-color: #ff5900;
  transition: width 0.3s ease-in;
  display: block !important;
}

header .menu li a:hover,
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li > a:hover { color: #444; }

/* Expand underline on hover / current states */
header .menu li a:hover::after,
header .menu li.current-menu-item a::after,
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li:hover > a::after,
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li > a:hover::after,
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.current-menu-item > a::after,
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.current-menu-ancestor > a::after {
  width: 100%;
}

/* Submenu links (all submenu levels) */
#wp-megamenu-main-menu > .wpmm-nav-wrap ul.wp-megamenu > li ul.wp-megamenu-sub-menu li a {
  font-family: "PP Neue Montreal";
  font-weight: 400;
  color: #4d4d4d;
  word-break: normal;
}

/* Mega menu panel should span full width and align to left */
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.wpmm_mega_menu .wpmm-strees-row-and-content-container {
  width: 100% !important;
  left: 0 !important;
}

/* Desktop mega panel rounding (mobile overrides to square) */
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.wpmm_mega_menu
.wpmm-strees-row-and-content-container .wp-megamenu-sub-menu {
  border-radius: 20px;
}

/* Widget columns: indent nested widget menus */
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.wpmm_mega_menu
.wpmm-strees-row-and-content-container .wp-megamenu-sub-menu
.menu-widget-class .wp-megamenu-sub-menu {
  padding-left: 20px;
}

/* Widget menu items: add “triangle arrow” marker */
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.wpmm_mega_menu
.wpmm-strees-row-and-content-container .wp-megamenu-sub-menu
.menu-widget-class .menu-item a {
  position: relative;
  padding-left: 15px;
}

.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.wpmm_mega_menu
.wpmm-strees-row-and-content-container .wp-megamenu-sub-menu
.menu-widget-class .menu-item a::after {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-left: 7px solid #808080;
  border-bottom: 7px solid transparent;
  pointer-events: none;
  display: block !important;
}

.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.wpmm_mega_menu
.wpmm-strees-row-and-content-container .wp-megamenu-sub-menu
.menu-widget-class .menu-item a:hover::after {
  border-left-color: #ff5900;
}

/* Widget title links */
#wp-megamenu-main-menu > .wpmm-nav-wrap
.wp-megamenu > li > ul.wp-megamenu-sub-menu li.wpmm-type-widget > a {
  color: #0092bc;
}

/* Dropdown menu styling (non-mega) */
.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_dropdown_menu ul.wp-megamenu-sub-menu {
  border-radius: 5px;
  padding: 10px 0 !important;
}
.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_dropdown_menu ul.wp-megamenu-sub-menu li > a {
  padding: 10px 20px !important;
}

/* Mega menu internal padding (row container) */
.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu li.wpmm_mega_menu
ul.wp-megamenu-sub-menu > li.wpmm-row > ul.wp-megamenu-sub-menu {
  padding-right: 10px;
  padding-left: 10px;
}

/* Widget spacing inside mega panels */
.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu ul.wp-megamenu-sub-menu li.wpmm-type-widget {
  margin-bottom: 20px;
}
.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu ul.wp-megamenu-sub-menu li.wpmm-type-widget:last-child {
  margin-bottom: 0;
}

/* Mega widget headings */
#wp-megamenu-main-menu > .wpmm-nav-wrap .wp-megamenu > li
.wpmm-strees-row-and-content-container > ul.wp-megamenu-sub-menu
li.wpmm-type-widget > a {
  font-family: "PP Neue Montreal";
  font-weight: 500;
  padding-bottom: 10px;
  border-bottom: 1px solid #e6e6e6; /* default + hover/active keep same */
}

/* Large “column blocks” padding inside mega panels (desktop default) */
.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_mega_menu > ul.wp-megamenu-sub-menu > li.wpmm-row > ul.wp-megamenu-sub-menu > li,
.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_mega_menu > .wpmm-strees-row-container
ul.wp-megamenu-sub-menu > li.wpmm-row > ul.wp-megamenu-sub-menu > li {
  padding: 75px 30px 65px;
}

/* Nested submenu spacing */
.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu li.wpmm_mega_menu
ul.wp-megamenu-sub-menu li.wpmm-col ul.wp-megamenu-sub-menu li.menu-item ul.wp-megamenu-sub-menu {
  padding-top: 10px;
  line-height: 3 !important;
}

/* Mobile menu button (your styling) */
.wpmm-mobile-menu a.wpmm_mobile_menu_btn,
.wpmm_mobile_menu_btn {
  padding: 0;
  background: none;
  background-color: transparent;
  border-radius: 0;
}
.wpmm-mobile-menu a.wpmm_mobile_menu_btn,
.wpmm-mobile-menu a.wpmm_mobile_menu_btn:hover {
  /* color: #0092bc !important; */
}
.wpmm_mobile_menu_btn i {
  margin-right: 5px;
  font-size: 24px;
  vertical-align: text-top !important;
}


/* ==========================================================================
   Desktop “Mega Menu 2025” rules (>=1200px)
   ========================================================================== */

@media (min-width: 1400px) {

  /* Header background behavior */
  body header { background-color: transparent; }
  body header.fixed {/* background-color: rgba(0, 0, 0, .85); */}

  /* CTA button in menu */
  .menu-btn a {
	background-color: #0192bc;
	color: #fff !important;
	display: flex !important;
	align-items: center;
	flex-direction: row-reverse;
	gap: 4px;
	padding: 18px 20px !important;
	transition: opacity .3s;
  }
  .menu-btn a:hover { opacity: .8; }

  .menu-btn a::before {
	content: url("data:image/svg+xml,%3Csvg width='12' height='10' viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.7347 4.31325L8.03368 0.27883C7.69263 -0.0929432 7.12421 -0.0929432 6.78316 0.27883C6.44211 0.650602 6.44211 1.27022 6.78316 1.642L8.96842 4.03787H0.884211C0.391579 4.03787 0 4.46472 0 5.00172C0 5.53873 0.391579 5.96558 0.884211 5.96558H8.96842L6.78316 8.34768C6.44211 8.71945 6.44211 9.33907 6.78316 9.71084C6.96 9.90361 7.18737 10 7.41474 10C7.64211 10 7.86947 9.90361 8.04632 9.71084L11.7347 5.69019C11.8989 5.51119 12 5.26334 12 5.00172C12 4.7401 11.9116 4.49225 11.7347 4.31325Z' fill='white'/%3E%3C/svg%3E%0A");
	display: block;
  }

  /* Remove underline bar on CTA */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul > li.menu-btn > a::after { display: none !important; }

  /* Desktop spacing tweaks for this specific menu */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update > li { margin: 0 8px; }
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update > li:first-child { margin-left: 0; }
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update > li:last-child { margin-right: 0; }

  /* Desktop hover background */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update > li:hover > a {
	background-color: #003247;
	color: #fff;
  }

  /* Desktop link style override */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update > li > a {
	padding: 10px 14px;
	text-transform: none;
	color: #fff;
	cursor: pointer;
  }
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update > li > a::after {
	display: none !important; /* kill underline effect for this 2025 header style */
  }

  /* Dropdown alignment rules */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu.columns-three > ul.wp-megamenu-sub-menu {
	transform: translateX(-50%) !important;
  }
  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu.columns-two > ul.wp-megamenu-sub-menu {
	left: auto;
	right: 0;
  }

  /* Dropdown panel styling */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu {
	background: #003247;
	width: auto;
	border-radius: 0;
	padding: 54px !important;
	gap: 44px 77px;
  }

  /* Column counts / widths */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu.columns-two > ul.wp-megamenu-sub-menu {
	column-count: 2;
  }
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu.columns-two > ul.wp-megamenu-sub-menu li {
	width: 300px;
  }

  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu.columns-three > ul.wp-megamenu-sub-menu {
	column-count: 3;
  }

  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu li {
	width: 280px;
	break-inside: avoid-column;
  }

  /* Dropdown link colors */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu li a {
	color: #fff;
  }

  /* Dropdown “section headers” */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu > li.menu-title > a,
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu > li.menu-item-has-children > a {
	padding: 0 0 10px !important;
	border-bottom: 1px solid #0192bc;
  }

  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu > li.menu-title {
	margin-bottom: 44px;
  }

  /* Remove plugin “icon/arrow” clutter */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu > li.menu-title > a::before,
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu > li.menu-item-has-children > a b {
	display: none !important;
  }

  /* Force nested lists to render “always open” inside the dropdown columns */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu li .wp-megamenu-sub-menu {
	width: auto;
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: static;
	background: transparent;
	box-shadow: none;
	transform: none !important;
	padding: 0 !important;
	margin-top: 24px;
	margin-bottom: 44px;
  }

  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu li .wp-megamenu-sub-menu li {
	margin-bottom: 16px;
  }

  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu li .wp-megamenu-sub-menu li a {
	padding: 0 !important;
  }

  /* “Leaf” items get a leading arrow icon */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu li:not(.menu-item-has-children) a {
	display: inline-flex;
	gap: 6px;
	position: relative;
	padding-inline: 0 !important;
  }

  .wp-megamenu-wrap .wpmm-nav-wrap > ul#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu li:not(.menu-item-has-children) a::before {
	content: "";
	min-width: 12px;
	width: 12px;
	height: 10px;
	background-image: url("data:image/svg+xml,%3Csvg width='12' height='10' viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.7347 4.31325L8.03368 0.27883C7.69263 -0.0929432 7.12421 -0.0929432 6.78316 0.27883C6.44211 0.650602 6.44211 1.27022 6.78316 1.642L8.96842 4.03787H0.884211C0.391579 4.03787 0 4.46472 0 5.00172C0 5.53873 0.391579 5.96558 0.884211 5.96558H8.96842L6.78316 8.34768C6.44211 8.71945 6.44211 9.33907 6.78316 9.71084C6.96 9.90361 7.18737 10 7.41474 10C7.64211 10 7.86947 9.90361 8.04632 9.71084L11.7347 5.69019C11.8989 5.51119 12 5.26334 12 5.00172C12 4.7401 11.9116 4.49225 11.7347 4.31325Z' fill='white'/%3E%3C/svg%3E%0A");
	background-size: contain;
	background-repeat: no-repeat;
	margin-top: 8px;
  }
}


/* ==========================================================================
   Responsive: <=1600px (dropdown positioning helpers)
   ========================================================================== */

@media (max-width: 1600px) {

  /* Make the 3-column dropdown span the viewport at this breakpoint */
  #header .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu.columns-three > ul.wp-megamenu-sub-menu {
	left: 0 !important;
	width: 100vw;
	max-width: 100vw !important;
	transform: none !important;
  }

  /* Ensure containers allow full-width dropdown */
  #header .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_dropdown_menu.columns-three,
  body .wp-megamenu-wrap .wpmm-nav-wrap > ul,
  .wp-megamenu-wrap {
	position: static !important;
	}
}


/* ==========================================================================
   Responsive: <=1200px (mobile menu behavior + mega panel changes)
   Consolidated from multiple duplicate <=1200 blocks
   ========================================================================== */

@media (max-width: 1400px) {

  /* Layout: logo + container width */
  #wp-megamenu-main-menu { min-width: 100%; }

  .logo {
	position: absolute;
	top: 28px;
	left: 25px;
  }

  /* Remove desktop item margins at mobile */
  header .menu li,
  .wp-megamenu-wrap .wpmm-nav-wrap > ul > li { margin: 0; }

  /* Mobile: top-level link color + active states */
  #wp-megamenu-main-menu > .wpmm-nav-wrap ul.wp-megamenu > li > a { color: #000; }

  #wp-megamenu-main-menu > .wpmm-nav-wrap ul.wp-megamenu > li:hover > a,
  #wp-megamenu-main-menu > .wpmm-nav-wrap ul.wp-megamenu > li.current-menu-ancestor > a,
  #wp-megamenu-main-menu > .wpmm-nav-wrap ul.wp-megamenu > li > a:hover,
  #wp-megamenu-main-menu > .wpmm-nav-wrap ul.wp-megamenu > li.active > a,
  #wp-megamenu-main-menu > .wpmm-nav-wrap ul.wp-megamenu > li.current-menu-item > a {
	color: #ff5900 !important;
  }

  /* Hide underline effect on mobile */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul > li > a::after { display: none !important; }

  /* Mobile type size (your rule wins) */
  header .menu li a,
  .wp-megamenu-wrap .wpmm-nav-wrap > ul > li a { font-size: 16px !important; }

  /* Mobile menu button should display */
  .wpmm_mobile_menu_btn { display: block; }

  /* ---- Mobile menu panel (your custom “slide-out” sizing) ---- */
  .wp-megamenu-wrap.wpmm-mobile-menu ul.wp-megamenu {
	width: auto;
	left: -20px;
	right: -20px;
	top: 65px;
	height: calc(100vh - 85px);
	overflow-y: scroll;
	padding: 15px 0;
  }

  #wp-megamenu-main-menu.wp-megamenu-wrap.wpmm-mobile-menu > .wpmm-nav-wrap ul.wp-megamenu > li > a {
	padding: 10px 20px;
  }

  /* Mobile submenu background and spacing */
  .wp-megamenu-wrap.wpmm-mobile-menu ul.wp-megamenu li.menu-item-has-children > ul.wp-megamenu-sub-menu {
	background: #f3f9fa !important;
	padding: 20px !important;
  }

  .wp-megamenu-wrap.wpmm-mobile-menu .wpmm-nav-wrap ul.wp-megamenu > li.wpmm_dropdown_menu > ul.wp-megamenu-sub-menu {
	padding: 10px 20px;
  }

  /* Dropdown item padding tightening */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_dropdown_menu ul.wp-megamenu-sub-menu li { padding: 0; }
  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_dropdown_menu ul.wp-megamenu-sub-menu li > a {
	padding: 8px 0 !important;
  }

  /* Mega menu: reduce row padding and remove side padding */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu li.wpmm_mega_menu
  ul.wp-megamenu-sub-menu > li.wpmm-row > ul.wp-megamenu-sub-menu {
	padding-left: 0;
	padding-right: 0;
  }

  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_mega_menu > ul.wp-megamenu-sub-menu > li.wpmm-row > ul.wp-megamenu-sub-menu > li,
  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_mega_menu > .wpmm-strees-row-container
  ul.wp-megamenu-sub-menu > li.wpmm-row > ul.wp-megamenu-sub-menu > li {
	padding: 15px 20px 0 20px;
  }

  /* Last mega “column block” gets bottom padding */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_mega_menu
  > ul.wp-megamenu-sub-menu > li.wpmm-row > ul.wp-megamenu-sub-menu > li:last-child {
	padding-bottom: 20px;
  }

  /* Nested submenu spacing reduced on mobile */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu li.wpmm_mega_menu
  ul.wp-megamenu-sub-menu li.wpmm-col ul.wp-megamenu-sub-menu li.menu-item ul.wp-megamenu-sub-menu {
	padding-top: 0;
  }

  /* Mobile mega panel becomes square + scroll */
  .wp-megamenu-wrap .wpmm-nav-wrap > ul > li.wpmm_mega_menu
  .wpmm-strees-row-and-content-container .wp-megamenu-sub-menu {
	border-radius: 0;
  }

  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu li.wpmm_mega_menu
  .wpmm-strees-row-and-content-container > .wp-megamenu-sub-menu > li {
	max-height: 260px;
	overflow-y: scroll;
	background: #f3f9fa;
	padding: 20px;
  }

  .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu li.wpmm_mega_menu
  .wpmm-strees-row-and-content-container > .wp-megamenu-sub-menu > li
  > .wp-megamenu-sub-menu > li {
	padding: 0;
  }

  /* Widget heading font size on mobile (designer rule) */
  #wp-megamenu-main-menu > .wpmm-nav-wrap .wp-megamenu > li > ul.wp-megamenu-sub-menu li.wpmm-type-widget > a {
	font-size: 16px;
  }

  /* --- “3-column dropdown width fix” (was duplicated) --- */
  #header .wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu#menu-main-menu-2022-update
  > li.wpmm_dropdown_menu.columns-three > ul.wp-megamenu-sub-menu {
	left: 0 !important;
	width: 100% !important;
	max-width: 100vw !important;
	transform: none !important;
  }


  /* ==========================================================================
	 Plugin mobile defaults (trimmed)
	 Keep these if you rely on plugin JS toggling / visibility behaviors.
	 NOTE: Removed duplicates like repeated font-size/weight/text-transform blocks.
	 ========================================================================== */

  /* Mobile menu container hidden by default; toggled open by plugin JS */
  body .wp-megamenu-wrap .wpmm-nav-wrap > ul {
	display: none;
	position: absolute;
	z-index: 9999;
	background: #fff;
	width: 100%;
	left: 0;
	max-height: none;
	}

  .wp-megamenu-wrap.wpmm-mobile-menu ul.wp-megamenu li { width: 100%; border: none; }
  .wp-megamenu-wrap.wpmm-mobile-menu ul.wp-megamenu li button { padding: 0; background: none; }

  a.wpmm_mobile_menu_btn {display: inline-block !important;}

  /* Align mobile menu button to the right, menu list left */
  #wp-megamenu-main-menu.wp-megamenu-wrap.wpmm-mobile-menu .wpmm-nav-wrap {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	text-align: right;
	vertical-align: baseline;
	}
  .wp-megamenu-wrap.wpmm-mobile-menu .wpmm-nav-wrap ul.wp-megamenu { text-align: left; }

  /* Mobile caret */
  .wpmm-mobile-menu ul.wp-megamenu li > a b {
	float: right;
	padding: 0 5px;
	line-height: inherit;
  }

  /* Flatten submenus for mobile */
  .wp-megamenu-wrap.wpmm-mobile-menu .wpmm-nav-wrap ul.wp-megamenu li .wp-megamenu-sub-menu {
	position: relative;
	opacity: 1;
	visibility: visible;
	padding: 0;
	margin: 0;
	box-shadow: none;
  }

  .wp-megamenu-wrap.wpmm-mobile-menu .wpmm-nav-wrap ul.wp-megamenu > li.wpmm_mega_menu > ul.wp-megamenu-sub-menu {
	position: relative;
	visibility: visible;
	opacity: 1;
  }

  .wp-megamenu-wrap.wpmm-mobile-menu .wpmm-nav-wrap ul.wp-megamenu li .wp-megamenu-sub-menu li ul {
	padding: 0;
	margin: 0;
  }

  /* Default plugin button styling (kept, but your earlier “transparent” styling will override) */
  .wpmm-mobile-menu a.wpmm_mobile_menu_btn {
	box-shadow: none;
	border: none;
	padding: 6px 12px;
	font-weight: 400;
	margin: 12px 0;
	border-radius: 3px;
	transition: 400ms;
	-webkit-transition: 400ms;
  }

  /* Fixed-width dropdowns should be full width on mobile */
  .wp-megamenu-wrap.wpmm-mobile-menu .wpmm-nav-wrap .wp-megamenu > li.wpmm-item-fixed-width > ul.wp-megamenu-sub-menu {
	left: 0 !important;
	width: 100% !important;
  }
}


/* ==========================================================================
   Responsive: <=359px (tiny devices)
   ========================================================================== */

@media (max-width: 359px) {
  .wp-megamenu-wrap.wpmm-mobile-menu ul.wp-megamenu li.menu-item-has-children > ul.wp-megamenu-sub-menu {
	max-height: 240px;
  }
}


/* ==========================================================================
   Device landscape special-case (mobile only)
   ========================================================================== */

@media only screen and (max-device-width: 767px) and (orientation: landscape) {
  .wp-megamenu-wrap.wpmm-mobile-menu .wpmm-nav-wrap ul.wp-megamenu {
	max-height: 220px;
	overflow-y: scroll;
  }
}