.cm-page {
	font-family: 'Georgia', 'Times New Roman', serif;
	color: #2C2C2C;
	line-height: 1.6;
}

.cm-page * {
	box-sizing: border-box;
}

.cm-page .container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
}

.cm-page .container-wide {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 24px;
}

.cm-page .sans {
	font-family: 'Helvetica Neue', Arial, sans-serif;
}

.cm-page .text-center {
	text-align: center;
}

.cm-page .section-pad {
	padding: 80px 0;
}

/* TOP BAR */
.cm-page .top-bar {
	background: #132942;
	padding: 8px 0;
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 12px;
	color: #E8DFD0;
	letter-spacing: .5px;
}

.cm-page .top-bar .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.cm-page .top-bar a {
	color: #E8DFD0;
	text-decoration: none;
}

.cm-page .top-bar a:hover {
	color: #FFFFFF;
}

/* NAV */
.cm-page .nav {
	background: #FFFFFF;
	border-bottom: 1px solid #E5E7EB;
	position: sticky;
	top: 0;
	z-index: 100;
	box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.cm-page .nav .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 72px;
}

.cm-page .nav-logo {
	display: flex;
	flex-direction: column;
	text-decoration: none;
}

.cm-page .nav-logo-main {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 3px;
	color: #1B3A5C;
	text-transform: uppercase;
}

.cm-page .nav-logo-sub {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 10px;
	letter-spacing: 2px;
	color: #3A8C96;
	text-transform: uppercase;
	margin-top: -2px;
}

.cm-page .nav-links {
	display: flex;
	gap: 32px;
	list-style: none;
	align-items: center;
}

.cm-page .nav-links a {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .8px;
	text-transform: uppercase;
	color: #1B3A5C;
	text-decoration: none;
	transition: color .2s;
	position: relative;
}

.cm-page .nav-links a:hover {
	color: #3A8C96;
}

.cm-page .nav-links a.active {
	color: #3A8C96;
}

.cm-page .nav-links a.active::after {
	content: '';
	position: absolute;
	bottom: -4px;
	left: 0;
	right: 0;
	height: 2px;
	background: #3A8C96;
}

.cm-page .nav-cta {
	background: #3A8C96;
	color: #FFFFFF !important;
	padding: 10px 20px;
	border-radius: 4px;
	font-size: 12px !important;
	letter-spacing: 1px !important;
	transition: background .2s !important;
}

.cm-page .nav-cta:hover {
	background: #1B3A5C !important;
}

.cm-page .nav-cta::after {
	display: none !important;
}

.cm-page .nav-toggle {
	display: none;
	background: none;
	border: none;
	cursor: pointer;
	padding: 8px;
}

.cm-page .nav-toggle span {
	display: block;
	width: 24px;
	height: 2px;
	background: #1B3A5C;
	margin: 5px 0;
	transition: .3s;
}

/* HERO */
.cm-page .hero {
	position: relative;
	height: 85vh;
	min-height: 600px;
	max-height: 900px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: linear-gradient(135deg, #1B3A5C 0%, #2A5A7A 50%, #3A8C96 100%);
}

.cm-page .hero-overlay {
	position: absolute;
	background: linear-gradient(to bottom, rgba(27,58,92,0.3) 0%, rgba(27,58,92,0.6) 100%);
}

.cm-page .hero::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	right: 0;
	height: 80px;
	background: #FFFFFF;
	clip-path: ellipse(55% 100% at 50% 100%);
	z-index: 2;
}

.cm-page .hero-content {
	position: relative;
	z-index: 3;
	text-align: center;
	color: #FFFFFF;
	max-width: 800px;
	padding: 0 24px;
}

.cm-page .hero-tag {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 12px;
	letter-spacing: 4px;
	text-transform: uppercase;
	color: #D4C5A9;
	margin-bottom: 20px;
	display: inline-block;
	border: 1px solid rgba(212,197,169,0.4);
	padding: 8px 20px;
}

.cm-page .hero h1 {
	font-size: 56px;
	font-weight: 400;
	line-height: 1.15;
	margin-bottom: 24px;
	letter-spacing: -.5px;
	color: #FFFFFF;
}

.cm-page .hero h1 em {
	font-style: italic;
	color: #D4C5A9;
}

.cm-page .hero p {
	font-size: 20px;
	line-height: 1.6;
	opacity: .9;
	max-width: 600px;
	margin: 0 auto 36px;
}

.cm-page .hero-buttons {
	display: flex;
	gap: 16px;
	justify-content: center;
	flex-wrap: wrap;
}

/* BUTTONS */
.cm-page .btn {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	padding: 14px 32px;
	border: none;
	cursor: pointer;
	text-decoration: none;
	transition: all .2s;
	display: inline-block;
}

.cm-page .btn-primary {
	background: #3A8C96;
	color: #FFFFFF;
}

.cm-page .btn-primary:hover {
	background: #4DA8B3;
}

.cm-page .btn-outline {
	background: transparent;
	color: #FFFFFF;
	border: 1px solid rgba(255,255,255,0.5);
}

.cm-page .btn-outline:hover {
	background: rgba(255,255,255,0.1);
	border-color: #FFFFFF;
}

.cm-page .btn-sand {
	background: #D4C5A9;
	color: #1B3A5C;
}

.cm-page .btn-sand:hover {
	background: #E8DFD0;
}

/* INTRO BAR */
.cm-page .intro-bar {
	background: #F5F2ED;
	padding: 48px 0;
	border-bottom: 1px solid #E8DFD0;
}

.cm-page .intro-bar .container {
	display: flex;
	justify-content: center;
	gap: 64px;
	align-items: center;
	flex-wrap: wrap;
}

.cm-page .intro-stat {
	text-align: center;
}

.cm-page .intro-stat-number {
	font-size: 36px;
	color: #1B3A5C;
	font-weight: 400;
	line-height: 1;
	margin-bottom: 4px;
}

.cm-page .intro-stat-label {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #6B7280;
}

.cm-page .intro-divider {
	width: 1px;
	height: 48px;
	background: #D4C5A9;
}

/* SECTION HEADERS */
.cm-page .section-header {
	text-align: center;
	margin-bottom: 48px;
}

.cm-page .section-tag {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 11px;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: #3A8C96;
	margin-bottom: 12px;
	display: block;
}

.cm-page .section-title {
	font-size: 38px;
	font-weight: 400;
	color: #1B3A5C;
	margin-bottom: 16px;
	line-height: 1.2;
}

.cm-page .section-desc {
	font-size: 17px;
	color: #6B7280;
	max-width: 600px;
	margin: 0 auto;
	line-height: 1.7;
}

/* NEIGHBORHOODS GRID */
.cm-page .neighborhoods {
	background: #FFFFFF;
}

.cm-page .hood-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.cm-page .hood-card {
	position: relative;
	border-radius: 8px;
	overflow: hidden;
	cursor: pointer;
	text-decoration: none;
	color: #FFFFFF;
	aspect-ratio: 3/4;
	display: flex;
	align-items: flex-end;
	transition: transform .3s;
}

.cm-page .hood-card:hover {
	transform: translateY(-4px);
}

.cm-page .hood-card-bg {
	position: absolute;
	background: linear-gradient(135deg, #1B3A5C 0%, #3A8C96 100%);
}

.cm-page .hood-card:nth-of-type(2) .hood-card-bg {
	background: linear-gradient(135deg, #2A5A7A 0%, #4DA8B3 100%);
}

.cm-page .hood-card:nth-of-type(3) .hood-card-bg {
	background: linear-gradient(135deg, #1a4a6a 0%, #3A8C96 100%);
}

.cm-page .hood-card:nth-of-type(4) .hood-card-bg {
	background: linear-gradient(135deg, #3A8C96 0%, #1B3A5C 100%);
}

.cm-page .hood-card:nth-of-type(5) .hood-card-bg {
	background: linear-gradient(135deg, #2d6b5f 0%, #3A8C96 100%);
}

.cm-page .hood-card:nth-of-type(6) .hood-card-bg {
	background: linear-gradient(135deg, #4a6fa5 0%, #1B3A5C 100%);
}

.cm-page .hood-card-overlay {
	position: absolute;
	background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.1) 50%, rgba(0,0,0,0) 100%);
}

.cm-page .hood-card-content {
	position: relative;
	z-index: 2;
	padding: 24px;
	width: 100%;
}

.cm-page .hood-card-name {
	font-size: 20px;
	font-weight: 400;
	margin-bottom: 4px;
}

.cm-page .hood-card-vibe {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 12px;
	opacity: .8;
	letter-spacing: .3px;
}

.cm-page .hood-card-arrow {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255,255,255,0.15);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 16px;
	opacity: 0;
	transition: opacity .3s;
	z-index: 2;
}

.cm-page .hood-card:hover .hood-card-arrow {
	opacity: 1;
}

.cm-page .hood-card.featured {
	grid-column: span 2;
	grid-row: span 2;
	aspect-ratio: auto;
}

/* DINING */
.cm-page .dining {
	background: #F5F2ED;
}

.cm-page .dining-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}

.cm-page .dining-card {
	background: #FFFFFF;
	border-radius: 8px;
	overflow: hidden;
	text-decoration: none;
	color: #2C2C2C;
	transition: box-shadow 0.3s, transform .3s;
	border: 1px solid #E5E7EB;
}

.cm-page .dining-card:hover {
	box-shadow: 0 8px 24px rgba(0,0,0,0.08);
	transform: translateY(-2px);
}

.cm-page .dining-card-img {
	height: 200px;
	background: linear-gradient(135deg, #D4C5A9 0%, #E8DFD0 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 12px;
	color: #6B7280;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.cm-page .dining-card-body {
	padding: 24px;
}

.cm-page .dining-card-category {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #3A8C96;
	margin-bottom: 8px;
}

.cm-page .dining-card-name {
	font-size: 22px;
	color: #1B3A5C;
	margin-bottom: 8px;
}

.cm-page .dining-card-desc {
	font-size: 15px;
	color: #6B7280;
	line-height: 1.6;
}

/* MARKET PULSE */
.cm-page .market-pulse {
	background: #1B3A5C;
	color: #FFFFFF;
}

.cm-page .market-pulse .section-tag {
	color: #D4C5A9;
}

.cm-page .market-pulse .section-title {
	color: #FFFFFF;
}

.cm-page .market-pulse .section-desc {
	color: rgba(255,255,255,0.7);
}

.cm-page .market-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	margin-bottom: 40px;
}

.cm-page .market-stat-card {
	background: rgba(255,255,255,0.08);
	border: 1px solid rgba(255,255,255,0.12);
	border-radius: 8px;
	padding: 28px 24px;
	text-align: center;
}

.cm-page .market-stat-value {
	font-size: 36px;
	font-weight: 400;
	color: #D4C5A9;
	margin-bottom: 4px;
}

.cm-page .market-stat-label {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: rgba(255,255,255,0.6);
	margin-bottom: 12px;
}

.cm-page .market-stat-change {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 13px;
	color: #6EE7B7;
}

.cm-page .market-stat-change.down {
	color: #FCA5A5;
}

.cm-page .market-commentary {
	max-width: 800px;
	margin: 0 auto;
	text-align: center;
}

.cm-page .market-commentary blockquote {
	font-size: 20px;
	font-style: italic;
	line-height: 1.7;
	color: rgba(255,255,255,0.9);
	border: none;
	margin-bottom: 16px;
}

.cm-page .market-commentary cite {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 13px;
	letter-spacing: .5px;
	color: #D4C5A9;
	font-style: normal;
}

/* EVENTS */
.cm-page .events {
	background: #FFFFFF;
}

.cm-page .events-list {
	max-width: 800px;
	margin: 0 auto;
}

.cm-page .event-item {
	display: flex;
	gap: 28px;
	padding: 28px 0;
	border-bottom: 1px solid #E5E7EB;
	text-decoration: none;
	color: #2C2C2C;
	transition: opacity .2s;
	align-items: flex-start;
}

.cm-page .event-item:hover {
	opacity: .8;
}

.cm-page .event-date {
	flex-shrink: 0;
	width: 72px;
	text-align: center;
}

.cm-page .event-month {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #3A8C96;
}

.cm-page .event-day {
	font-size: 32px;
	color: #1B3A5C;
	line-height: 1.1;
}

.cm-page .event-details {
	flex: 1;
}

.cm-page .event-name {
	font-size: 20px;
	color: #1B3A5C;
	margin-bottom: 4px;
}

.cm-page .event-desc {
	font-size: 15px;
	color: #6B7280;
	line-height: 1.6;
}

.cm-page .event-location {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 12px;
	color: #3A8C96;
	margin-top: 8px;
	letter-spacing: .3px;
}

/* BLOG */
.cm-page .blog-section {
	background: #F5F2ED;
}

.cm-page .blog-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 32px;
}

.cm-page .blog-card {
	background: #FFFFFF;
	border-radius: 8px;
	overflow: hidden;
	text-decoration: none;
	color: #2C2C2C;
	transition: box-shadow 0.3s, transform .3s;
	border: 1px solid #E5E7EB;
}

.cm-page .blog-card:hover {
	box-shadow: 0 8px 24px rgba(0,0,0,0.08);
	transform: translateY(-2px);
}

.cm-page .blog-card-img {
	height: 220px;
	background: linear-gradient(135deg, #1B3A5C 0%, #3A8C96 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255,255,255,0.5);
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 12px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.cm-page .blog-card-body {
	padding: 28px;
}

.cm-page .blog-card-meta {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 11px;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #3A8C96;
	margin-bottom: 12px;
}

.cm-page .blog-card-title {
	font-size: 24px;
	color: #1B3A5C;
	margin-bottom: 12px;
	line-height: 1.3;
}

.cm-page .blog-card-excerpt {
	font-size: 15px;
	color: #6B7280;
	line-height: 1.7;
}

.cm-page .blog-card-read {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 12px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #3A8C96;
	margin-top: 16px;
	display: inline-block;
}

/* IDX SEARCH */
.cm-page .idx-section {
	background: linear-gradient(135deg, #1B3A5C 0%, #2A5A7A 100%);
	padding: 64px 0;
}

.cm-page .idx-section .section-tag {
	color: #D4C5A9;
}

.cm-page .idx-section .section-title {
	color: #FFFFFF;
	margin-bottom: 32px;
}

.cm-page .idx-search-bar {
	max-width: 900px;
	margin: 0 auto;
	background: #FFFFFF;
	border-radius: 8px;
	padding: 8px;
	display: flex;
	gap: 8px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.2);
	flex-wrap: wrap;
}

.cm-page .idx-search-bar select, .cm-page .idx-search-bar input {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 14px;
	padding: 14px 16px;
	border: 1px solid #E5E7EB;
	border-radius: 4px;
	background: #FFFFFF;
	color: #2C2C2C;
	flex: 1;
	min-width: 150px;
}

.cm-page .idx-search-bar select:focus, .cm-page .idx-search-bar input:focus {
	outline: none;
	border-color: #3A8C96;
}

.cm-page .idx-search-btn {
	background: #3A8C96;
	color: #FFFFFF;
	border: none;
	padding: 14px 32px;
	border-radius: 4px;
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 1px;
	text-transform: uppercase;
	cursor: pointer;
	transition: background .2s;
}

.cm-page .idx-search-btn:hover {
	background: #1B3A5C;
}

/* NEWSLETTER */
.cm-page .newsletter-cta {
	background: #E8DFD0;
	padding: 72px 0;
	text-align: center;
}

.cm-page .newsletter-cta .section-title {
	margin-bottom: 12px;
}

.cm-page .newsletter-cta p {
	font-size: 17px;
	color: #6B7280;
	max-width: 550px;
	margin: 0 auto 32px;
	line-height: 1.7;
}

.cm-page .newsletter-form {
	display: flex;
	gap: 12px;
	max-width: 480px;
	margin: 0 auto;
	justify-content: center;
}

.cm-page .newsletter-form input {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 14px;
	padding: 14px 20px;
	border: 1px solid #D4C5A9;
	border-radius: 4px;
	background: #FFFFFF;
	flex: 1;
	min-width: 200px;
}

.cm-page .newsletter-form input:focus {
	outline: none;
	border-color: #3A8C96;
}

.cm-page .newsletter-form button {
	background: #1B3A5C;
	color: #FFFFFF;
	border: none;
	padding: 14px 28px;
	border-radius: 4px;
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 1px;
	text-transform: uppercase;
	cursor: pointer;
	transition: background .2s;
	white-space: nowrap;
}

.cm-page .newsletter-form button:hover {
	background: #3A8C96;
}

.cm-page .newsletter-name {
	font-size: 14px;
	font-style: italic;
	color: #3A8C96;
	margin-top: 16px;
}

/* SPOTLIGHT */
.cm-page .spotlight {
	background: #FFFFFF;
}

.cm-page .spotlight-card {
	display: flex;
	gap: 48px;
	align-items: center;
	max-width: 900px;
	margin: 0 auto;
}

.cm-page .spotlight-img {
	flex-shrink: 0;
	width: 400px;
	height: 320px;
	background: linear-gradient(135deg, #D4C5A9 0%, #E8DFD0 100%);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 12px;
	color: #6B7280;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.cm-page .spotlight-content {
	flex: 1;
}

.cm-page .spotlight-label {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 11px;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: #3A8C96;
	margin-bottom: 12px;
}

.cm-page .spotlight-name {
	font-size: 30px;
	color: #1B3A5C;
	margin-bottom: 8px;
}

.cm-page .spotlight-type {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 13px;
	color: #D4C5A9;
	margin-bottom: 16px;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-weight: 500;
}

.cm-page .spotlight-desc {
	font-size: 16px;
	color: #6B7280;
	line-height: 1.7;
	margin-bottom: 20px;
}

/* ABOUT AGENT */
.cm-page .about-agent {
	background: #F5F2ED;
	border-top: 1px solid #E8DFD0;
}

.cm-page .about-card {
	display: flex;
	gap: 48px;
	align-items: center;
	max-width: 900px;
	margin: 0 auto;
}

.cm-page .about-photo {
	flex-shrink: 0;
	width: 280px;
	height: 340px;
	background: linear-gradient(135deg, #1B3A5C 0%, #3A8C96 100%);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255,255,255,0.5);
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 12px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.cm-page .about-content {
	flex: 1;
}

.cm-page .about-content h3 {
	font-size: 30px;
	color: #1B3A5C;
	margin-bottom: 4px;
	font-weight: 400;
}

.cm-page .about-content .about-title {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 13px;
	color: #3A8C96;
	letter-spacing: 1px;
	margin-bottom: 20px;
}

.cm-page .about-content p {
	font-size: 16px;
	color: #6B7280;
	line-height: 1.7;
	margin-bottom: 16px;
}

/* FOOTER */
.cm-page .footer {
	background: #132942;
	color: rgba(255,255,255,0.7);
	padding: 64px 0 32px;
}

.cm-page .footer-grid {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1fr;
	gap: 48px;
	margin-bottom: 48px;
}

.cm-page .footer-brand .nav-logo-main {
	color: #FFFFFF;
	font-size: 18px;
}

.cm-page .footer-brand .nav-logo-sub {
	color: #D4C5A9;
}

.cm-page .footer-brand p {
	font-size: 14px;
	line-height: 1.7;
	margin-top: 16px;
	color: rgba(255,255,255,0.6);
}

.cm-page .footer h4 {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #D4C5A9;
	margin-bottom: 20px;
}

.cm-page .footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.cm-page .footer ul li {
	margin-bottom: 10px;
}

.cm-page .footer ul a {
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 13px;
	color: rgba(255,255,255,0.6);
	text-decoration: none;
	transition: color .2s;
}

.cm-page .footer ul a:hover {
	color: #FFFFFF;
}

.cm-page .footer-bottom {
	border-top: 1px solid rgba(255,255,255,0.1);
	padding-top: 24px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-family: 'Helvetica Neue', Arial, sans-serif;
	font-size: 12px;
	color: rgba(255,255,255,0.4);
	flex-wrap: wrap;
	gap: 12px;
}

.cm-page .footer-bottom a {
	color: rgba(255,255,255,0.4);
	text-decoration: none;
}

.cm-page .footer-bottom a:hover {
	color: #FFFFFF;
}

.cm-page .footer-social {
	display: flex;
	gap: 16px;
}

/* RESPONSIVE */
@media (max-width: 1024px) {
	.cm-page .hood-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.cm-page .hood-card.featured {
		grid-column: span 2;
	}
	
	.cm-page .market-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.cm-page .footer-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.cm-page .nav-links {
		display: none;
	}
	
	.cm-page .nav-toggle {
		display: block;
	}
	
	.cm-page .hero h1 {
		font-size: 36px;
	}
	
	.cm-page .hero p {
		font-size: 17px;
	}
	
	.cm-page .hero {
		height: 70vh;
		min-height: 500px;
	}
	
	.cm-page .hood-grid {
		grid-template-columns: 1fr;
	}
	
	.cm-page .hood-card.featured {
		grid-column: span 1;
	}
	
	.cm-page .dining-grid {
		grid-template-columns: 1fr;
	}
	
	.cm-page .blog-grid {
		grid-template-columns: 1fr;
	}
	
	.cm-page .market-grid {
		grid-template-columns: 1fr 1fr;
	}
	
	.cm-page .spotlight-card {
		flex-direction: column;
		gap: 28px;
	}
	
	.cm-page .spotlight-img {
		width: 100%;
		height: 240px;
	}
	
	.cm-page .about-card {
		flex-direction: column;
		gap: 28px;
		text-align: center;
	}
	
	.cm-page .about-photo {
		width: 200px;
		height: 240px;
	}
	
	.cm-page .section-title {
		font-size: 30px;
	}
	
	.cm-page .section-pad {
		padding: 56px 0;
	}
	
	.cm-page .footer-grid {
		grid-template-columns: 1fr;
	}
	
	.cm-page .idx-search-bar {
		flex-direction: column;
	}
	
	.cm-page .intro-bar .container {
		gap: 32px;
	}
	
	.cm-page .intro-divider {
		width: 48px;
		height: 1px;
	}
	
	.cm-page .newsletter-form {
		flex-direction: column;
	}
}

/* ===== DROPDOWN MENU FIX ===== */
.wp-block-navigation__submenu-container {
  background-color: #2C2C2C !important;
  border: 1px solid #444 !important;
  border-radius: 4px !important;
  padding: 8px 0 !important;
  min-width: 220px !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  color: #ffffff !important;
  padding: 8px 20px !important;
  display: block !important;
  font-size: 13px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
  background-color: #4a7c6f !important;
  color: #ffffff !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item {
  background-color: transparent !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item:hover {
  background-color: #4a7c6f !important;
}

/* ===== NAVIGATION FONT SIZE ===== */
.wp-block-navigation-item__content {
  font-size: 16px !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  font-size: 14px !important;
}

/* ===== HOMEPAGE IMAGE CONSISTENCY ===== */

/* Side-by-side column images: equal height with crop */
.wp-block-columns .wp-block-column .wp-block-image img {
  width: 100% !important;
  height: 350px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 4px !important;
}

/* Standalone centered images (lifeboat, etc): consistent width and height */
.wp-block-image.aligncenter img:not([src*="line-1"]):not([src*="umbrella"]) {
  width: 100% !important;
  max-width: 800px !important;
  height: 350px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 4px !important;
}

/* Standalone full-size images (Victorian inn, etc): match column image sizing */
.wp-block-group-is-layout-constrained > .wp-block-image.size-full {
  max-width: 800px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.wp-block-group-is-layout-constrained > .wp-block-image.size-full img:not([src*="line-1"]):not([src*="umbrella"]) {
  width: 100% !important;
  height: 350px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 4px !important;
}

/* Wildwoods flex gallery: equal sizing for all 3 images */
.has-primary-background-color .wp-block-group.alignwide.is-layout-flex .wp-block-image {
  flex: 1 1 0% !important;
  max-width: 33.33% !important;
}

.has-primary-background-color .wp-block-group.alignwide.is-layout-flex .wp-block-image img {
  width: 100% !important;
  height: 300px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 4px !important;
}

/* Ensure figure elements don't constrain images */
.wp-block-columns .wp-block-image,
.has-primary-background-color .wp-block-group.alignwide .wp-block-image {
  width: 100% !important;
}


/* ===== LIVING PAGES: SHORE THEME OVERRIDES ===== */


/* SHORE THEME OVERRIDES FOR LIVING PAGES */

/* Typography: Spectral serif + Commissioner sans */
.cm-page {
  font-family: 'Spectral', serif !important;
  color: #546163 !important;
  line-height: 1.7 !important;
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.cm-page h1, .cm-page h2, .cm-page h3,
.cm-page .section-title, .cm-page .hero-title {
  font-family: 'Spectral', serif !important;
  color: #0B2E33 !important;
  font-weight: 500 !important;
  letter-spacing: -0.5px !important;
}

.cm-page .section-tag, .cm-page .hero-tag {
  font-family: 'Commissioner', sans-serif !important;
  color: #546163 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}

.cm-page p, .cm-page .section-desc {
  font-family: 'Spectral', serif !important;
  color: #546163 !important;
}

.cm-page .hood-card-name {
  font-family: 'Commissioner', sans-serif !important;
  color: #F1F2E9 !important;
  font-weight: 500 !important;
  letter-spacing: 0.5px !important;
}

.cm-page .hood-card-tags {
  font-family: 'Commissioner', sans-serif !important;
  color: rgba(241,242,233,0.7) !important;
  font-size: 11px !important;
}

.cm-page .dining-card-category {
  font-family: 'Commissioner', sans-serif !important;
  color: #546163 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  font-size: 10px !important;
}

.cm-page .dining-card-name, .cm-page .blog-card-title {
  font-family: 'Spectral', serif !important;
  color: #0B2E33 !important;
  font-weight: 500 !important;
}

.cm-page .dining-card-desc, .cm-page .blog-card-excerpt {
  font-family: 'Spectral', serif !important;
  color: #546163 !important;
}

.cm-page .event-name {
  font-family: 'Spectral', serif !important;
  color: #0B2E33 !important;
  font-weight: 500 !important;
}

.cm-page .event-desc {
  font-family: 'Spectral', serif !important;
  color: #546163 !important;
}

.cm-page .event-month {
  font-family: 'Commissioner', sans-serif !important;
  text-transform: uppercase !important;
}

.cm-page .market-stat-value {
  font-family: 'Spectral', serif !important;
  color: #0B2E33 !important;
  font-weight: 500 !important;
}

.cm-page .market-stat-label {
  font-family: 'Commissioner', sans-serif !important;
  color: #546163 !important;
}

.cm-page .about-title {
  font-family: 'Commissioner', sans-serif !important;
  color: #0B2E33 !important;
}

.cm-page .about-content, .cm-page .about-content p {
  font-family: 'Spectral', serif !important;
  color: #546163 !important;
}

.cm-page .blog-card-date, .cm-page .blog-card-meta {
  font-family: 'Commissioner', sans-serif !important;
  color: #546163 !important;
  font-size: 11px !important;
}

.cm-page .intro-stat-number {
  font-family: 'Spectral', serif !important;
  color: #F1F2E9 !important;
  font-weight: 300 !important;
}

.cm-page .intro-stat-label {
  font-family: 'Commissioner', sans-serif !important;
  color: rgba(241,242,233,0.6) !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  font-size: 10px !important;
}

/* Colors: Dark teal #0B2E33, Cream #F1F2E9 */

.cm-page .hero {
  background-color: #0B2E33 !important;
}
.cm-page .hero-overlay {
  background: linear-gradient(180deg, rgba(11,46,51,0.4) 0%, rgba(11,46,51,0.8) 100%) !important;
}
.cm-page .hero-content { color: #F1F2E9 !important; }
.cm-page .hero-title { color: #F1F2E9 !important; font-weight: 300 !important; }
.cm-page .hero-tag { color: rgba(241,242,233,0.6) !important; }
.cm-page .hero-desc { color: rgba(241,242,233,0.85) !important; font-family: 'Spectral', serif !important; }

.cm-page .intro-bar { background-color: #0B2E33 !important; }

.cm-page .section-pad { background-color: #F1F2E9 !important; }

.cm-page #cm-market, .cm-page #ww-market {
  background-color: #0B2E33 !important;
}
.cm-page #cm-market .section-tag, .cm-page #ww-market .section-tag {
  color: rgba(241,242,233,0.5) !important;
}
.cm-page #cm-market .section-title, .cm-page #ww-market .section-title,
.cm-page #cm-market .section-desc, .cm-page #ww-market .section-desc {
  color: #F1F2E9 !important;
}
.cm-page #cm-market .market-stat-value, .cm-page #ww-market .market-stat-value {
  color: #F1F2E9 !important;
}
.cm-page #cm-market .market-stat-label, .cm-page #ww-market .market-stat-label {
  color: rgba(241,242,233,0.6) !important;
}
.cm-page .market-stat-change {
  color: rgba(241,242,233,0.5) !important;
  font-family: 'Commissioner', sans-serif !important;
}
.cm-page .market-commentary { color: rgba(241,242,233,0.85) !important; }
.cm-page .market-commentary blockquote {
  color: rgba(241,242,233,0.85) !important;
  border-left-color: rgba(241,242,233,0.3) !important;
}
.cm-page .market-commentary cite {
  color: rgba(241,242,233,0.5) !important;
  font-family: 'Commissioner', sans-serif !important;
}

.cm-page .subscribe-section, .cm-page .newsletter {
  background-color: #0B2E33 !important;
}
.cm-page .subscribe-section h2, .cm-page .newsletter h2 {
  color: #F1F2E9 !important;
}
.cm-page .subscribe-section p, .cm-page .newsletter p {
  color: rgba(241,242,233,0.7) !important;
}

.cm-page .event-date {
  background-color: #0B2E33 !important;
  border-radius: 0 !important;
}
.cm-page .event-month, .cm-page .event-day {
  color: #F1F2E9 !important;
}

.cm-page .search-section, .cm-page #cm-search, .cm-page #ww-search {
  background-color: #F1F2E9 !important;
}

/* Cards: no border-radius, clean lines */
.cm-page .hood-card,
.cm-page .dining-card,
.cm-page .blog-card,
.cm-page .event-card,
.cm-page .market-stat-card {
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
.cm-page .hood-card-bg { border-radius: 0 !important; }

.cm-page .dining-card, .cm-page .blog-card {
  background-color: #fff !important;
  border: 1px solid rgba(11,46,51,0.08) !important;
}
.cm-page .market-stat-card {
  background-color: rgba(241,242,233,0.1) !important;
  border: 1px solid rgba(241,242,233,0.15) !important;
}
.cm-page .event-card {
  background-color: #fff !important;
  border: 1px solid rgba(11,46,51,0.08) !important;
  border-radius: 0 !important;
}
.cm-page .about-card {
  background-color: #fff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border: 1px solid rgba(11,46,51,0.08) !important;
}
.cm-page .about-photo { border-radius: 0 !important; }

/* Buttons: Shore minimal style */
.cm-page .btn-primary {
  background-color: transparent !important;
  border: 1px solid #F1F2E9 !important;
  color: #F1F2E9 !important;
  border-radius: 0 !important;
  font-family: 'Commissioner', sans-serif !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  padding: 12px 28px !important;
  transition: all 0.3s ease !important;
}
.cm-page .btn-primary:hover {
  background-color: #F1F2E9 !important;
  color: #0B2E33 !important;
}
.cm-page .btn-outline {
  border: 1px solid #0B2E33 !important;
  color: #0B2E33 !important;
  background-color: transparent !important;
  border-radius: 0 !important;
  font-family: 'Commissioner', sans-serif !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  padding: 12px 28px !important;
  transition: all 0.3s ease !important;
}
.cm-page .btn-outline:hover {
  background-color: #0B2E33 !important;
  color: #F1F2E9 !important;
}

/* Search form button */
.cm-page .search-form .btn-primary,
.cm-page .property-search .btn-primary,
.cm-page button.btn-primary {
  background-color: #0B2E33 !important;
  border-color: #0B2E33 !important;
  color: #F1F2E9 !important;
}

.cm-page select, .cm-page input[type="text"] {
  border-radius: 0 !important;
  border-color: rgba(11,46,51,0.2) !important;
  font-family: 'Commissioner', sans-serif !important;
  color: #0B2E33 !important;
}

/* Tab navigation */
.cm-page .tab-nav a, .cm-page .nav-links a {
  font-family: 'Commissioner', sans-serif !important;
  color: #546163 !important;
  letter-spacing: 0.5px !important;
  font-size: 13px !important;
}
.cm-page .tab-nav a.active, .cm-page .tab-nav a:hover {
  color: #0B2E33 !important;
  border-bottom-color: #0B2E33 !important;
}

/* Structural: hide embedded nav/footer */
.cm-page .top-bar,
.cm-page nav,
.cm-page .nav-logo,
.cm-page .nav-links,
.cm-page .nav-cta,
.cm-page .nav-toggle {
  display: none !important;
}
.cm-page footer,
.cm-page .cm-footer,
.cm-page .cm-page-footer {
  display: none !important;
}

/* Full-width sections */
.cm-page .hero,
.cm-page .intro-bar,
.cm-page .section-pad {
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  padding-left: calc(50vw - 50%) !important;
  padding-right: calc(50vw - 50%) !important;
}

/* Hood card arrow */
.cm-page .hood-card-arrow { color: #F1F2E9 !important; }

/* Links */
.cm-page a[class*="view"], .cm-page .read-more {
  font-family: 'Commissioner', sans-serif !important;
  color: #0B2E33 !important;
  letter-spacing: 0.5px !important;
}

/* Hide Photo Placeholder text */
.cm-page .dining-card-img,
.cm-page .blog-card-img,
.cm-page .about-photo {
  font-size: 0 !important;
  color: transparent !important;
  overflow: hidden !important;
  min-height: 200px !important;
}

/* v2 */
/* Cape May neighborhood card images */
#cm-neighborhoods .hood-card:nth-of-type(1) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/02-colorful-victorian-houses-row.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#cm-neighborhoods .hood-card:nth-of-type(2) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/23-beachgoers-victorian-hotel-summer.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#cm-neighborhoods .hood-card:nth-of-type(3) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/capemaytravel.webp') !important;
  background-size: cover !important;
  background-position: center !important;
}
#cm-neighborhoods .hood-card:nth-of-type(4) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/18-offseason-lighthouse-beach-panorama.webp') !important;
  background-size: cover !important;
  background-position: center !important;
}
#cm-neighborhoods .hood-card:nth-of-type(5) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/22-beachfront-victorians-water-tower.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#cm-neighborhoods .hood-card:nth-of-type(6) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/24-beach-sunset-distant-lighthouse.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#cm-neighborhoods .hood-card:nth-of-type(7) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/38-lifeboat-sunrise-orange-sky.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#cm-neighborhoods .hood-card:nth-of-type(8) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/04-aerial-town-and-beach-panorama.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* Wildwoods neighborhood card images */
#ww-neighborhoods .hood-card:nth-of-type(1) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/Wildwoods-Boardwalk-Sign-1.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#ww-neighborhoods .hood-card:nth-of-type(2) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Beach-Chairs-Boardwalk-Far.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#ww-neighborhoods .hood-card:nth-of-type(3) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Beach-Boxes-Long.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#ww-neighborhoods .hood-card:nth-of-type(4) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Beach-Boat-1.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#ww-neighborhoods .hood-card:nth-of-type(5) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Rides-Cloudy-Artistic.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#ww-neighborhoods .hood-card:nth-of-type(6) .hood-card-bg {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Aerial-Rides-.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* Cape May dining card images */
#cm-dining .dining-card:nth-of-type(1) .dining-card-img {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/19-washington-street-mall-clock-dusk.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#cm-dining .dining-card:nth-of-type(2) .dining-card-img {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/Congress-Hall-Abstract.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#cm-dining .dining-card:nth-of-type(3) .dining-card-img {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/13-sunset-over-sunken-ship.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* Cape May blog card images */
#cm-blog .blog-card:nth-of-type(1) .blog-card-img {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/11-washington-street-mall-twilight-shops.webp') !important;
  background-size: cover !important;
  background-position: center !important;
}
#cm-blog .blog-card:nth-of-type(2) .blog-card-img {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/01-beach-dunes-sunset-fence.webp') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* Cape May about image */
#cm-about .about-photo {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/08-beach-plum-farm-garden.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* Wildwoods dining card images */
#ww-dining .dining-card:nth-of-type(1) .dining-card-img {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Moreys-Pier-Sign.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#ww-dining .dining-card:nth-of-type(2) .dining-card-img {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Great-White-Roller-Coaster-from-Beach-.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#ww-dining .dining-card:nth-of-type(3) .dining-card-img {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Boardwalk-Night-Rides-Fireworks.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* Wildwoods blog card images */
#ww-blog .blog-card:nth-of-type(1) .blog-card-img {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Ferriswheel-Carosel-Night.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}
#ww-blog .blog-card:nth-of-type(2) .blog-card-img {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Rides-Artistic-2.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* Wildwoods about image */
#ww-about .about-photo {
  background-image: url('https://beachspokerealestate.com/wp-content/uploads/2026/03/WW-Beach-Chair-Rental.jpeg') !important;
  background-size: cover !important;
  background-position: center !important;
}


/* =====================================================
   COMPREHENSIVE SHORE THEME FIX - ALL SECTIONS
   ===================================================== */

/* --- HERO: all content light on dark teal bg --- */
.cm-page .hero h1,
.cm-page .hero h2,
.cm-page .hero h3 {
  color: #F1F2E9 !important;
  font-weight: 300 !important;
}

.cm-page .hero p,
.cm-page .hero span,
.cm-page .hero div {
  color: rgba(241, 242, 233, 0.85) !important;
}

.cm-page .hero em, .cm-page .hero i {
  color: #F1F2E9 !important;
}

.cm-page .hero .btn-outline {
  border-color: #F1F2E9 !important;
  color: #F1F2E9 !important;
  background: transparent !important;
}
.cm-page .hero .btn-outline:hover {
  background-color: #F1F2E9 !important;
  color: #0B2E33 !important;
}

/* --- INTRO BAR: ensure all text is light --- */
.cm-page .intro-bar,
.cm-page .intro-bar * {
  color: #F1F2E9 !important;
}
.cm-page .intro-stat-label {
  color: rgba(241, 242, 233, 0.6) !important;
}

/* --- MARKET SECTION: all content light on dark bg --- */
.cm-page #cm-market,
.cm-page #ww-market {
  background-color: #0B2E33 !important;
  color: #F1F2E9 !important;
}

.cm-page #cm-market *,
.cm-page #ww-market * {
  color: #F1F2E9 !important;
}

.cm-page #cm-market .section-tag,
.cm-page #ww-market .section-tag {
  color: rgba(241, 242, 233, 0.5) !important;
}

.cm-page #cm-market .market-stat-label,
.cm-page #ww-market .market-stat-label {
  color: rgba(241, 242, 233, 0.6) !important;
}

.cm-page #cm-market .market-stat-change,
.cm-page #ww-market .market-stat-change {
  color: rgba(241, 242, 233, 0.5) !important;
}

.cm-page #cm-market .market-commentary cite,
.cm-page #ww-market .market-commentary cite {
  color: rgba(241, 242, 233, 0.5) !important;
}

.cm-page #cm-market .btn-outline,
.cm-page #ww-market .btn-outline,
.cm-page #cm-market .btn,
.cm-page #ww-market .btn {
  border-color: #F1F2E9 !important;
  color: #F1F2E9 !important;
  background: transparent !important;
}

/* --- NEWSLETTER: Shore dark teal, not gold --- */
.cm-page .newsletter-cta,
.cm-page [class*="newsletter"],
.cm-page [class*="subscribe"] {
  background-color: #0B2E33 !important;
}

.cm-page .newsletter-cta .section-tag {
  color: rgba(241, 242, 233, 0.5) !important;
}

.cm-page .newsletter-cta .section-title,
.cm-page .newsletter-cta h2 {
  color: #F1F2E9 !important;
}

.cm-page .newsletter-cta p,
.cm-page .newsletter-cta span,
.cm-page .newsletter-cta label,
.cm-page .newsletter-cta .newsletter-name {
  color: rgba(241, 242, 233, 0.7) !important;
}

.cm-page .newsletter-form input {
  background: rgba(241, 242, 233, 0.1) !important;
  border: 1px solid rgba(241, 242, 233, 0.3) !important;
  color: #F1F2E9 !important;
  border-radius: 0 !important;
  font-family: 'Commissioner', sans-serif !important;
}

.cm-page .newsletter-form button,
.cm-page .newsletter-form .btn {
  background-color: #F1F2E9 !important;
  color: #0B2E33 !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: 'Commissioner', sans-serif !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

/* --- BUTTONS: replace old-theme sand/gold --- */
.cm-page .btn-sand,
.cm-page .btn.btn-sand {
  background-color: transparent !important;
  border: 1px solid #0B2E33 !important;
  color: #0B2E33 !important;
  border-radius: 0 !important;
  font-family: 'Commissioner', sans-serif !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  padding: 12px 28px !important;
}
.cm-page .btn-sand:hover {
  background-color: #0B2E33 !important;
  color: #F1F2E9 !important;
}

/* --- SEARCH SECTION --- */
.cm-page .idx-search-btn,
.cm-page #cm-search .btn,
.cm-page #ww-search .btn,
.cm-page #cm-search button,
.cm-page #ww-search button {
  background-color: #0B2E33 !important;
  color: #F1F2E9 !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: 'Commissioner', sans-serif !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

.cm-page #cm-search select,
.cm-page #ww-search select,
.cm-page #cm-search input,
.cm-page #ww-search input {
  border: 1px solid rgba(11, 46, 51, 0.2) !important;
  border-radius: 0 !important;
  font-family: 'Commissioner', sans-serif !important;
  color: #0B2E33 !important;
  background: #fff !important;
}

.cm-page #cm-search .section-tag,
.cm-page #ww-search .section-tag {
  font-family: 'Commissioner', sans-serif !important;
  color: #546163 !important;
}

/* --- ABOUT/SPOTLIGHT: clean Shore styling --- */
.cm-page .spotlight {
  background-color: #F1F2E9 !important;
}

.cm-page .about-card {
  background-color: #fff !important;
  border-radius: 0 !important;
  border: 1px solid rgba(11, 46, 51, 0.08) !important;
  box-shadow: none !important;
}

.cm-page .about-content .btn-primary {
  background-color: #0B2E33 !important;
  border-color: #0B2E33 !important;
  color: #F1F2E9 !important;
}

.cm-page .agent-name, .cm-page .about-content h3 {
  font-family: 'Spectral', serif !important;
  color: #0B2E33 !important;
  font-weight: 500 !important;
}

.cm-page .agent-title, .cm-page .about-content h4 {
  font-family: 'Commissioner', sans-serif !important;
  color: #546163 !important;
  letter-spacing: 0.5px !important;
}

/* --- EVENTS: clean styling --- */
.cm-page .event-card,
.cm-page [class*="event-card"] {
  background-color: #fff !important;
  border: 1px solid rgba(11, 46, 51, 0.08) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.cm-page .event-date {
  background-color: #0B2E33 !important;
  border-radius: 0 !important;
}

.cm-page .event-venue, .cm-page .event-location {
  font-family: 'Commissioner', sans-serif !important;
  color: #546163 !important;
  font-size: 11px !important;
}

/* --- GLOBAL: catch-all for remaining old colors --- */

/* Replace all old teal/navy/gold accents */
.cm-page a {
  color: #0B2E33 !important;
}

.cm-page .hero a,
.cm-page .intro-bar a,
.cm-page #cm-market a,
.cm-page #ww-market a,
.cm-page .newsletter-cta a {
  color: #F1F2E9 !important;
}

/* Links in light sections */
.cm-page .section-pad a:not(.btn):not(.hood-card):not(.dining-card):not(.blog-card) {
  color: #0B2E33 !important;
  text-decoration-color: rgba(11, 46, 51, 0.3) !important;
}

/* Hood card content - ensure readable on dark image bg */
.cm-page .hood-card-content {
  color: #F1F2E9 !important;
}
.cm-page .hood-card-name {
  color: #F1F2E9 !important;
}
.cm-page .hood-card-vibe,
.cm-page .hood-card-tags {
  color: rgba(241, 242, 233, 0.75) !important;
}
.cm-page .hood-card-arrow {
  color: #F1F2E9 !important;
}

/* Remove any remaining gold/warm backgrounds */
.cm-page [style*="background"][style*="D4C5A9"],
.cm-page [style*="background"][style*="d4c5a9"],
.cm-page [style*="background"][style*="E8DFD0"],
.cm-page [style*="background"][style*="e8dfd0"] {
  background: #0B2E33 !important;
}

/* Dining card body */
.cm-page .dining-card-body {
  padding: 20px !important;
}

/* Blog card body */
.cm-page .blog-card-body {
  padding: 20px !important;
}

/* Footer area at bottom of About (already hidden) */
.cm-page .cm-page-footer,
.cm-page > div:last-child {
  background-color: #0B2E33 !important;
}


/* Final old-theme color cleanup */
.cm-page .intro-divider {
  background-color: rgba(11, 46, 51, 0.15) !important;
}

.cm-page .blog-card-read {
  color: #0B2E33 !important;
  border-color: #0B2E33 !important;
  font-family: 'Commissioner', sans-serif !important;
  letter-spacing: 0.5px !important;
}

.cm-page .spotlight-label {
  color: #546163 !important;
  border-color: #546163 !important;
  font-family: 'Commissioner', sans-serif !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}

.cm-page .spotlight-name {
  font-family: 'Spectral', serif !important;
  color: #0B2E33 !important;
  font-weight: 500 !important;
}

.cm-page .spotlight-tags {
  font-family: 'Commissioner', sans-serif !important;
  color: #546163 !important;
}

.cm-page .spotlight-desc {
  font-family: 'Spectral', serif !important;
  color: #546163 !important;
}

.cm-page .spotlight-link, .cm-page .spotlight a {
  color: #0B2E33 !important;
  font-family: 'Commissioner', sans-serif !important;
}

.cm-page .spotlight-type {
  color: #546163 !important;
  border-color: #546163 !important;
  font-family: 'Commissioner', sans-serif !important;
}


/* ===== STRUCTURAL FIXES - Card Layout, Hero, Dividers ===== */

/* Fix hood-card-bg: must fill parent card */
.cm-page .hood-card-bg {
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

/* Fix hood-card-overlay: must fill parent card */
.cm-page .hood-card-overlay {
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

/* Hide empty p tags inside hood-grid (WordPress artifacts) */
.cm-page .hood-grid > p {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide empty p tags inside hood-cards */
.cm-page .hood-card > p {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide empty p tags inside dining-grid, blog-grid, event-grid */
.cm-page .dining-grid > p,
.cm-page .blog-grid > p,
.cm-page .event-grid > p {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide empty p tags inside dining/blog/event cards */
.cm-page .dining-card > p,
.cm-page .blog-card > p,
.cm-page .event-card > p {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide the redundant .cm-page hero (Shore theme provides its own) */
.cm-page .hero {
  display: none !important;
}

/* Hide wave/curve SVG section dividers */
.cm-page .section-curve,
.cm-page .curve-divider,
.cm-page .wave-divider,
.cm-page svg[viewBox],
.cm-page .section-pad > svg,
.cm-page section > svg {
  display: none !important;
}

/* Fix hood-card sizing - ensure proper aspect ratio */
.cm-page .hood-card {
  position: relative !important;
  aspect-ratio: 3/4 !important;
  min-height: 280px !important;
  max-height: 400px !important;
}

/* Featured hood card can be taller */
.cm-page .hood-card.featured {
  max-height: 500px !important;
}

/* Ensure hood-grid displays properly */
.cm-page .hood-grid {
  display: grid !important;
  gap: 0 !important;
}

/* Fix dining card bg positioning */
.cm-page .dining-card-img {
  position: relative !important;
  min-height: 200px !important;
  overflow: hidden !important;
}

/* Shore theme: zero border-radius on all images and cards */
.cm-page img,
.cm-page .hood-card,
.cm-page .dining-card,
.cm-page .blog-card,
.cm-page .event-card,
.cm-page .market-stat-card {
  border-radius: 0 !important;
}

/* Shore theme: clean button styling */
.cm-page .btn-outline,
.cm-page .btn-primary,
.cm-page a.btn-outline,
.cm-page a.btn-primary {
  border-radius: 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  font-family: 'Commissioner', sans-serif !important;
  font-size: 11px !important;
  padding: 12px 28px !important;
  transition: all 0.3s ease !important;
}

/* Shore theme: section spacing consistency */
.cm-page .section-pad {
  padding: 80px 0 !important;
}

/* Shore theme: section headers */
.cm-page .section-header {
  margin-bottom: 48px !important;
}

/* Shore arrow on hood cards */
.cm-page .hood-card-arrow {
  border-radius: 0 !important;
  background: rgba(255,255,255,0.1) !important;
}

/* Fix any remaining p tags with unwanted height in sections */
.cm-page section > p:empty,
.cm-page .section-pad > p:empty,
.cm-page .container > p:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* ===== EMPTY ELEMENT FIXES ===== */

/* Hide empty duplicate hood-cards created by WordPress */
.cm-page .hood-card:empty {
  display: none !important;
}

/* Hide empty duplicate dining-cards */
.cm-page .dining-card:empty {
  display: none !important;
}

/* Hide empty duplicate blog-cards */
.cm-page .blog-card:empty {
  display: none !important;
}

/* Hide empty duplicate event-cards */
.cm-page .event-card:empty {
  display: none !important;
}

/* Hide empty duplicate market-stat-cards */
.cm-page .market-stat-card:empty {
  display: none !important;
}

/* ===== DINING CARD IMAGE FIX ===== */
/* Dining card img divs need proper sizing */
.cm-page .dining-card-img {
  min-height: 220px !important;
  background-size: cover !important;
  background-position: center !important;
}

/* ===== SHORE THEME: ADDITIONAL STRUCTURAL CONSISTENCY ===== */

/* Clean intro-bar / stats bar styling */
.cm-page .intro-bar {
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Shore theme: tabs/nav within cm-page (section navigation) */
.cm-page .cm-nav,
.cm-page .section-tabs {
  background-color: #F1F2E9 !important;
  border-bottom: 1px solid rgba(11, 46, 51, 0.1) !important;
}

.cm-page .section-tabs a,
.cm-page .cm-nav a {
  font-family: 'Commissioner', sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  font-size: 10px !important;
  color: #546163 !important;
}

/* Shore theme: search section styling */
.cm-page #cm-search .search-filters select,
.cm-page #cm-search .search-filters input {
  border-radius: 0 !important;
  border: 1px solid rgba(11, 46, 51, 0.2) !important;
  font-family: 'Commissioner', sans-serif !important;
}

.cm-page #cm-search button,
.cm-page .search-btn {
  border-radius: 0 !important;
  background-color: #0B2E33 !important;
  color: #F1F2E9 !important;
  font-family: 'Commissioner', sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
}

/* Shore theme: newsletter section */
.cm-page .newsletter-cta input[type="email"] {
  border-radius: 0 !important;
  border: 1px solid rgba(241, 242, 233, 0.3) !important;
  background: rgba(255,255,255,0.1) !important;
  color: #F1F2E9 !important;
  font-family: 'Commissioner', sans-serif !important;
}

.cm-page .newsletter-cta button {
  border-radius: 0 !important;
  background: #F1F2E9 !important;
  color: #0B2E33 !important;
  font-family: 'Commissioner', sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
}

/* Shore theme: about section consistency */
.cm-page .about-photo {
  border-radius: 0 !important;
}

.cm-page .about-section .btn-outline,
.cm-page .about-section a {
  border-radius: 0 !important;
}

/* Shore theme: event card styling */
.cm-page .event-card {
  border-radius: 0 !important;
  border-left: 3px solid #0B2E33 !important;
}

/* Shore theme: market stat cards */
.cm-page .market-stat-card {
  border-radius: 0 !important;
  border-top: 2px solid #0B2E33 !important;
}

/* Hide the cm-page internal footer (Shore theme provides its own) */
.cm-page .cm-footer,
.cm-page .cm-page-footer,
.cm-page > footer {
  display: none !important;
}

/* Shore theme: consistent link styling */
.cm-page a.view-all,
.cm-page a.section-link {
  font-family: 'Commissioner', sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  font-size: 11px !important;
  color: #0B2E33 !important;
  border-bottom: 1px solid #0B2E33 !important;
  text-decoration: none !important;
}

/* Ensure the .cm-page top bar with agent info matches Shore */
.cm-page .top-bar {
  display: none !important;
}


/* ===== PLACEHOLDER TEXT FIXES ===== */

/* Hide "Photo Placeholder" text in image divs (bg images are set via CSS) */
.cm-page .dining-card-img,
.cm-page .blog-card-img,
.cm-page .spotlight-img,
.cm-page .about-photo {
  font-size: 0 !important;
  color: transparent !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
}

/* Spotlight image sizing */
.cm-page .spotlight-img {
  min-height: 320px !important;
  background-size: cover !important;
  background-position: center !important;
  border-radius: 0 !important;
}

/* Ensure about-photo has proper sizing */
.cm-page .about-photo {
  min-height: 340px !important;
  background-size: cover !important;
  background-position: center !important;
  border-radius: 0 !important;
}


/* ===== SHORE THEME FEEL: EDITORIAL SPACING & LAYOUT ===== */

/* Section padding: match Shore's generous whitespace */
.cm-page .section-pad,
.cm-page section {
  padding: 100px 0 !important;
}

/* Section headers: centered, larger, editorial */
.cm-page .section-header {
  text-align: center !important;
  max-width: 700px !important;
  margin: 0 auto 60px auto !important;
  padding: 0 24px !important;
}

/* Section tag (EXPLORE CAPE MAY, etc): match Shore's subtle label style */
.cm-page .section-tag {
  font-family: 'Commissioner', sans-serif !important;
  font-size: 12px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #0B2E33 !important;
  opacity: 0.6 !important;
  margin-bottom: 20px !important;
  display: block !important;
  text-align: center !important;
}

/* Section title: match Shore's H2 */
.cm-page .section-title {
  font-family: 'Spectral', serif !important;
  font-size: 42px !important;
  font-weight: 400 !important;
  color: #0B2E33 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.5px !important;
  margin-bottom: 20px !important;
  text-align: center !important;
}

/* Section description: larger, centered, editorial */
.cm-page .section-desc {
  font-family: 'Spectral', serif !important;
  font-size: 18px !important;
  line-height: 1.7 !important;
  color: #546163 !important;
  max-width: 600px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

/* Thin line divider between sections (Shore style) */
.cm-page section + section::before,
.cm-page .section-pad + .section-pad::before {
  content: '' !important;
  display: block !important;
  width: 1px !important;
  height: 60px !important;
  background-color: #0B2E33 !important;
  opacity: 0.15 !important;
  margin: -50px auto 50px auto !important;
}

/* Don't add divider before dark sections */
.cm-page #cm-market::before,
.cm-page #ww-market::before,
.cm-page .newsletter-cta::before {
  display: none !important;
}

/* Intro bar: more refined, Shore-like */
.cm-page .intro-bar {
  padding: 56px 48px !important;
  text-align: center !important;
}

.cm-page .intro-stat-number {
  font-family: 'Spectral', serif !important;
  font-size: 36px !important;
  font-weight: 300 !important;
  letter-spacing: -0.5px !important;
}

.cm-page .intro-stat-label {
  font-family: 'Commissioner', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  opacity: 0.7 !important;
  margin-top: 8px !important;
}

/* Hood card grid: more breathing room */
.cm-page .hood-grid {
  gap: 12px !important;
  padding: 0 48px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}

/* Hood cards: slightly taller for more drama */
.cm-page .hood-card {
  min-height: 320px !important;
}
.cm-page .hood-card.featured {
  min-height: 420px !important;
}

/* Card content padding */
.cm-page .hood-card-content {
  padding: 28px !important;
}

.cm-page .hood-card-name {
  font-family: 'Spectral', serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

.cm-page .hood-card-tags {
  font-family: 'Commissioner', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 1px !important;
  opacity: 0.75 !important;
  margin-top: 6px !important;
}

/* Dining grid: more space */
.cm-page .dining-grid {
  gap: 24px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 48px !important;
}

.cm-page .dining-card {
  border-radius: 0 !important;
  overflow: hidden !important;
  box-shadow: none !important;
  border: none !important;
}

.cm-page .dining-card-name {
  font-family: 'Spectral', serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
}

.cm-page .dining-card-category {
  font-family: 'Commissioner', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #0B2E33 !important;
  opacity: 0.5 !important;
}

.cm-page .dining-card-desc {
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* Blog grid: more space */
.cm-page .blog-grid {
  gap: 32px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 48px !important;
}

.cm-page .blog-card-title {
  font-family: 'Spectral', serif !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
}

.cm-page .blog-card-excerpt {
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* Market section: more elegant */
.cm-page #cm-market .section-tag,
.cm-page #ww-market .section-tag {
  color: #F1F2E9 !important;
  opacity: 0.5 !important;
}

.cm-page #cm-market .section-title,
.cm-page #ww-market .section-title {
  color: #F1F2E9 !important;
}

.cm-page .market-stat-value {
  font-family: 'Spectral', serif !important;
  font-size: 36px !important;
  font-weight: 300 !important;
}

/* Events: cleaner layout */
.cm-page .event-grid,
.cm-page .event-list {
  max-width: 900px !important;
  margin: 0 auto !important;
  padding: 0 48px !important;
}

.cm-page .event-name {
  font-family: 'Spectral', serif !important;
  font-size: 20px !important;
  font-weight: 400 !important;
}

/* About section: editorial */
.cm-page .about-section,
.cm-page #cm-about,
.cm-page #ww-about {
  max-width: 1100px !important;
  margin: 0 auto !important;
}

.cm-page .about-title {
  font-family: 'Spectral', serif !important;
  font-size: 32px !important;
  font-weight: 400 !important;
}

.cm-page .about-content {
  font-size: 17px !important;
  line-height: 1.8 !important;
}

/* Newsletter: refined */
.cm-page .newsletter-cta {
  padding: 80px 48px !important;
  text-align: center !important;
}

.cm-page .newsletter-cta h2,
.cm-page .newsletter-cta .section-title {
  color: #F1F2E9 !important;
  font-size: 36px !important;
  font-weight: 300 !important;
}

/* Spotlight section: editorial */
.cm-page .spotlight-card {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 0 48px !important;
}

/* View All / CTA links: Shore style underline links */
.cm-page a[class*="view"],
.cm-page a[class*="btn-outline"] {
  font-family: 'Commissioner', sans-serif !important;
  font-size: 12px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
}

/* Search section: more refined */
.cm-page #cm-search .container,
.cm-page #ww-search .container {
  max-width: 900px !important;
  margin: 0 auto !important;
}

/* Container max-width for content sections */
.cm-page section .container {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 48px !important;
}


/* ── Dining Category Labels ── */
.dining-category-label {
  grid-column: 1 / -1;
  font-family: var(--heading-font, 'Playfair Display', serif);
  font-size: 1.35rem;
  font-weight: 600;
  color: var(--dark, #1a2a3a);
  letter-spacing: 0.03em;
  padding: 18px 0 8px;
  margin-top: 12px;
  border-bottom: 2px solid var(--sand, #c9b99a);
}
.dining-category-label:first-child {
  margin-top: 0;
  padding-top: 0;
}

/* ── Dining Contact Line ── */
.dining-card-contact {
  font-size: 0.82rem;
  color: #7a8a9a;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(0,0,0,0.06);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}
.dining-card-contact a.dining-contact-ig {
  color: var(--sand, #c9b99a);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.2s;
}
.dining-card-contact a.dining-contact-ig:hover {
  color: var(--accent, #b8926a);
}
.dining-contact-phone {
  color: #7a8a9a;
}
/* ── Fix: show descriptions on dining cards ── */
.cm-page .dining-card > p.dining-card-desc {
  display: block !important;
}

/* ── Fix: dining card overlap from WP HTML restructuring ── */
.cm-page .dining-card-body > a.dining-card {
  display: block !important;
  text-decoration: none;
  color: inherit;
}
.cm-page .dining-grid > a.dining-card {
  display: none !important;
}
.cm-page .dining-grid > p:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ── Fix: show full card content inside restructured body ── */
.cm-page .dining-card-body > a.dining-card {
  overflow: visible !important;
  height: auto !important;
}
.cm-page .dining-card-body > a.dining-card > p.dining-card-desc {
  height: auto !important;
  display: block !important;
}

/* === Dining Guide Page (page 310) - Span-based card fix === */
body.page-id-310 .cm-page .dining-grid > a.dining-card {
  display: block !important;
}
body.page-id-310 .cm-page .dining-card span.dining-card-img {
  display: block !important;
  height: 200px;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
body.page-id-310 .cm-page .dining-card span.dining-card-body {
  display: block !important;
  padding: 24px;
}
body.page-id-310 .cm-page .dining-card span.dining-card-category {
  display: block !important;
}
body.page-id-310 .cm-page .dining-card span.dining-card-name {
  display: block !important;
  font-weight: 600;
}
body.page-id-310 .cm-page .dining-card span.dining-card-desc {
  display: block !important;
}
body.page-id-310 .cm-page .dining-card span.dining-card-contact {
  display: block !important;
  margin-top: 12px;
}
/* Hide orphaned Instagram links pulled out by WordPress */
body.page-id-310 .cm-page .dining-grid > a.dining-contact-ig {
  display: none !important;
}
/* Hide old restructured elements on dining page */
body.page-id-310 .cm-page .dining-grid > .dining-card-body {
  display: none !important;
}