/* ============================================
   ROOT VARIABLES (Single source of truth)
   ============================================ */
:root {
  	/* Colors */
  	--color-primary: #2A3D28;
  	--color-secondary: #394A37;
  	--color-accent: #C07A52;
  	--color-text: #2C3E40;
  	--color-text-light: #F4F6F5;
  	--color-bg: #FFFFFF;
  	--color-bg-alt: #F4F6F5;
  	--color-border: #E0E5E3;
  	--color-success: #6B8F71;
  
  	/* Typography - Desktop-first (larger on desktop, scales down on mobile) */
  	--text-xs: clamp(0.75rem, 1vw, 0.875rem);
  	--text-sm: clamp(0.875rem, 1.2vw, 1rem);
  	--text-base: clamp(1rem, 1.4vw, 1.125rem);
  	--text-md: clamp(1.125rem, 1.6vw, 1.25rem);
 	--text-lg: clamp(1.25rem, 1.8vw, 1.5rem);
  	--text-xl: clamp(1.5rem, 2.2vw, 1.75rem);
  	--text-2xl: clamp(1.75rem, 2.5vw, 2rem);
  	--text-3xl: clamp(2rem, 3vw, 2.5rem);
	--text-highlight: clamp(2.25rem, 3.5vw, 3rem);
	
  
  	/* Spacing - Desktop-first (larger on desktop, scales down on mobile) */
  	--space-xs: clamp(0.5rem, 0.8vw, 0.75rem);
  	--space-sm: clamp(0.75rem, 1.2vw, 1rem);
  	--space-md: clamp(1rem, 1.6vw, 1.25rem);
  	--space-lg: clamp(1.25rem, 2vw, 1.5rem);
  	--space-xl: clamp(1.5rem, 2.5vw, 2rem);
  	--space-2xl: clamp(2rem, 3vw, 2.5rem);
  	--space-3xl: clamp(2.5rem, 4vw, 3.5rem);
  
  	/* Layout */
  	--container-max: 1440px;
  	--radius-sm: 4px;
  	--radius-md: 8px;
  	--radius-lg: 16px;
  	--radius-xl: 24px;
  
  	/* Effects */
  	--shadow-sm: 0 1px 3px rgba(0,0,0,0.1);
  	--shadow-md: 0 4px 12px rgba(0,0,0,0.1);
  	--shadow-lg: 0 8px 24px rgba(0,0,0,0.1);
  	--transition: all 0.3s ease;
}

/* ============================================
   RESET & BASE
   ============================================ */
* {
  	margin: 0;
  	padding: 0;
  	box-sizing: border-box;
}

body {
  	font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  	font-size: var(--text-base);
  	font-weight: 450;
  	color: var(--color-text);
  	background: var(--color-bg);
  	line-height: 1.6;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  	font-family: 'Instrument Serif', Georgia, serif;
  	font-weight: 600;
  	line-height: 1.2;
  	color: var(--color-primary);
	margin-bottom: 0.25rem;
}

h1 { font-size: var(--text-3xl); }
h2 { font-size: var(--text-2xl); }
h3 { font-size: var(--text-xl); }
h4 { font-size: var(--text-lg); }

/* Links */
a {
  	color: var(--color-primary);
  	text-decoration: none;
  	transition: var(--transition);
}

a:hover {
  	color: var(--color-accent);
}

/* List */
ul {
	margin: var(--space-md) 0 0 0.25rem;
}
ul li:not(:last-child) {
	padding-bottom: 0.5rem;
}

/* ============================================
   DIVI OVERRIDES
   ============================================ */
/* Remove Divi's default top padding */
#page-container {
/*   padding-top: 0 !important; */
}

/* Make Divi sections respect our spacing */
.et_pb_section {
  	padding: var(--space-3xl) 0;
}

/* Responsive row max-width */
.et_pb_row {
  	max-width: var(--container-max) !important;
  	width: 90% !important;
}
@media (max-width: 767px) {
  	.et_pb_column .et_pb_module {
		margin-bottom: var(--space-sm);
	}
  	.et_pb_row {
    	width: 100% !important;
    	padding: var(--space-md);
  	}
}

/* Button Styles */
.emp-btn,
.et_pb_button_module_wrapper .et_pb_button {
	display: inline-block;
	border: 1px solid var(--color-text-light) !important;
	border-radius: 50px;
	color: var(--color-text-light);
	font-size: var(--text-base);
	font-weight: 300;
	padding: 0.5rem 1.75rem !important;
	text-transform: uppercase;
	transition: var(--transition);
}
.emp-btn:hover,
.et_pb_button_module_wrapper .et_pb_button:hover {
	background: var(--color-accent);
	border-color: var(--color-accent) !important;
	color: var(--color-text-light) !important;
	padding: 0.5rem 1.75rem !important;
}
.et_pb_button_module_wrapper .et_pb_button.emp-btn-alt {
	border-color: var(--color-primary) !important;
	color: var(--color-primary) !important;
}
.et_pb_button_module_wrapper .et_pb_button.emp-btn-alt:hover {
	background: var(--color-primary);
	color: var(--color-text-light) !important;
}

/* ============================================
   FIXED TRANSPARENT HEADER
   ============================================ */
#emp-header {
	position: fixed !important;
  	top: 0 !important;
  	left: 0 !important;
  	width: 100% !important;
  	z-index: 99999 !important;
  	background: transparent !important;
  	transition: all 0.3s ease !important;
  	box-shadow: none !important;
}
#emp-header .header-wrap {
	display: grid;
	grid-template-columns: 250px 1fr 250px;
	gap: var(--space-lg);
	align-items: center;
}

/* When scrolled - add background */
body.scrolled #emp-header {
  	background: var(--color-primary) !important;
  	box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08) !important;
}

/* Ensure logo and menu stay visible on transparent background */
#emp-header .et_pb_image img {
  	max-height: 50px;
  	width: auto;
}
#emp-header .et-menu-nav li a {
  	color: var(--color-bg);
	font-size: var(--text-base);
  	font-weight: 500;
}
#emp-header .et-menu-nav li.current-menu-item a {
	color: var(--color-accent);
}
#emp-header .et_pb_button_module_wrapper {
	justify-self: flex-end;
}

/* Responsive Header */
@media (max-width: 1024px) {
	#emp-header .header-wrap {
		grid-template-columns: 200px 1fr 200px;	
	}
  	#emp-header .et-menu-nav li a {
    	font-size: var(--text-xs);
  	}
}
@media (max-width: 980px) {
	#emp-header .header-wrap {
		grid-template-columns: 1fr 2fr;
		justify-content: space-between !important;
	}
	#emp-header .et_pb_menu .et_pb_menu__wrap {
		justify-content: flex-end;
	}
  	#emp-header .mobile_nav .mobile_menu_bar::before {
    	color: var(--color-bg);
  	}
	#emp-header .et_pb_button_module_wrapper {
		display: none;
	}
	#emp-header .et_mobile_menu {
		background: rgba(255, 255, 255, 0.9) !important;
		margin: 0.75rem 0 0;
		position: absolute;
		right: 0;
		left: auto;
		width: 320px;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
	}
	#emp-header .et_mobile_menu li a {
		color: var(--color-primary) !important;
		font-size: var(--text-md);
	}
}
@media (max-width: 767px) {
	#emp-header .et_mobile_menu {
		width: 92vw !important;
		padding: var(--space-lg) 0;
	}
}

/* ============================================
   HOMEPAGE HERO BANNER
   ============================================ */
#emp-hero {
  	height: 100vh;
  	display: flex;
  	align-items: center;
}
#emp-hero .et_pb_row {
  	max-width: 700px !important;
}
#emp-hero .et_pb_text {
	font-size: var(--text-md);
  	text-align: center;
}
#emp-hero .et_pb_text h1 {
	color: var(--color-text-light);
	font-size: var(--text-highlight);
	font-weight: 500;
	text-shadow: var(--shadow-sm);
}
#emp-hero .et_pb_button {
  	border-color: var(--color-bg);
  	color: var(--color-bg);
  	margin-top: var(--space-md);
}

/* Responsive adjustment */
@media (max-width: 767px) {
  	#emp-hero {}
}

/* ============================================
   SECTION TITLE
   ============================================ */
.et_pb_text.emp-section-title {
   	max-width: 800px;
   	margin: 0 auto;
   	text-align: center;
}
.et_pb_text.emp-section-title h2 {
	font-size: var(--text-3xl);
	font-weight: 500;
	margin-bottom: var(--space-xs);
	text-shadow: var(--shadow-sm);
}
.et_pb_text.emp-section-title p {
	font-size: var(--text-md);
}
/* Section Title ALT */
.et_pb_text.emp-section-title.alt h2,
.et_pb_text.emp-section-title.alt p {
	color: var(--color-text-light);
}

/* ============================================
   2 GRID ROW LAYOUT
   ============================================ */
.grid-2-row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--space-xl);
}

/* ============================================
   3 GRID ROW LAYOUT
   ============================================ */
.grid-3-row {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(355px, 1fr));
	gap: var(--space-xl);
}

/* ============================================
   4 GRID ROW LAYOUT
   ============================================ */
.grid-4-row {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--space-xl);
}

/* Responsive */
@media (max-width: 980px) {
  	.grid-2-row {
    	grid-template-columns: 1fr;
  	}
	.grid-4-row {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 767px) {
	.grid-4-row {
		grid-template-columns: 1fr;
	}
}

/* ============================================
   FLEX WRAP
   ============================================ */
.emp-flex-wrap {
	display: flex;
	gap: var(--space-sm);
}
@media (max-width: 767px) {
	.emp-flex-wrap {
		flex-direction: column;
		gap: 0.5rem;
	}
}

/* Padding Neutral */
.neutral {
	padding: 0;
}

/* ============================================
   ESCAPEMIND HOME SERVICES
   ============================================ */
#emp-services .et_pb_text h2 {
	font-size: var(--text-highlight);
}
#emp-services .et_pb_text p {
	font-size: var(--text-md);
	margin-top: var(--space-xs);
}
#emp-services .et_pb_button_module_wrapper .et_pb_button {
	margin-top: var(--space-xs);
}

/* Service Toggle */
.et_pb_toggle {
	background: transparent;
	border: 0;
	border-top: 1px solid var(--color-primary);
	margin: 0 !important;
	padding: var(--space-md) 0;
}
.et_pb_toggle:last-of-type {
	border-bottom: 1px solid var(--color-primary);
}
.et_pb_toggle .et_pb_toggle_title {
	color: var(--color-primary) !important;
	font-size: var(--text-md);
	font-weight: 500;
}
.et_pb_toggle .et_pb_toggle_title::before {
	color: var(--color-primary);
	font-size: 1.5rem;
}
.et_pb_toggle .et_pb_toggle_content {
	color: var(--color-primary);
	font-size: var(--text-md);
}

/* ============================================
   ESCAPEMIND ABOUT US
   ============================================ */
#emp-about .et_pb_text,
#emp-about .et_pb_text h2, h5 {
	color: var(--color-text-light);
}
#emp-about .et_pb_text h2 {
	font-size: var(--text-3xl);
	font-weight: 500;
	text-shadow: var(--shadow-sm);
}
#emp-about .et_pb_text h5 {
	font-weight: 500;
}
#emp-about .et_pb_text ul {
	list-style: none;
	margin: var(--space-xs) 0 0;
}
#emp-about .et_pb_text ul li span {
	margin-right: 0.25rem;
}

/* ============================================
   ESCAPEMIND ABOUT SKILL
   ============================================ */
#emp-skill .et_pb_blurb {
	background: linear-gradient(to right, #222, var(--color-secondary));
	padding: var(--space-xl) var(--space-lg);
	margin: 0;
	border-radius: var(--radius-lg);
}
#emp-skill .et_pb_blurb .et_pb_main_blurb_image {
	margin-bottom: var(--space-lg);
}
#emp-skill .et_pb_blurb .et_pb_main_blurb_image .et-pb-icon {
	color: var(--color-text-light);
	font-size: var(--text-lg);
}
#emp-skill .et_pb_blurb .et_pb_blurb_container h4.et_pb_module_header {
	font-weight: 500;
	text-shadow: var(--shadow-sm);
}
#emp-skill .et_pb_blurb .et_pb_blurb_container .et_pb_blurb_description {
	font-size: var(--text-md);
	font-weight: 500;
}

/* ============================================
   ESCAPEMIND INSURANCE
   ============================================ */
#emp-insurance {
	height: auto;
	min-height: 80vh;
	display: flex;
	align-items: center;
}
#emp-insurance .et_pb_text {
	max-width: 1000px;
	margin: 0 auto;
	text-align: center;
}
#emp-insurance .et_pb_text h2 {
	color: var(--color-text-light);
	font-size: var(--text-3xl);
}
#emp-insurance .et_pb_text p {
	color: var(--color-text-light);
	font-size: var(--text-md);
	margin-top: var(--space-xs);
}
/* Responsive */
@media (max-width: 980px) {
	#emp-insurance {
		min-height: 60vh;
	}
}

/* ============================================
   ESCAPEMIND APPOINTMENTS
   ============================================ */
#emp-appointments .grid-2-row .et_pb_text {
	background-image: linear-gradient(#222, var(--color-secondary));
	border: 0.1rem solid var(--color-text-light);
	color: var(--color-text-light);
	font-size: var(--text-base);
	padding: var(--space-xl);
	margin: 0;
	border-radius: var(--radius-lg);
}
#emp-appointments .grid-2-row .et_pb_text h3 {
	color: var(--color-text-light);
	font-weight: 600;
	text-shadow: var(--shadow-sm);
}
#emp-appointments .grid-2-row .et_pb_text ul {
	border-top: 0.1rem solid var(--color-text-light);
	margin: var(--space-sm) 0 0;
	padding: var(--space-sm) 0 0;
	list-style: none;
	opacity: 0.8;
	display: flex;
	gap: var(--space-xs);
}
#emp-appointments .grid-2-row .et_pb_text ul li {
	font-size: var(--text-sm);
	font-weight: 500;
}
#emp-appointments .grid-2-row .et_pb_text ul li:not(:last-child)::after {
	content: "·";
	display: inline-block;
	margin-left: var(--space-xs);
}
/* Responsive */
@media (max-width: 980px) {
	#emp-appointments .grid-2-row .et_pb_text ul {
		display: block;
	}
}

/* ============================================
   ESCAPEMIND TREAT CONDITION
   ============================================ */
#emp-we-treat .treat-row .grid-2-row {
	gap: var(--space-3xl);
}
#emp-we-treat .treat-row .et_pb_text {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.2);  
  	backdrop-filter: blur(15px); 
  	-webkit-backdrop-filter: blur(15px); /* Safari support */
	padding: var(--space-xl);
	margin: 0;
	border-radius: var(--radius-xl); 
	box-shadow: var(--shadow-lg);
}
#emp-we-treat .treat-row .et_pb_text h2 {
	color: var(--color-text-light);
	font-weight: 550;
	text-shadow: var(--shadow-sm);
}
#emp-we-treat .treat-row .et_pb_text ul {
	margin: var(--space-md) 0 0 var(--space-sm);
}
#emp-we-treat .treat-row .et_pb_text ul li {
	color: var(--color-bg);
	font-size: var(--text-md);
	text-shadow: var(--shadow-sm);
}
#emp-we-treat .treat-row .et_pb_text ul li:not(:last-child) {
	margin-bottom: var(--space-xs);
}

/* Responsive */
@media (max-width: 980px) {
	#emp-we-treat .treat-row .grid-2-row {
		gap: var(--space-xl);
	}
}

/* ============================================
   ESCAPEMIND PRICING
   ============================================ */
.emp-pricing .grid-2-row .et_pb_text,
.emp-pricing .grid-4-row .et_pb_text {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.2);  
  	backdrop-filter: blur(15px); 
  	-webkit-backdrop-filter: blur(15px); /* Safari support */
	border-radius: var(--radius-lg);
	color: var(--color-text-light);
	margin: 0;
	padding: var(--space-2xl) var(--space-md);
	text-align: center;
	box-shadow: var(--shadow-md);
}
.emp-pricing .grid-2-row .et_pb_text {
	padding: var(--space-2xl) var(--space-xl);
}
.emp-pricing .grid-2-row .et_pb_text p.price,
.emp-pricing .grid-4-row .et_pb_text p.price {
	font-size: 3rem;
	padding: 0;
}
.emp-pricing .grid-2-row .et_pb_text p.price::before,
.emp-pricing .grid-4-row .et_pb_text p.price::before {
	content: "\24";
	display: inline-block;
	font-family: "Font Awesome 7 Free";
}
.emp-pricing .grid-2-row .et_pb_text p.duration,
.emp-pricing .grid-4-row .et_pb_text p.duration {
	font-size: var(--text-lg);
	margin: var(--space-md) 0 var(--space-xl);
	padding: 0;
}
.emp-pricing .grid-2-row .et_pb_text p.duration {
	margin: var(--space-md) 0;
}
.emp-pricing .grid-2-row .et_pb_text p.duration::before,
.emp-pricing .grid-4-row .et_pb_text p.duration::before {
	content: "\f34e";
	display: inline-block;
	font-family: "Font Awesome 7 Free";
	margin-right: var(--space-xs);	
}
.emp-pricing .grid-2-row .et_pb_text h3,
.emp-pricing .grid-4-row .et_pb_text h3 {
	color: var(--color-text-light);
	font-size: var(--text-md);
	font-weight: 600;
	line-height: 1.3;
	text-shadow: var(--shadow-sm);
}
.emp-pricing .grid-2-row .et_pb_text h3 {
	font-size: var(--text-2xl);
}
.emp-pricing .grid-2-row .et_pb_text p.desc,
.emp-pricing .grid-4-row .et_pb_text p.desc {
	margin: var(--space-lg) 0 0;
}

/* ============================================
   ESCAPEMIND WHAT TO BRING
   ============================================ */
.emp-bring .et_pb_text h2 {
	color: var(--color-text-light);
	font-size: var(--text-3xl);
}
.emp-bring .et_pb_text ul {
	color: var(--color-text-light);
	margin: var(--space-md) 0 0;
	padding: 0;
	list-style: none;
}
.emp-bring .et_pb_text ul li:not(:last-child) {
	margin-bottom: var(--space-xs);
}
.emp-bring .et_pb_text ul li {
	font-size: var(--text-md);
}
.emp-bring .et_pb_text ul li span {
	margin-left: var(--space-xs);
	line-height: 1.3;
}

/* ============================================
   ESCAPEMIND TESTIMONIALS
   ============================================ */
#emp-testimonial .et_pb_testimonial {
	background: var(--color-bg-alt);
	margin: 0;
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-lg);
}
#emp-testimonial .et_pb_testimonial .et_pb_testimonial_content {
	font-size: var(--text-base);
}
#emp-testimonial .et_pb_testimonial .et_pb_testimonial_author {
	font-size: var(--text-md);
}

/* ============================================
   ESCAPEMIND FAQ
   ============================================ */
#emp-faq .et_pb_text h2 {
	font-size: clamp(2rem, 4vw, 3rem);
	text-transform: capitalize;
	text-shadow: var(--shadow-sm);
}

/* ============================================
   ESCAPEMIND FOOTER
   ============================================ */
#emp-footer .et_pb_text h2 {
   	color: var(--color-text-light);
	font-weight: 550;
}
#emp-footer .et_pb_image .et_pb_image_wrap {
   	max-width: 250px;
}
#emp-footer .et_pb_text p {
	color: var(--color-text-light);
	font-size: var(--text-sm);
}
#emp-footer .et_pb_text span {
  	opacity: 0.6;
}
#emp-footer .et_pb_text ul {
	list-style: none;
  	margin: 0;
  	padding: 0;
}
#emp-footer .et_pb_text ul li a {
	color: var(--color-text-light);
	font-size: var(--text-sm);
}
#emp-footer .et_pb_text ul li a:hover {
  	color: var(--color-accent);
}
#emp-footer .et_pb_text.footer-social ul {
  	display: flex;
  	gap: var(--space-sm);
}
#emp-footer .et_pb_text.footer-social ul li {
  	margin-bottom: 0;
}
#emp-footer .et_pb_text.footer-social ul li i {
  	font-size: var(--text-md);
}

/* Footer Disclaimer */
#emp-footer .footer-disclaimer {
  	display: grid;
  	grid-template-columns: repeat(2, 1fr);
  	gap: var(--space-md);
}
#emp-footer .et_pb_blurb {
  	background: var(--color-primary);
  	margin: 0;
  	padding: 0 var(--space-md);
}
#emp-footer .et_pb_blurb .et_pb_image_wrap span.et-waypoint {
	color: yellow;
	font-size: 1.5rem;
}
#emp-footer .et_pb_blurb h4.et_pb_module_header {
  	font-size: 1rem;
  	margin: 0;
}
#emp-footer .et_pb_blurb .et_pb_blurb_description {
  	font-size: 0.625rem;
}

/* EscapeMind Footer Images */
#footer-image-wrap {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: var(--space-xl);
	justify-content: center;
	align-items: center;
}
#footer-image-wrap .et_pb_image {
	margin: 0;
	width: 200px;
	height: auto;
}
#footer-image-wrap .et_pb_image img {
	object-fit: cover;
}
#footer-image-wrap .et_pb_image:nth-child(3),
#footer-image-wrap .et_pb_image:nth-child(4),
#footer-image-wrap .et_pb_image:nth-child(5) {
	width: 150px;
}

/* EscapeMind Footer Bottom */
#emp-footer-bottom {
  	margin: 0;
  	padding: var(--space-lg) 0;
}
#emp-footer-bottom .et_pb_text {
  	color: var(--color-text-light);
  	font-size: 0.75rem;
}
#emp-footer-bottom .et_pb_text ul {
  	margin: 0;
  	padding: 0;
  	list-style-type: none;
  	display: flex;
  	gap: var(--space-xs);
  	justify-content: flex-end;
}
#emp-footer-bottom .et_pb_text ul li a {
  	color: var(--color-text-light);
}
#emp-footer-bottom .et_pb_text ul li a:hover {
  	color: var(--color-accent);
}

/* Responsive Footer */
@media (max-width: 1024px) {
  	#emp-footer-bottom .et_pb_text ul {
	 	display: grid;
	 	grid-template-columns: repeat(auto-fit, minmax(182px, 1fr));
	 	gap: 0;
  	}
}
/* Medium Device */
@media (max-width: 980px) {
  	#emp-footer .et_pb_image .et_pb_image_wrap {
    	max-width: 200px;
  	}
  	#emp-footer .footer-disclaimer {
    	grid-template-columns: 1fr;
    	margin-top: var(--space-lg);
  	}
	#footer-image-wrap {
		grid-template-columns: repeat(3, 1fr);
		gap: var(--space-sm);
	}
}
/* Small Device */
@media (max-width: 767px) {
	#footer-image-wrap .et_pb_image {
		width: 100px !important;
	}
}

/* ============================================
   ESCAPEMIND PAGE BANNER
   ============================================ */
.page-banner {
	width: 100%;
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
}
.page-banner .et_pb_text {
	color: var(--color-text-light);
	margin-top: 25vh;
	max-width: 800px;
}
.page-banner .et_pb_text h1 {
	color: var(--color-text-light);
	font-size: var(--text-highlight);
	font-weight: 500;
	margin-bottom: var(--space-sm);
	text-shadow: var(--shadow-md);
}
.page-banner .et_pb_text p:first-of-type {
	font-size: var(--text-md);
	font-weight: 500;
	text-shadow: var(--shadow-sm);
}
.page-banner .et_pb_text ul {
	margin: var(--space-xl) 0 0;
	padding: 0;
	list-style-type: none;
	display: flex;
	gap: var(--space-md);
}
.page-banner .et_pb_text ul li {
	padding: 0;
}

/* Responsive */
@media (max-width: 767px) {
	.page-banner .et_pb_text {
		margin-top: 10vh;
	}
	.page-banner .et_pb_text ul {
		flex-direction: column;
	}
}

/* ============================================
   	SECTION CONTENT STYLES GENERIC
   ============================================ */
.et_pb_text.section-highlight h2 {
	font-size: var(--text-3xl);
	font-weight: 500;
	margin-bottom: var(--space-sm);
	text-shadow: var(--shadow-sm);
}
.et_pb_text.section-highlight p,
.et_pb_text.section-highlight ul li {
	font-size: var(--text-md);
}
.et_pb_text.section-highlight p.neutral {
	font-weight: 500;
}
.et_pb_text.section-highlight p span {
	font-weight: 500;
	margin-right: 0.25rem;
}

/* Responsive */
@media (max-width: 980px) {
	#clinical-background .et_pb_text p {
		max-width: 100%;
	}
}

/* ============================================
   PROVIDER WHOS SEES PERSON (Our Provider Page)
   ============================================ */
#provider-person .et_pb_text h2 {
	font-size: var(--text-3xl);
	margin-bottom: var(--space-sm);
}

/* ============================================
   TREATMENT PHILOSOPHY (Our Provider Page)
   ============================================ */
#treatment-philosophy .grid-2-row .et_pb_text {
	background-image: linear-gradient(to top, var(--color-secondary), #222);
	border-radius: var(--radius-lg);
	color: var(--color-text-light);
	margin: 0;
	padding: var(--space-xl);
}
#treatment-philosophy .grid-2-row .et_pb_text h3 {
	color: var(--color-text-light);
	font-weight: 600;
	text-shadow: var(--shadow-sm);
}

/* ============================================
   CALL TO ACTION
   ============================================ */
.cta .et_pb_text {
	max-width: 980px;
	margin: 0 auto;
	text-align: center;
}
.cta .et_pb_text h2 {
	font-size: var(--text-3xl);
	font-weight: 600;
	margin-bottom: var(--space-sm);
	text-shadow: var(--shadow-sm);
}
.cta .et_pb_text p {
	font-size: var(--text-md);
}
.cta .et_pb_text.text-warning {
	background: var(--color-primary);
	border-radius: var(--radius-md);
	color: var(--color-text-light);
	margin-top: var(--space-lg);
	max-width: 600px;
	padding: var(--space-md);
	padding-left: var(--space-2xl);
}
.cta .et_pb_text.text-warning p {
	font-size: var(--text-sm);
	position: relative;
	text-align: left;
}
.cta .et_pb_text.text-warning p::before {
	content: "\f071";
	color: yellow;
	font-family: "Font Awesome 7 Free";
	font-size: var(--text-base);
	font-weight: 600;
	position: absolute;
	left: -1.5rem;
	top: 0;
}
/* Responsive */
@media (max-width: 980px) {
	.cta .et_pb_button_module_wrapper {
		margin-top: var(--space-md);
	}
}

/* ============================================
   	GLASS BACKGROUND STYLE
   ============================================ */
 .et_pb_text.glass-bg {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: var(--radius-lg);
  	backdrop-filter: blur(15px); 
  	-webkit-backdrop-filter: blur(15px); /* Safari support */
	padding: var(--space-xl);
}
.et_pb_text.glass-bg h2 {
	font-weight: 600;
	text-shadow: var(--shadow-sm);
}
.et_pb_text.glass-bg p:nth-of-type(2) {
	padding: 0;
}
.et_pb_text.glass-bg p span {
	display: block;
	font-size: var(--text-md);
	font-weight: 500;	
}

/* ============================================
   	APPOINTMENT OPTIONS (Appointment Page)
   ============================================ */
#appointment-options .grid-3-row .et_pb_text h3 {
	text-shadow: var(--shadow-sm);
}
#appointment-options .grid-3-row .et_pb_text p:nth-of-type(2),
#appointment-options .grid-3-row .et_pb_text p:nth-of-type(3) {
	font-weight: 500;
}
#appointment-options .grid-3-row .et_pb_text p:nth-of-type(3) {
	margin: var(--space-sm) 0 0;
}

/* ============================================
   	TELEHEALTH & IN-PERSON VISITS
   ============================================ */
#appointment-options .grid-3-row .et_pb_text,
#telehealth .grid-2-row .et_pb_text {
	margin: 0;
}
#telehealth .grid-2-row .et_pb_text h3 {
	font-size: var(--text-2xl);
	font-weight: 600;
	text-shadow: var(--shadow-sm);
}
#telehealth .grid-2-row .et_pb_text p.location,
#telehealth .grid-2-row .et_pb_text p.parking {
	font-weight: 600;
}
#telehealth .grid-2-row .et_pb_text p.parking {
	margin-top: 0.5rem;
}

/* ============================================
   	ACCEPTED INSURANCE PLANS (Insurance Page)
   ============================================ */
.insurance-plan .image-wrap {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: var(--space-md);
	justify-content: center;
	align-items: center;
}
.insurance-plan .image-wrap .et_pb_image {
	margin: 0;
}
.insurance-plan .et_pb_text.important {
	font-size: var(--space-sm);
	max-width: 800px;
	margin: 0 auto;
	text-align: center;
}

/* ============================================
   	SELF-PAY OPTIONS (Insurance Page)
   ============================================ */
.self-pay .et_pb_text h2,
.question-ask .et_pb_text h2,
.payment-responsibility .et_pb_text h2 {
	font-size: var(--text-3xl);
	font-weight: 500;
	text-shadow: var(--shadow-sm);
}
.self-pay .et_pb_text p:nth-of-type(2) {
	padding: 0;
}

/* ============================================
   	PAYMENT RESPONSIBILITY
   ============================================ */
.payment-responsibility .et_pb_text h2 {
	margin-bottom: var(--space-sm);
}
.payment-responsibility .et_pb_text p {
	font-size: var(--text-md);
}

/* ============================================
   	LOCATION (Location Page)
   ============================================ */
.emp-location .et_pb_text.office-location p {
	font-size: var(--text-xl);
	font-weight: 450;
	text-shadow: --var(--shadow-sm);
}
.emp-location .et_pb_text.office-location ul {
	list-style: none;
	margin-left: 0;
	padding: 0;
}
.emp-location .et_pb_text.office-location ul li:not(:last-child) {
	margin-bottom: 0.5rem;
}
.emp-location .et_pb_text.office-location ul li {
	font-size: var(--space-md);
	position: relative;
	padding-left: var(--space-lg);
}
.emp-location .et_pb_text.office-location ul li:first-child {
	font-weight: 500;
	padding: 0;
	margin-bottom: var(--space-md);
}
.emp-location .et_pb_text.office-location ul li::before {
	display: inline-block;
	font-family: "Font Awesome 7 Free";
	font-size: var(--text-sm);
	font-weight: 600;
	position: absolute;
	left: 0;
	top: 0;
}
.emp-location .et_pb_text.office-location ul li:nth-child(2)::before {
	content: "\f3c5";
}
.emp-location .et_pb_text.office-location ul li:nth-child(3)::before {
	content: "\e527";
}
.emp-location .et_pb_text.office-location ul li:nth-child(4)::before {
	content: "\f34e";
}
.emp-location .et_pb_text.office-location ul li:nth-child(5)::before {
	content: "\f1b9";
}

