/* ==========================================================================
   CUSTOM DRAWER OVERLAY MENU (RSS 2.0)
   ========================================================================== */

/* 1. Modal Container Base */
.rss-nav-modal {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	z-index: 999999 !important;
	background-color: #4a0000; /* Dark burgundy initial background */
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.4s ease, visibility 0.4s ease, background-color 0.4s ease;
}

.rss-nav-modal.is-open {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
}

/* Background State Transition for Drawer View (Light Beige/Cream) */
.rss-nav-modal.is-drawer-view {
	background-color: #e6dfd5;
}

/* 2. Top Header / Controls */
.rss-nav-header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding: 2.5rem 4rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	z-index: 10;
}

.rss-logo-text {
	font-family: serif;
	font-size: 1.75rem;
	letter-spacing: 0.1em;
	color: #ffffff;
	text-decoration: none;
	transition: color 0.3s ease;
}

.rss-nav-modal.is-drawer-view .rss-logo-text {
	color: #4a0000;
}

.rss-nav-close {
	background: none;
	border: none;
	color: #ffffff;
	font-size: 2.5rem;
	cursor: pointer;
	line-height: 1;
	transition: color 0.3s ease;
  box-shadow: none;
}

.rss-nav-close:hover {
  color: #fff;
  background-color: initial;
  opacity: 0.7;
  box-shadow: none;
}

.rss-nav-modal.is-drawer-view .rss-nav-close {
	color: #4a0000;
}

/* 3. Main Body Container */
.rss-nav-body {
	display: flex;
	width: 100%;
	height: 100%;
}

.rss-nav-left-col {
	width: 50%;
	height: 100%;
	display: flex;
	align-items: center;
	padding-left: 6rem;
	position: relative;
	z-index: 5;
}

.rss-nav-right-col {
	width: 50%;
	height: 100%;
	position: relative;
	overflow: hidden;
}

/* 4. Navigation Panel States */
.rss-panel {
	position: absolute;
	left: 6rem;
	opacity: 0;
	visibility: hidden;
	transform: translateX(-30px);
	transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1), 
	            transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), 
	            visibility 0.4s ease;
}

.rss-panel.is-active {
	opacity: 1;
	visibility: visible;
	transform: translateX(0);
}

.rss-main-links,
.rss-sub-links {
	list-style: none;
	margin: 0;
	padding: 0;
}

.rss-main-links li,
.rss-sub-links li {
	/* margin-bottom: 0.8rem; */
}

/* Primary Top-Level Links */
.rss-main-links a,
.rss-drawer-toggle {
	background: none;
	border: none;
	padding: 0;
	font-family: inherit;
	font-size: 2.25rem;
	font-weight: 300;
  line-height: inherit !important;
	color: #ffffff;
	text-decoration: none;
	cursor: pointer;
	transition: opacity 0.2s ease;
}

.rss-main-links a:hover,
.rss-drawer-toggle:hover {
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: underline;
  color: #fff;
}

/* Drawer / Sub-Menu Links */
.rss-drawer-title {
	display: block;
	font-size: 0.75rem;
	letter-spacing: 0.2em;
	color: #8b3a3a;
	margin-bottom: 2rem;
	font-weight: 600;
}

.rss-sub-links a {
	font-size: 2rem;
	font-weight: 300;
	color: #4a0000;
	text-decoration: none;
	transition: opacity 0.2s ease;
}

.rss-sub-links a:hover {
	text-decoration: underline;
}

.rss-drawer-back {
	background: none;
	border: none;
	color: #8b3a3a;
	font-size: 0.875rem;
	cursor: pointer;
	margin-bottom: 1.5rem;
	padding: 0;
  box-shadow: none !important;
}
.rss-drawer-back:hover {
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: underline;
  color: #8b3a3a;
}

/* 5. Right Column Hover Stage */
.rss-hover-stage {
	width: 100%;
	height: 100%;
	position: relative;
}

.rss-nav-hover-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	opacity: 0;
	transform: scale(1.05);
	transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.rss-nav-hover-bg.is-active {
	opacity: 1;
	transform: scale(1);
}

/* Responsive Mobile Layout */
@media (max-width: 991px) {
	.rss-nav-body {
		flex-direction: column;
	}
	
	.rss-nav-left-col {
		width: 100%;
		padding: 8rem 2rem 2rem 2rem;
	}
	
	.rss-panel {
		left: 2rem;
	}
	
	.rss-nav-right-col {
		display: none;
	}
}

/* ==========================================================================
   PURE CSS 3-LINE BURGER ICON (No empty spans needed)
   ========================================================================== */

.rss-menu-trigger {
	background: transparent !important;
	border: none !important;
	cursor: pointer;
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.75rem !important;
	padding: 0.5rem 0 !important;
	color: var(--ast-global-color-2);
	font-family: inherit;
	font-size: 0.85rem;
	font-weight: 400;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	transition: opacity 0.3s ease;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

/* Variation for Transparent Header */
.ast-theme-transparent-header .rss-menu-trigger {
  color: #ffffff !important;
}

.rss-menu-trigger:hover {
	opacity: 0.75;
}

/* Burger label */
.burger-label {
  display: none;
}

/* Base icon container & Middle Line */
.rss-menu-trigger .burger-icon {
	display: inline-block !important;
	width: 40px !important;
	height: 2px !important;
	background-color: currentColor !important;
	position: relative !important;
	vertical-align: middle;
	transition: background-color 0.3s ease;
}

/* Top Line (::before) & Bottom Line (::after) */
.rss-menu-trigger .burger-icon::before,
.rss-menu-trigger .burger-icon::after {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	width: 100% !important;
	height: 2px !important;
	background-color: currentColor !important;
	transition: transform 0.3s ease;
}

/* Offset Top and Bottom Lines */
.rss-menu-trigger .burger-icon::before {
	top: -9px !important; /* Moves top line up */
}

.rss-menu-trigger .burger-icon::after {
	bottom: -9px !important; /* Moves bottom line down */
}