/**
 * Vienna Moose Lodge - Homepage Styles
 * Dark Navy + Gold palette with scroll animations and hover effects.
 *
 * @package Moose_Lodge_Theme
 * @since   1.0.0
 */

/* ============================================================
   DESIGN TOKENS
   ============================================================ */
:root {
	--vm-navy:        #0a0f1e;
	--vm-navy-mid:    #0f1b35;
	--vm-navy-card:   #131f3a;
	--vm-gold:        #d4a017;
	--vm-gold-light:  #e8c547;
	--vm-gold-glow:   rgba(212, 160, 23, 0.18);
	--vm-white:       #f4f1ea;
	--vm-white-soft:  rgba(244, 241, 234, 0.80);
	--vm-transition:  0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* ============================================================
   GLOBAL RESETS FOR THIS THEME
   ============================================================ */
*,
*::before,
*::after {
	box-sizing: border-box;
}

body {
	background-color: var(--vm-navy);
	color: var(--vm-white);
	font-size: 16px; /* Accessible baseline for older members */
}

/* ============================================================
   SCROLL REVEAL ANIMATIONS
   Elements start hidden/offset and become visible via JS class.
   ============================================================ */
.vm-reveal {
	opacity: 0;
	transform: translateY(15px);
	transition: opacity 0.8s cubic-bezier(0.215, 0.610, 0.355, 1), transform 0.8s cubic-bezier(0.215, 0.610, 0.355, 1);
}
.vm-reveal.vm-visible {
	opacity: 1;
	transform: translateY(0);
}

/* Staggered children */
.vm-reveal-stagger > * {
	opacity: 0;
	transform: translateY(12px);
	transition: opacity 0.7s cubic-bezier(0.215, 0.610, 0.355, 1), transform 0.7s cubic-bezier(0.215, 0.610, 0.355, 1);
}
.vm-reveal-stagger.vm-visible > * {
	opacity: 1;
	transform: none;
}
.vm-reveal-stagger.vm-visible > *:nth-child(1) { transition-delay: 0.05s; }
.vm-reveal-stagger.vm-visible > *:nth-child(2) { transition-delay: 0.16s; }
.vm-reveal-stagger.vm-visible > *:nth-child(3) { transition-delay: 0.27s; }
.vm-reveal-stagger.vm-visible > *:nth-child(4) { transition-delay: 0.38s; }
.vm-reveal-stagger.vm-visible > *:nth-child(5) { transition-delay: 0.49s; }
.vm-reveal-stagger.vm-visible > *:nth-child(6) { transition-delay: 0.60s; }
.vm-reveal-stagger.vm-visible > *:nth-child(7) { transition-delay: 0.71s; }
.vm-reveal-stagger.vm-visible > *:nth-child(8) { transition-delay: 0.82s; }
.vm-reveal-stagger.vm-visible > *:nth-child(9) { transition-delay: 0.93s; }
.vm-reveal-stagger.vm-visible > *:nth-child(10) { transition-delay: 1.04s; }
.vm-reveal-stagger.vm-visible > *:nth-child(11) { transition-delay: 1.15s; }
.vm-reveal-stagger.vm-visible > *:nth-child(12) { transition-delay: 1.26s; }

/* Slide in from left -> now a subtle fade-in-up */
.vm-reveal-left {
	opacity: 0;
	transform: translateY(15px);
	transition: opacity 0.8s cubic-bezier(0.215, 0.610, 0.355, 1), transform 0.8s cubic-bezier(0.215, 0.610, 0.355, 1);
}
.vm-reveal-left.vm-visible { opacity: 1; transform: none; }

/* Slide in from right -> now a subtle fade-in-up */
.vm-reveal-right {
	opacity: 0;
	transform: translateY(15px);
	transition: opacity 0.8s cubic-bezier(0.215, 0.610, 0.355, 1), transform 0.8s cubic-bezier(0.215, 0.610, 0.355, 1);
}
.vm-reveal-right.vm-visible { opacity: 1; transform: none; }

/* ============================================================
   HERO SECTION
   ============================================================ */
.vm-hero {
	position: relative;
	width: 100%;
	min-height: calc(100vh - 76px - var(--wp-admin-bar-height, 0px));
	display: flex;
	align-items: center;
	justify-content: flex-start;
	overflow: hidden;
}

.vm-hero__bg {
	position: absolute;
	inset: 0;
	background-image: url('/wp-content/uploads/2026/05/ViennaMoose-Gathering-Around-Fire.jpg');
	background-size: cover;
	background-position: center 40%;
	transform: scale(1);
	z-index: 0;
}

/* Multi-layer overlay: deep navy from left + dark vignette overall */
.vm-hero__overlay {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(105deg, rgba(10,15,30,0.96) 0%, rgba(10,15,30,0.80) 45%, rgba(10,15,30,0.20) 100%),
		linear-gradient(to top, rgba(10,15,30,0.70) 0%, transparent 50%);
	z-index: 1;
}

.vm-hero__content {
	position: relative;
	z-index: 2;
	width: 100%;
	padding: 8rem 6rem 4rem 6rem;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 100px;
}

.vm-hero__text-col {
	flex: 1;
	max-width: 650px;
}

.vm-hero__widget-col {
	flex: 0 0 400px;
}

/* Gold accent rule above heading */
.vm-hero__eyebrow {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 1.2rem;
}
.vm-hero__eyebrow-line {
	display: block;
	width: 40px;
	height: 3px;
	background: var(--vm-gold);
	border-radius: 2px;
}
.vm-hero__eyebrow-text {
	font-family: 'Work Sans', sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 3.5px;
	text-transform: uppercase;
	color: var(--vm-gold);
}

.vm-hero__title {
	font-family: 'Belleza', serif;
	font-size: clamp(32px, 5vw, 58px);
	font-weight: 400;
	line-height: 1.08;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: var(--vm-white);
	margin: 0 0 1.2rem 0;
}

/* Gold highlight on last word */
.vm-hero__title span {
	color: var(--vm-gold);
}

.vm-hero__subtitle {
	font-family: 'Work Sans', sans-serif;
	font-size: 16px;
	line-height: 1.65;
	color: var(--vm-white-soft);
	margin-bottom: 2.2rem;
	max-width: 440px;
}

.vm-hero__actions {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
}

.vm-btn-gold {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0.85rem 2rem;
	background: var(--vm-gold);
	color: var(--vm-navy) !important;
	font-family: 'Work Sans', sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	border-radius: 4px;
	text-decoration: none;
	transition: background var(--vm-transition), transform 0.2s ease, box-shadow 0.2s ease;
	box-shadow: 0 4px 20px rgba(212, 160, 23, 0.30);
}
.vm-btn-gold:hover {
	background: var(--vm-gold-light);
	transform: translateY(-2px);
	box-shadow: 0 8px 32px rgba(212, 160, 23, 0.50);
	color: var(--vm-navy) !important;
}

.vm-btn-outline {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0.85rem 2rem;
	background: transparent;
	color: var(--vm-white) !important;
	font-family: 'Work Sans', sans-serif;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	border: 2px solid rgba(244, 241, 234, 0.40);
	border-radius: 4px;
	text-decoration: none;
	transition: border-color var(--vm-transition), background var(--vm-transition), transform 0.2s ease;
}
.vm-btn-outline:hover {
	border-color: var(--vm-gold);
	color: var(--vm-gold) !important;
	transform: translateY(-2px);
}

/* Scroll indicator */
.vm-hero__scroll {
	position: absolute;
	bottom: 2.5rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	text-decoration: none;
	opacity: 0.70;
	transition: opacity 0.3s;
}
.vm-hero__scroll:hover { opacity: 1; }
.vm-hero__scroll-label {
	font-family: 'Work Sans', sans-serif;
	font-size: 10px;
	letter-spacing: 2.5px;
	text-transform: uppercase;
	color: var(--vm-white-soft);
}
.vm-hero__scroll-chevron {
	width: 24px;
	height: 24px;
	border-right: 2px solid var(--vm-gold);
	border-bottom: 2px solid var(--vm-gold);
	transform: rotate(45deg);
	animation: vm-bounce 1.8s ease infinite;
}
@keyframes vm-bounce {
	0%, 100% { transform: rotate(45deg) translateY(0); }
	50%        { transform: rotate(45deg) translateY(6px); }
}

/* ============================================================
   STATS BAR
   ============================================================ */
.vm-stats {
	background: var(--vm-navy-mid);
	border-top: 1px solid rgba(212,160,23,0.20);
	border-bottom: 1px solid rgba(212,160,23,0.20);
	padding: 2.2rem 4rem;
	display: flex;
	justify-content: center;
	gap: 4rem;
	flex-wrap: wrap;
}

.vm-stat {
	text-align: center;
}
.vm-stat__number {
	font-family: 'Belleza', serif;
	font-size: clamp(26px, 3vw, 40px);
	color: var(--vm-gold);
	line-height: 1;
	margin-bottom: 0.3rem;
}
.vm-stat__label {
	font-family: 'Work Sans', sans-serif;
	font-size: 11px;
	letter-spacing: 2.5px;
	text-transform: uppercase;
	color: var(--vm-white-soft);
}

/* ============================================================
   SECTION HEADER (reusable)
   ============================================================ */
.vm-section-header {
	text-align: center;
	margin-bottom: 3rem;
}
.vm-section-header__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: 'Work Sans', sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--vm-gold);
	margin-bottom: 0.8rem;
}
.vm-section-header__eyebrow::before,
.vm-section-header__eyebrow::after {
	content: '';
	display: block;
	width: 24px;
	height: 2px;
	background: var(--vm-gold);
	border-radius: 1px;
}
.vm-section-header__title {
	font-family: 'Belleza', serif;
	font-size: clamp(20px, 2.5vw, 32px);
	font-weight: 400;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--vm-white);
	margin: 0;
}

/* ============================================================
   ACTIVITY GRID (photo cards with hover zoom)
   ============================================================ */
.vm-activities {
	padding: 5rem 4rem;
	background: var(--vm-navy);
}

.vm-activity-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 1.2rem;
	max-width: 1200px;
	margin: 0 auto;
}

.vm-activity-card {
	position: relative;
	border-radius: 10px;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	cursor: pointer;
	background: var(--vm-navy-card);
}

.vm-activity-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.6s var(--vm-transition);
}
.vm-activity-card:hover img {
	transform: scale(1.08);
}

/* Gold overlay on hover */
.vm-activity-card__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(10,15,30,0.90) 0%, rgba(10,15,30,0.20) 60%, transparent 100%);
	transition: background 0.4s ease;
}
.vm-activity-card:hover .vm-activity-card__overlay {
	background: linear-gradient(to top, rgba(10,15,30,0.95) 0%, rgba(212,160,23,0.12) 60%, transparent 100%);
}

.vm-activity-card__body {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 1.4rem 1.2rem 1.2rem;
	transform: translateY(4px);
	transition: transform 0.4s ease;
}
.vm-activity-card:hover .vm-activity-card__body {
	transform: translateY(0);
}

.vm-activity-card__tag {
	display: inline-block;
	font-family: 'Work Sans', sans-serif;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 2.5px;
	text-transform: uppercase;
	color: var(--vm-gold);
	margin-bottom: 0.35rem;
}

.vm-activity-card__title {
	font-family: 'Belleza', serif;
	font-size: 18px;
	color: var(--vm-white);
	margin: 0;
	letter-spacing: 0.5px;
}

/* Gold bottom border that appears on hover */
.vm-activity-card::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: var(--vm-gold);
	transform: scaleX(0);
	transition: transform 0.4s ease;
	transform-origin: left;
}
.vm-activity-card:hover::after {
	transform: scaleX(1);
}

/* ============================================================
   ABOUT / COMMUNITY TEASER
   ============================================================ */
.vm-about {
	padding: 5rem 4rem;
	background: var(--vm-navy-mid);
	display: flex;
	align-items: center;
	gap: 5rem;
	max-width: 1200px;
	margin: 0 auto;
}

.vm-about__image-wrap {
	flex: 0 0 45%;
	position: relative;
	border-radius: 12px;
	overflow: hidden;
}
.vm-about__image-wrap img {
	width: 100%;
	height: 420px;
	object-fit: cover;
	display: block;
	transition: transform 0.6s var(--vm-transition);
}
.vm-about__image-wrap:hover img {
	transform: scale(1.04);
}

/* Gold frame accent */
.vm-about__image-wrap::before {
	content: '';
	position: absolute;
	top: -8px;
	left: -8px;
	right: 8px;
	bottom: 8px;
	border: 2px solid var(--vm-gold);
	border-radius: 12px;
	opacity: 0.40;
	z-index: 1;
	pointer-events: none;
}

.vm-about__content {
	flex: 1;
}

.vm-about__eyebrow {
	font-family: 'Work Sans', sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--vm-gold);
	margin-bottom: 0.8rem;
}

.vm-about__title {
	font-family: 'Belleza', serif;
	font-size: clamp(22px, 2.5vw, 32px);
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: var(--vm-white);
	margin: 0 0 1.2rem 0;
	line-height: 1.15;
}

.vm-about__text {
	font-family: 'Work Sans', sans-serif;
	font-size: 16px;
	line-height: 1.75;
	color: var(--vm-white-soft);
	margin-bottom: 2rem;
}

/* ============================================================
   CTA BANNER
   ============================================================ */
.vm-cta-banner {
	background: linear-gradient(135deg, var(--vm-gold) 0%, #a87913 100%);
	padding: 3rem 4rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	flex-wrap: wrap;
	max-width: 1200px;
	margin: 3rem auto;
	border-radius: 12px;
	box-shadow: 0 15px 40px rgba(10, 15, 30, 0.45);
}

/* Specific padding for the Be A Moose CTA banner */
.page-be-a-moose .vm-cta-banner {
    padding: 3rem calc(4rem + 0.25in);
}

.vm-cta-banner__title {
	font-family: 'Belleza', serif;
	font-size: clamp(20px, 2.5vw, 30px);
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: var(--vm-navy);
	margin: 0 0 0.5rem 0;
}

.vm-cta-banner__text {
	font-family: 'Work Sans', sans-serif;
	font-size: 15px;
	color: rgba(10,15,30,0.75);
	margin: 0;
}

.vm-btn-navy {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0.95rem 2.4rem;
	background: var(--vm-navy);
	color: var(--vm-gold) !important;
	font-family: 'Work Sans', sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	border-radius: 4px;
	text-decoration: none;
	white-space: nowrap;
	transition: background var(--vm-transition), transform 0.2s ease, box-shadow 0.2s ease;
	box-shadow: 0 4px 20px rgba(10,15,30,0.40);
}
.vm-btn-navy:hover {
	background: #060b16;
	transform: translateY(-2px);
	box-shadow: 0 8px 30px rgba(10,15,30,0.60);
	color: var(--vm-gold-light) !important;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 900px) {
	.vm-hero__content { 
		flex-direction: column; 
		justify-content: flex-start;
		padding: 5rem 2rem 6rem 2rem; 
	}
	.vm-hero__widget-col {
		width: 100%;
		max-width: 500px;
		margin: 2rem auto 0;
		flex: none;
	}
	.vm-about { flex-direction: column; padding: 3rem 2rem; }
	.vm-about__image-wrap { flex: none; width: 100%; }
	.vm-stats { gap: 2rem; padding: 2rem; }
	.vm-activities { padding: 3rem 1.5rem; }
	.vm-cta-banner { flex-direction: column; text-align: center; padding: 3rem 2rem; }
	.vm-activity-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
	.vm-activity-grid { grid-template-columns: 1fr; }
	.vm-hero__actions { flex-direction: column; }
}

/* ============================================================
   PAGE HERO (ABOUT & CONTACT)
   ============================================================ */
.vm-page-hero {
	position: relative;
	width: 100%;
	min-height: calc(100vh - 76px - var(--wp-admin-bar-height, 0px));
	display: flex;
	align-items: center;
	justify-content: flex-start;
	overflow: hidden;
}
.vm-page-hero__bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	z-index: 0;
}
.vm-page-hero__overlay {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(105deg, rgba(10,15,30,0.98) 0%, rgba(10,15,30,0.85) 50%, rgba(10,15,30,0.40) 100%),
		linear-gradient(to top, rgba(10,15,30,0.90) 0%, transparent 60%);
	z-index: 1;
}
.vm-page-hero__content {
	position: relative;
	z-index: 2;
	max-width: 800px;
	padding: 8rem 5rem 5rem 6rem;
}
.vm-page-hero__eyebrow {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 1.2rem;
}
.vm-page-hero__eyebrow-line {
	display: block;
	width: 40px;
	height: 3px;
	background: var(--vm-gold);
	border-radius: 2px;
}
.vm-page-hero__eyebrow-text {
	font-family: 'Work Sans', sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 3.5px;
	text-transform: uppercase;
	color: var(--vm-gold);
}
.vm-page-hero__title {
	font-family: 'Belleza', serif;
	font-size: clamp(34px, 4.5vw, 52px);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: var(--vm-white);
	margin: 0 0 1.2rem 0;
}
.vm-page-hero__title span {
	color: var(--vm-gold);
}
.vm-page-hero__subtitle {
	font-family: 'Work Sans', sans-serif;
	font-size: 16px;
	line-height: 1.6;
	color: var(--vm-white-soft);
	margin: 0;
	max-width: 550px;
}

/* ============================================================
   ABOUT PAGE - STORY & VALUES
   ============================================================ */
.vm-about-story {
	padding: 6rem 4rem;
	background: var(--vm-navy);
}
.vm-about-story__container {
	display: flex;
	align-items: center;
	gap: 5rem;
	max-width: 1200px;
	margin: 0 auto;
}
.vm-about-story__content {
	flex: 1;
}
.vm-about-story__eyebrow {
	font-family: 'Work Sans', sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--vm-gold);
	margin-bottom: 0.8rem;
}
.vm-about-story__title {
	font-family: 'Belleza', serif;
	font-size: clamp(24px, 3vw, 36px);
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: var(--vm-white);
	margin: 0 0 1.5rem 0;
	line-height: 1.2;
}
.vm-about-story__text {
	font-family: 'Work Sans', sans-serif;
	font-size: 16px;
	line-height: 1.75;
	color: var(--vm-white-soft);
	margin-bottom: 1.5rem;
}
.vm-about-story__image-wrap {
	flex: 0 0 45%;
	position: relative;
	border-radius: 12px;
	overflow: hidden;
}
.vm-about-story__image-wrap img {
	width: 100%;
	height: 480px;
	object-fit: cover;
	display: block;
	transition: transform 0.6s var(--vm-transition);
}
.vm-about-story__image-wrap:hover img {
	transform: scale(1.04);
}
.vm-about-story__image-wrap::before {
	content: '';
	position: absolute;
	inset: 8px;
	border: 2px solid var(--vm-gold);
	border-radius: 8px;
	opacity: 0.40;
	z-index: 1;
	pointer-events: none;
}

/* Values Grid */
.vm-values {
	padding: 5rem 4rem 6rem;
	background: var(--vm-navy-mid);
}
.vm-values-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 2rem;
	max-width: 1200px;
	margin: 0 auto;
}
.vm-value-card {
	background: var(--vm-navy-card);
	padding: 3rem 2rem;
	border-radius: 12px;
	text-align: center;
	position: relative;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	border: 1px solid rgba(212,160,23,0.1);
}
.vm-value-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 30px rgba(10,15,30,0.8);
	border-color: rgba(212,160,23,0.4);
}
.vm-value-card::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0; height: 3px;
	background: var(--vm-gold);
	transform: scaleX(0);
	transition: transform 0.4s ease;
}
.vm-value-card:hover::before {
	transform: scaleX(1);
}
.vm-value-card__icon {
	font-size: 38px;
	margin-bottom: 1.5rem;
}
.vm-value-card__title {
	font-family: 'Belleza', serif;
	font-size: 22px;
	color: var(--vm-gold);
	margin: 0 0 1rem 0;
	text-transform: uppercase;
	letter-spacing: 1.5px;
}
.vm-value-card__text {
	font-family: 'Work Sans', sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: var(--vm-white-soft);
	margin: 0;
}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.vm-contact {
	padding: 6rem 4rem;
	background: var(--vm-navy);
}
.vm-contact-container {
	display: flex;
	gap: 4rem;
	max-width: 1200px;
	margin: 0 auto;
}
.vm-contact-info {
	flex: 0 0 38%;
}
.vm-contact-form-wrap {
	flex: 1;
	background: var(--vm-navy-mid);
	padding: 3rem;
	border-radius: 12px;
	border: 1px solid rgba(212,160,23,0.15);
	box-shadow: 0 10px 40px rgba(10,15,30,0.6);
}

.vm-contact-info__card {
	background: var(--vm-navy-card);
	padding: 2.5rem;
	border-radius: 12px;
	margin-bottom: 2rem;
	border-left: 3px solid var(--vm-gold);
}
.vm-contact-info__title {
	font-family: 'Belleza', serif;
	font-size: 20px;
	color: var(--vm-white);
	margin: 0 0 1.2rem 0;
	text-transform: uppercase;
	letter-spacing: 1px;
	display: flex;
	align-items: center;
	gap: 12px;
}
.vm-contact-info__title i {
	color: var(--vm-gold);
	font-style: normal;
}
.vm-contact-info__text {
	font-family: 'Work Sans', sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: var(--vm-white-soft);
	margin: 0 0 0.8rem 0;
}
.vm-contact-info__text strong {
	color: var(--vm-gold-light);
}
.vm-contact-info__text a {
	color: var(--vm-gold);
	text-decoration: none;
	transition: color 0.2s;
}
.vm-contact-info__text a:hover {
	color: var(--vm-white);
}

/* Forms */
.vm-form-group {
	margin-bottom: 1.5rem;
}
.vm-form-label {
	display: block;
	font-family: 'Work Sans', sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--vm-white-soft);
	margin-bottom: 0.6rem;
}
.vm-form-input {
	width: 100%;
	background: rgba(10,15,30,0.4);
	border: 1px solid rgba(244,241,234,0.15);
	color: var(--vm-white);
	padding: 0.9rem 1rem;
	border-radius: 6px;
	font-family: 'Work Sans', sans-serif;
	font-size: 15px;
	transition: border-color 0.3s, background 0.3s;
}
.vm-form-input:focus {
	outline: none;
	border-color: var(--vm-gold);
	background: rgba(10,15,30,0.8);
}
textarea.vm-form-input {
	resize: vertical;
	min-height: 120px;
}
.vm-form-submit {
	width: 100%;
	justify-content: center;
	margin-top: 1rem;
	cursor: pointer;
}
.vm-form-submit:disabled {
	opacity: 0.7;
	cursor: not-allowed;
}
.vm-form-message {
	margin-top: 1.5rem;
	padding: 1rem;
	border-radius: 6px;
	font-family: 'Work Sans', sans-serif;
	font-size: 14px;
	display: none;
}
.vm-form-message.success {
	display: block;
	background: rgba(46, 204, 113, 0.15);
	border: 1px solid rgba(46, 204, 113, 0.4);
	color: #2ecc71;
}
.vm-form-message.error {
	display: block;
	background: rgba(231, 76, 60, 0.15);
	border: 1px solid rgba(231, 76, 60, 0.4);
	color: #e74c3c;
}
.vm-form-message.warning {
	display: block;
	background: rgba(212, 160, 23, 0.12);
	border: 1px solid var(--vm-gold);
	color: var(--vm-gold-light);
	margin-top: 0;
	margin-bottom: 1.5rem;
}

/* ============================================================
   RESPONSIVE OVERRIDES
   ============================================================ */
@media (max-width: 900px) {
	.vm-page-hero__content { padding: 6rem 2rem 4rem 2rem; }
	.vm-about-story__container { flex-direction: column; gap: 3rem; }
	.vm-about-story__image-wrap { width: 100%; }
	.vm-contact-container { flex-direction: column; gap: 3rem; }
	.vm-contact { padding: 4rem 2rem; }
	.vm-contact-info { flex: none; width: 100%; }
	.vm-contact-form-wrap { padding: 2rem; }
}

@media (max-width: 600px) {
	.vm-contact {
		padding: 3rem 1rem;
	}
	.vm-contact-form-wrap {
		padding: 1.5rem 1rem;
	}
	.vm-contact-container {
		gap: 2rem;
	}
	/* Upcoming Events Widget Mobile Optimization */
	.lc-upcoming-events-widget {
		padding: 16px !important;
	}
	.lc-upcoming-item {
		gap: 12px !important;
		padding: 10px 0 !important;
	}
	.lc-upcoming-date {
		width: 52px !important;
		height: 52px !important;
		border-radius: 6px !important;
	}
	.lc-upcoming-date .lc-up-day {
		font-size: 18px !important;
	}
	.lc-upcoming-date .lc-up-weekday,
	.lc-upcoming-date .lc-up-month {
		font-size: 8px !important;
	}
	.lc-upcoming-title {
		font-size: 14px !important;
	}
	.lc-upcoming-meta {
		font-size: 11px !important;
	}
}

/* ============================================================
   ABOUT PAGE REVERSE LAYOUT & SOCIAL LIST
   ============================================================ */
@media (min-width: 901px) {
	.vm-about-story--reverse .vm-about-story__container {
		flex-direction: row-reverse;
	}
}

.vm-social-list {
	list-style: none;
	padding: 0;
	margin: 2rem 0 0 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 1rem;
}
.vm-social-list li {
	font-family: 'Work Sans', sans-serif;
	font-size: 15px;
	color: var(--vm-white-soft);
	display: flex;
	align-items: center;
	gap: 12px;
	background: var(--vm-navy-card);
	padding: 0.8rem 1.2rem;
	border-radius: 6px;
	border-left: 3px solid var(--vm-gold);
	transition: transform 0.2s ease, background-color 0.2s ease;
}
.vm-social-list li:hover {
	transform: translateX(4px);
	background: var(--vm-navy-mid);
	color: var(--vm-white);
}

/* ============================================================
   RESPONSIVE YOUTUBE VIDEO STYLES
   ============================================================ */
.vm-video-container {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 1.5rem;
}
.vm-video-wrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 Aspect Ratio */
	height: 0;
	overflow: hidden;
	max-width: 100%;
	border-radius: 12px;
	box-shadow: 0 15px 40px rgba(10, 15, 30, 0.7);
	border: 1px solid rgba(212, 160, 23, 0.25);
	margin-top: 1.5rem;
}
.vm-video-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* Mobile: remove side padding so video fills the screen edge-to-edge */
@media ( max-width: 600px ) {
	.vm-video-container {
		padding: 0;
	}
	.vm-video-wrapper {
		border-radius: 0;
		margin-top: 1rem;
	}
}


/* Flat Header Flex Alignment (Desktop & Mobile) */
.vm-header-container {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    position: relative !important;
    z-index: 100002 !important; /* Stack above mobile menu overlay */
}

.vm-header-logo {
    z-index: 100003 !important;
    position: relative !important;
}

.vm-header-buttons {
    z-index: 100003 !important;
    position: relative !important;
}

.vm-header-navigation {
    margin-left: auto !important;
    margin-right: 2.5rem !important;
    z-index: 100003 !important;
    position: relative !important;
}

@media (max-width: 900px) {
    .vm-header-container {
        padding-left: 1.5rem !important;
        padding-right: 1.5rem !important;
    }
    /* Reorder for mobile header: hamburger/toggle left, logo center, button right */
    .vm-header-navigation {
        order: 1 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .vm-header-logo {
        order: 2 !important;
        margin-left: 1.25rem !important;
        margin-right: auto !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        display: flex !important;
        justify-content: flex-start !important;
    }
    .vm-header-buttons {
        order: 3 !important;
    }
    /* Force mobile/tablet hamburger navigation toggle visibility and hide horizontal container */
    .wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open {
        display: flex !important;
    }
    .wp-block-navigation__responsive-container:not(.is-menu-open) {
        display: none !important;
    }
}


/* Force 3-line hamburger menu */
.wp-block-navigation__responsive-container-open svg {
    display: none !important;
}
.wp-block-navigation__responsive-container-open::before {
    content: "\2630";
    font-size: 28px;
    line-height: 1;
    color: var(--vm-white);
}

/* ============================================================
   HEADER NAVIGATION ACTIVE INDICATOR
   ============================================================ */
.wp-block-navigation .wp-block-navigation-item a {
	position: relative;
	transition: color 0.3s ease;
}

.wp-block-navigation .wp-block-navigation-item a::after {
	content: '';
	position: absolute;
	bottom: -4px;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: var(--vm-gold);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Hover indicator */
.wp-block-navigation .wp-block-navigation-item a:hover {
	color: var(--vm-gold) !important;
}
.wp-block-navigation .wp-block-navigation-item a:hover::after {
	transform: scaleX(1);
}

/* Active indicator */
.wp-block-navigation .wp-block-navigation-item.current-menu-item > a,
.wp-block-navigation .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item.current_page_item > a,
.wp-block-navigation .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item.active > a,
.wp-block-navigation .wp-block-navigation-item.active > .wp-block-navigation-item__content {
	color: var(--vm-gold) !important;
}
.wp-block-navigation .wp-block-navigation-item.current-menu-item > a::after,
.wp-block-navigation .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
.wp-block-navigation .wp-block-navigation-item.current_page_item > a::after,
.wp-block-navigation .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content::after,
.wp-block-navigation .wp-block-navigation-item.active > a::after,
.wp-block-navigation .wp-block-navigation-item.active > .wp-block-navigation-item__content::after {
	transform: scaleX(1);
}


/* ============================================================================================
   MOBILE OVERLAY MENU CUSTOM STYLING (MATCHING DESIGN LAYOUT)
   ============================================================ */

/* Mobile overlay open state overrides */
@media (max-width: 900px) {
	.wp-block-navigation__responsive-container {
		background-color: #0b0f19 !important;
		padding: 72px 30px 40px 30px !important;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		display: flex !important;
		flex-direction: column !important;
		justify-content: flex-start !important;
		align-items: flex-end !important;
		z-index: 100000 !important;
		box-sizing: border-box;
	}

	/* Hide Header Text (VIENNA MOOSE LODGE) from overlay since parent header logo is centered */
	.wp-block-navigation__responsive-container::before {
		content: none !important;
	}

	/* Close Button styling (circular dark button) positioned on the left */
	.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-close {
		position: fixed !important;
		top: 18px !important;
		left: 24px !important;
		right: auto !important;
		padding: 0 !important;
		margin: 0 !important;
		background: none !important;
		border: none !important;
		cursor: pointer !important;
		z-index: 100004 !important;
	}

	.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-close svg {
		display: none !important;
	}

	.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-close::before {
		content: "+"; /* Plus sign matching image design */
		display: flex;
		align-items: center;
		justify-content: center;
		width: 42px;
		height: 42px;
		border-radius: 50%;
		background-color: rgba(255, 255, 255, 0.08);
		color: var(--vm-white);
		font-size: 26px;
		font-weight: 300;
		line-height: 1;
		transition: background-color 0.2s ease, transform 0.2s ease;
	}

	.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-close:hover::before {
		background-color: rgba(255, 255, 255, 0.15);
		transform: rotate(90deg);
	}

	/* Dividing line below header */
	.wp-block-navigation__responsive-container::after {
		content: '';
		position: absolute;
		top: 72px;
		left: 0;
		width: 100%;
		height: 1px;
		background-color: rgba(255, 255, 255, 0.07);
	}

	/* Overlay content container list */
	.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content {
		width: 100% !important;
		margin-top: 15px !important;
		padding-top: 0 !important;
	}

	.wp-block-navigation__responsive-container .wp-block-navigation__container {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-end !important; /* Right align everything */
		gap: 1.8rem !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}

	/* Submenu layout reset - High Specificity to override Gutenberg mobile overlay display none */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container,
	.vm-header-navigation .wp-block-navigation__responsive-container .wp-block-navigation__submenu-container,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-end !important;
		gap: 1.8rem !important;
		margin: 1.8rem 0 0 0 !important;
		padding: 0 !important;
		background: none !important;
		border: none !important;
		box-shadow: none !important;
		visibility: visible !important;
		height: auto !important;
		overflow: visible !important;
		opacity: 1 !important;
		position: static !important;
	}
 
	/* Hide redundant "About Us" link in the mobile overlay menu */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a[href$="/about"],
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content[href$="/about"],
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a[href$="/about"],
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content[href$="/about"],
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container a[href$="/about"],
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content[href$="/about"],
	.wp-block-navigation__responsive-container.is-menu-open .vm-menu-item-about-us,
	.wp-block-navigation__responsive-container .vm-menu-item-about-us {
		display: none !important;
	}
 
	/* Hide the default submenu arrow toggle button on mobile overlay */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle,
	.wp-block-navigation__responsive-container .wp-block-navigation-submenu__toggle {
		display: none !important;
	}
 
	/* Menu Items Typography & Color */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,
	.wp-block-navigation__responsive-container .wp-block-navigation-item {
		width: auto !important;
	}
 
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container .wp-block-navigation-item a,
	.wp-block-navigation__responsive-container .wp-block-navigation-item .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item a,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content {
		font-family: 'Work Sans', sans-serif !important;
		font-size: 21px !important;
		font-weight: 700 !important;
		color: var(--vm-white-soft) !important;
		text-decoration: none !important;
		text-transform: none !important;
		letter-spacing: 0px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		transition: color 0.3s ease;
		position: relative !important;
		padding: 0 !important;
		margin: 0 !important;
		border: none !important;
		background: none !important;
		box-shadow: none !important;
	}
 
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a:hover,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content:hover,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a:hover,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content:hover,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a:hover,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content:hover,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a:hover,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content:hover,
	.wp-block-navigation__responsive-container .wp-block-navigation-item a:hover,
	.wp-block-navigation__responsive-container .wp-block-navigation-item .wp-block-navigation-item__content:hover,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item a:hover,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content:hover {
		color: var(--vm-gold) !important;
	}
 
	/* Indent submenu items in mobile overlay to show hierarchy (placed after resets to avoid override) */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item a,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content {
		padding-right: 24px !important;
	}
 
	/* Active Page color */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current-menu-item > a,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current_page_item > a,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.active > a,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.active > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current-menu-item > a,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current_page_item > a,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.active > a,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.active > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.current-menu-item > a,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.current_page_item > a,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.active > a,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.active > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item > a,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item > a,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.active > a,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.active > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item > a,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item > a,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.active > a,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.active > .wp-block-navigation-item__content {
		color: var(--vm-gold) !important;
	}
 
	/* Active Underline for text label (excluding the icon) */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a .wp-block-navigation-item__label,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content .wp-block-navigation-item__label,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a .wp-block-navigation-item__label,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content .wp-block-navigation-item__label,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a .wp-block-navigation-item__label,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content .wp-block-navigation-item__label,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a .wp-block-navigation-item__label,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content .wp-block-navigation-item__label,
	.wp-block-navigation__responsive-container .wp-block-navigation-item a .wp-block-navigation-item__label,
	.wp-block-navigation__responsive-container .wp-block-navigation-item .wp-block-navigation-item__content .wp-block-navigation-item__label,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item a .wp-block-navigation-item__label,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content .wp-block-navigation-item__label {
		position: relative !important;
	}
 
	/* Disable the default hover line from desktop view */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content::after,
	.wp-block-navigation__responsive-container .wp-block-navigation-item a::after,
	.wp-block-navigation__responsive-container .wp-block-navigation-item .wp-block-navigation-item__content::after,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item a::after,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content::after {
		content: none !important;
	}
 
	/* Custom underline on text label */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current-menu-item a .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current_page_item a .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current_page_item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.active a .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.active .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current-menu-item a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current_page_item a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.current_page_item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.active a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.active .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.current-menu-item a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.current_page_item a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.current_page_item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.active a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation-item.active .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item a .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item a .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.active a .wp-block-navigation-item__label::after,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.active .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.active a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item.active .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item .wp-block-navigation-item__content .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.active a .wp-block-navigation-item__label::after,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item.active .wp-block-navigation-item__content .wp-block-navigation-item__label::after {
		content: '' !important;
		position: absolute !important;
		bottom: -4px !important;
		right: 0 !important;
		width: 100% !important; /* Full width underline matching reference image */
		height: 2px !important;
		background-color: var(--vm-gold) !important;
	}
 
	/* Inject Custom Icons to the right of text label */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content::before,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a::before,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content::before,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a::before,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content::before,
	.wp-block-navigation__responsive-container .wp-block-navigation-item a::before,
	.wp-block-navigation__responsive-container .wp-block-navigation-item .wp-block-navigation-item__content::before,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item a::before,
	.wp-block-navigation__responsive-container .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content::before {
		content: '' !important;
		display: inline-block !important;
		width: 22px !important;
		height: 22px !important;
		background-color: currentColor !important;
		-webkit-mask-size: contain !important;
		mask-size: contain !important;
		-webkit-mask-repeat: no-repeat !important;
		mask-repeat: no-repeat !important;
		-webkit-mask-position: center !important;
		mask-position: center !important;
		flex-shrink: 0 !important;
		order: 2 !important; /* Put it on the right side of the text */
		margin-left: 14px !important;
	}
 
	/* Apply specific SVG masks for each page class */
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-home::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href="/"]::before,
	.wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-home::before,
	.wp-block-navigation__responsive-container.is-menu-open a[href="/"]::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-home::before,
	.wp-block-navigation__responsive-container a[href="/"]::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-about::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href$="/about"]::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href$="/about/"]::before,
	.wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-about::before,
	.wp-block-navigation__responsive-container.is-menu-open a[href$="/about"]::before,
	.wp-block-navigation__responsive-container.is-menu-open a[href$="/about/"]::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-about::before,
	.wp-block-navigation__responsive-container a[href$="/about"]::before,
	.wp-block-navigation__responsive-container a[href$="/about/"]::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='16' x2='12' y2='12'/%3E%3Cline x1='12' y1='8' x2='12.01' y2='8'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='16' x2='12' y2='12'/%3E%3Cline x1='12' y1='8' x2='12.01' y2='8'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-officers::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/officers"]::before,
	.wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-officers::before,
	.wp-block-navigation__responsive-container.is-menu-open a[href*="/officers"]::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-officers::before,
	.wp-block-navigation__responsive-container a[href*="/officers"]::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-committees::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/committees"]::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-committees::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/committees"]::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-committees::before,
	.wp-block-navigation__responsive-container a[href*="/committees"]::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-news::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/articles"]::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-news::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/articles"]::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-news::before,
	.wp-block-navigation__responsive-container a[href*="/articles"]::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 22h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v16a2 2 0 0 1-2 2Zm0 0a2 2 0 0 1-2-2v-9c0-1.1.9-2 2-2h2'/%3E%3Cpath d='M18 14h-8'/%3E%3Cpath d='M15 18h-5'/%3E%3Cpath d='M10 6h8v4h-8V6Z'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 22h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v16a2 2 0 0 1-2 2Zm0 0a2 2 0 0 1-2-2v-9c0-1.1.9-2 2-2h2'/%3E%3Cpath d='M18 14h-8'/%3E%3Cpath d='M15 18h-5'/%3E%3Cpath d='M10 6h8v4h-8V6Z'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-calendar::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/lodge-calendars"]::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-calendar::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/lodge-calendars"]::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-calendar::before,
	.wp-block-navigation__responsive-container a[href*="/lodge-calendars"]::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-amenities::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/lodge-amenities"]::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-amenities::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/lodge-amenities"]::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-amenities::before,
	.wp-block-navigation__responsive-container a[href*="/lodge-amenities"]::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7'/%3E%3Crect x='14' y='3' width='7' height='7'/%3E%3Crect x='14' y='14' width='7' height='7'/%3E%3Crect x='3' y='14' width='7' height='7'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7'/%3E%3Crect x='14' y='3' width='7' height='7'/%3E%3Crect x='14' y='14' width='7' height='7'/%3E%3Crect x='3' y='14' width='7' height='7'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-banquet::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/banquet-hall"]::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-banquet::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/banquet-hall"]::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-banquet::before,
	.wp-block-navigation__responsive-container a[href*="/banquet-hall"]::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 3v7a6 6 0 0 0 4 5.65V21a1 1 0 0 0 2 0v-5.35A6 6 0 0 0 14 10V3a1 1 0 0 0-2 0v5H6V3a1 1 0 0 0-2 0Zm16 0h-1a3 3 0 0 0-3 3v5a3 3 0 0 0 3 3h1v7a1 1 0 0 0 2 0V4a1 1 0 0 0-1-1Z'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 3v7a6 6 0 0 0 4 5.65V21a1 1 0 0 0 2 0v-5.35A6 6 0 0 0 14 10V3a1 1 0 0 0-2 0v5H6V3a1 1 0 0 0-2 0Zm16 0h-1a3 3 0 0 0-3 3v5a3 3 0 0 0 3 3h1v7a1 1 0 0 0 2 0V4a1 1 0 0 0-1-1Z'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-shop::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/shop-disclaimer"]::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-shop::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/shop-disclaimer"]::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-shop::before,
	.wp-block-navigation__responsive-container a[href*="/shop-disclaimer"]::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-food::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/food-beverages"]::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-food::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/food-beverages"]::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-food::before,
	.wp-block-navigation__responsive-container a[href*="/food-beverages"]::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 8h1a4 4 0 1 1 0 8h-1'/%3E%3Cpath d='M3 8h14v9a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V8z'/%3E%3Cline x1='6' y1='2' x2='6' y2='4'/%3E%3Cline x1='10' y1='2' x2='10' y2='4'/%3E%3Cline x1='14' y1='2' x2='14' y2='4'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 8h1a4 4 0 1 1 0 8h-1'/%3E%3Cpath d='M3 8h14v9a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V8z'/%3E%3Cline x1='6' y1='2' x2='6' y2='4'/%3E%3Cline x1='10' y1='2' x2='10' y2='4'/%3E%3Cline x1='14' y1='2' x2='14' y2='4'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-contact::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open a[href*="/contact"]::before,
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a.vm-menu-icon-contact::before,
	.wp-block-navigation__responsive-container.is-menu-open .vm-menu-icon-contact::before,
	.wp-block-navigation__responsive-container.is-menu-open a[href*="/contact"]::before,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a.vm-menu-icon-contact::before,
	.wp-block-navigation__responsive-container .vm-menu-icon-contact::before,
	.wp-block-navigation__responsive-container a[href*="/contact"]::before,
	.wp-block-navigation__responsive-container .wp-block-navigation-item a.vm-menu-icon-contact::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E") !important;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E") !important;
	}
	.vm-header-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a.vm-menu-icon-contact::before,
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a.vm-menu-icon-contact::before,
	.wp-block-navigation__responsive-container .wp-block-navigation-item a.vm-menu-icon-contact::before {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E");
	}
}


/* ============================================================================================
   ARTICLES ARCHIVE GRID
   ============================================================ */
.vm-articles-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 4rem 2rem 6rem 2rem;
}

.vm-articles-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	gap: 2rem;
}

.vm-article-card {
	background: var(--vm-navy-card);
	border-radius: 10px;
	overflow: hidden;
	cursor: pointer;
	transition: transform var(--vm-transition), box-shadow var(--vm-transition), border-color var(--vm-transition);
	border: 1px solid rgba(212, 160, 23, 0.1);
	display: flex;
	flex-direction: column;
	height: 100%;
}

.vm-article-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 30px rgba(10, 15, 30, 0.8);
	border-color: rgba(212, 160, 23, 0.4);
}

.vm-card-media {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--vm-navy-mid);
}

.vm-card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.6s var(--vm-transition);
}

.vm-article-card:hover .vm-card-media img {
	transform: scale(1.05);
}

.vm-card-badges {
	position: absolute;
	bottom: 12px;
	left: 12px;
	right: 12px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.vm-card-category {
	background: var(--vm-gold);
	color: var(--vm-navy);
	font-family: 'Work Sans', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 4px 10px;
	border-radius: 4px;
}

.vm-card-readtime {
	background: rgba(10, 15, 30, 0.85);
	color: var(--vm-white);
	font-family: 'Work Sans', sans-serif;
	font-size: 10px;
	font-weight: 600;
	padding: 4px 10px;
	border-radius: 4px;
	backdrop-filter: blur(4px);
}

.vm-card-body {
	padding: 1.5rem;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.vm-card-date {
	font-family: 'Work Sans', sans-serif;
	font-size: 12px;
	color: var(--vm-white-soft);
	margin-bottom: 0.6rem;
}

.vm-card-title {
	font-family: 'Belleza', serif;
	font-size: clamp(20px, 2vw, 24px);
	line-height: 1.25;
	margin: 0 0 0.8rem 0;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.vm-card-title a {
	color: var(--vm-white) !important;
	text-decoration: none !important;
	transition: color 0.2s;
}

.vm-article-card:hover .vm-card-title a {
	color: var(--vm-gold) !important;
}

.vm-card-excerpt {
	font-family: 'Work Sans', sans-serif;
	font-size: 14px;
	line-height: 1.6;
	color: var(--vm-white-soft);
	margin-bottom: 1.5rem;
	flex: 1;
}

.vm-card-link {
	align-self: flex-start;
	font-family: 'Work Sans', sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: var(--vm-gold) !important;
	text-decoration: none !important;
	transition: color 0.2s, transform 0.2s;
}

.vm-card-link:hover {
	color: var(--vm-gold-light) !important;
	transform: translateX(4px);
}

.vm-articles-empty {
	text-align: center;
	padding: 6rem 2rem;
	color: var(--vm-white-soft);
	font-family: 'Work Sans', sans-serif;
}

/* PAGINATION */
.vm-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.5rem;
	margin-top: 4rem;
}

.vm-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 6px;
	border-radius: 4px;
	background: var(--vm-navy-card);
	color: var(--vm-white) !important;
	text-decoration: none !important;
	font-family: 'Work Sans', sans-serif;
	font-size: 14px;
	font-weight: 600;
	border: 1px solid rgba(212, 160, 23, 0.1);
	transition: all 0.2s ease;
}

.vm-pagination .page-numbers:hover {
	background: var(--vm-navy-mid);
	border-color: var(--vm-gold);
	color: var(--vm-gold) !important;
}

.vm-pagination .page-numbers.current {
	background: var(--vm-gold);
	color: var(--vm-navy) !important;
	border-color: var(--vm-gold);
	pointer-events: none;
}

/* ============================================================
   SINGLE POST READER VIEW
   ============================================================ */
.vm-post-breadcrumb {
	margin-bottom: 1.5rem;
	font-family: 'Work Sans', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.5px;
}

.vm-post-breadcrumb a {
	color: var(--vm-white-soft) !important;
	text-decoration: none !important;
	transition: color 0.2s, transform 0.2s;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.vm-post-breadcrumb a:hover {
	color: var(--vm-gold) !important;
}

.vm-single-meta {
	font-family: 'Work Sans', sans-serif;
	color: var(--vm-white-soft) !important;
	display: flex;
	align-items: center;
	gap: 8px;
}

.vm-single-content-wrap {
	max-width: 800px;
	margin: 0 auto;
}

.vm-single-content-wrap p {
	font-family: 'Work Sans', sans-serif;
	font-size: 17px;
	line-height: 1.8;
	color: var(--vm-white-soft);
	margin-bottom: 2rem;
}

.vm-single-content-wrap h2,
.vm-single-content-wrap h3,
.vm-single-content-wrap h4 {
	font-family: 'Belleza', serif;
	color: var(--vm-white);
	text-transform: uppercase;
	line-height: 1.3;
	margin: 3.5rem 0 1.2rem 0;
	letter-spacing: 1px;
}

.vm-single-content-wrap h2 {
	font-size: clamp(24px, 3.5vw, 32px);
	border-bottom: 1px solid rgba(212, 160, 23, 0.15);
	padding-bottom: 0.5rem;
}

.vm-single-content-wrap h3 {
	font-size: clamp(20px, 2.5vw, 24px);
}

.vm-single-content-wrap ul,
.vm-single-content-wrap ol {
	margin-bottom: 2rem;
	padding-left: 2rem;
	color: var(--vm-white-soft);
	line-height: 1.8;
	font-size: 17px;
}

.vm-single-content-wrap li {
	margin-bottom: 0.5rem;
}

.vm-single-content-wrap blockquote {
	border-left: 4px solid var(--vm-gold);
	margin: 2.5rem 0;
	padding: 0.8rem 1.8rem;
	background: var(--vm-navy-card);
	border-radius: 0 8px 8px 0;
}

.vm-single-content-wrap blockquote p {
	font-style: italic;
	color: var(--vm-white);
	font-size: 19px;
	line-height: 1.6;
	margin-bottom: 0;
}

/* ============================================================
   RESPONSIVE DESIGN FOR ARTICLES & SINGLE
   ============================================================ */
@media (max-width: 768px) {
	.vm-articles-container {
		padding: 3rem 1.5rem 4rem 1.5rem;
	}
	.vm-single-content-wrap {
		padding-top: 3.5rem !important;
		padding-bottom: 4rem !important;
		padding-left: 1.5rem !important;
		padding-right: 1.5rem !important;
	}
	.vm-single-content-wrap p,
	.vm-single-content-wrap ul,
	.vm-single-content-wrap ol {
		font-size: 16px;
		line-height: 1.7;
	}
	.vm-single-content-wrap blockquote p {
		font-size: 17px;
	}
}

@media (max-width: 480px) {
	.vm-articles-grid {
		grid-template-columns: 1fr;
	}
	.vm-pagination .page-numbers {
		min-width: 35px;
		height: 35px;
		font-size: 13px;
	}
}

/* ============================================================
   BOARD OF OFFICERS PAGE STYLES
   ============================================================ */

.vm-officers-section {
	padding: 6rem 4rem;
	background: var(--vm-navy);
}

.vm-officers-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	gap: 2.5rem;
	max-width: 1200px;
	margin: 3rem auto 0 auto;
}

.vm-officer-card {
	background: var(--vm-navy-card);
	border: 1px solid rgba(212, 160, 23, 0.12);
	border-radius: 12px;
	padding: 3rem 2rem;
	text-align: center;
	transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
	align-items: center;
	height: 100%;
}

.vm-officer-card:hover {
	transform: translateY(-5px);
	border-color: rgba(212, 160, 23, 0.4);
	box-shadow: 0 12px 35px rgba(10, 15, 30, 0.8), 0 0 20px rgba(212, 160, 23, 0.05);
}

.vm-officer-image-wrap {
	position: relative;
	width: 130px;
	height: 130px;
	border-radius: 50%;
	margin-bottom: 1.8rem;
	padding: 3px;
	background: linear-gradient(135deg, var(--vm-gold) 0%, rgba(212, 160, 23, 0.1) 100%);
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4);
}

.vm-officer-silhouette {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background: rgba(10, 15, 30, 0.6);
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(244, 241, 234, 0.3);
}

.vm-officer-silhouette svg {
	width: 48px;
	height: 48px;
}

.vm-officer-name {
	font-family: 'Belleza', serif;
	font-size: 22px;
	font-weight: 400;
	color: var(--vm-white);
	margin: 0 0 0.5rem 0;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.vm-officer-title {
	font-family: 'Work Sans', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: var(--vm-gold);
	margin: 0 0 1.2rem 0;
}

.vm-officer-desc {
	font-family: 'Work Sans', sans-serif;
	font-size: 14px;
	line-height: 1.6;
	color: var(--vm-white-soft);
	margin: 0;
}

/* Appointed Section */
.vm-appointed-section {
	padding: 5rem 4rem 6rem;
	background: var(--vm-navy-mid);
	border-top: 1px solid rgba(212, 160, 23, 0.1);
}

.vm-appointed-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 2rem;
	max-width: 1200px;
	margin: 3rem auto 0 auto;
}

.vm-appointed-card {
	background: var(--vm-navy-card);
	border: 1px solid rgba(212, 160, 23, 0.1);
	border-radius: 10px;
	padding: 2.2rem 1.8rem;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	transition: transform 0.3s ease, border-color 0.3s ease;
}

.vm-appointed-card:hover {
	transform: translateY(-4px);
	border-color: rgba(212, 160, 23, 0.3);
}

.vm-appointed-card--vacant {
	opacity: 0.65;
	border-style: dashed;
}

.vm-appointed-icon {
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: rgba(10, 15, 30, 0.4);
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(212, 160, 23, 0.6);
	margin-bottom: 1.2rem;
	border: 1px solid rgba(212, 160, 23, 0.2);
}

.vm-appointed-card--vacant .vm-appointed-icon {
	color: rgba(244, 241, 234, 0.25);
	border-color: rgba(244, 241, 234, 0.15);
}

.vm-appointed-icon svg {
	width: 22px;
	height: 22px;
}

.vm-appointed-name {
	font-family: 'Belleza', serif;
	font-size: 18px;
	font-weight: 400;
	color: var(--vm-white);
	margin: 0 0 0.4rem 0;
	text-transform: uppercase;
}

.vm-appointed-card--vacant .vm-appointed-name {
	color: var(--vm-white-soft);
}

.vm-appointed-title {
	font-family: 'Work Sans', sans-serif;
	font-size: 10px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: var(--vm-gold);
	margin: 0;
}

.vm-appointed-card--vacant .vm-appointed-title {
	color: var(--vm-gold);
	opacity: 0.8;
}

/* CTA Banner styling */
.vm-officers-cta-wrap {
	padding: 5rem 4rem;
	background: var(--vm-navy);
}

.vm-officers-cta {
	max-width: 1200px;
	margin: 0 auto;
	background: linear-gradient(135deg, var(--vm-navy-card) 0%, rgba(10, 15, 30, 0.95) 100%);
	border: 1px solid rgba(212, 160, 23, 0.15);
	box-shadow: 0 10px 40px rgba(10, 15, 30, 0.6), inset 0 0 20px rgba(212, 160, 23, 0.03);
	border-radius: 12px;
	padding: 3rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 3rem;
}

.vm-officers-cta__content {
	flex: 1;
}

.vm-officers-cta__title {
	font-family: 'Belleza', serif;
	font-size: clamp(24px, 3.5vw, 32px);
	font-weight: 400;
	color: var(--vm-gold);
	margin: 0 0 0.8rem 0;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.vm-officers-cta__text {
	font-family: 'Work Sans', sans-serif;
	font-size: 15px;
	color: var(--vm-white-soft);
	margin: 0;
}

.vm-officers-cta__actions {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	flex-shrink: 0;
}

/* Gold Buttons */
.vm-btn-gold {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--vm-gold);
	color: var(--vm-navy) !important;
	border: 1px solid var(--vm-gold);
	padding: 0.8rem 1.8rem;
	border-radius: 6px;
	font-family: 'Work Sans', sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	text-decoration: none !important;
	transition: background 0.3s, border-color 0.3s, transform 0.2s;
	cursor: pointer;
}

.vm-btn-gold:hover {
	background: var(--vm-gold-light);
	border-color: var(--vm-gold-light);
	transform: translateY(-2px);
}

.vm-btn-outline-gold {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	color: var(--vm-gold) !important;
	border: 1.5px solid var(--vm-gold);
	padding: 0.75rem 1.7rem;
	border-radius: 6px;
	font-family: 'Work Sans', sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	text-decoration: none !important;
	transition: background 0.3s, color 0.3s, transform 0.2s;
	cursor: pointer;
}

.vm-btn-outline-gold:hover {
	background: var(--vm-gold);
	color: var(--vm-navy) !important;
	transform: translateY(-2px);
}

/* Responsive adjustments */
@media (max-width: 900px) {
	.vm-officers-section,
	.vm-appointed-section,
	.vm-officers-cta-wrap {
		padding: 4rem 2rem;
	}
	.vm-officers-cta {
		flex-direction: column;
		text-align: center;
		padding: 2.5rem;
		gap: 2rem;
	}
	.vm-officers-cta__actions {
		width: 100%;
		flex-direction: column;
	}
	.vm-officers-cta__actions a {
		width: 100%;
	}
}

@media (max-width: 600px) {
	.vm-officers-grid {
		grid-template-columns: 1fr;
		gap: 1.8rem;
	}
	.vm-appointed-grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}
	.vm-officer-card {
		padding: 2.5rem 1.5rem;
	}
}

/* ============================================================
   LODGE COMMITTEES PAGE STYLES
   ============================================================ */

.vm-page-hero--committees {
	text-align: center;
}

.vm-page-hero--committees .vm-page-hero__content {
	margin: 0 auto;
	padding-left: 2rem;
	padding-right: 2rem;
}

.vm-page-hero--committees .vm-page-hero__eyebrow {
	justify-content: center;
}

.vm-pill-badge {
	display: inline-block;
	font-family: 'Work Sans', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: var(--vm-gold);
	border: 1px solid rgba(212, 160, 23, 0.4);
	padding: 6px 16px;
	border-radius: 20px;
	margin-bottom: 1.5rem;
	background: rgba(212, 160, 23, 0.05);
}

.vm-committees-section {
	padding: 6rem 4rem;
	background: var(--vm-navy);
}

.vm-committees-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	gap: 2.5rem;
	max-width: 1200px;
	margin: 3rem auto 0 auto;
}

.vm-committee-card {
	background: var(--vm-navy-card);
	border: 1px solid rgba(212, 160, 23, 0.12);
	border-radius: 12px;
	padding: 3rem 2rem;
	text-align: center;
	transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
	align-items: center;
	height: 100%;
}

.vm-committee-card:hover:not(.vm-committee-cta-card) {
	transform: translateY(-5px);
	border-color: rgba(212, 160, 23, 0.4);
	box-shadow: 0 12px 35px rgba(10, 15, 30, 0.8), 0 0 20px rgba(212, 160, 23, 0.05);
}

.vm-committee-img-wrap {
	position: relative;
	width: 110px;
	height: 110px;
	margin-bottom: 2rem;
}

.vm-committee-avatar {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	border: 1.5px solid var(--vm-gold);
	background: rgba(10, 15, 30, 0.4);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--vm-white-soft);
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.vm-committee-avatar svg {
	width: 38px;
	height: 38px;
	color: rgba(244, 241, 234, 0.35);
}

.vm-committee-badge {
	position: absolute;
	bottom: -2px;
	right: -2px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--vm-gold);
	color: var(--vm-navy);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
	border: 2px solid var(--vm-navy-card);
}

.vm-committee-badge svg {
	width: 16px;
	height: 16px;
	color: var(--vm-navy);
}

.vm-committee-name {
	font-family: 'Belleza', serif;
	font-size: 24px;
	font-weight: 400;
	color: var(--vm-gold);
	margin: 0 0 0.6rem 0;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.vm-committee-chair {
	font-family: 'Work Sans', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: var(--vm-white);
	margin: 0 0 0.8rem 0;
}

.vm-committee-card--vacant .vm-committee-chair {
	color: #e74c3c;
}

.vm-committee-appeal {
	font-family: 'Work Sans', sans-serif;
	font-size: 13px;
	font-weight: 800;
	color: #e74c3c;
	margin: -0.4rem 0 1rem 0;
	letter-spacing: 2px;
	text-transform: uppercase;
	animation: pulse 2s infinite;
}

.vm-committee-desc {
	font-family: 'Work Sans', sans-serif;
	font-size: 14px;
	line-height: 1.6;
	color: var(--vm-white-soft);
	margin: 0;
}

.vm-committee-desc em {
	color: var(--vm-white-soft);
}

/* Want to Lead Card */
.vm-committee-cta-card {
	border: 1.5px dashed rgba(212, 160, 23, 0.4);
	background: transparent;
}

.vm-committee-cta-card:hover {
	border-color: var(--vm-gold);
	box-shadow: 0 8px 25px rgba(10, 15, 30, 0.5);
}

.vm-committee-cta-icon {
	width: 54px;
	height: 54px;
	border-radius: 50%;
	border: 1.5px solid var(--vm-gold);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--vm-gold);
	margin-bottom: 1.8rem;
}

.vm-committee-cta-icon svg {
	width: 24px;
	height: 24px;
}

.vm-committee-cta-card .vm-committee-name {
	color: var(--vm-white);
	font-size: 22px;
}

.vm-committee-cta-card .vm-committee-desc {
	margin-bottom: 2rem;
}

.vm-btn-propose {
	width: 100%;
}

/* Bottom banner */
.vm-banner-footer {
	background: var(--vm-navy-mid);
	border-top: 1px solid rgba(212, 160, 23, 0.15);
	padding: 4rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 100%;
	gap: 4rem;
}

.vm-banner-footer__content {
	flex: 1;
	max-width: 800px;
}

.vm-banner-footer__title {
	font-family: 'Belleza', serif;
	font-size: 32px;
	font-weight: 400;
	color: var(--vm-gold);
	margin: 0 0 1rem 0;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.vm-banner-footer__text {
	font-family: 'Work Sans', sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: var(--vm-white-soft);
	margin: 0;
}

.vm-banner-footer__actions {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	flex-shrink: 0;
}

@keyframes pulse {
	0% { opacity: 0.85; }
	50% { opacity: 1; transform: scale(1.03); }
	100% { opacity: 0.85; }
}

/* Responsive */
@media (max-width: 900px) {
	.vm-committees-section,
	.vm-banner-footer {
		padding: 4rem 2rem;
	}
	.vm-banner-footer {
		flex-direction: column;
		text-align: center;
		gap: 2.5rem;
	}
	.vm-banner-footer__actions {
		width: 100%;
		flex-direction: column;
	}
	.vm-banner-footer__actions a {
		width: 100%;
	}
}

@media (max-width: 600px) {
	.vm-committees-grid {
		grid-template-columns: 1fr;
		gap: 2rem;
	}
}

/* Shop Disclaimer Page Styles */
.vm-disclaimer-section {
	position: relative;
	padding: 8rem 2rem;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 85vh;
	background: var(--vm-navy);
	overflow: hidden;
}
.vm-disclaimer-bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	z-index: 0;
}
.vm-disclaimer-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(10,15,30,0.94) 0%, rgba(10,15,30,0.85) 100%);
	z-index: 1;
}
.vm-disclaimer-card {
	position: relative;
	z-index: 2;
	background: var(--vm-navy-card);
	border: 1px solid rgba(212, 160, 23, 0.25);
	border-radius: 8px;
	padding: 3rem;
	max-width: 600px;
	width: 100%;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
	position: relative;
	overflow: hidden;
}
.vm-disclaimer-icon {
	font-size: 2.5rem;
	margin-bottom: 1.5rem;
	display: inline-block;
	color: var(--vm-gold);
}
.vm-disclaimer-title {
	font-family: 'Belleza', serif;
	color: var(--vm-white);
	font-size: 2rem;
	margin-top: 0;
	margin-bottom: 1.5rem;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.vm-disclaimer-text {
	color: var(--vm-white-soft);
	font-size: 0.95rem;
	line-height: 1.6;
	margin-bottom: 1.5rem;
}
.vm-disclaimer-highlight {
	background: rgba(212, 160, 23, 0.08);
	border-left: 3px solid var(--vm-gold);
	padding: 1.2rem;
	margin-bottom: 1.5rem;
	border-radius: 0 4px 4px 0;
}
.vm-disclaimer-highlight p {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.5;
	color: var(--vm-white);
}
.vm-disclaimer-progress {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background: rgba(255, 255, 255, 0.05);
}
@keyframes shrink {
	from { width: 100%; }
	to { width: 0%; }
}
.vm-disclaimer-progress-fill {
	height: 100%;
	background: var(--vm-gold);
	width: 100%;
	animation: shrink 45s linear forwards;
}
.vm-disclaimer-actions {
	display: flex;
	gap: 1rem;
	margin-top: 2rem;
	flex-wrap: wrap;
}
.vm-disclaimer-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	white-space: normal; /* Allow button text wrapping */
	text-align: center;
}
.vm-btn-countdown {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-left: 0.35rem;
	font-variant-numeric: tabular-nums;
}
#vm-countdown {
	display: inline-block;
	min-width: 2ch;
	text-align: center;
}
/* Micro-animation for Proceed Button Arrow */
.vm-btn-gold .vm-arrow-icon {
	margin-left: 0.5rem;
	transition: transform 0.2s ease;
}
.vm-btn-gold:hover .vm-arrow-icon {
	transform: translateX(4px);
}

/* Responsive design overrides for Banquet Hall/Shop disclaimer cards */
@media (max-width: 600px) {
	.vm-disclaimer-card {
		padding: 2rem 1.5rem !important;
	}
	.vm-disclaimer-title {
		font-size: 1.75rem !important;
	}
}

@media (max-width: 480px) {
	.vm-disclaimer-actions {
		flex-direction: column !important;
		gap: 0.75rem !important;
	}
	.vm-disclaimer-actions a {
		width: 100% !important;
		box-sizing: border-box !important;
	}
}

/* ============================================================================================
   LODGE AMENITIES PAGE STYLING
   ============================================================================================ */

/* Hero Banner */
.vm-amenities-hero {
	position: relative;
	min-height: 450px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 6rem 2rem 5rem 2rem;
	overflow: hidden;
	color: #f4f1ea;
	background-color: #050a15;
}

.vm-amenities-hero__bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 1;
	transform: scale(1.02);
	transition: transform 0.5s ease;
}

.vm-amenities-hero:hover .vm-amenities-hero__bg {
	transform: scale(1.05);
}

.vm-amenities-hero__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom, rgba(10, 15, 30, 0.82) 0%, rgba(10, 15, 30, 0.95) 100%);
	z-index: 2;
}

.vm-amenities-hero__content {
	position: relative;
	z-index: 3;
	max-width: 800px;
	margin: 0 auto;
}

.vm-amenities-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-bottom: 1.5rem;
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 2px;
	color: var(--vm-gold, #d4a017);
}

.vm-amenities-hero__eyebrow-line {
	width: 30px;
	height: 1px;
	background-color: var(--vm-gold, #d4a017);
}

.vm-amenities-hero__title {
	font-family: 'Belleza', sans-serif !important;
	font-size: clamp(2.5rem, 6vw, 3.75rem) !important;
	font-weight: 400 !important;
	line-height: 1.1 !important;
	color: #f4f1ea !important;
	margin: 0 0 1.5rem 0 !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
}

.vm-amenities-hero__title span {
	color: var(--vm-gold, #d4a017);
	display: block;
	font-size: 0.85em;
	margin-top: 5px;
}

.vm-amenities-hero__subtitle {
	font-family: 'Work Sans', sans-serif !important;
	font-size: clamp(1rem, 2.5vw, 1.15rem) !important;
	line-height: 1.6 !important;
	color: rgba(244, 241, 234, 0.85) !important;
	margin: 0 auto !important;
	max-width: 650px !important;
	font-weight: 400 !important;
}

/* Page Section Container */
.vm-amenities-section {
	max-width: 1200px;
	margin: 0 auto;
	padding: 4rem 2rem 6rem 2rem;
}

/* Zone Block layout */
.vm-amenity-zone {
	margin-bottom: 5rem;
}

.vm-amenity-zone:last-child {
	margin-bottom: 0;
}

.vm-amenity-zone__header {
	margin-bottom: 2.5rem;
	text-align: center;
}

.vm-amenity-zone__eyebrow {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: var(--vm-gold, #d4a017);
	margin-bottom: 0.5rem;
}

.vm-amenity-zone__title {
	font-family: 'Belleza', sans-serif !important;
	font-size: 2.25rem !important;
	font-weight: 400 !important;
	color: var(--vm-gold, #d4a017) !important;
	margin: 0 0 1rem 0 !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
}

.vm-amenity-zone__desc {
	max-width: 700px;
	margin: 0 auto !important;
	color: rgba(244, 241, 234, 0.75) !important;
	font-size: 1.05rem !important;
	line-height: 1.6 !important;
}

/* Grid Layout */
.vm-amenities-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
}

@media (min-width: 769px) {
	.vm-amenities-grid {
		grid-template-columns: repeat(6, 1fr);
		gap: 2rem;
	}

	.vm-amenity-card {
		grid-column: span 2;
	}

	/* If exactly 2 items: both span 3 columns (50% width) */
	.vm-amenities-grid > :first-child:nth-last-child(2),
	.vm-amenities-grid > :first-child:nth-last-child(2) ~ .vm-amenity-card {
		grid-column: span 3;
	}

	/* If exactly 5 items: last 2 items span 3 columns (50% width) */
	.vm-amenities-grid > :first-child:nth-last-child(5) ~ :nth-child(n+4) {
		grid-column: span 3;
	}
}


/* Amenity Card */
.vm-amenity-card {
	background: rgba(13, 20, 38, 0.95);
	border: 1px solid rgba(212, 160, 23, 0.15);
	border-radius: 8px;
	overflow: hidden;
	transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), border-color 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.vm-amenity-card:hover {
	transform: translateY(-8px);
	border-color: rgba(212, 160, 23, 0.35);
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4), 0 0 15px rgba(212, 160, 23, 0.08);
}

.vm-amenity-card__image-container {
	position: relative;
	height: 230px;
	overflow: hidden;
}

.vm-amenity-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.vm-amenity-card:hover .vm-amenity-card__image {
	transform: scale(1.05);
}

.vm-amenity-card__image-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom, rgba(13, 20, 38, 0) 60%, rgba(13, 20, 38, 0.4) 100%);
}

.vm-amenity-card__content {
	padding: 1.75rem;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

.vm-amenity-card__title {
	font-family: 'Work Sans', sans-serif !important;
	font-size: 1.35rem !important;
	font-weight: 700 !important;
	color: var(--vm-gold, #d4a017) !important;
	margin: 0 0 0.75rem 0 !important;
	text-transform: none !important;
	letter-spacing: 0.5px !important;
}

.vm-amenity-card__text {
	color: rgba(244, 241, 234, 0.8) !important;
	font-size: 0.95rem !important;
	line-height: 1.55 !important;
	margin: 0 !important;
	font-weight: 400 !important;
}

/* Responsive media queries */
@media (max-width: 768px) {
	.vm-amenities-hero {
		min-height: 380px;
		padding: 5rem 1.5rem 4rem 1.5rem;
	}
	.vm-amenities-section {
		padding: 3rem 1.5rem 4rem 1.5rem;
	}
	.vm-amenity-zone {
		margin-bottom: 4rem;
	}
	.vm-amenity-zone__title {
		font-size: 1.85rem !important;
	}
	.vm-amenities-grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}
	.vm-amenity-card__image-container {
		height: 200px;
	}
}


