/* Top bar */
body.noscroll .topbar { position: fixed; top: 0; left: 0; width: 100%;}
.topbar { position: sticky; top: 0; z-index: 1000; background: var(--bar); color: var(--bar-ink); box-shadow: 0 6px 18px rgba(0,0,0,.08); }
.topbar-inner { display: flex; align-items: center; gap: 1rem; padding: calc(var(--baseline)/2) 1rem;}
.brand img { height: 46px; width: auto; }

nav.main-nav { margin-left: auto; }
.nav-list, .nav-list-other { display: flex; align-items: center; gap: 1.5rem; list-style: none; margin: 0; padding: 0; }
.nav-list-other { align-self: center; }
.nav-list a, .nav-list-other a { color: var(--bar-ink); opacity: .95; font-weight: 500; letter-spacing: .15px; }
.nav-list a:hover, .nav-list a:focus-visible, .nav-list-other a:hover, .nav-list-other a:focus-visible { color: #fff; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 2px; }
.nav-list-other li.menu-item-cart { position: relative; }
.nav-list-other li.menu-item-cart a i { font-size: 25px; }
.nav-list-other li.menu-item-cart a:hover { text-decoration: none; color: var(--accent); }

.icon-btn { position: relative; display: grid; place-items: center; border: none; background: transparent; color: var(--bar-ink); cursor: pointer; transition: transform .06s ease, color .2s ease; padding: 0; }
.icon-btn i { font-size: 25px; }
.icon-btn:hover { color: var(--accent); }
.icon-btn:active { transform: translateY(1px) scale(.97); }
.icon { width: 22px; height: 22px; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; fill: none; }

/* Cart badge */
.cart-badge { position: absolute; top: -6px; right: -4px; background: #000; color: #fff; border-radius: 50%; font-size: 12px; font-weight: 600; padding: 2px 0px; width: 20px; height: 20px; text-align: center; box-shadow: 0 0 4px rgba(0,0,0,0.25); line-height: 1; border: 1px solid var(--badge); }

/* Secondary bar */
.subbar { position: sticky; top: 73px; z-index: 999; background: var(--subbar); color: #f4f0ed; box-shadow: 0 4px 10px rgba(0,0,0,.1); }
.subbar-inner { display: flex; align-items: center; justify-content: flex-end; padding: 1.2rem 0; position: relative; }
.subnav-list { display: flex; list-style: none; margin: 0; padding: 0; }
.subnav-list > li { position: static; }
.subnav-list a { color: #f4f0ed; font-weight: 500; letter-spacing: .15px; padding: .5rem 1rem; display: inline-block; }
.subnav-list a:hover, .subnav-list a:focus-visible { color: #fff; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 2px; }

/* Mega menu */
.subbar-inner { position: relative; }
.mega { position: absolute; left: 0; right: 0; top: 100%; width: 100%; background: #fff; color: #000; border-radius: 0; box-shadow: 0 8px 30px rgba(0,0,0,.15); padding: 2rem 0; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .18s ease, visibility .18s ease, transform .18s ease; transform: translateY(-4px); border-top: 1px solid #ddd; }
.subnav-list > li:hover .mega, .subnav-list > li:focus-within .mega { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.mega-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.5rem; max-width: var(--container); margin: 0 auto; padding-left: 1.5rem; }
.mega h4 { margin: 0 0 .75rem; font-size: 1.1rem; font-weight: 600; color: #000; }
.mega ul { list-style: none; margin: 0; padding: 0; }
.mega li { margin: .5rem 0; }
.mega a { color: #000; text-decoration: none; }
.mega a:hover, .mega a:focus-visible { text-decoration: underline; text-underline-offset: 3px; }

/* mobile menu button */
#primary-mobile-menu {
	background: none;
	padding: 0;
}
#primary-mobile-menu i {
	font-size: 25px;
}
#mobile-menu-nav {
	position: fixed;
	width: 100%;
	background: var(--bar);
	transition: all .2s ease-in-out;
	height: 0;
}
#mobile-menu-nav.show {
	height: 100%;
}
#mobile-menu-nav .mobile-menu-container > ul {
	position: relative;
	padding: 0 20px;
	height: 100vh;
}
#mobile-menu-nav .mobile-menu-container > ul li {
	display: flex;
	position: unset;
}
#mobile-menu-nav .mobile-menu-container > ul li a {
	color: #FFF;
	padding: 10px;
	display: inline-block;
	flex: 1;
}
#mobile-menu-nav .mobile-menu-container > ul li a:hover,
#mobile-menu-nav .mobile-menu-container > ul li a:focus,
#mobile-menu-nav .mobile-menu-container > ul li a:active {
	background: none;
}
#mobile-menu-nav .mobile-menu-container > ul li button {
	background: none;
	width: 50px;
	height: 50px;
	padding: 0;
}
#mobile-menu-nav .mobile-menu-container > ul li button i {
	font-size: 12px;
}

.mobile-subnav-list {
  position: relative;
  transition: transform 0.3s ease;
}

/* hide submenus */
.mobile-subnav-list .dropdown-menu {
  position: absolute;
  inset: 0;
  transform: translateX(100%);
  transition: transform 0.3s ease;
  display: block; /* override bootstrap */
  background: none;
  border-radius: 0;
  background: var(--bar); color: var(--bar-ink);
  top: 0;
  height: 100vh;
  border: none;
  padding: 0 20px;
  display: none;
}

/* show submenu */
.mobile-subnav-list .dropdown-menu.submenu-active {
  /*transform: translateX(0);*/
  display: block;
}

/* push main menu left */
.mobile-subnav-list.submenu-open {
  transform: translateX(-100%);
  transition: transform 0.3s ease;
}

.submenu-toggle {
  background: none;
  border: none;
  float: right;
}
/*#mobile-menu-nav .mobile-menu-container ul li > ul{
	list-style: none;
	display: none;
	position: absolute;
	width: 100%;
	z-index: 1;
	transition: all .4s ease;
	margin-left: 0;
	top: 0;
	left: 100%;
	visibility: hidden;
	background: transparent;
	border: 0;
}
#mobile-menu-nav .mobile-menu-container ul li > ul.open {
	left: 0;
	display: block;
	visibility: visible;
}*/

/* Custom hamburger */
.navbar-toggler-icon {
  background-image: none;
  width: 25px;
  height: 2px;
  background-color: #FFF;
  position: relative;
  transition: all 0.3s ease-in-out;
}

.navbar-toggler-icon::before,
.navbar-toggler-icon::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #FFF;
  transition: all 0.3s ease-in-out;
  left: 0;
}

.navbar-toggler-icon::before {
  top: -8px;
}

.navbar-toggler-icon::after {
  top: 8px;
}

/* X state */
.navbar-toggler:not(.collapsed) .navbar-toggler-icon {
  background-color: transparent;
}

.navbar-toggler:not(.collapsed) .navbar-toggler-icon::before {
  transform: rotate(45deg);
  top: 0;
}

.navbar-toggler:not(.collapsed) .navbar-toggler-icon::after {
  transform: rotate(-45deg);
  top: 0;
}


@media (max-width: 768px) {

}