html {
	scroll-behavior: smooth;
}

.patient-video-embed iframe {
	width: 100%;
	height: 250px;
	border: 0;
}

body {
	font: 18px/26px "Open Sans", sans-serif;
	color: #000;
	overflow-x: hidden;
}
.recaptcha-wrap {
	max-width: 100%;
	overflow: hidden;
}

@media (max-width: 360px) {
	.recaptcha-wrap .g-recaptcha {
		transform: scale(0.88);
		transform-origin: left top;
		margin-bottom: -9px;
	}
}
@import url('https://fonts.googleapis.com/css2?family=Onest:wght@100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

@font-face {
	font-family: 'brush_script_stdmedium';
	src: url('../webfonts/brushscriptstd-webfont.woff2') format('woff2'),
		url('../webfonts/brushscriptstd-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;

}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "Onest", sans-serif;
}

p {
	font-size: 16px;
	color: #000;
	line-height: 24px;
	font-family: "Open Sans", sans-serif;
}

p a {
	color: #16809f;
	text-decoration: none;
}

p a:hover {
	color: #afd779;
}

img {
	max-width: 100%;
}



ul,
ol {
	list-style: none;
}

#wrapper {
	position: relative;
	width: 100%;

}

.hero-section,
.about-us-section,
.services-section,
.cta-wrap,
.why-choose-section,
.service-areas-section,
.recent-work-section,
.testimonials-section,
.faq-estimate-section,
.blog-listing-section,
.blog-detail-section,
.services-page-intro,
.services-page-list,
.services-page-cta {
	overflow: hidden;
}

#header .logo img {
	display: block;
	max-width: 100%;
	height: auto;
}


#header .nav-align {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

#header .nav-align .navbar {
	padding: 26px 0;
	width: 100%;
}

.header_wrp {
	position: relative;
}

.header_wrp .row {
	z-index: 9;
	position: relative;
}

.azteclogo {
	margin-top: 30px;
}

#header .nav-align .navbar .navbar-nav .nav-item {
	margin: 0 14px;
}

#header .nav-align .navbar .navbar-nav .nav-link {
	font-size: 18px;
	font-weight: 700;
	color: #0b2138;
	padding: 0;
}

#header .nav-align .navbar .navbar-nav .nav-link:hover,
#header .nav-align .navbar .navbar-nav .nav-link.active {
	color: #f1b209;
}

.close-toggler {
	display: none;
}

.navbar-expand-lg .navbar-nav {
	margin-right: 20px;
}

.main-btn a {
	border-radius: 12px;
	padding: 6px 6px 6px 24px;
	border: none;
	background: #afd779;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	font-size: 16px;
	text-transform: uppercase;
	display: inline-block;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
	transition: .3s;
}

.main-btn i {
	margin-left: 12px;
	background: #90b166;
	width: 40px;
	height: 40px;
	border-radius: 8px;
	text-align: center;
	line-height: 40px;
}






.main-btn a:hover {
	background: #91b461;
	color: #fff;
	transform: translateY(-2px);
}

.main-btn a:hover i {
	background: #afd779;
}

#header .right-top {
	border-radius: 0 0 31px 31px;
	background: #000;
	padding: 14px 30px 14px 35px;
}

.bluebtn a {
	background: #16809f;
}

.bluebtn a i {
	background: #166b85;
}

.bluebtn a:hover {
	background: #0f6a85;
}

.bluebtn a:hover i {
	background: #16809f;
}

.lightbluebtn a {
	background: #66bfca;
}

.lightbluebtn a i {
	background: #569da7;
}

.lightbluebtn a:hover {
	background: #4c9da7;
}

.lightbluebtn a:hover i {
	background: #66bfca;
}


#header .right-top .contact {
	display: flex;
	justify-content: space-between;
}

#header .right-top .info,
#header .right-top .social {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	gap: 15px;
	align-items: center;
}

#header .right-top .social {
	gap: 17px;
}

#header .right-top .info a,
#header .right-top .social a {
	text-decoration: none;
	color: #fff;
	transition: all ease 0.5s;
}

#header .right-top .info a,
#header .right-top .social a {
	font-size: 16px;
	line-height: 1.2;
	font-weight: bold;
}

#header .right-top .social a {
	font-size: 20px;
}

#header .right-top .info a:hover,
#header .right-top .social a:hover {
	color: #f1b209;
}

#header .right-top .info i {
	background: #f1b209;
	color: #fff;
	width: 40px;
	height: 40px;
	border-radius: 100%;
	line-height: 40px;
	text-align: center;
}

.header-nav-bar .dropdown-toggle::after {
	display: inline-block;
	margin-left: .255em;
	vertical-align: .255em;
	content: "";
	border-top: .4em solid !important;
	border-right: .4em solid transparent !important;
	border-bottom: 0;
	border-left: .4em solid transparent !important;
}

#header .right-top .info a {
	font-family: "Onest", sans-serif;
	font-size: 24px;
}

/* responsive tweaks */
@media (max-width: 991.98px) {
	#header .nav-align {
		justify-content: flex-end !important;
	}

	.header-actions {
		margin-top: 8px;
	}
}

.heading {
	text-align: center;
	margin: 0 0 46px;
}

.heading .title {
	display: block;
	color: #0da4af;
	margin-bottom: 2px;
	font-size: 18px;
	line-height: 1.2;
	font-family: "Onest", sans-serif;
}

.nav-link:focus-visible {
	box-shadow: none !important;
}

.heading h2 {
	margin: 0;
	font-weight: bold;
	font-size: 32px;
	line-height: 1.2;
	color: #08405f;
	font-family: "Onest", sans-serif;
}


.site-header .container {
	max-width: 1345px;
}



.header-utility-actions {
	align-items: center;
	justify-content: flex-end;
	gap: 15px;
	flex-wrap: wrap;
}

.headeerphone {
	margin-right: 15px;
}

.header-utility-col {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}


.header-phone .phone-label {
	display: block;
	font-size: 16px;
	letter-spacing: 0.06em;
	color: #000;
	line-height: 1.2;
}

.header-phone .phone-number {
	display: block;
	font-size: 20px;
	font-weight: 700;
	color: #16809f;
	text-decoration: none;
	line-height: 1.1;
}

.header-phone .phone-number:hover {
	color: #afd779;
}

.header-event {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding-right: 32px;
	border-right: 1px solid rgba(255, 255, 255, 0.35);
}

.header-event .event-location {
	font-size: 24px;
	font-weight: 700;
	color: #fec50f;
	line-height: 1.1;
}

.header-event .event-date {
	font-size: 18px;
	letter-spacing: 0.04em;
	color: #fff;
	line-height: 1.2;
}

.header-social {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: 5px;
}

.header-social a {
	color: #fff;
	font-size: 24px;
	text-decoration: none;
	transition: color 0.25s ease;
}

.header-social a:hover {
	color: #ffd200;
}

.btn-directions {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #ea0505;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-decoration: none;
	padding: 12px 22px;
	border-radius: 12px;
	white-space: nowrap;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
	transition: background 0.25s ease, transform 0.25s ease;
}

.btn-directions:hover {
	color: #fff;
	background: #c90404;
	transform: translateY(-1px);
}

.header-nav-wrap {
	padding: 0 0 12px;
}

.header-nav-bar {
	background: #006662;
	border-radius: 15px;
	padding: 0 15px;
	box-shadow: 0px 10px 20px rgb(0 0 0 / 20%);
}

.header-nav-bar .navbar-nav {
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

.header-nav-bar .nav-link {
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	text-transform: uppercase;
	padding: 22px 10px;
	letter-spacing: 0.02em;
	white-space: nowrap;
	transition: 0.3s ease;
	border-bottom: 4px solid transparent;
}

.header-nav-bar .nav-link:hover,
.header-nav-bar .nav-link.active,
.header-nav-bar .nav-link.show {
	color: #afd779;
}



.header-nav-bar .dropdown-toggle::after {
	margin-left: 6px;
	vertical-align: 0.15em;
}

.header-nav-bar .dropdown-menu {
	border: none;
	border-radius: 0;
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
	padding: 8px 0;
	margin-top: 0;
	width: 220px;
}

.header-nav-bar .dropdown-item {
	font-size: 14px;
	font-weight: 600;
	padding: 10px 18px;
	color: #08405f;
	font-family: "Open Sans", sans-serif;
	white-space: break-spaces;
	line-height:24px;
}

.header-nav-bar .dropdown-item:hover,
.header-nav-bar .dropdown-item:focus {
	background: #afd779;
	color: #fff;
}

/* ── Nested sub-menu (Weight Loss → Semaglutide) ── */
.has-submenu {
	position: relative;
}

.has-submenu>.dropdown-item .sub-arrow {
	float: right;
	margin-top: 8px;
	font-size: 11px;
	opacity: 0.7;
}

/* Desktop: fly-out to the right on hover */
@media (min-width: 992px) {
	.has-submenu .submenu-list {
		display: none;
		position: absolute;
		top: 0;
		left: 100%;
		min-width: 200px;
		list-style: none;
		padding: 8px 0;
		margin: 0;
		background: #fff;
		border: none;
		box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
		z-index: 9999;
		padding: 0;
	}

	.has-submenu:hover>.submenu-list {
		display: block;
	}

	.has-submenu:hover>.dropdown-item .sub-arrow {
		opacity: 1;
	}

	.has-submenu .submenu-list .dropdown-item {
		font-size: 14px;
		font-weight: 600;
		padding: 10px 18px;
		color: #08405f;
		white-space: nowrap;
	}

	.has-submenu .submenu-list .dropdown-item:hover {
		background: #afd779;
		color: #fff;
	}
}

/* Mobile: show inline, indented */
@media (max-width: 991.98px) {
	.has-submenu .submenu-list {
		display: block;
		list-style: none;
		padding: 0;
		margin: 0;
		background: rgba(0, 0, 0, 0.15);
	}

	.has-submenu .submenu-list .dropdown-item {
		padding-left: 36px;
		color: #fff !important;
		font-size: 13px;
	}

	.has-submenu .submenu-list .dropdown-item:hover {
		background: rgba(175, 215, 121, 0.3);
		color: #fff !important;
	}

	.has-submenu>.dropdown-item .sub-arrow {
		display: none;
	}
}

.site-header .navbar-toggler {
	border: 2px solid #fff;
	padding: 6px 10px;
}

.site-header .navbar-toggler-icon {
	filter: brightness(0) invert(1);
}

@media (min-width: 992px) {
	.header-nav-bar .navbar-collapse {
		display: flex !important;
	}

	.site-header .close-toggler {
		display: none;
	}

	.header-nav-bar .dropdown:hover>.dropdown-menu,
	.header-nav-bar .dropdown.show>.dropdown-menu {
		display: block;
	}

	.header-nav-bar .dropdown-menu {
		position: absolute;
	}
}

@media (max-width: 991.98px) {


	.header-nav-wrap {
		padding: 0;
	}

	.header-nav-bar {
		background: transparent;
		border-radius: 0;
		padding: 0;
	}

	.site-header .navbar-toggler {
		border-color: #fff;
	}

	#header .navbar-collapse {
		position: fixed;
		top: 0;
		bottom: 0;
		left: 100%;
		width: min(320px, 85%);
		padding: 70px 20px 24px;
		overflow-y: auto;
		visibility: hidden;
		background: rgb(0 102 98 / 94%) !important;
		transition: transform 0.3s ease-in-out, visibility 0.3s ease-in-out;
		z-index: 10000;
		display: block !important;
	}

	.header-nav-bar .nav-link.active,
	.header-nav-bar .nav-link:hover {
		border-bottom: none;
	}

	#header .navbar-collapse.show {
		visibility: visible;
		transform: translateX(-100%);
	}

	#header .close-toggler {
		display: block;
		background: none;
		border: none;
		color: #fff;
		font-size: 26px;
		position: absolute;
		top: 12px;
		right: 16px;
		padding: 4px;
		line-height: 1;
	}

	.mobile-utility {
		display: flex;
		flex-direction: column;
		gap: 16px;
		padding-bottom: 20px;
		margin-bottom: 16px;
	}

	.mobile-utility .header-phone,
	.mobile-utility .header-event {
		border-right: none;
		padding-right: 0;
		text-align: left;
	}



	.mobile-utility .header-event .event-location {
		color: #ffd200;
	}

	.header-nav-bar .navbar-nav {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}

	.header-nav-bar .nav-item {
		border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	}

	.header-nav-bar .nav-link {
		color: #fff;
		padding: 12px 8px;
		font-size: 14px;
	}

	.header-nav-bar .nav-link:hover,
	.header-nav-bar .nav-link.active,
	.header-nav-bar .nav-link.show {
		color: #fff;
		background: #afd779;
		padding-left: 16px;
	}

	.header-nav-bar .navbar-nav {
		margin-bottom: 20px;
	}

	.header-nav-bar .dropdown-menu {
		position: static !important;
		transform: none !important;
		background: rgba(0, 0, 0, 0.2);
		box-shadow: none;
		border-radius: 0;
		margin: 0 0 8px;
	}

	.header-nav-bar .dropdown-item {
		color: #fff;
		padding-left: 24px;
	}

	.header-nav-bar .dropdown-item:hover,
	.header-nav-bar .dropdown-item:focus {
		background: rgba(255, 210, 0, 0.2);
		color: #ffd200;
	}

	.header-nav-bar .dropdown-toggle::after {
		float: right;
		margin-top: 8px;
		filter: brightness(0) invert(1);
	}
}


.header-container {
	position: relative;
	z-index: 99;
}

.heading h2 span {
	display: block;
}

/*********************************************
	video Slider Css
**********************************************/
.videowrp {
	position: relative;
	height: 810px;
	border-radius: 60px 60px 0 0;
	overflow: hidden;
	margin-top: -50px;
}

.embed-responsive {
	display: block;
	width: 100%;
	padding: 0;
	overflow: hidden;
}

.embed-responsive video {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	border: 0;
}

.videowrp:before {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: rgb(0, 63, 42);
	opacity: 0.4;
	z-index: 1;
	content: '';
}



.bannertxt {
	position: absolute;
	bottom: 240px;
	left: 0;
	width: 100%;
	z-index: 9;
	text-align: left;
	text-align: center;
}

.bannertxt h1 {
	color: #fff;
	font-weight: bold;
	max-width: 890px;
	margin: 0 auto;
	font-size: 72px;
}

.bannertxt h1 span {
	font-weight: 400;
	font-style: italic;
}

.bannertxt p {
	font-size: 36px;
	color: #66bfca;
	margin: 15px 0;
}



@media (max-width: 1399.98px) {
	.hero-slider-wrap {
		max-width: 480px;
	}

	.videowrp {
		height: 700px;
		margin: -50px 15px 0 15px;
	}

	.bannertxt h1 {
		max-width: 720px;
		font-size: 48px;
	}

}

@media (max-width: 1199.98px) {
	.hero-slider-wrap {
		max-width: 420px;
	}

	.bannertxt {
		bottom: 170px;
	}

	.videowrp {
		height: 550px;
		margin: -50px 15px 0 15px;
	}

	.bannertxt h1 {
		max-width: 720px;
		font-size: 48px;
	}

	.slidertext-hero {
		font-size: 18px !important;
		padding: 10px 22px !important;
	}
}

@media (max-width: 991.98px) {
	.hero-slider-wrap {
		max-width: 520px;
		margin-left: auto;
		margin-right: auto;
		margin-top: 10px;
	}

	.videowrp {
		margin-top: 0;
	}

	.hero-section .caption {
		text-align: center;
		margin-left: auto;
		margin-right: auto;
	}
}

@media (max-width: 575.98px) {
	.hero-slider-wrap {
		max-width: 100%;
	}

	.hero-tp-banner-container {
		padding: 6px;
		border-radius: 24px;
	}

	.hero-tp-banner,
	.hero-tp-banner .tp-bgimg,
	.hero-tp-banner ul li {
		border-radius: 20px !important;
	}

	.hero-tp-banner-container .tp-arr-allwrapper {
		width: 38px;
		height: 38px;
	}

	.hero-tp-banner-container .tp-arr-iwrapper {
		font-size: 18px;
		line-height: 38px;
	}

	.slidertext-hero {
		font-size: 14px !important;
		padding: 8px 16px !important;
	}
}

/* Matrix additions use the existing type and colour system. */
.home-provider-links a {
	display: block;
	height: 100%;
	padding: 10px 12px;
	border: 1px solid rgba(22, 128, 161, 0.22);
	border-radius: 8px;
	color: #006761;
	font-weight: 700;
	line-height: 1.35;
	text-decoration: none;
}

.home-provider-links a:hover,
.home-provider-links a:focus {
	border-color: #16809f;
	background: rgba(22, 128, 161, 0.06);
	color: #16809f;
}

.footer-practice-copy {
	margin-bottom: 34px;
	padding-bottom: 24px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	
}
.footer-practice-copy p{color: #ccc;
	font-size: 15px;
	line-height: 1.65;
	text-align: center;}

.footer-practice-copy p:last-child {
	margin-bottom: 0;
}

.footer-practice-copy a {
	color: #a4d470;
	font-weight: 700;
}

@media (max-width: 1399.98px) {
	.hero-section {
		min-height: 730px;
		padding: 280px 0 95px;
	}

	.hero-section .caption h1 {
		font-size: 52px;
	}
}

@media (max-width: 1199.98px) {
	.hero-section {
		min-height: 650px;
	}

	.hero-section .caption {
		max-width: 560px;
	}

	.hero-section .caption .title {
		font-size: 18px;
		padding: 10px 28px 8px 22px;
		margin: 0;
	}

	.hero-section .caption .title::before {
		left: -6px;
		right: -8px;
		transform: skewX(-12deg);
	}

	.hero-section .caption h1 {
		font-size: 44px;
	}

	.hero-section .caption p {
		font-size: 17px;
	}
}

@media (max-width: 991.98px) {
	.hero-section {
		min-height: 560px;
		padding: 110px 0 70px;
	}


	.hero-section .caption {
		max-width: 100%;
		text-align: center;
	}

	.hero-section .caption h1 {
		font-size: 36px;
		line-height: 1.2;
	}

	.hero-section .caption p {
		font-size: 16px;
		max-width: 680px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media (max-width: 767.98px) {
	.hero-section {
		min-height: 500px;
		padding: 160px 0 50px;
		margin-top: 0;
	}

	.hero-section .caption .title {
		font-size: 15px;
		padding: 8px 22px 6px 18px;
	}

	.hero-section .caption .title::before {
		left: -5px;
		right: -6px;
		transform: skewX(-12deg);
	}

	.hero-section .caption h1 {
		font-size: 30px;
	}

	.hero-section .caption p {
		font-size: 15px;
		line-height: 1.5;
		margin-bottom: 18px;
	}
}

@media (max-width: 575.98px) {
	.hero-section {
		min-height: 450px;
		padding: 75px 0 40px;
	}

	.hero-section .caption h1 {
		font-size: 26px;
	}
}




/* ==========================================================================
   Home About Section
   ========================================================================== */
.about-us-section {
	padding: 70px 0;
	background: #effbff;
}

.smallheading {
	font-size: 18px;
	color: #afd779;
	font-family: "Onest", sans-serif;
	font-weight: bold;
}


.about-airshow-content ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
    margin-top: 12px;
}

.about-airshow-content ul li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 12px;
    font-size: 15px;
    color: #16191e;
}

.about-airshow-content ul li::before {
    content: "\f00c";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 2px;
    color: #28a745;
    font-size: 15px;
}


.about-ariforce img {
	border-radius: 40px;
}

.about-airshow-content {
	display: flex;
	flex-direction: column;
}

.about-event-box {
	background: #ffd200 url(../images/ocala-bg.jpg) no-repeat center center;
	background-size: cover;
	border-radius: 40px;
	padding: 28px 24px 30px;
	text-align: center;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
	margin-bottom: 15px;
}

.about-event-location {
	font-family: "Onest", sans-serif;
	font-size: 60px;
	font-style: italic;
	color: #000;
	margin: 0 0 4px;
	line-height: 1.05;
	text-transform: uppercase;
}

.about-event-date {
	font-family: "Onest", sans-serif;
	font-size: 40px;
	font-style: italic;
	color: #000;
	margin: 0 0 18px;
	line-height: 1.1;
	text-transform: uppercase;
}

.btn-buy-tickets {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: #ea0505;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	text-decoration: none;
	padding: 14px 26px;
	border-radius: 12px;
	box-shadow: 0 6px 14px rgba(234, 5, 5, 0.35);
	transition: background 0.25s ease, transform 0.25s ease;
}

.btn-buy-tickets:hover {
	color: #fff;
	background: #c90404;
	transform: translateY(-1px);
}

.main-headline {
	font-family: "Onest", sans-serif;
	font-size: 48px;
	color: #000;
	margin: 0;
	font-weight: bold;
}

.main-headline .colorchange {
	color: #66bfca;
}

.main-headline .breaktext {
	display: block;
}

.headingtagline {
	font-size: 30px;
	color: #006662;
	font-weight: bold;
	font-family: "Onest", sans-serif;
	margin-top: 10px;
	display: block;
}

.headingline {
	margin-top: 15px;
}


.main-headline .text-red {
	color: #ea0505;
}

.about-airshow-text {
	font-size: 18px;
	line-height: 30px;
	color: #000;
	font-weight: 600;
	margin: 0;
}




@media (max-width: 1199.98px) {
	.about-event-location {
		font-size: 36px;
	}

	.about-event-date {
		font-size: 26px;
	}

	.about-main-headline {
		font-size: 32px;
	}

	.about-tickets-cta-text strong {
		font-size: 28px;
	}
}

@media (max-width: 991.98px) {
	.about-airshow-content {
		margin-top: 10px;
	}

 

	.about-tickets-cta {
		margin: 0 auto;
	}

}

@media (max-width: 767.98px) {
	.about-event-box {
		padding: 22px 18px 20px;
		border-radius: 22px;
	}

	.about-event-location {
		font-size: 30px;
	}

	.about-event-date {
		font-size: 22px;
	}

	.about-main-headline {
		font-size: 26px;
	}

	.about-airshow-text {
		font-size: 16px;
	}

	.about-tickets-cta-text strong {
		font-size: 24px;
	}
}

@media (max-width: 575.98px) {
	.about-event-location {
		font-size: 26px;
	}

	.about-event-date {
		font-size: 18px;
	}

	.about-main-headline {
		font-size: 22px;
	}

	.btn-buy-tickets {
		font-size: 12px;
		padding: 8px 18px;
	}

	.about-tickets-cta {
		padding: 14px 16px;
		border-radius: 16px;
	}

	.about-tickets-cta-text strong {
		font-size: 20px;
	}
}



/* ==========================================================================
   Services Section
   ========================================================================== */
.service-section {
	padding: 70px 100px;
	text-align: center;
	margin: 0 40px;
}

.service-section .maintitle {
	text-align: center;
}

.servicesbox {
	margin-top: 40px;
}

.services-slider {
	position: relative;
}

.services-slider .service-item {
	padding: 15px 12px;
	text-align: center;
	background: transparent;
	border: none;
}

.services-slider .service-item .serviceImg {
	overflow: hidden;
	border-radius: 30px;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
	transition: transform 0.3s ease;
}

.services-slider .service-item .serviceImg img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 30px;
	transition: transform 0.3s ease;
}

.services-slider .service-item:hover .serviceImg img {
	transform: scale(1.05);
}

.services-slider .service-item h3 {
	text-align: center;
	margin-top: 20px;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	min-height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.services-slider .service-item h3 a {
	text-decoration: none;
	color: #16809f;
	transition: color 0.3s ease;
}

.services-slider .service-item h3 a:hover {
	color: #afd779;
}

.service-section .owl-carousel .owl-nav.disabled {
	display: block;
}

/* Custom Navigation Arrows for Services Slider */
.services-slider .owl-nav {
	position: absolute;
	top: 40%;
	transform: translateY(-50%);
	width: 100%;
	left: 0;
	display: flex;
	justify-content: space-between;
	pointer-events: none;
}

.services-slider .owl-nav button.owl-prev,
.services-slider .owl-nav button.owl-next {
	width: 48px;
	height: 48px;
	border-radius: 50% !important;
	border: 1px solid #c8d2d6 !important;
	color: #000 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	font-size: 16px !important;
	cursor: pointer;
	pointer-events: auto;
	transition: all 0.3s ease !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.services-slider .owl-nav button.owl-prev {
	position: absolute;
	left: -80px;
}

.services-slider .owl-nav button.owl-next {
	position: absolute;
	right: -80px;
}

.services-slider .owl-nav button.owl-prev:hover,
.services-slider .owl-nav button.owl-next:hover {
	background: #afd779 !important;
	border-color: #afd779 !important;
	color: #fff !important;
}

/* Hide Default Dots for Services Slider */
.services-slider .owl-dots {
	display: none !important;
}

/* Responsive tweaks for Services */
@media (max-width: 1199.98px) {
	.services-slider .owl-nav button.owl-prev {
		left: -65px;
	}

	.services-slider .owl-nav button.owl-next {
		right: -65px;
	}
}

@media (max-width: 991.98px) {
	.service-section {
		padding: 50px 40px;
		margin: 0 15px;
	}

	.services-slider .owl-nav button.owl-prev {
		left: -30px;
	}

	.services-slider .owl-nav button.owl-next {
		right: -30px;
	}
}

@media (max-width: 767.98px) {
	.service-section {
		padding: 40px 20px;
	}

	.services-slider .owl-nav {
		display: none !important;
		/* Hide arrows on mobile, rely on drag/swipe */
	}

	.services-slider .owl-dots {
		display: block !important;
		margin-top: 20px;
	}
}


/* ==========================================================================
   Meet Section
   ========================================================================== */
.meet-section {
	padding: 80px 0 0 0;
}

.meet-section .headingtagline {
	font-size: 23px;
	margin-bottom: 20px;
	line-height: 1.3;
}

.meet-section .main-headline {
	margin-bottom: 10px;
}

.meet-section p {
	font-size: 16px;
	line-height: 26px;
	color: #333;
}

/* Middle Portrait with Arch Border */
.meet-image-container {
	position: relative;
	display: inline-block;
	max-width: 320px;
	margin: 0 auto;
	z-index: 1;
}

.meet-dr-img {
	width: 100%;
	height: auto;
	position: relative;
	z-index: 3;
}

.meet-image-container::before {
	content: '';
	position: absolute;
	top: 15%;
	left: 10px;
	right: 10px;
	bottom: 0;
	border: 4px solid #006662;
	border-bottom: none;
	border-radius: 160px 160px 0 0;
	background: #e6f7f8;
	z-index: 2;
}


/* Right Side Expertises List */
.meet-expertise-wrap {
	padding-left: 20px;
}

.expertise-title {
	font-family: "Onest", sans-serif;
	font-size: 24px;
	font-weight: 700;
	color: #afd779;
	letter-spacing: 1px;
	display: block;
	margin-bottom: 15px;
}

.expertise-list {
	display: flex;
	flex-direction: column;
}

.expertise-item {
	display: flex;
	align-items: center;
	gap: 25px;
	padding: 20px 0;
	border-bottom: 1px solid #eef3f6;
	transition: all 0.3s ease;
}

.expertise-item:last-child {
	border-bottom: none;
}

.expertise-icon {
	flex: 0 0 55px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.3s ease;
}

.expertise-icon img {
	max-height: 45px;
	max-width: 100%;
	width: auto;
	height: auto;
}

.expertise-name {
	font-family: "Onest", sans-serif;
	font-size: 22px;
	font-weight: 700;
	color: #006662;
	margin: 0;
	transition: color 0.3s ease;
}

.expertise-item:hover {
	transform: translateX(5px);
}

.expertise-item:hover .expertise-name {
	color: #16809f;
}

.expertise-item:hover .expertise-icon {
	transform: scale(1.1);
}

/* Responsive styles for Meet Section */
@media (max-width: 991.98px) {
	.meet-section {
		padding: 50px 0;
	}

	.meet-section .maintitle {
		text-align: center;
	}

	.meet-section p {
		text-align: center;
		max-width: 720px;
		margin: 0 auto;
	}

	.meet-image-container {
		margin: 40px auto;
		display: block;
	}

	.meet-expertise-wrap {
		padding-left: 0;
		margin-top: 20px;
	}

	.expertise-title {
		margin-bottom: 25px;
	}

	.expertise-item {
		padding: 15px 0;
	}

	.expertise-item:hover {
		transform: none;
	}
}


/* ==========================================================================
   Care CTA Section
   ========================================================================== */
.care-section {
	background: #006662 url(../images/care-bg.jpg) no-repeat;
	background-size: cover;
	background-position: right center;
	padding: 100px 80px;
	margin: 0px 40px;
	border-radius: 60px;
	position: relative;
	overflow: hidden;
	z-index: 1;
}

.care-section::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to right, rgba(0, 102, 98, 0.95) 0%, rgba(0, 102, 98, 0.75) 45%, rgba(0, 102, 98, 0) 100%);
	z-index: 2;
}

.care-content {
	position: relative;
	z-index: 3;
}

.care-headline {
	font-family: "Onest", sans-serif;
	font-size: 48px;
	font-weight: 700;
	color: #fff;
	line-height: 1.25;
	margin-bottom: 15px;
}

.care-headline span.breaktext {
	display: block;
}

.care-text {
	font-family: "Open Sans", sans-serif;
	font-size: 20px;
	line-height: 24px;
	color: rgba(255, 255, 255, 0.9) !important;
	margin-bottom: 35px;
}

.care-actions {
	display: flex;
	align-items: center;
	gap: 35px;
	flex-wrap: wrap;
}

.care-phone {
	display: flex;
	align-items: center;
	gap: 15px;
}

.care-phone-icon {
	width: 50px;
	height: 50px;
	border: 2px solid rgba(255, 255, 255, 0.5);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 18px;
	transition: all 0.3s ease;
}

.care-phone-icon i {
	transform: rotate(0deg);
}

.care-phone:hover .care-phone-icon {
	border-color: #afd779;
	background: rgba(175, 215, 121, 0.1);
}

.care-phone-label {
	display: block;
	font-family: "Onest", sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: #afd779;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	line-height: 1.2;
}

.care-phone-number {
	display: block;
	font-family: "Onest", sans-serif;
	font-size: 24px;
	font-weight: 700;
	color: #fff !important;
	text-decoration: none;
	line-height: 1.2;
	transition: color 0.3s ease;
}

.care-phone-number:hover {
	color: #afd779 !important;
}

/* Responsive styles for Care CTA Section */
@media (max-width: 1199.98px) {
	.care-section {
		padding: 80px 60px;
	}

	.care-headline {
		font-size: 38px;
	}
}

@media (max-width: 991.98px) {
	.care-section {
		padding: 70px 40px;
		margin: 40px 15px;
	}

	.care-section::before {
		background: rgba(0, 102, 98, 0.85);
	}

	.care-headline {
		font-size: 34px;
	}

	.care-text {
		font-size: 16px;
		line-height: 26px;
	}
}

@media (max-width: 575.98px) {
	.care-section {
		padding: 50px 20px;
		border-radius: 30px;
		text-align: center;
	}

	.care-headline {
		font-size: 28px;
	}

	.care-headline span.breaktext {
		display: inline;
	}

	.care-actions {
		gap: 25px;
		flex-direction: column;
		align-items: center;
	}

	.care-phone {
		text-align: left;
	}
}



/* ==========================================================================
   About Kennesaw Gynecology Section
   ========================================================================== */
.about-gyn-section {
	padding: 80px 0;
	background: #fff;
}

.about-gyn-main-img img {
	border-radius: 35px;
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
	width: 100%;
	max-width: 420px;
	height: auto;
}

.about-gyn-badge-img img {
	max-width: 260px;
	width: 100%;
	height: auto;
}

.about-gyn-text p {
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	line-height: 24px;
	color: #000;
	margin-bottom: 20px;
}

.about-link {
	color: #16809f;
	font-weight: 700;
	text-decoration: underline;
	transition: color 0.3s ease;
}

.about-link:hover {
	color: #afd779;
}

.about-gyn-text p.about-highlight-text {
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	line-height: 28px;
	color: #16809f !important;
	font-weight: 700;
	margin-top: 25px;
	margin-bottom: 30px;
}

.about-cta-row {
	display: flex;
	align-items: center;
	gap: 35px;
	flex-wrap: wrap;
	margin-top: 35px;
}

.about-phone {
	display: flex;
	align-items: center;
	gap: 15px;
}

.about-phone-icon {
	width: 50px;
	height: 50px;
	border: 2px solid #16809f;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #16809f;
	font-size: 18px;
	transition: all 0.3s ease;
}

.about-phone:hover .about-phone-icon {
	border-color: #afd779;
	color: #afd779;
	background: rgba(175, 215, 121, 0.1);
}

.about-phone-label {
	display: block;
	font-family: "Onest", sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: #000;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	line-height: 1.2;
}

.about-phone-number {
	display: block;
	font-family: "Onest", sans-serif;
	font-size: 24px;
	font-weight: 700;
	color: #16809f !important;
	text-decoration: none;
	line-height: 1.2;
	transition: color 0.3s ease;
}

.about-phone-number:hover {
	color: #afd779 !important;
}

/* ==========================================================================
   Voted Best Badges Section
   ========================================================================== */

.voted-best-headline {
	font-family: "Onest", sans-serif;
	font-size: 32px;
	font-weight: 700;
	color: #16809f;
	line-height: 1.3;
	margin-bottom: 40px;
}

.voted-best-headline span.breaktext {
	display: block;
}

.badges-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 25px;
	flex-wrap: wrap;
}

.badge-item {
	flex: 0 1 170px;
	text-align: center;
	transition: transform 0.3s ease, filter 0.3s ease;
}

.badge-item img {
	width: 100%;
	height: auto;
}

.badge-item img {
	transition: transform 0.3s ease, filter 0.3s ease;
}

.badge-item:hover img {
	transform: translateY(-5px) scale(1.05);
}

/* Responsive styles for About & Badges */
@media (max-width: 991.98px) {
	.about-gyn-section {
		padding: 60px 0;
	}

	.about-gyn-main-img img {
		max-width: 360px;
	}



	.voted-best-headline {
		font-size: 28px;
	}
}

@media (max-width: 767.98px) {
	.about-gyn-images {
		margin-bottom: 40px;
	}

	.about-cta-row {
		gap: 25px;
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.about-phone {
		text-align: left;
	}

	.voted-best-headline {
		font-size: 24px;
	}

	.voted-best-headline span.breaktext {
		display: inline;
	}

	.badges-wrap {
		gap: 15px;
	}

	.badge-item {
		flex: 0 1 140px;
		max-width: 140px;
	}
}

@media (max-width: 575.98px) {
	.about-gyn-main-img img {
		max-width: 100%;
	}

	.about-gyn-badge-img img {
		max-width: 220px;
	}

	.about-gyn-text p.about-highlight-text {
		font-size: 16px;
		line-height: 26px;
	}

	.badge-item {
		flex: 0 1 120px;
		max-width: 120px;
	}
}


/* ==========================================================================
   Testimonials Section
   ========================================================================== */
.testimonial-section {
	background: url(../images/testimonial-bg.jpg) no-repeat center center;
	background-size: cover;
	padding: 50px 60px;
	margin: 0px 40px;
	border-radius: 60px;
	position: relative;
	overflow: hidden;
	z-index: 1;
	text-align: center;
}

.testimonial-section .maintitle {
	margin-bottom: 20px;

}

.testimonial-section .maintitle h2 {
	color: #fff;
}

.testimonial-section .smallheading {
	color: #fff;
	text-transform: uppercase;
}

.testimonial-slider {
	position: relative;
}

.testimonial-card {
	background: rgba(0, 50, 48, 0.45);
	border-radius: 30px;
	padding: 40px 35px;
	text-align: left;
	margin: 15px 10px;
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.testimonial-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

.testimonial-card .stars {
	color: #ffd800;
	font-size: 16px;
	margin-bottom: 20px;
}

.testimonial-card .quote {
	font-family: "Open Sans", sans-serif;
	font-size: 18px;
	line-height: 26px;
	color: rgba(255, 255, 255, 0.9) !important;
	font-style: italic;
	margin-bottom: 30px;
	min-height: 120px;
}

.profile-widget {
	display: flex;
	align-items: center;
	gap: 15px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding-top: 20px;
}

.profile-avatar {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	overflow: hidden;
}

.profile-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.profile-info {
	display: flex;
	flex-direction: column;
}

.profile-name {
	font-family: "Onest", sans-serif;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	margin: 0;
}

.profile-date {
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	color: #afd779;
	margin-top: 2px;
}

/* Custom owl dots for Testimonials slider */
.testimonial-section .owl-theme .owl-dots {
	margin-top: 30px !important;
}

.testimonial-section .owl-theme .owl-dots .owl-dot span {
	width: 16px;
	height: 16px;
	margin: 5px 7px;
	background: #fff !important;
	border-radius: 50%;
	transition: all 0.3s ease;
}

.testimonial-section .owl-theme .owl-dots .owl-dot.active span,
.testimonial-section .owl-theme .owl-dots .owl-dot:hover span {
	background: #000 !important;
	transform: scale(1.2);
}



/* Responsive styles for Testimonials & Schedule sections */
@media (max-width: 1199.98px) {



	.testimonial-headline,
	.schedule-headline {
		font-size: 38px;
	}

}

@media (max-width: 991.98px) {



	.testimonial-headline {
		font-size: 32px;
	}

	.testimonial-card {
		padding: 30px 25px;
	}
}


@media (max-width: 575.98px) {

	.testimonial-section {
		padding: 50px 0px;
		border-radius: 30px;
	}


	.testimonial-headline {
		font-size: 26px;
	}

	.testimonial-card .quote {
		min-height: auto;
	}


}






/* ==========================================================================
   Blog
   ========================================================================== */
.blog-section {
	padding: 50px 0;
}

.blog-section .maintitle {
	text-align: center;
	margin-bottom: 40px;
}

.blog-section .smallheading {
	text-transform: uppercase;
}

.blog-card {
	background: #fff;
	border-radius: 30px;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.blog-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

.blog-card-image {
	position: relative;
	overflow: hidden;
}

.blog-card-image img {
	width: 100%;
	height: auto;
	display: block;
	transition: transform 0.5s ease;
}

.blog-card:hover .blog-card-image img {
	transform: scale(1.05);
}

.blog-date-badge {
	position: absolute;
	top: 20px;
	left: 20px;
	background: #16809f;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	text-transform: uppercase;
	padding: 10px 14px;
	border-radius: 8px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	z-index: 2;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}

.blog-card-content {
	padding: 30px 25px;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

.blog-card-title {
	font-family: "Onest", sans-serif;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.35;
	margin-bottom: 15px;
}

.blog-card-title a {
	color: #16809f;
	text-decoration: none;
	transition: color 0.3s ease;
}

.blog-card-title a:hover {
	color: #afd779;
}

.blog-card-text {
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	line-height: 24px;
	color: #555555;
	margin: 0;
}

@media (max-width: 991.98px) {
	.blog-section {
		padding: 60px 0;
	}

	.blog-card-title {
		font-size: 20px;
	}
}

@media (max-width: 575.98px) {
	.blog-section {
		padding: 50px 0;
	}

	.blog-card-content {
		padding: 25px 20px;
	}

	.blog-card-title {
		font-size: 18px;
	}
}













.hero-section,
.sponsers-section,
.about-us-section,
.video-section,
.ticket-section,
.performer-lineup,
.vintage-aircraft-section,
.blogs-section,
.footer-section {
	overflow: hidden;
}

.navbar-expand-lg .navbar-nav .dropdown-menu {
	padding: 0;
}





/* ==========================================================================
   Contact Section (Appointment Request)
   ========================================================================== */
.contact-section {
	background: url(../images/bg-grandiant.jpg) no-repeat center center;
	background-size: cover;
	padding: 80px 60px;
	margin: 0px 40px;
	border-radius: 60px;
	position: relative;
	overflow: hidden;
	z-index: 1;
}

.contact-subtitle {
	display: block;
	font-family: "Onest", sans-serif;
	font-size: 14px;
	font-weight: 700;
	color: #16809f;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 10px;
}

.contact-headline {
	font-family: "Onest", sans-serif;
	font-size: 42px;
	font-weight: 700;
	color: #333;
	margin-bottom: 10px;
	line-height: 1.2;
}

.contact-section .smallheading {
	color: #0094a6;
	text-transform: uppercase;
}

.contact-text {
	font-family: "Open Sans", sans-serif;
	font-size: 18px;
	color: #60686b;
	margin-bottom: 40px;
	margin-top: 10px;
}

.appointment-form .form-label {
	font-size: 16px;
	font-weight: 700;
	color: #141414;
	margin-bottom: 8px;
}

.appointment-form .form-control,
.appointment-form .form-select {
	font-family: "Open Sans", sans-serif;
	font-size: 15px;
	height: auto;
	padding: 17px 20px;
	border-radius: 8px;
	border: 1px solid #e0e5e8;
	color: #333;
	background-color: #fff;
	box-shadow: none;
	transition: all 0.3s ease;
}

.appointment-form .form-control:focus,
.appointment-form .form-select:focus {
	border-color: #16809f;
	box-shadow: 0 5px 15px rgba(22, 128, 159, 0.1);
}

.appointment-form textarea.form-control {
	resize: none;
}

.appointment-form .main-btn button {
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	background-color: #afd779;
	border: none;
	padding: 6px 6px 6px 24px;
	border-radius: 12px;
	display: inline-flex;
	align-items: center;
	gap: 20px;
	cursor: pointer;
	transition: all 0.3s ease;
	text-transform: uppercase;
}

.appointment-form .main-btn button i {
	width: 40px;
	height: 40px;
	line-height: 40px;
	background-color: rgba(0, 0, 0, 0.15);
	color: #fff;
	border-radius: 8px;
	text-align: center;
	display: inline-block;
	font-size: 16px;
	transition: all 0.3s ease;
}

.appointment-form .main-btn button:hover {
	background: #91b461;
	color: #fff;
	transform: translateY(-2px);
}

.appointment-form .main-btn button:hover i {
	background: #afd779;
}

.appointment-arch-card {
	border-radius: 180px 180px 30px 30px;
	overflow: hidden;
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
	background: #005652;
	display: flex;
	flex-direction: column;
	max-width: 380px;
	width: 100%;
	border: 7px solid #fff;
}

.appointment-arch-img {
	width: 100%;
	overflow: hidden;
}

.appointment-arch-img img {
	width: 100%;
	height: auto;
	display: block;
	transition: transform 0.5s ease;
}

.appointment-arch-card:hover .appointment-arch-img img {
	transform: scale(1.03);
}

.appointment-arch-info {
	padding: 30px 25px;
	text-align: center;
}

.appointment-phone {
	display: inline-flex;
	align-items: center;
	gap: 15px;
	text-align: left;
}

.appointment-phone-icon {
	width: 48px;
	height: 48px;
	line-height: 44px;
	border: 2px solid rgba(255, 255, 255, 0.3);
	border-radius: 50%;
	color: #fff;
	text-align: center;
	font-size: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.appointment-phone-content {
	display: flex;
	flex-direction: column;
	line-height: 22px;
}

.appointment-phone-label {
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	color: #afd779;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 1px;
}

.appointment-phone-number {
	font-family: "Onest", sans-serif;
	font-size: 24px;
	font-weight: 700;
	color: #fff;
	text-decoration: none;
	transition: color 0.3s ease;
}

.appointment-phone-number:hover {
	color: #afd779;
}


/* ==========================================================================
   Footer Section (Replacement)
   ========================================================================== */
.footer-section {
	background: #003330;
	color: #fff;
	padding: 60px 10px 0px 10px;
	font-family: "Open Sans", sans-serif;
	margin: -60px 40px 20px 40px;
	border-radius: 0 0 60px 60px;
}

.footer-connect-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 40px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	flex-wrap: wrap;
	gap: 20px;
}

.footer-connect-left {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
}

.connect-title {
	font-size: 18px;
	color: #fff;
}

.footer-social-icons {
	display: flex;
	gap: 18px;
}

.footer-social-icons a {
	color: #fff;
	text-align: center;
	border-radius: 50%;
	font-size: 30px;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
}



.footer-connect-right {
	display: flex;
	gap: 15px;
	flex-wrap: wrap;
}

.main-btn.blue-btn a {
	background: #16809f;
}

.main-btn.blue-btn i {
	background: #0f5b72;
}

.main-btn.blue-btn a:hover {
	background: #0f5b72;
}

.main-btn.blue-btn a:hover i {
	background: #16809f;
}

.footer-content-row {
	padding: 25px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-col-title {
	font-family: "Onest", sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: #afd779;
	margin-bottom: 25px;
}


.footer-links-list li a {
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
	font-size: 14px;
	transition: all 0.3s ease;
}

.footer-links-list li a:hover {
	color: #afd779;
	padding-left: 5px;
}

.footer-contact-list li {
	display: flex;
	gap: 15px;
	margin-bottom: 20px;
	align-items: center;
}

.footer-contact-list li:first-child {
	align-items: flex-start;
}

.footer-contact-list .contact-icon {
	color: #66bfca;
	font-size: 20px;
	margin-top: 3px;
}

.footer-contact-list .contact-text {
	display: flex;
	flex-direction: column;
	color: rgba(255, 255, 255, 0.85);
	font-size: 14px;
	line-height: 1.5;
	margin: 0;
}

.footer-contact-list .contact-text a {
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
	transition: color 0.3s ease;
	font-size: 18px;
}

.footer-contact-list .contact-text a:hover {
	color: #afd779;
}

.footer-logo-col {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}


.footer-logo-text {
	font-family: "Onest", sans-serif;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 1px;
	margin: 0;
}

.footer-logo-text span {
	display: block;
	font-size: 14px;
	font-weight: 400;
	color: #afd779;
	letter-spacing: 3px;
	margin-top: 5px;
}

.footer-hours-list li {
	display: flex;
	justify-content: space-between;
	line-height: 30px;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.85);
}

.footer-links-list li {
	line-height: 30px;
}

.footer-hours-list li:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.footer-bottom-row {
	padding: 12px 0 15px 0;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.6);
}

.copyright-text,
.credits-text {
	font-size: 14px;
	margin: 0;
}

.copyright-text {
	color: #fff;

}

.credits-text {
	color: #989898;
}

.footer-policy-links {
	display: flex;
	justify-content: center;
	gap: 36px;
	flex-wrap: wrap;
	list-style: none;
}

.footer-policy-links a {
	color: #66bfca;
	text-decoration: none;
	transition: color 0.3s ease;
}

.footer-policy-links a:hover,
.credits-text a:hover {
	color: #afd779;
}

.credits-text a {
	color: rgba(255, 255, 255, 0.6);
	text-decoration: none;
}


/* ==========================================================================
   Responsive Breakpoints for Contact and Footer
   ========================================================================== */
@media (max-width: 991.98px) {
	.contact-section {
		padding: 50px 30px;
		margin: 40px 20px;
		border-radius: 40px;
	}

	.copyright-text,
	.credits-text {
		text-align: center;
	}

	.footer-connect-row {
		justify-content: center;
	}

	.contact-headline {
		font-size: 34px;
	}

	.footer-content-row {
		padding: 25px 0;
	}

	.servicesbox {
		margin-top: 15px;
	}

	.footer-logo-col {
		margin: 30px 0;
	}
}

@media (max-width: 767.98px) {
	.footer-connect-row {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.footer-policy-links {
		display: block;
	}

	.footer-connect-left {
		flex-direction: column;
		align-items: center;
	}

	.footer-connect-right {
		justify-content: center;
	}
}

@media (max-width: 575.98px) {
	.contact-section {
		padding: 40px 20px;
		margin: 30px 15px;
		border-radius: 30px;
	}

	.contact-headline {
		font-size: 28px;
	}

	.footer-btn a {
		padding: 10px 20px;
		font-size: 13px;
	}
}




@media only screen and (max-width: 1200px) {

	#header .header-row {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}

	#header .header-nav-col {
		display: contents;
	}

	.header-nav-bar .navbar-nav {
		gap: 0;
	}

	#header {
		padding: 0 15px;
	}

	#header .header-nav-col .nav-align {
		order: 3;
		width: 70%;
		flex: 0 0 70%;
		justify-content: flex-end;
	}

	.header-utility-actions {
		gap: 20px;
	}

	.header-phone .phone-number,
	.header-event .event-location {
		font-size: 20px;
	}



	.header-nav-bar {
		padding: 0 15px;
	}

	.header-nav-bar .nav-link {
		font-size: 12px;
	}

	.main-headline,
	.footer-newsletter-title {
		font-size: 42px;
	}

	.airshow-events h3 a {
		font-size: 20px;
	}

	#header .header-nav-col .nav-align .navbar {
		padding: 0 0 14px 0;
	}

	#header .nav-align .navbar .navbar-nav .nav-item {
		margin: 0 10px;
	}

	#header .logo {
		justify-content: flex-start;
	}

}

@media only screen and (max-width: 991.98px) {
	#header .right-top {
		display: none;
	}

	#header .logo img {
		width: 250px;
	}

	.blogs-section .row {
		justify-content: center;
	}

	.bannertxt h1 {
		max-width: 500px;
		font-size: 32px;
	}

	.bannertxt {
		bottom: 120px;
	}

	.bannertxt p {
		font-size: 20px;
		margin: 0;
	}

	.videowrp {
		height: 400px;
	}

	.main-headline {
		font-size: 36px;
	}

	.footer-newsletter-title {
		font-size: 28px;
	}

	.header-utility-col {
		display: none;
	}



	.labimg {
		text-align: center;
	}

	.dropdown-toggle::after {
		float: right;
		margin-top: 11px;
	}

	#header .dropdown-submenu .dropdown-toggle::after {
		display: inline-block;
		margin-left: .255em;
		vertical-align: .255em;
		content: "";
		border-top: .3em solid;
		border-right: .3em solid transparent;
		border-bottom: 0;
		border-left: .3em solid transparent;
	}

	#header .nav-align .navbar .navbar-nav .nav-link {
		color: #fff;
	}

	.header-actions {
		margin-left: 0;
	}

	.cart-link {
		border: none;
	}



	#header .navbar-toggler {
		position: absolute;
		right: 0;
		background: #afd779;
	}

	#header .navbar-collapse {
		position: fixed;
		top: 0px;
		bottom: 0;
		left: 100%;
		width: 60%;
		padding-right: 1rem;
		padding-left: 1rem;
		overflow-y: auto;
		visibility: hidden;
		background-color: rgba(0, 0, 0, 0.8);
		transition: visibility .3s ease-in-out, -webkit-transform .3s ease-in-out;
		transition: transform .3s ease-in-out, visibility .3s ease-in-out;
		transition: transform .3s ease-in-out, visibility .3s ease-in-out, -webkit-transform .3s ease-in-out;
		z-index: 10000;
	}

	#header .navbar-collapse.show {
		visibility: visible;
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
	}



	#header .nav-align .navbar .navbar-nav .nav-item {
		margin: 0;
	}

	.navbar-light .navbar-nav .nav-link {
		color: #fff;
		padding: 10px 0;
		transition: transform 0.3s ease;
	}

	#header .close-toggler {
		background: none;
		color: #fff;
		padding: 5px;
		border: none;
		margin-top: 10px;
		font-size: 24px;
		position: absolute;
		top: 0;
		right: 15px;
		display: block;
	}

	#header .nav-align .navbar .navbar-nav .nav-link {
		text-transform: uppercase;
	}

	#header .navbar .dropdown-menu {
		background: #232430;
		padding: 0;
		border: 0;
	}

	#header .navbar .dropdown-menu li {
		border-bottom: 1px solid #777777;
	}

	#header .navbar .dropdown-menu li:last-child {
		border: none;
	}

	#header .navbar .dropdown-menu .dropdown-item {
		color: #fff;
		white-space: normal;
		padding: 10px 16px;
	}

	#header .navbar .dropdown-menu .dropdown-item:focus,
	#header .navbar .dropdown-menu .dropdown-item:hover {
		background: transparent;
		color: #04dcf7;
	}

	.mobile-utility {
		margin-top: 20px;
		background: #fff;
		border-radius: 15px;
		text-align: center;
		padding: 20px;
	}

	.headeerphone {
		justify-content: center;
	}

	.header-phone .phone-number,
	.header-event .event-location {
		font-size: 24px;
	}

	.header-event {
		border: 1px solid rgba(255, 255, 255, 0.15);
		border-left: none;
		border-right: none;
		padding: 14px 0;
	}

	.btn-directions {
		display: block;
		text-align: center;
	}

	#header .navbar .dropdown-menu .dropdown-submenu .dropdown-menu .dropdown-item {
		padding-left: 32px;
		padding-right: 32px;
	}

	.headeerphone {
		margin-right: 0;
	}
}

@media only screen and (max-width: 767.98px) {

	.zipcode {
		max-width: inherit;
	}

	.headeerphone {
		justify-content: center;
	}

	.footer-signup-btn {
		margin: 0 auto;
	}

	.videowrp:after {
		display: none;
	}

	.videowrp {
		border-radius: 40px;
	}

	#header .header-nav-col .nav-align {
		width: 50%;
		flex: 0 0 50%;
	}

	.videowrp {
		height: 300px;
	}

	.bannertxt {
		bottom: 50px;
	}

	.header-actions {
		width: 100%;
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}

	.cart-link {
		border: none;
		padding-left: 0;
		margin-right: 0;
	}


	.btn-account {
		margin-bottom: 20px;
	}

	.header-actions {
		display: inline-block !important;
		margin-bottom: 40px;
	}

	#header .navbar-collapse {
		width: 80%;
	}

}


@media (max-width: 480px) {
	.site-header .logo img {
		max-width: 160px;
	}

	.header-phone .phone-number,
	.header-event .event-location {
		font-size: 20px;
	}

	.bannertxt {
		bottom: 22px;
	}

	.bannertxt h1 {
		max-width: 250px;
		font-size: 20px;
	}

	.bannertxt .main-btn {
		margin-top: 10px !important;
	}

	.bannertxt p {
		font-size: 16px;
	}

	.videowrp {
		height: 210px;
	}

	.main-btn a {
		font-size: 14px;
	}

	.main-btn i {
		width: 35px;
		height: 35px;
		line-height: 35px;
		s
	}
}

@media (max-width: 375px) {
	.videowrp {
		height: 180px;
	}

	.bannertxt .main-btn a {
		font-size: 12px;
		padding: 4px 6px 4px 18px;
	}

}



/* Keep hero top spacing consistent after header breakpoint rules */
@media (max-width: 991.98px) {

	#header .nav-align .navbar .navbar-nav .nav-link {
		font-size: 16px;
	}

	#header .nav-align .navbar .navbar-nav .nav-link {
		font-size: 14px;
		padding: 6px 0;
	}
}


@media (max-width: 480px) {
	.main-btn a {
		font-size: 15px;
	}

	.hero-section .caption h1 {
		font-size: 20px;
	}

	.hero-section .caption .title {
		font-size: 16px;
		padding: 7px 18px 6px 14px;
	}


	.hero-section .caption .title::before {
		transform: skewX(-10deg);
	}

	#header .nav-align .navbar .navbar-nav .nav-link {
		font-size: 14px;
	}

	.services-section {
		margin: 0 15px;
	}
}

@media (max-width: 320px) {

	.header_wrp .main-btn a {
		padding: 14px;
	}

}



/* ==========================================================================
   Page Title
   ========================================================================== */
.pagetitle-wrap {
	padding: 50px 0;
	text-align: center;
	background: url(../images/pagetitle-bg.jpg) no-repeat top;
	background-size: cover;
}

.pagetitle-wrap h1 {
	color: #000;
	font-weight: bold;
}

/* Provider detail title: name first, credentials on a smaller second line */
.pagetitle-wrap.provider-detail-heading {
	padding: 44px 0 48px;
}

.provider-detail-title {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	margin: 0;
	line-height: 1.08;
}

.provider-detail-title > span {
	display: block;
	color: #08405f; 
	font-weight: 800;
	letter-spacing: -1.2px;
}

.provider-detail-title > small {
	display: block;
	color: #16809f;
	font-size: clamp(15px, 1.7vw, 22px);
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 1.1px;
	text-transform: uppercase;
	font-size:16px;
}






@media only screen and (max-width: 990px) {
	.pagetitle-wrap {
		padding: 40px 0;
	}

	.pagetitle-wrap h1 {
		font-size: 22px;
	}

	.provider-detail-title > span {
		font-size: clamp(32px, 7vw, 48px);
	}

	.provider-detail-title > small {
		font-size: clamp(14px, 2.6vw, 18px);
	}
}

@media only screen and (max-width:480px) {
	.pagetitle-wrap {
		padding: 20px 0;
	}

	.pagetitle-wrap.provider-detail-heading {
		padding: 28px 0 30px;
	}

	.provider-detail-title {
		gap: 6px;
	}

	.provider-detail-title > span {
		font-size: 32px;
		letter-spacing: -.5px;
	}

	.provider-detail-title > small {
		max-width: 320px;
		font-size: 13px;
		letter-spacing: .7px;
	}
}

/* Contact Page Custom Design */
.contact-page-section {
	padding: 80px 0;
	background: #f4f7f6;
}

.contact-wrapper {
	background: #fff;
}

.contact-info-bg {
	background: #08405f;
	position: relative;
	overflow: hidden;
}

.contact-info-content {
	position: relative;
	z-index: 2;
}

.contact-title {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 32px;
	color: #fff;
}

.contact-desc {
	font-size: 16px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.8);
	font-weight: 400;
}

.contact-item .contact-icon i {
	font-size: 28px;
	color: #f1b209;
}

.contact-item .contact-text h5 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: #fff;
	margin-bottom: 5px;
}

.contact-item .contact-text p a {
	color: #fff;
	font-weight: 600;
	font-size: 18px;
	text-decoration: none;
	transition: color 0.3s ease;
}

.contact-item .contact-text p a:hover {
	color: #f1b209;
}

.contact-item .contact-text small {
	color: rgba(255, 255, 255, 0.6);
	font-size: 14px;
}

.contact-shape {
	position: absolute;
	bottom: -50px;
	right: -50px;
	width: 200px;
	height: 200px;
	background: rgba(255, 255, 255, 0.05);
	border-radius: 50%;
	z-index: 1;
}

.contact-shape::before {
	content: '';
	position: absolute;
	top: -40px;
	left: -40px;
	width: 150px;
	height: 150px;
	background: rgba(255, 255, 255, 0.05);
	border-radius: 50%;
}

.form-title {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 32px;
	color: #08405f;
}

.custom-contact-form .form-control {
	border: 1px solid #e0e0e0;
	border-radius: 10px;
	padding: 1rem 0.75rem;
	font-size: 16px;
	background-color: #fcfcfc;
	transition: all 0.3s ease;
}

.custom-contact-form .form-control:focus {
	border-color: #0da4af;
	box-shadow: 0 0 0 0.25rem rgba(13, 164, 175, 0.15);
	background-color: #fff;
}

.custom-contact-form .form-floating label {
	color: #6c757d;
	padding: 1rem 0.75rem;
}

.btn-submit-custom {
	background: #ea0505;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	padding: 16px 30px;
	border-radius: 12px;
	border: none;
	text-transform: uppercase;
	letter-spacing: 1px;
	transition: all 0.3s ease;
}

.btn-submit-custom:hover {
	color: #fff;
	transform: translateY(-3px);
	background: #c90404;
}


@media only screen and (max-width: 480px) {
	.footer-newsletter-title {
		font-size: 22px;
	}

}

/* ==========================================================================
   Private VIP Chalets Page
   ========================================================================== */

.chalet-page-section {
	padding: 80px 0 100px;
	background: #f9f7f4;
}

/* --- Intro Block --- */
.chalet-intro-block {
	padding-bottom: 70px;
	border-bottom: 2px solid #eaeaea;
	margin-bottom: 70px;
}

.chalet-intro-heading {
	font-family: "Onest", sans-serif;
	font-size: 36px;
	color: #08405f;
	line-height: 1.2;
	margin-bottom: 24px;
}

.chalet-intro-text p {
	font-size: 16px;
	font-weight: 400;
	color: #444;
	line-height: 1.8;
	margin-bottom: 16px;
}

.chalet-book-cta {
	font-size: 17px !important;
	font-weight: 700 !important;
	color: #08405f !important;
	background: #fff8e1;
	border-left: 4px solid #f1b209;
	padding: 14px 18px;
	border-radius: 0 8px 8px 0;
	margin-top: 24px;
}

.chalet-book-cta a {
	color: #ea0505;
	text-decoration: none;
	font-weight: 700;
}

.chalet-book-cta a:hover {
	text-decoration: underline;
}

.chalet-intro-img-wrap {
	position: sticky;
	top: 0;
	display: inline-block;
	width: 100%;
}

.chalet-intro-img {
	width: 100%;
	border-radius: 20px;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.15);
	display: block;
}

.chalet-img-badge {
	position: absolute;
	bottom: -18px;
	left: 24px;
	background: #ea0505;
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	padding: 10px 22px;
	border-radius: 30px;
	box-shadow: 0 6px 18px rgba(234, 5, 5, 0.3);
	letter-spacing: 0.04em;
}

.chalet-img-badge i {
	margin-right: 6px;
	color: #ffd200;
}

/* --- Packages Section --- */
.chalet-packages-section {
	padding-top: 20px;
}

/* --- Pricing Card --- */
.chalet-price-card {
	background: #08405f;
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 20px 50px rgba(8, 64, 95, 0.25);
}

.chalet-price-header {
	background: linear-gradient(135deg, #0b2138, #08405f);
	padding: 28px 32px 20px;
	border-bottom: 2px solid rgba(255, 255, 255, 0.1);
}

.chalet-price-label {
	display: block;
	font-family: "Onest", sans-serif;
	font-size: 28px;
	color: #fff;
	line-height: 1.2;
}

.chalet-price-days {
	display: block;
	font-size: 15px;
	font-weight: 600;
	color: #f1b209;
	letter-spacing: 0.04em;
	margin-top: 4px;
}

.chalet-price-amount {
	padding: 30px 32px;
	border-bottom: 2px solid rgba(255, 255, 255, 0.1);
}

.chalet-price-value {
	display: block;
	font-family: "Onest", sans-serif;
	font-size: 72px;
	line-height: 1;
	color: #ffd200;
}

.chalet-price-note {
	display: block;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.6);
	margin-top: 6px;
	font-weight: 600;
}

.chalet-price-cta {
	padding: 28px 32px;
}

.chalet-reserve-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	background: #ea0505;
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	font-weight: 700;
	padding: 16px 28px;
	border-radius: 12px;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	box-shadow: 0 8px 20px rgba(234, 5, 5, 0.3);
	transition: all 0.3s ease;
}

.chalet-reserve-btn:hover {
	background: #c90404;
	color: #fff;
	transform: translateY(-3px);
	box-shadow: 0 12px 28px rgba(234, 5, 5, 0.4);
}

.chalet-reserve-note {
	font-size: 14px !important;
	color: rgba(255, 255, 255, 0.7) !important;
	font-weight: 400 !important;
	margin-top: 16px;
	margin-bottom: 0;
	line-height: 1.6 !important;
	text-align: center;
}

.chalet-reserve-note strong {
	color: #f1b209;
}

/* --- Feature List / Includes --- */
.chalet-includes-block {
	background: #fff;
	border-radius: 20px;
	padding: 40px 44px;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.07);
	border-top: 4px solid #f1b209;
}

.chalet-includes-title {
	font-family: "Onest", sans-serif;
	font-size: 32px;
	color: #08405f;
	margin-bottom: 28px;
}

.chalet-features-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.chalet-feature-item {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	align-items: center;
	padding: 14px 0;
	border-bottom: 1px solid #f0f0f0;
	transition: background 0.2s ease;
}

.chalet-feature-item:last-child {
	border-bottom: none;
}

.chalet-feature-icon {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	background: #ea0505;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.chalet-feature-icon i {
	color: #fff;
	font-size: 14px;
}

.chalet-feature-text {
	font-size: 17px;
	font-weight: 700;
	color: #0b2138;
	line-height: 1.4;
}

.chalet-feature-text em {
	font-style: normal;
	font-weight: 400;
	color: #666;
	font-size: 15px;
}

/* --- Responsive --- */
@media (max-width: 991.98px) {
	.chalet-intro-heading {
		font-size: 28px;
	}

	.chalet-price-value {
		font-size: 56px;
	}

	.chalet-includes-block {
		padding: 30px 24px;
		margin-top: 20px;
	}

	.chalet-intro-img-wrap {
		margin-top: 40px;
	}

	.chalet-img-badge {
		font-size: 13px;
		padding: 8px 18px;
	}
}

@media (max-width: 575.98px) {
	.chalet-page-section {
		padding: 50px 0 70px;
	}

	.chalet-intro-block {
		padding-bottom: 40px;
		margin-bottom: 40px;
	}

	.chalet-intro-heading {
		font-size: 24px;
	}

	.chalet-price-value {
		font-size: 48px;
	}

	.chalet-includes-title {
		font-size: 26px;
	}

	.chalet-includes-block {
		padding: 24px 18px;
	}
}

/* ==========================================================================
   Ticket Options Page
   ========================================================================== */

.tickets-page-section {
	padding: 70px 0;
	background: #f4f7fa;
}

/* --- Section Heading --- */
.tickets-section-heading {
	font-family: "Onest", sans-serif;
	font-size: 40px;
	color: #08405f;
	margin-bottom: 12px;
}

.tickets-section-sub {
	font-size: 17px;
	color: #555;
	font-weight: 400;
	max-width: 720px;
	margin-bottom: 36px;
}

/* --- Quick Reference Table --- */
.tickets-table-wrap {
	background: #fff;
	border-radius: 20px;
	padding: 40px;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.07);
	margin-bottom: 60px;
}

.tickets-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
}

.tickets-table thead tr {
	background: #08405f;
}

.tickets-table thead th {
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	padding: 16px 20px;
}

.tickets-table thead th:first-child {
	border-radius: 12px 0 0 0;
}

.tickets-table thead th:last-child {
	border-radius: 0 12px 0 0;
}

.tickets-table tbody tr {
	border-bottom: 1px solid #eef0f3;
	transition: background 0.2s ease;
}

.tickets-table tbody tr:hover {
	background: #f0f6ff;
}

.tickets-table tbody td {
	padding: 16px 20px;
	font-size: 16px;
	color: #222;
	vertical-align: middle;
}

.ticket-name i {
	color: #ea0505;
	margin-right: 8px;
}

.ticket-price {
	font-weight: 700;
	font-size: 18px;
	color: #08405f;
}

.badge-available {
	background: #e6f9f0;
	color: #1a7f4e;
	font-size: 13px;
	font-weight: 700;
	padding: 5px 14px;
	border-radius: 20px;
	border: 1px solid #b2e8ce;
}

.badge-limited {
	background: #fff4e0;
	color: #b45a00;
	font-size: 13px;
	font-weight: 700;
	padding: 5px 14px;
	border-radius: 20px;
	border: 1px solid #ffd08a;
}

.ticket-table-btn {
	display: inline-block;
	background: #ea0505;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	padding: 8px 18px;
	border-radius: 8px;
	text-decoration: none;
	transition: all 0.3s ease;
}

.ticket-table-btn:hover {
	background: #c90404;
	color: #fff;
	transform: translateY(-1px);
}

.ticket-table-btn-gold {
	background: #f1b209;
	color: #000;
}

.ticket-table-btn-gold:hover {
	background: #d9a008;
	color: #000;
}

/* --- Ticket Detail Cards --- */
.ticket-detail-card {
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
	margin-bottom: 40px;
	scroll-margin-top: 120px;
}

.br-20 img {
	border-radius: 20px;
}

.ticket-detail-card-alt {
	background: #f8fafd;
}

.ticket-detail-img-col {
	position: relative;
	padding: 40px;
}

.ticket-detail-img {
	position: sticky;
	top: 0;
}


.ticket-detail-img-overlay span {
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.ticket-detail-img-overlay i {
	margin-right: 6px;
}

.ticket-detail-img-overlay-gold {
	background: linear-gradient(to top, rgba(120, 80, 0, 0.88), transparent);
}

.ticket-detail-content {
	padding: 0;
}

.ticket-vip-badge {
	display: inline-block;
	background: #f1b209;
	color: #000;
	font-size: 12px;
	font-weight: 700;
	padding: 4px 14px;
	border-radius: 20px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin-bottom: 10px;
}

.ticket-detail-title {
	font-family: "Onest", sans-serif;
	font-size: 30px;
	color: #08405f;
	margin-bottom: 14px;
}

.ticket-detail-content>p {
	font-size: 16px;
	font-weight: 400;
	color: #555;
	line-height: 1.7;
	margin-bottom: 20px;
}

.ticket-detail-list {
	list-style: none;
	padding: 0;
	margin: 0 0 24px;
}

.ticket-detail-list li {
	font-size: 16px;
	font-weight: 600;
	color: #222;
	padding: 6px 0;
	display: flex;
	align-items: center;
	gap: 10px;
}

.ticket-detail-list li i {
	color: #ea0505;
	font-size: 16px;
	flex-shrink: 0;
}

/* --- Price Callout --- */
.ticket-price-callout {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	background: #fff8e1;
	border: 2px solid #f1b209;
	border-radius: 12px;
	padding: 18px 20px;
	margin-bottom: 24px;
}

.ticket-price-callout-gold {
	background: #08405f;
	border-color: #ffd200;
	flex-direction: column;
}

.ticket-price-callout-inner {
	display: flex;
	align-items: center;
	gap: 10px;
}

.tpc-label {
	font-size: 14px;
	font-weight: 700;
	color: #555;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.ticket-price-callout-gold .tpc-label {
	color: rgba(255, 255, 255, 0.7);
}

.tpc-price {
	font-family: "Onest", sans-serif;
	font-size: 28px;
	color: #08405f;
	line-height: 1;
}

.ticket-price-callout-gold .tpc-price {
	color: #ffd200;
	font-size: 36px;
}

.tpc-tax-note {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.6);
	font-weight: 600;
}

/* --- Buy Button --- */
.ticket-buy-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #ea0505;
	color: #fff;
	text-decoration: none;
	font-size: 17px;
	font-weight: 700;
	padding: 14px 28px;
	border-radius: 12px;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	box-shadow: 0 6px 18px rgba(234, 5, 5, 0.25);
	transition: all 0.3s ease;
}

.ticket-buy-btn:hover {
	background: #c90404;
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(234, 5, 5, 0.35);
}

.ticket-buy-btn-gold {
	background: linear-gradient(119deg, #f1b209 0%, #e08c00 100%);
	color: #000;
	box-shadow: 0 6px 18px rgba(241, 178, 9, 0.3);
}

.ticket-buy-btn-gold:hover {
	color: #000;
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(241, 178, 9, 0.45);
}

/* --- Contact CTA Block --- */
.tickets-contact-cta {
	background: #08405f;
	border-radius: 20px;
	padding: 40px 44px;
	margin-top: 20px;
}

.tickets-cta-heading {
	font-family: "Onest", sans-serif;
	font-size: 30px;
	color: #ffd200;
	margin-bottom: 10px;
}

.tickets-cta-text {
	font-size: 16px !important;
	font-weight: 400 !important;
	color: rgba(255, 255, 255, 0.85) !important;
	line-height: 1.7 !important;
	margin: 0;
}

.tickets-cta-text strong {
	color: #fff;
}

.tickets-cta-text a {
	color: #ffd200;
	text-decoration: none;
	font-weight: 700;
}

.tickets-cta-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: #ea0505;
	color: #fff;
	text-decoration: none;
	font-size: 20px;
	font-weight: 700;
	padding: 16px 28px;
	border-radius: 12px;
	box-shadow: 0 6px 18px rgba(234, 5, 5, 0.3);
	transition: all 0.3s ease;
}

.tickets-cta-btn:hover {
	background: #c90404;
	color: #fff;
	transform: translateY(-2px);
}

.boldtext {
	font-weight: bold;
}

strong {
	font-weight: bold !important;
}

hr {
	padding: 1px 0 1px 0;
	margin-top: 30px;
}


/* --- Responsive --- */
@media (max-width: 991.98px) {
	.tickets-table-wrap {
		padding: 24px;
	}

	.ticket-detail-content {
		padding: 28px 24px;
	}



	.tickets-contact-cta {
		padding: 30px 24px;
	}

	.tickets-cta-btn {
		margin-top: 10px;
	}
}

@media (max-width: 767.98px) {

	.tickets-table thead th,
	.tickets-table tbody td {
		padding: 12px 12px;
		font-size: 14px;
	}

	.ticket-detail-title {
		font-size: 24px;
	}

	.tickets-section-heading {
		font-size: 28px;
	}

	.ticket-price-callout {
		flex-direction: column;
	}

	.tickets-cta-heading {
		font-size: 24px;
	}
}

/* --- Airport Reserved Parking Card --- */
.parking-highlight-text {
	color: #ea0505;
	font-weight: 700;
	font-style: italic;
	font-size: 18px !important;
	margin-bottom: 12px;
}

.parking-notes-list li {
	font-size: 16px;
	font-weight: 600;
	color: #0b2138;
	line-height: 1.6;
	padding: 7px 0;
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.parking-notes-list li i {
	color: #ea0505;
	font-size: 16px;
	margin-top: 3px;
	flex-shrink: 0;
}

.parking-notes-list li:last-child {
	color: #ea0505;
}

.parking-notes-list li:last-child i {
	color: #ea0505;
}

.parking-price-callout {
	background: #fff8e1;
	border: 2px solid #f1b209;
	max-width: 500px;
	justify-content: center;
}

.parking-price-label-row {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
}

.parking-days-text {
	font-size: 18px;
	font-weight: 900;
	color: #0b2138;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.parking-price-amount {
	font-size: 22px;
	font-weight: 900;
	color: #ea0505;
	letter-spacing: 0.02em;
}

/* --- Airport Gold VIP Parking Card --- */
.vip-parking-card {
	background: #fff;
}

.vip-parking-content {
	padding: 36px 44px;
}

.vip-parking-body {
	font-size: 16px !important;
	font-weight: 400 !important;
	color: #333 !important;
	line-height: 1.8 !important;
	margin-bottom: 24px;
}

.vip-parking-red {
	color: #ea0505;
	font-weight: 700;
	font-style: italic;
}

.vip-parking-blue {
	color: #08405f;
	font-weight: 700;
	font-style: italic;
}

.vip-parking-link {
	color: #08405f;
	font-weight: 700;
	text-decoration: underline;
}

.vip-parking-link:hover {
	color: #ea0505;
}

.vip-parking-price-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 20px;
}

.vip-parking-days {
	font-size: 20px;
	font-weight: 900;
	color: #0b2138;
	letter-spacing: 0.02em;
}

.vip-parking-price {
	font-size: 20px;
	font-weight: 900;
	color: #ea0505;
}

.vip-parking-btn-wrap {
	display: inline-block;
}

@media (max-width: 767.98px) {
	.vip-parking-content {
		padding: 24px 20px;
	}

	.vip-parking-days,
	.vip-parking-price {
		font-size: 17px;
	}
}

/* --- Herky Hill advance note --- */
.herky-advance-note {
	font-style: italic;
}

.herky-advance-note .vip-parking-link {
	color: #08405f;
	font-style: italic;
}

/* --- General Admission price list --- */
.ga-red-note {
	color: #ea0505;
	font-weight: 700;
}

.ga-price-list {
	list-style: none;
	padding: 0;
	margin: 0 0 24px;
}

.ga-price-list li {
	font-size: 16px;
	font-weight: 900;
	color: #ea0505;
	padding: 6px 0;
	line-height: 1.4;
}

.ga-price-list li span {
	color: #ea0505;
}

/* --- Chairman's Club nested list --- */
.chairmans-list {
	list-style: none;
	padding: 0;
	margin: 0 0 24px;
}

.chairmans-list>li {
	font-size: 16px;
	font-weight: 700;
	color: #ea0505;
	padding: 5px 0;
	display: flex;
	align-items: flex-start;
	gap: 10px;
	flex-wrap: wrap;
}

.chairmans-list>li>i {
	color: #ea0505;
	margin-top: 3px;
	flex-shrink: 0;
}

.chairmans-sub-list {
	list-style: none;
	padding: 0;
	margin: 4px 0 0 18px;
	width: 100%;
}

.chairmans-sub-list li {
	font-size: 15px;
	font-weight: 700;
	color: #ea0505;
	padding: 3px 0;
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

.chairmans-sub-list li i {
	color: #ea0505;
	margin-top: 3px;
	flex-shrink: 0;
}

/* --- 4-Pack list override (arrow items in red) --- */
.fourpack-list li {
	color: #ea0505;
}

.fourpack-list li i {
	color: #ea0505;
}

/* --- Chairman's Club Includes Grid --- */
.chairmans-includes-grid {
	margin-bottom: 24px;
}

.ci-item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 6px 0;
	border-bottom: 1px solid #fce8e8;
}

.ci-item:last-child {
	border-bottom: none;
}

.ci-icon {
	color: #ea0505;
	font-size: 14px;
	margin-top: 3px;
	flex-shrink: 0;
	width: 18px;
}

.ci-text {
	font-size: 16px;
	font-weight: 700;
	color: #ea0505;
	line-height: 1.5;
}

.ci-text-group {
	display: flex;
	flex-direction: column;
	gap: 4px;
	width: 100%;
}

.ci-item-parent>.ci-text-group>.ci-text {
	font-size: 16px;
	font-weight: 700;
	color: #ea0505;
}

.ci-sub-item {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	padding: 3px 0 3px 10px;
}

.ci-sub-indent {
	padding-left: 28px;
}

.ci-sub-icon {
	color: #ea0505;
	font-size: 12px;
	flex-shrink: 0;
}

.ci-sub-item span:last-child {
	font-size: 15px;
	font-weight: 700;
	color: #ea0505;
	line-height: 1.5;
}
.providerr_img{position:sticky; top:0;}
/* =========================================
   Chairman's Club Yellow Price Banner
   ========================================= */
.chairmans-price-banner {
	position: relative;
	background: linear-gradient(135deg, #f9a800 0%, #ffcc00 40%, #f9a800 70%, #e08c00 100%);
	border-radius: 16px;
	overflow: hidden;
	padding: 55px 40px;
	text-align: center;
	margin-bottom: 40px;
}

/* Diagonal decorative shapes */
.cpb-diag {
	position: absolute;
	background: rgba(255, 255, 255, 0.12);
	border-radius: 6px;
}

.cpb-diag-1 {
	width: 180px;
	height: 180px;
	top: -60px;
	left: -40px;
	transform: rotate(30deg);
}

.cpb-diag-2 {
	width: 140px;
	height: 140px;
	top: 20px;
	left: 60px;
	transform: rotate(45deg);
	background: rgba(255, 255, 255, 0.08);
}

.cpb-diag-3 {
	width: 200px;
	height: 200px;
	bottom: -70px;
	right: -50px;
	transform: rotate(25deg);
}

.cpb-diag-4 {
	width: 120px;
	height: 120px;
	bottom: 10px;
	right: 80px;
	transform: rotate(50deg);
	background: rgba(255, 255, 255, 0.07);
}

.cpb-content {
	position: relative;
	z-index: 2;
}

.cpb-line {
	font-size: 28px;
	font-weight: 900;
	line-height: 1.3;
	margin: 0 0 4px;
	font-family: 'Montserrat', sans-serif;
	letter-spacing: 0.01em;
}

.cpb-red {
	color: #cc0000;
	text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.08);
}

.cpb-buy-btn {
	display: inline-block;
	margin-top: 16px;
	font-size: 34px;
	font-weight: 900;
	color: #0a2fff;
	text-decoration: none;
	font-family: 'Montserrat', sans-serif;
	letter-spacing: 0.02em;
	transition: color 0.2s ease, transform 0.2s ease;
}

.cpb-buy-btn:hover {
	color: #0000cc;
	transform: scale(1.04);
}

@media (max-width: 767.98px) {
	.cpb-line {
		font-size: 22px;
	}

	.cpb-buy-btn {
		font-size: 26px;
	}

	.chairmans-price-banner {
		padding: 40px 24px;
	}
}

/* --- Box Seating plain list --- */
.box-seating-list {
	list-style: none;
	padding: 0;
	margin: 0 0 24px;
}

.box-seating-list li {
	font-size: 16px;
	font-weight: 600;
	color: #222;
	padding: 5px 0;
	border-bottom: 1px solid #eee;
	line-height: 1.5;
}

.box-seating-list li:last-child {
	border-bottom: none;
	font-style: italic;
}

/* =========================================
   Airshow Information Section
   ========================================= */
.airshow-info-section {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.07);
	padding: 40px 44px;
	margin-bottom: 40px;
}

.airshow-info-section p {
	font-size: 15px;
	color: #333;
	line-height: 1.8;
	margin-bottom: 18px;
}

.ai-blue-label {
	color: #08405f;
	font-weight: 800;
}

.ai-red-italic {
	color: #ea0505;
	font-weight: 700;
}

.ai-red-bold {
	color: #ea0505;
	font-weight: 800;
}

.ai-faq-link {
	color: #08405f;
	font-weight: 700;
	text-decoration: underline;
}

.ai-faq-link:hover {
	color: #ea0505;
}

/* Arrow list */
.ai-arrow-list {
	list-style: none;
	padding: 0;
	margin: 20px 0 0;
}

.ai-arrow-list li {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 12px 0;
	border-bottom: 1px solid #f0e8e8;
	font-size: 15px;
	color: #222;
	line-height: 1.75;
}

.ai-arrow-list li:last-child {
	border-bottom: none;
}

.ai-arrow {
	color: #ea0505;
	font-size: 15px;
	margin-top: 4px;
	flex-shrink: 0;
}

.form-floating>label {
	font-size: 16px;
}

@media (max-width: 767.98px) {
	.airshow-info-section {
		padding: 28px 20px;
	}
}

/* =========================================
   About Us Page
   ========================================= */

/* --- Intro Banner --- */
.about-intro-card {
	position: relative;
	background: linear-gradient(135deg, #08405f 0%, #0a5278 100%);
	border-radius: 16px;
	padding: 44px 50px;
	margin-bottom: 32px;
	overflow: hidden;
}

.about-intro-accent {
	position: absolute;
	top: -40px;
	right: -40px;
	width: 200px;
	height: 200px;
	background: rgba(241, 178, 9, 0.15);
	border-radius: 50%;
}

.about-intro-text {
	font-size: 17px;
	color: #fff;
	line-height: 1.9;
	margin: 0;
	position: relative;
	z-index: 1;
}

.about-intro-text strong {
	color: #f1b209;
	font-weight: 800;
}

/* --- Founder Bio Card --- */
.about-bio-card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 6px 28px rgba(0, 0, 0, 0.08);
	margin-bottom: 28px;
	overflow: hidden;
	border-left: 5px solid #ea0505;
}

.about-bio-logo-col {
	padding: 36px 24px;
}

.about-bio-logo-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.about-bio-logo {
	max-width: 160px;
	width: 100%;
	object-fit: contain;
}

.about-bio-text-col {
	padding: 32px 36px;
}

.about-bio-text-col p {
	font-size: 16px;
	color: #333;
	line-height: 1.85;
	margin: 0;
}

.about-bio-text-col strong {
	color: #08405f;
}

/* --- Generic content card --- */
.about-content-card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
	padding: 36px 44px;
	margin-bottom: 28px;
}

.about-content-card p {
	font-size: 16px;
	color: #333;
	line-height: 1.85;
	margin-bottom: 16px;
}

.about-content-card p:last-child {
	margin-bottom: 0;
}

/* --- History Card with Wings Logo --- */
.about-history-card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
	padding: 36px 44px;
	margin-bottom: 28px;
}

.about-history-card p {
	font-size: 16px;
	color: #333;
	line-height: 1.85;
	margin-bottom: 16px;
}

.about-history-card p:last-child {
	margin-bottom: 0;
}

.about-wings-logo {
	max-width: 220px;
	width: 100%;
	object-fit: contain;
	filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.12));
}


/* --- Timeline Cards --- */
.about-timeline-wrap {
	margin-bottom: 28px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.about-timeline-item {
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.07);
	padding: 24px 32px;
	display: flex;
	align-items: flex-start;
	gap: 24px;
	border-left: 5px solid #f1b209;
}

.atl-year {
	font-size: 22px;
	font-weight: 900;
	color: #08405f;
	white-space: nowrap;
	min-width: 72px;
	padding-top: 2px;
}

.atl-text {
	font-size: 15px;
	color: #444;
	line-height: 1.8;
}

/* --- Economic Impact Card --- */
.about-impact-card {
	background: linear-gradient(135deg, #fff8e1 0%, #fffde7 100%);
	border: 2px solid #f1b209;
	border-radius: 16px;
	padding: 36px 44px;
	margin-bottom: 28px;
}

.about-impact-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #f1b209;
	color: #0b2138;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 6px 16px;
	border-radius: 30px;
	margin-bottom: 20px;
}

.about-impact-card p {
	font-size: 15.5px;
	color: #333;
	line-height: 1.85;
	margin-bottom: 14px;
}

.about-impact-card p:last-child {
	margin-bottom: 0;
}

/* --- Closing / Quote Card --- */
.about-closing-card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.07);
	padding: 36px 44px;
	margin-bottom: 40px;
}

.about-closing-quote {
	position: relative;
	padding-left: 32px;
	border-left: 4px solid #ea0505;
	margin-bottom: 24px;
}

.about-quote-icon {
	color: #ea0505;
	font-size: 26px;
	margin-bottom: 12px;
	display: block;
}

.about-closing-quote p {
	font-size: 16px;
	color: #444;
	line-height: 1.9;
	font-style: italic;
	margin: 0;
}

.about-closing-cta {
	font-size: 18px;
	font-weight: 700;
	color: #08405f;
	margin: 0;
	text-align: center;
	letter-spacing: 0.01em;
}

.pagecontent .sponsor-slide {
	padding: 4px;
}

/* --- Responsive --- */
@media (max-width: 991.98px) {
	.about-bio-logo-col {
		padding: 28px 20px;
	}

	.about-bio-text-col {
		padding: 28px 24px;
	}

	.about-history-card,
	.about-content-card,
	.about-impact-card,
	.about-closing-card {
		padding: 28px 24px;
	}

	.about-intro-card {
		padding: 32px 28px;
	}

	.about-wings-logo {
		max-width: 160px;
		margin-top: 20px;
	}
}

@media (max-width: 767.98px) {
	.about-timeline-item {
		flex-direction: column;
		gap: 8px;
		padding: 20px 20px;
	}

	.about-intro-card {
		padding: 28px 20px;
	}

	.about-intro-text {
		font-size: 15px;
	}

	.about-closing-quote {
		padding-left: 20px;
	}
}

/* =========================================
   Air Show Staff Page
   ========================================= */

/* --- Contact Banner --- */
.staff-contact-banner {
	background: linear-gradient(135deg, #f4f7fa 0%, #e9eff5 100%);
	border-left: 5px solid #08405f;
	border-radius: 8px;
	padding: 24px 30px;
	margin-bottom: 40px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
}

.staff-banner-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 20px;
}

.staff-banner-left {
	display: flex;
	align-items: flex-start;
	gap: 20px;
}

.staff-banner-icon {
	font-size: 24px;
	color: #ea0505;
	background: rgba(234, 5, 5, 0.1);
	padding: 12px;
	border-radius: 50%;
	display: inline-block;
	margin-top: 3px;
}

.staff-banner-main {
	font-size: 18px;
	font-weight: 700;
	color: #0b2138;
	margin-bottom: 6px;
}

.staff-banner-main a {
	color: #ea0505;
	text-decoration: none;
	transition: color 0.3s ease;
}

.staff-banner-main a:hover {
	color: #08405f;
	text-decoration: underline;
}

.staff-banner-sub {
	font-size: 14px;
	color: #555;
	margin: 0;
	font-style: italic;
}

/* --- Staff Group Card --- */
.staff-group-card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.06);
	padding: 40px;
	margin-bottom: 35px;
	border: 1px solid rgba(0, 0, 0, 0.03);
}

.staff-group-header {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 30px;
	border-bottom: 2px solid #f4f7fa;
	padding-bottom: 15px;
}

.staff-group-icon {
	font-size: 18px;
	color: #fff;
	background: #f1b209;
	width: 38px;
	height: 38px;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.staff-group-icon-red {
	background: #ea0505;
}

.staff-group-title {
	font-size: 24px;
	color: #08405f;
	margin: 0;
	letter-spacing: -0.02em;
}

/* --- Member Items --- */
.staff-member-list {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.staff-member-item {
	display: flex;
	align-items: center;
	gap: 14px;
	font-size: 17px;
	color: #333;
	line-height: 1.6;
	padding: 12px 18px;
	background: #fdfdfd;
	border-radius: 8px;
	border: 1px solid #f2f2f2;
	transition: all 0.3s ease;
}

.staff-member-item:hover {
	transform: translateX(5px);
	background: #f9fbfd;
	border-color: #dbe4ee;
}

.staff-arrow {
	color: #ea0505;
	font-size: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.3s ease;
}

.staff-member-item:hover .staff-arrow {
	transform: scale(1.2);
}

.staff-name-link {
	color: #007bff;
	font-weight: 700;
	text-decoration: none;
}

.staff-name-link:hover {
	color: #ea0505;
	text-decoration: underline;
}

.staff-phone {
	color: #ea0505;
	font-weight: 600;
	text-decoration: none;
	transition: color 0.3s ease;
}

.staff-phone:hover {
	color: #08405f;
	text-decoration: underline;
}

/* --- Staff Responsive --- */
@media (max-width: 767.98px) {


	.staff-contact-banner {
		padding: 20px;
	}

	.staff-banner-left {
		flex-direction: column;
		gap: 12px;
	}

	.staff-banner-icon {
		margin-top: 0;
	}

	.staff-group-card {
		padding: 24px 20px;
	}

	.staff-group-title {
		font-size: 20px;
	}

	.staff-member-item {
		font-size: 15px;
		padding: 10px 14px;
	}
}

/* =========================================
   FAQ Page
   ========================================= */



.faq-intro-block {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
	padding: 40px;
	margin-bottom: 30px;
	border: 1px solid rgba(0, 0, 0, 0.02);
}

.faq-page-subtitle {
	font-size: 26px;
	color: #08405f;
	margin-bottom: 20px;
	letter-spacing: -0.01em;
}

.faq-intro-p {
	font-size: 16.5px;
	line-height: 1.85;
	color: #444;
}

.faq-list-intro-p {
	font-size: 16px;
	font-weight: 600;
	color: #333;
	margin-top: 20px;
}

.faq-text-link {
	color: #ea0505;
	text-decoration: underline;
	font-weight: 700;
}

.faq-text-link:hover {
	color: #08405f;
}

.faq-ticket-list li {
	font-size: 15.5px;
	color: #444;
	padding: 8px 0;
	display: flex;
	align-items: center;
}

.faq-day-specific-note {
	margin-top: 30px;
	background: #fffde7;
	border: 1px solid #f1b209;
	border-radius: 10px;
	padding: 16px 24px;
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 16px;
	color: #333;
}

.faq-day-specific-note i {
	color: #f1b209;
	font-size: 20px;
}

/* --- Warning Card --- */
.faq-warning-card {
	background: #fff5f5;
	border-left: 5px solid #ea0505;
	border-radius: 12px;
	padding: 30px 40px;
	margin-bottom: 40px;
	box-shadow: 0 4px 18px rgba(234, 5, 5, 0.05);
}

.faq-warning-header {
	font-size: 16px;
	font-weight: 800;
	color: #ea0505;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin-bottom: 12px;
	display: flex;
	align-items: center;
}

.faq-warning-body {
	font-size: 14.5px;
	line-height: 1.8;
	color: #555;
	margin: 0;
}

/* --- FAQ Accordion --- */
.faq-accordion-wrap {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.faq-item {
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.04);
	border: 1px solid #f2f2f2;
	overflow: hidden;
	transition: all 0.3s ease;
}

.faq-item:hover {
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.07);
}

.faq-item.active {
	border-left: 5px solid #ea0505;
	background: #fcfdfe;
}

.faq-trigger {
	width: 100%;
	background: none;
	border: none;
	padding: 24px 30px;
	text-align: left;
	display: flex;
	align-items: center;
	gap: 16px;
	cursor: pointer;
	outline: none !important;
}

.faq-q-badge {
	background: #08405f;
	color: #fff;
	font-weight: 800;
	font-size: 15px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.faq-item.active .faq-q-badge {
	background: #ea0505;
}

.faq-question {
	font-size: 17px;
	font-weight: 700;
	color: #0b2138;
	flex-grow: 1;
	line-height: 1.45;
	transition: color 0.25s ease;
}

.faq-trigger:hover .faq-question {
	color: #ea0505;
}

.faq-icon-indicator {
	font-size: 16px;
	color: #888;
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: transform 0.3s ease;
}

.faq-item.active .faq-icon-indicator {
	color: #ea0505;
}

.faq-content-pane {
	border-top: 1px solid #f4f7fa;
}

.faq-answer-inner {
	padding: 24px 30px;
	display: flex;
	align-items: flex-start;
	gap: 16px;
	background: #fafbfc;
}

.faq-a-badge {
	background: #ea0505;
	color: #fff;
	font-weight: 800;
	font-size: 15px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.faq-answer-inner p {
	font-size: 16px;
	line-height: 1.8;
	color: #444;
	margin: 0;
	padding-top: 2px;
}

/* --- FAQ Responsive --- */
@media (max-width: 767.98px) {
	.faq-page-wrap {
		padding: 40px 0 20px;
	}

	.faq-intro-block {
		padding: 24px 20px;
	}

	.faq-page-subtitle {
		font-size: 21px;
	}

	.faq-warning-card {
		padding: 20px;
	}

	.faq-trigger {
		padding: 18px 20px;
		gap: 12px;
	}

	.faq-question {
		font-size: 15px;
	}

	.faq-answer-inner {
		padding: 18px 20px;
		gap: 12px;
	}

	.faq-answer-inner p {
		font-size: 14.5px;
	}

	.faq-q-badge,
	.faq-a-badge {
		width: 28px;
		height: 28px;
		font-size: 13px;
	}
}

/* =========================================
   Schedule Page
   ========================================= */


/* --- Notice Card --- */
.sched-notice-card {
	background: #fff9f9;
	border-left: 5px solid #ea0505;
	border-radius: 12px;
	padding: 24px 30px;
	box-shadow: 0 4px 18px rgba(234, 5, 5, 0.05);
	display: flex;
	align-items: center;
	gap: 20px;
}

.sched-notice-icon {
	color: #ea0505;
	font-size: 26px;
	flex-shrink: 0;
	background: rgba(234, 5, 5, 0.08);
	width: 50px;
	height: 50px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.sched-notice-content {
	font-size: 15px;
	line-height: 1.7;
	color: #444;
}

/* --- Info Cards --- */
.sched-info-card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.04);
	padding: 30px;
	height: 100%;
	border: 1px solid rgba(0, 0, 0, 0.02);
	transition: transform 0.3s ease;
}

.sched-info-card:hover {
	transform: translateY(-3px);
}

.sched-card-title {
	font-size: 18px;
	margin-bottom: 15px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.sched-info-card p {
	font-size: 14.5px;
	line-height: 1.7;
	color: #555;
	margin: 0;
}

.info-weather {
	border-top: 4px solid #08405f;
}

.info-weather .sched-card-title {
	color: #08405f;
}

.info-performers {
	border-top: 4px solid #ea0505;
}

.info-performers .sched-card-title {
	color: #ea0505;
}

/* --- Timeline Column --- */
.sched-timeline-container {
	background: #fff;
	border-radius: 20px;
	border: 1px solid rgba(0, 0, 0, 0.02);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
	padding: 40px;
}

.sched-section-header {
	margin-bottom: 40px;
	border-bottom: 2px solid #f4f7fa;
	padding-bottom: 20px;
}

.sched-section-title {
	font-size: 26px;
	color: #08405f;
	margin-bottom: 12px;
	letter-spacing: -0.01em;
}

.sched-header-meta {
	display: flex;
	align-items: center;
	gap: 15px;
	flex-wrap: wrap;
}

.sched-badge-draft {
	background: #ea0505;
	color: #fff;
	font-weight: 800;
	font-size: 12px;
	padding: 4px 10px;
	border-radius: 6px;
	letter-spacing: 0.05em;
}

.sched-ticket-alert {
	color: #f1b209;
	font-weight: 700;
	font-size: 15px;
	display: flex;
	align-items: center;
	gap: 8px;
}

/* --- Timeline Layout --- */
.sched-timeline {
	position: relative;
	padding-left: 24px;
	border-left: 3px dashed #dbe4ee;
}

.sched-day-group {
	margin-bottom: 40px;
}

.sched-day-group:last-child {
	margin-bottom: 10px;
}

.sched-day-header {
	position: relative;
	left: -44px;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 16px;
	font-weight: 800;
	color: #fff;
	padding: 8px 20px;
	border-radius: 30px;
	margin-bottom: 22px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.day-tuesday {
	background: #08405f;
}

.day-wednesday {
	background: #5c7f9c;
}

.day-thursday {
	background: #34495e;
}

.day-friday {
	background: #2c3e50;
}

.day-saturday {
	background: #ea0505;
}

.day-sunday {
	background: #7f8c8d;
}

.sched-timeline-items {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.sched-item {
	display: flex;
	gap: 20px;
	background: #f8fafc;
	padding: 16px 20px;
	border-radius: 10px;
	border: 1px solid #edf2f7;
	transition: all 0.3s ease;
	position: relative;
}

.sched-item::before {
	content: '';
	position: absolute;
	left: -29.5px;
	top: 50%;
	transform: translateY(-50%);
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #cbd5e1;
	border: 2px solid #fff;
	transition: all 0.3s ease;
}

.sched-item:hover::before {
	background: #ea0505;
	transform: translateY(-50%) scale(1.3);
}

.sched-item:hover {
	transform: translateX(5px);
	background: #f1f5f9;
	border-color: #cbd5e1;
}

.sched-time-col {
	width: 150px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
}

.time-badge {
	font-size: 13.5px;
	font-weight: 700;
	color: #08405f;
	background: rgba(8, 64, 95, 0.08);
	padding: 6px 12px;
	border-radius: 20px;
	text-align: center;
	display: inline-block;
	width: 100%;
}

.badge-red {
	color: #ea0505;
	background: rgba(234, 5, 5, 0.08);
}

.badge-gold {
	color: #b38600;
	background: rgba(241, 178, 9, 0.12);
}

.badge-dark {
	color: #fff;
	background: #555;
}

.sched-details-col {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.sched-item-title {
	font-size: 15.5px;
	color: #2d3748;
	margin: 0;
	line-height: 1.4;
}

.title-highlight {
	color: #ea0505;
}

.text-danger {
	color: #ea0505 !important;
}

.text-warning-gold {
	color: #d49a00 !important;
}

.sched-item-desc {
	font-size: 13.5px;
	color: #718096;
	margin-top: 4px;
	margin-bottom: 0;
}

/* --- Major Events Highlight --- */
.item-major {
	background: linear-gradient(135deg, #fffcf5 0%, #fff7e6 100%);
	border-left: 4px solid #f1b209;
}

.item-major::before {
	background: #f1b209;
	width: 12px;
	height: 12px;
	left: -30.5px;
}

/* --- No Show Sunday --- */
.item-no-show {
	border-left: 4px solid #555;
}

.item-no-show::before {
	background: #555;
}

/* --- Welcome Card --- */
.sched-welcome-card {
	background: #fff;
	border-radius: 20px;
	border: 1px solid rgba(0, 0, 0, 0.02);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
	padding: 40px;
	position: sticky;
	top: 30px;
}

.welcome-title {
	font-size: 22px;
	color: #08405f;
	margin-bottom: 25px;
	padding-bottom: 15px;
	border-bottom: 2px solid #f4f7fa;
}

.welcome-body p {
	font-size: 15px;
	line-height: 1.8;
	color: #4a5568;
	margin-bottom: 20px;
}

.welcome-body p:last-child {
	margin-bottom: 0;
}

.welcome-closing {
	margin-top: 35px;
	padding-top: 20px;
	border-top: 1px solid #f4f7fa;
}

.closing-text {
	font-style: italic;
	color: #718096;
	margin-bottom: 10px;
	font-size: 14.5px;
}

.closing-sign {
	font-size: 16px;
	color: #08405f;
	line-height: 1.5;
	margin: 0;
}

.closing-sub {
	font-size: 13.5px;
}

/* --- Schedule Responsive --- */
@media (max-width: 991.98px) {
	.sched-welcome-card {
		position: static;
		margin-top: 10px;
	}
}

@media (max-width: 767.98px) {
	.sched-page-wrap {
		padding: 40px 0 20px;
	}

	.sched-notice-card {
		padding: 20px;
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}

	.sched-info-card {
		padding: 20px;
	}

	.sched-timeline-container {
		padding: 24px 20px;
	}

	.sched-section-title {
		font-size: 21px;
	}

	.sched-timeline {
		padding-left: 16px;
	}

	.sched-day-header {
		left: -32px;
		font-size: 14px;
		padding: 6px 14px;
	}

	.sched-item {
		flex-direction: column;
		gap: 10px;
		padding: 14px 16px;
	}

	.sched-time-col {
		width: auto;
	}

	.time-badge {
		width: auto;
		display: inline-block;
	}

	.sched-item::before {
		left: -22.5px;
	}

	.item-major::before {
		left: -23.5px;
	}

	.sched-welcome-card {
		padding: 24px 20px;
	}
}

/* =========================================
   About Ocala Page
   ========================================= */


/* --- Intro Section --- */
.ocala-intro-section {
	background: #fff;
	border-radius: 24px;
	padding: 40px;
	box-shadow: 0 0px 30px rgb(0 0 0 / 11%);
	border: 1px solid rgba(0, 0, 0, 0.02);
	margin-bottom: 50px;
}

.ocala-section-badge {
	background: rgb(234 5 5 / 10%);
	color: #ea0505;
	font-size: 11.5px;
	font-weight: 800;
	padding: 6px 14px;
	border-radius: 30px;
	display: inline-block;
	margin-bottom: 16px;
	letter-spacing: 0.05em;
}

.ocala-intro-title {
	font-size: 32px;
	font-weight: 800;
	color: #08405f;
	margin-bottom: 20px;
	letter-spacing: -0.01em;
}

.ocala-intro-lead {
	font-size: 16.5px;
	line-height: 1.8;
	color: #4a5568;
	margin-bottom: 16px;
}

.ocala-intro-sub {
	font-size: 14.5px;
	line-height: 1.75;
	color: #718096;
	margin: 0;
}

.ocala-intro-image-wrapper {
	position: relative;
	overflow: hidden;
	border-radius: 16px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.ocala-intro-image {
	transition: transform 0.5s ease;
	width: 100%;
	height: auto;
	display: block;
}

.ocala-intro-image-wrapper:hover .ocala-intro-image {
	transform: scale(1.05);
}

.ocala-image-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(to top, rgba(8, 64, 95, 0.85) 0%, rgba(8, 64, 95, 0) 100%);
	padding: 24px;
	text-align: center;
}

.overlay-text {
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

/* --- Guide Cards --- */
.ocala-guide-card {
	background: #fff;
	border-radius: 20px;
	border: 1px solid rgba(0, 0, 0, 0.02);
	box-shadow: 0 8px 30px rgb(0 0 0 / 11%);
	padding: 35px;
	height: 100%;
	display: flex;
	flex-direction: column;
	transition: all 0.3s ease;
}

.ocala-guide-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 12px 35px rgba(0, 0, 0, 0.08);
}

.ocala-guide-card .card-icon {
	font-size: 26px;
	width: 55px;
	height: 55px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 25px;
}

.card-lodging .card-icon {
	background: rgba(8, 64, 95, 0.08);
	color: #08405f;
}

.card-dining .card-icon {
	background: rgba(234, 5, 5, 0.08);
	color: #ea0505;
}

.card-shopping .card-icon {
	background: rgba(241, 178, 9, 0.12);
	color: #b38600;
}

.ocala-guide-card .card-title {
	font-size: 22px;
	font-weight: 800;
	color: #08405f;
	margin-bottom: 16px;
}

.ocala-guide-card .card-text {
	font-size: 14.5px;
	line-height: 1.75;
	color: #555;
	flex-grow: 1;
	margin-bottom: 20px;
}

.card-callout {
	background: #fffcf5;
	border-left: 3px solid #f1b209;
	padding: 15px;
	border-radius: 0 8px 8px 0;
}

.callout-text {
	font-size: 13px;
	line-height: 1.6;
	color: #666;
	margin: 0;
}

.callout-text i {
	color: #f1b209;
	margin-right: 6px;
}

.callout-link {
	color: #08405f;
	font-weight: 700;
	text-decoration: underline;
}

.callout-link:hover {
	color: #ea0505;
}

.card-link-wrap {
	margin-top: auto;
}

.card-btn-link {
	color: #08405f;
	font-weight: 700;
	font-size: 14.5px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	transition: all 0.2s ease;
	text-decoration: none;
}

.card-btn-link:hover {
	color: #ea0505;
	gap: 10px;
}

/* --- About Ocala Responsive --- */
@media (max-width: 991.98px) {

	.ocala-intro-title {
		font-size: 26px;
	}
}

@media (max-width: 767.98px) {

	.ocala-intro-section {
		padding: 25px;
	}


	.ocala-guide-card {
		padding: 24px 20px;
	}
}

/* =========================================
   Directions Section
   ========================================= */

.directions-section {
	margin-top: 50px;
	background: #fff;
	border-radius: 24px;
	padding: 45px 40px;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
	border: 1px solid rgba(0, 0, 0, 0.02);
}

.directions-header {
	display: flex;
	align-items: center;
	gap: 20px;
	border-bottom: 2px dashed #f0f4f8;
	padding-bottom: 25px;
	margin-bottom: 30px;
}

.directions-icon-box {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: rgba(234, 5, 5, 0.08);
	color: #ea0505;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 26px;
}

.directions-main-title {
	font-size: 28px;
	color: #08405f;
	margin: 0 0 6px;
}

.directions-subtitle {
	font-size: 15px;
	color: #718096;
	margin: 0;
}

.direction-route-card {
	background: #fdfdfd;
	border: 1px solid #f0f4f8;
	border-radius: 16px;
	padding: 25px;
	height: 100%;
	transition: all 0.3s ease;
}

.direction-route-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.03);
	border-color: rgba(234, 5, 5, 0.15);
}

.route-title {
	font-size: 18px;
	color: #08405f;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
	border-left: 4px solid #ea0505;
	padding-left: 12px;
}

.route-heading-icon {
	color: #f1b209;
	font-size: 16px;
}

.route-steps li {
	font-size: 14.5px;
	line-height: 1.65;
	color: #4a5568;
	margin-bottom: 12px;
	display: flex;
	align-items: flex-start;
}



.step-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(234, 5, 5, 0.1);
	color: #ea0505;
	font-size: 10px;
	margin-right: 12px;
	flex-shrink: 0;
	margin-top: 2px;
}


/* Responsive */
@media (max-width: 767.98px) {
	.directions-section {
		padding: 30px 20px;
	}

	.directions-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 15px;
	}

	.directions-main-title {
		font-size: 22px;
	}
}

/* =========================================
   Volunteer Opportunities Page
   ========================================= */


/* --- Intro Card --- */
.volunteer-intro-card {
	background: #fff;
	border-radius: 20px;
	padding: 35px 40px;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
	border-left: 5px solid #ea0505;
	display: flex;
	align-items: center;
	gap: 30px;
	margin-bottom: 45px;
}

.intro-card-icon {
	width: 70px;
	height: 70px;
	border-radius: 50%;
	background: rgba(234, 5, 5, 0.08);
	color: #ea0505;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 32px;
	flex-shrink: 0;
}

.volunteer-title {
	font-size: 28px;
	color: #08405f;
	margin-bottom: 8px;
}

.volunteer-lead {
	font-size: 15.5px;
	line-height: 1.65;
	color: #4a5568;
	margin: 0;
}

.volunteer-lead .phone-link {
	color: #ea0505;
	font-weight: 800;
	text-decoration: none;
	transition: color 0.2s ease;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.volunteer-lead .phone-link:hover {
	color: #08405f;
}

/* --- Details Card --- */
.volunteer-details-card {
	position: relative;
	background: #fff;
	border-radius: 24px;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
	border: 1px solid rgba(0, 0, 0, 0.02);
	margin-bottom: 50px;
	overflow: hidden;
}



.card-main-content {
	padding: 50px 45px;
}

.card-subtitle {
	font-size: 24px;
	color: #08405f;
	margin-bottom: 12px;
}

.non-profit-badge {
	background: rgba(8, 64, 95, 0.08);
	color: #08405f;
	font-size: 11px;
	font-weight: 800;
	padding: 4px 10px;
	border-radius: 4px;
	display: inline-block;
	margin-bottom: 20px;
	letter-spacing: 0.05em;
}

.concessions-text {
	font-size: 15px;
	line-height: 1.8;
	color: #555;
	margin: 0;
}



.concessions-cta-box .cta-desc {
	font-size: 14.5px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.95);
	margin: 0;
	max-width: 260px;
}

/* --- Action Button --- */
.volunteer-action-block {
	text-align: center;
	margin-top: 50px;
}

.btn-volunteer-app {
	background: #ea0505;
	color: #fff !important;
	font-size: 18px;
	font-weight: 800;
	padding: 16px 40px;
	border-radius: 50px;
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	box-shadow: 0 8px 24px rgba(234, 5, 5, 0.25);
	transition: all 0.3s ease;
}

.btn-volunteer-app:hover {
	background: #08405f;
	box-shadow: 0 8px 24px rgba(8, 64, 95, 0.25);
	transform: translateY(-2px);
}

.btn-volunteer-app:hover .btn-arrow {
	transform: translateX(6px);
}

.btn-volunteer-app .btn-arrow {
	transition: transform 0.2s ease;
}

.flyer img {
	box-shadow: 0 0 22px rgb(0 0 0 / 26%);
}

/* --- Volunteer Opportunities Responsive --- */
@media (max-width: 991.98px) {
	.card-visual-content {
		padding: 40px 30px;
	}

	.volunteer-details-card .card-badge {
		position: static;
		margin-bottom: 16px;
	}
}

@media (max-width: 767.98px) {

	.volunteer-intro-card {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		padding: 25px 20px;
	}

	.card-main-content {
		padding: 30px 20px;
	}

	.volunteer-title {
		font-size: 22px;
	}

	.card-subtitle {
		font-size: 20px;
	}
}

/* =========================================
   Huey Rides Page Links
   ========================================= */

.huey-links-wrap {
	margin-top: 40px;
	padding-bottom: 30px;
}

.huey-link-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 22px 28px;
	display: flex;
	align-items: center;
	gap: 20px;
	text-decoration: none !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	height: 100%;
}

.huey-link-card:hover {
	transform: translateY(-3px);
	border-color: #ea0505;
	box-shadow: 0 10px 25px rgba(234, 5, 5, 0.08);
}

.link-card-icon {
	width: 54px;
	height: 54px;
	background: rgba(8, 64, 95, 0.06);
	color: #08405f;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	transition: all 0.3s ease;
	flex-shrink: 0;
}

.huey-link-card:hover .link-card-icon {
	background: rgba(234, 5, 5, 0.1);
	color: #ea0505;
}

.link-card-info {
	flex-grow: 1;
	text-align: left;
}

.link-title {
	font-size: 17px;
	color: #08405f;
	margin: 0 0 4px;
	transition: color 0.3s ease;
}

.huey-link-card:hover .link-title {
	color: #ea0505;
}

.link-url-text {
	font-size: 13px;
	color: #718096;
	font-family: 'Outfit', sans-serif;
	display: block;
}

.link-card-arrow {
	color: #a0aec0;
	font-size: 16px;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
}

.huey-link-card:hover .link-card-arrow {
	color: #ea0505;
	transform: translateX(4px);
}

@media (max-width: 767.98px) {
	.huey-link-card {
		padding: 16px 20px;
		gap: 15px;
	}

	.link-card-icon {
		width: 46px;
		height: 46px;
		font-size: 18px;
	}

	.link-title {
		font-size: 15.5px;
	}

	.link-url-text {
		font-size: 12px;
	}
}

/* =========================================
   Static Display Aircraft Page
   ========================================= */

/* --- Note Banner --- */
.aircraft-note-banner {
	background: rgba(234, 5, 5, 0.04);
	border-left: 5px solid #ea0505;
	border-radius: 12px;
	padding: 24px 30px;
	display: flex;
	align-items: center;
	gap: 20px;
	margin-bottom: 45px;
}

.aircraft-note-banner .banner-icon {
	color: #ea0505;
	font-size: 26px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
}

.aircraft-note-banner .banner-text {
	font-size: 15.5px;
	line-height: 1.6;
	color: #ea0505;
	font-style: italic;
	font-weight: 600;
	margin: 0;
}

.aircraft-note-banner .banner-phone-link {
	color: #08405f;
	font-weight: 800;
	text-decoration: underline;
	transition: color 0.2s ease;
}

.aircraft-note-banner .banner-phone-link:hover {
	color: #ea0505;
}

/* --- Aircraft Cards --- */
.aircraft-card {
	background: #fff;
	border: 1px solid #d5e1ed;
	border-radius: 16px;
	padding: 28px 24px;
	display: flex;
	align-items: center;
	gap: 18px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	height: 100%;
}

.aircraft-card:hover {
	transform: translateY(-3px);
	border-color: rgba(8, 64, 95, 0.15);
	box-shadow: 0 8px 25px rgba(8, 64, 95, 0.06);
}

.aircraft-icon-wrap {
	width: 48px;
	height: 48px;
	background: rgba(8, 64, 95, 0.08);
	color: #08405f;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	transition: all 0.3s ease;
	flex-shrink: 0;
}

.aircraft-card:hover .aircraft-icon-wrap {
	background: #ea0505;
	color: #fff;
	transform: rotate(-15deg);
}

.aircraft-name {
	font-size: 16.5px;
	color: #08405f;
	margin: 0;
	font-weight: 600;
	font-family: "Open Sans", sans-serif;
}

@media (max-width: 767.98px) {


	.aircraft-note-banner {
		flex-direction: column;
		align-items: flex-start;
		gap: 15px;
		padding: 20px 24px;
	}

	.aircraft-card {
		padding: 20px 18px;
		gap: 14px;
	}

	.aircraft-name {
		font-size: 15px;
	}
}

/* =========================================
   Exhibitors Page
   ========================================= */

.exhibitor-intro-card {
	background: #fff;
	border-radius: 24px;
	padding: 45px 50px;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.03);
	border: 1px solid rgba(0, 0, 0, 0.02);
}

.exhibitor-badge {
	background: rgba(234, 5, 5, 0.08);
	color: #ea0505;
	font-size: 11px;
	font-weight: 800;
	padding: 4px 12px;
	border-radius: 4px;
	display: inline-block;
	margin-bottom: 16px;
	letter-spacing: 0.05em;
}

.exhibitor-main-title {
	font-size: 32px;
	color: #08405f;
	margin-bottom: 12px;
}

.exhibitor-desc {
	font-size: 15.5px;
	line-height: 1.75;
	color: #4a5568;
	margin: 0;
}

.btn-download-agreement {
	background: #08405f;
	color: #fff !important;
	font-size: 15.5px;
	font-weight: 800;
	padding: 15px 30px;
	border-radius: 50px;
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	box-shadow: 0 6px 20px rgba(8, 64, 95, 0.15);
	transition: all 0.3s ease;
	white-space: nowrap;
}

.btn-download-agreement:hover {
	background: #ea0505;
	box-shadow: 0 6px 20px rgba(234, 5, 5, 0.2);
	transform: translateY(-2px);
}

.section-title {
	font-size: 22px;
	color: #08405f;
	margin-bottom: 25px;
	display: flex;
	align-items: center;
}

.exhibitor-benefits-list li {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	margin-bottom: 22px;
}

.exhibitor-benefits-list li:last-child {
	margin-bottom: 0;
}

.benefit-icon {
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: rgba(8, 64, 95, 0.08);
	color: #08405f;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	flex-shrink: 0;
	margin-top: 2px;
}

.benefit-icon.warning-icon {
	background: rgba(234, 5, 5, 0.08);
	color: #ea0505;
}

.benefit-text {
	font-size: 15px;
	line-height: 1.6;
	color: #4a5568;
}

.exhibitor-pricing-box {
	background: linear-gradient(135deg, #08405f 0%, #052a3f 100%);
	color: #fff;
	border-radius: 20px;
	padding: 40px 35px;
	text-align: center;
	height: 100%;
	box-shadow: 0 8px 25px rgba(8, 64, 95, 0.15);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.price-header {
	font-size: 13.5px;
	font-weight: 800;
	color: #f1b209;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin-bottom: 12px;
}

.price-amount {
	font-size: 42px;
	font-weight: 800;
	color: #fff;
	margin-bottom: 15px;
}

.price-period {
	font-size: 16px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.7);
}

.price-footer {
	font-size: 13.5px;
	color: rgba(255, 255, 255, 0.8);
	line-height: 1.65;
	margin: 0;
}

/* --- Schedule Cards --- */
.schedule-card {
	background: #fff;
	border: 1px solid #f0f4f8;
	border-radius: 16px;
	padding: 30px;
	transition: all 0.3s ease;
	height: 100%;
}

.schedule-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.03);
}

.schedule-card-header {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
	border-bottom: 1px solid #f0f4f8;
	padding-bottom: 15px;
}

.schedule-card-header i {
	font-size: 24px;
	color: #ea0505;
}

.schedule-card-header h4 {
	font-size: 18px;
	color: #08405f;
	margin: 0;
}

.schedule-card-body {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.schedule-day {
	font-size: 14px;
	font-weight: 800;
	color: #f1b209;
	letter-spacing: 0.03em;
	display: block;
}

.schedule-time {
	font-size: 20px;
	font-weight: 800;
	color: #08405f;
}

.schedule-time-row {
	font-size: 15px;
	color: #4a5568;
}

/* --- Contact Callout --- */
.exhibitor-contact-callout {
	background: #fcfdfd;
	border: 1px solid #f0f4f8;
	border-radius: 20px;
	padding: 40px;
	display: flex;
	align-items: center;
	gap: 30px;
}

.callout-icon-box {
	width: 64px;
	height: 64px;
	background: rgba(234, 5, 5, 0.08);
	color: #ea0505;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 26px;
	flex-shrink: 0;
}

.callout-content-box {
	flex-grow: 1;
}

.callout-content-box h4 {
	font-size: 19px;
	color: #08405f;
	margin-bottom: 8px;
}

.callout-content-box p {
	font-size: 14.5px;
	color: #718096;
	margin-bottom: 18px;
	line-height: 1.6;
}

.contact-methods-row {
	display: flex;
	gap: 30px;
	flex-wrap: wrap;
}

.contact-item {
	color: #08405f;
	font-weight: 800;
	font-size: 15px;
	text-decoration: none;
	transition: color 0.2s ease;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.contact-item:hover {
	color: #ea0505;
}

@media (max-width: 991.98px) {
	.exhibitor-intro-card {
		padding: 30px;
		text-align: center;
	}

	.btn-download-agreement {
		margin-top: 10px;
	}

	.exhibitor-pricing-box {
		padding: 30px 20px;
	}

	.exhibitor-contact-callout {
		flex-direction: column;
		text-align: center;
		padding: 30px 20px;
	}

	.contact-methods-row {
		justify-content: center;
		gap: 20px;
	}
}

@media (max-width: 767.98px) {


	.exhibitor-main-title {
		font-size: 26px;
	}

	.exhibitor-desc {
		font-size: 14.5px;
	}

	.section-title {
		font-size: 19px;
	}

	.benefit-text {
		font-size: 14.5px;
	}

	.schedule-card {
		padding: 24px;
	}

	.schedule-time {
		font-size: 18px;
	}
}

/* =========================================
   Food & Beverage Vendors Page
   ========================================= */

.vendor-intro-card {
	background: #fff;
	border-radius: 24px;
	padding: 45px 50px;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.03);
	border: 1px solid rgba(0, 0, 0, 0.02);
}

.vendor-badge {
	background: rgba(234, 5, 5, 0.08);
	color: #ea0505;
	font-size: 11px;
	font-weight: 800;
	padding: 4px 12px;
	border-radius: 4px;
	display: inline-block;
	margin-bottom: 16px;
	letter-spacing: 0.05em;
}

.vendor-main-title {
	font-size: 32px;
	color: #08405f;
	margin-bottom: 12px;
	letter-spacing: -0.5px;
}

.vendor-desc {
	font-size: 15.5px;
	line-height: 1.75;
	color: #4a5568;
	margin: 0;
}

.btn-download-app {
	background: #08405f;
	color: #fff !important;
	font-size: 15.5px;
	font-weight: 800;
	padding: 15px 30px;
	border-radius: 50px;
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	box-shadow: 0 6px 20px rgba(8, 64, 95, 0.15);
	transition: all 0.3s ease;
	white-space: nowrap;
}

.btn-download-app:hover {
	background: #ea0505;
	box-shadow: 0 6px 20px rgba(234, 5, 5, 0.2);
	transform: translateY(-2px);
}

.submission-steps-list li {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	margin-bottom: 25px;
}

.submission-steps-list li:last-child {
	margin-bottom: 0;
}

.step-num {
	width: 46px;
	height: 46px;
	background: rgba(234, 5, 5, 0.08);
	color: #ea0505;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 17px;
	font-weight: 800;
	flex-shrink: 0;
}

.step-content {
	font-size: 15px;
	line-height: 1.65;
	color: #4a5568;
}

.step-content .inline-link {
	color: #08405f;
	font-weight: 700;
	text-decoration: underline;
}

.step-content .inline-link:hover {
	color: #ea0505;
}

.vendor-address-box {
	background: #fcfdfd;
	border: 1px solid #e2e8f0;
	border-radius: 20px;
	padding: 35px;
	text-align: center;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
}

.vendor-address-box .box-icon {
	width: 56px;
	height: 56px;
	background: rgba(8, 64, 95, 0.08);
	color: #08405f;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	margin: 0 auto 20px;
}

.vendor-address-box h4 {
	font-size: 18px;
	color: #08405f;
	margin-bottom: 12px;
}

.address-text {
	font-size: 15px;
	color: #4a5568;
	line-height: 1.7;
	margin-bottom: 20px;
}

.address-footer {
	border-top: 1px solid #e2e8f0;
	padding-top: 15px;
	font-size: 14px;
	color: #718096;
}

.address-footer .phone-link {
	color: #ea0505;
	font-weight: 800;
	text-decoration: none;
}

.address-footer .phone-link:hover {
	text-decoration: underline;
}

@media (max-width: 991.98px) {
	.vendor-intro-card {
		padding: 30px;
		text-align: center;
	}

	.btn-download-app {
		margin-top: 10px;
	}

	.vendor-address-box {
		padding: 30px 20px;
		margin-top: 20px;
	}
}

@media (max-width: 767.98px) {

	.vendor-main-title {
		font-size: 26px;
	}

	.vendor-desc {
		font-size: 14.5px;
	}

	.step-num {
		width: 40px;
		height: 40px;
		font-size: 15px;
	}

	.step-content {
		font-size: 14.5px;
	}
}

/* --- Merchandise Announcement Card --- */
.merch-announcement-card {
	display: flex;
	gap: 30px;
	color: #fff;
	border-radius: 20px;
	padding: 35px 40px;
	box-shadow: 0 8px 25px rgba(234, 5, 5, 0.15);
}

.merch-icon {
	width: 64px;
	height: 64px;
	background: rgba(255, 255, 255, 0.15);
	color: #fff;
	border-radius: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	flex-shrink: 0;
}

.merch-content {
	flex-grow: 1;
}

.merch-content h3 {
	font-size: 20px;
	font-weight: 800;
	margin-bottom: 8px;
	color: #cc0000;
	font-family: "Outfit", sans-serif;
}

.merch-badge {
	background: #cc0000;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	padding: 3px 10px;
	border-radius: 4px;
	display: inline-block;
	margin-bottom: 10px;
	letter-spacing: 0.05em;
}

.merch-desc {
	font-size: 15.5px;
	color: #000;
	line-height: 1.65;
	margin: 0;
}


@media (max-width: 1320px) {
	#main {
		overflow: hidden;
	}
}


@media (max-width: 991.98px) {
	.header-social {
		margin-top: 0;
	}

	.merch-announcement-card {
		flex-direction: column;
		text-align: center;
		padding: 30px;
		gap: 20px;
	}

	.footer-section {
		margin: -80px 20px 20px 20px;
	}

	.schedule-section {
		margin: -60px 20px 0px 20px;
	}

	.testimonial-section {
		margin: 0 20px;
	}

	.merch-icon {
		margin: 0 auto;
	}
}

@media (max-width: 767.98px) {
	.merch-content h3 {
		font-size: 18px;
	}

	.merch-desc {
		font-size: 14.5px;
	}
}

@media (max-width: 767.98px) {
	.blogs-section .position-relative img {
		width: 600px;
	}

}

@media (max-width: 480px) {
	.contact-item .contact-text p a {
		font-size: 16px;
	}

	.form-title {
		font-size: 26px;
	}

}




@media only screen and (max-width: 480px) {

	.about-img {
		margin-top: 30px;
	}

	.main-headline {
		font-size: 30px;
	}

	.main-headline {
		font-size: 30px;
	}

	.footer-newsletter-title {
		font-size: 22px;
	}

	.smallheading {
		font-size: 14px;
	}

	.headingtagline {
		font-size: 20px;
	}

	.vintage-aircraft-section p,
	.video-section p,
	.about-airshow-text {
		font-size: 16px;
		line-height: 26px;
	}

	.main-headline {
		font-size: 26px;
	}

	.vintage-aircraft-section {
		padding: 60px 0 70px 0;
	}

	.performer-lineup {
		text-align: center;
	}

	.ticket-section {
		padding-bottom: 0;
	}

	.am-ticket-item {
		align-items: center;
		text-align: center;
	}

	.video-section h2 {
		font-size: 30px;
	}

	.main-headline {
		font-size: 26px;
	}

	.about-us-section {
		padding-top: 0;
	}


	.getready {
		font-size: 24px;
	}

	.ultitext {
		font-size: 56px;
		line-height: 50px;
	}

	.hero-section .caption h1 {
		font-size: 26px;
	}

	.about-gyn-section .mb-5 {
		margin-bottom: 15px !important;
	}

	.about-gyn-section {
		padding: 60px 0 30px 0;
	}

	.appointment-form .main-btn button {
		font-size: 14px;
	}

	.appointment-form .form-label {
		font-size: 14px;
	}

	.main-headline {
		font-size: 24px;
	}

	.testimonial-headline,
	.schedule-headline {
		font-size: 24px;
	}

	.schedule-subtitle {
		font-size: 16px;

	}

	.contact-text {
		font-size: 16px;
	}

	.appointment-phone-number {
		font-size: 20px;
	}

	.testimonial-card .quote {
		font-size: 16px;

	}

}


/* ==========================================================================
   About Page Sections
   ========================================================================== */
.about-different-section {
	padding: 70px 0;
}

.about-diff-title {
	font-size: 36px;
	font-weight: 800;
	color: #08405f;
	margin-bottom: 14px;
	line-height: 1.2;
}

.about-diff-title span {
	color: #16809f;
}

.about-diff-subtitle {
	font-size: 20px;
	font-weight: 700;
	color: #afd779;
	margin-bottom: 20px;
	position: relative;
	padding-bottom: 14px;
}

.about-diff-subtitle::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 60px;
	height: 3px;
	background: #66bfca;
	border-radius: 2px;
}

.about-diff-content p {
	margin-bottom: 30px;
}

.about-diff-img-wrap {
	background: linear-gradient(135deg, rgba(102, 191, 202, 0.12), rgba(175, 215, 121, 0.12));
	border-radius: 20px;
	padding: 30px;
	border: 2px solid rgba(102, 191, 202, 0.25);
}

/* Section 2 – Mission & Vision */
.about-mission-section {
	padding: 60px 0;
	background: linear-gradient(135deg, #f0f9fb 0%, #edf7ed 100%);
}

.mission-card {
	background: #fff;
	border-radius: 18px;
	padding: 40px 36px;
	height: 100%;
	border-top: 5px solid #16809f;
	box-shadow: 0 8px 30px rgba(22, 128, 159, 0.10);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.mission-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 16px 40px rgba(22, 128, 159, 0.16);
}

.vision-card {
	border-top-color: #afd779;
}

.mission-icon {
	width: 56px;
	height: 56px;
	border-radius: 14px;
	background: linear-gradient(135deg, #16809f, #66bfca);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
}

.vision-card .mission-icon {
	background: linear-gradient(135deg, #afd779, #90b166);
}

.mission-icon i {
	color: #fff;
	font-size: 24px;
}

.mission-title {
	font-size: 26px;
	font-weight: 800;
	color: #08405f;
	margin-bottom: 12px;
}

.mission-divider {
	width: 50px;
	height: 3px;
	background: #16809f;
	border-radius: 2px;
	margin-bottom: 18px;
}

.vision-card .mission-divider {
	background: #afd779;
}

.mission-card p {
	color: #555;
	line-height: 1.8;
	margin: 0;
}

/* Section 3 – Core Values */
.about-values-section {
	padding: 60px 0 0px;
	margin-bottom: 60px;
}

.values-box {
	border: 2px solid rgba(22, 128, 159, 0.2);
	border-radius: 20px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 8px 40px rgba(0, 0, 0, 0.06);
}

.values-header {
	background: linear-gradient(135deg, #006662, #16809f);
	padding: 36px 40px;
	text-align: center;
}

.values-title {
	font-size: 32px;
	font-weight: 800;
	color: #fff;
	margin: 0 0 14px;
}

.values-title-line {
	width: 80px;
	height: 3px;
	background: #afd779;
	border-radius: 2px;
	margin: 0 auto;
}

.values-list {
	padding: 10px 0;
}

.value-item {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	padding: 24px 40px;
	border-bottom: 1px solid rgba(22, 128, 159, 0.1);
	transition: background 0.25s ease;
}

.value-item:last-child {
	border-bottom: none;
}

.value-item:hover {
	background: rgba(102, 191, 202, 0.06);
}

.value-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: linear-gradient(135deg, #16809f, #66bfca);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	margin-top: 2px;
}

.value-icon i {
	color: #fff;
	font-size: 18px;
}

.value-content h4.value-name {
	font-size: 17px;
	font-weight: 700;
	color: #16809f;
	margin: 0 0 6px;
}

.value-content p {
	margin: 0;
	color: #555;
	font-size: 15px;
	line-height: 1.7;
}

/* Responsive – About Page */
@media (max-width: 991.98px) {

	.about-diff-title {
		font-size: 28px;
	}

	.mission-card {
		padding: 30px 24px;
	}

	.values-header {
		padding: 28px 24px;
	}

	.value-item {
		padding: 20px 24px;
	}
}

@media (max-width: 575.98px) {
	.about-diff-title {
		font-size: 24px;
	}

	.about-diff-subtitle {
		font-size: 17px;
	}

	.mission-title {
		font-size: 22px;
	}

	.values-title {
		font-size: 26px;
	}

	.value-item {
		flex-direction: column;
		gap: 12px;
		padding: 18px 20px;
	}
}


/* ==========================================================================
   Dr. Angel Paas Bio Page
   ========================================================================== */

.drpaas-bio-section {
	padding: 70px 0;
}

/* Photo Frame */
.drpaas-photo-wrap {
	position: sticky;
	top: 120px;
}

.drpaas-img-frame {
	border-radius: 18px;
	overflow: hidden;
	margin-bottom: 20px;
}

.drpaas-photo {
	display: block;
	width: 100%;
}

/* Google Review Button */
.google-review-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: linear-gradient(135deg, #006662, #16809f);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	padding: 14px 22px;
	border-radius: 12px;
	text-decoration: none;
	transition: all 0.3s ease;
	box-shadow: 0 6px 18px rgba(0, 102, 98, 0.25);
}

.google-review-btn:hover {
	background: linear-gradient(135deg, #16809f, #006662);
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(0, 102, 98, 0.35);
}

.google-review-btn .fa-google {
	font-size: 18px;
	color: #afd779;
}

/* Bio Content */
.drpaas-bio-content {
	padding-left: 10px;
}

.drpaas-main-title {
	font-size: 32px;
	font-weight: 800;
	color: #08405f;
	line-height: 1.25;
	margin-bottom: 12px;
}

.drpaas-main-title span {
	color: #16809f;
}

.drpaas-title-bar {
	width: 70px;
	height: 4px;
	background: linear-gradient(90deg, #afd779, #66bfca);
	border-radius: 3px;
	margin-bottom: 24px;
}

.drpaas-bio-content p {
	color: #444;
	line-height: 1.85;
	margin-bottom: 18px;
	font-size: 15px;
}



.drpaas-bio-content p a:hover {
	color: #afd779;
}

.drpaas-bio-content p a .fa-xs {
	font-size: 10px;
	margin-left: 2px;
	opacity: 0.6;
}

/* Expertise Strip */
.drpaas-expertise-strip {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	margin-top: 50px;
	padding: 36px 30px;
	background: linear-gradient(135deg, #f0f9fb 0%, #edf7ed 100%);
	border-radius: 18px;
	border: 2px solid rgba(22, 128, 159, 0.12);
	flex-wrap: wrap;
}

.drpaas-exp-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	padding: 0 36px;
}

.drpaas-exp-icon {
	width: 60px;
	height: 60px;
	border-radius: 16px;
	background: linear-gradient(135deg, #16809f, #66bfca);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 6px 16px rgba(22, 128, 159, 0.2);
}

.drpaas-exp-icon img {
	width: 32px;
	height: 32px;
	object-fit: contain;
	filter: brightness(0) invert(1);
}

.drpaas-exp-icon--text {
	font-size: 22px;
	font-weight: 800;
	color: #fff;
	font-family: "Onest", sans-serif;
}

.drpaas-exp-label {
	font-size: 14px;
	font-weight: 700;
	color: #08405f;
	text-align: center;
	white-space: nowrap;
}

.drpaas-exp-divider {
	width: 2px;
	height: 50px;
	background: rgba(22, 128, 159, 0.2);
	flex-shrink: 0;
}

/* Responsive – Dr. Paas Bio */
@media (max-width: 991.98px) {
	.drpaas-bio-section {
		padding: 40px 0 10px;
	}

	.drpaas-photo-wrap {
		position: static;
		max-width: 320px;
		margin: 0 auto 20px;
	}

	.drpaas-bio-content {
		padding-left: 0;
	}

	.drpaas-main-title {
		font-size: 26px;
	}

	.drpaas-expertise-strip {
		gap: 20px;
		padding: 28px 20px;
	}

	.drpaas-exp-item {
		padding: 0 20px;
	}

	.drpaas-exp-divider {
		display: none;
	}
}

@media (max-width: 575.98px) {
	.drpaas-main-title {
		font-size: 22px;
	}

	.drpaas-expertise-strip {
		gap: 16px;
	}

	.drpaas-exp-item {
		padding: 8px 14px;
	}

	.drpaas-exp-icon {
		width: 50px;
		height: 50px;
		border-radius: 12px;
	}

	.drpaas-exp-icon img {
		width: 26px;
		height: 26px;
	}

	.drpaas-exp-label {
		font-size: 12px;
	}

	.google-review-btn {
		font-size: 13px;
		padding: 12px 18px;
	}
}


/* ==========================================================================
   Location Page
   ========================================================================== */

/* Section 1 – Intro */
.location-intro-section {
	padding: 60px 0 40px;
}

.location-intro-content {
	max-width: 860px;
	margin-bottom: 40px;
}

.location-intro-title {
	font-size: 34px;
	font-weight: 800;
	color: #08405f;
	margin-bottom: 12px;
}

.location-intro-title span {
	color: #16809f;
}

.location-intro-bar {
	width: 70px;
	height: 4px;
	background: linear-gradient(90deg, #afd779, #66bfca);
	border-radius: 3px;
	margin-bottom: 20px;
}

.location-intro-content p {
	color: #444;
	font-size: 16px;
	line-height: 1.8;
	margin: 0;
}

.location-intro-content p a {
	color: #fff;
	font-weight: 600;
	text-decoration: none;
	text-underline-offset: 2px;
}

.location-intro-content p a:hover {
	color: #fff;
}

/* Photo Gallery */
.location-gallery {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}

.loc-gallery-item {
	position: relative;
	border-radius: 14px;
	overflow: hidden;
	aspect-ratio: 4/3;
	border: 2px solid rgba(22, 128, 159, 0.15);
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
	cursor: pointer;
}

.loc-gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
	display: block;
}

.loc-gallery-item:hover img {
	transform: scale(1.07);
}

.loc-gallery-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 102, 98, 0.55);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.loc-gallery-item:hover .loc-gallery-overlay {
	opacity: 1;
}

.loc-gallery-overlay i {
	color: #fff;
	font-size: 28px;
}

/* Section 2 – Map + Info */
.location-map-section {
	padding: 20px 0 70px;
}

.location-map-wrap {
	border-radius: 18px;
	overflow: hidden;
	border: 3px solid rgba(22, 128, 159, 0.2);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
}

.location-map-wrap iframe {
	display: block;
	height: 100%;
	min-height: 420px;
}


.location-card {
	position: relative;
	overflow: hidden;
	border-radius: 22px;
	display: block;
}

.location-card img {
	width: 100%;
	object-fit: cover;
	transition: .5s;
	display: block;
}

.mapwrp {
	position: sticky;
	top: 0;
}

.location-card .overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: .4s;
}

.location-card .overlay i {
	color: #fff;
	font-size: 36px;
	transform: scale(.7);
	transition: .4s;
}

.location-card:hover img {
	transform: scale(1.08);
}

.location-card:hover .overlay {
	opacity: 1;
}

.location-card:hover .overlay i {
	transform: scale(1);
}




/* Info Cards Stack */
.location-info-stack {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.loc-info-card {
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	border: 1px solid rgba(22, 128, 159, 0.12);
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06);
	transition: box-shadow 0.3s ease;
}

.loc-info-card:hover {
	box-shadow: 0 8px 28px rgba(22, 128, 159, 0.14);
}

.loc-info-card-header {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 16px 20px;
	background: linear-gradient(135deg, #f0f9fb, #edf7ed);
	border-bottom: 1px solid rgba(22, 128, 159, 0.1);
}

.loc-info-icon {
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: linear-gradient(135deg, #16809f, #66bfca);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.loc-info-icon--green {
	background: linear-gradient(135deg, #afd779, #90b166);
}

.loc-info-icon--teal {
	background: linear-gradient(135deg, #006662, #16809f);
}

.loc-info-icon--orange {
	background: linear-gradient(135deg, #e07b39, #f0a45a);
}

.loc-info-icon i {
	color: #fff;
	font-size: 16px;
}

.loc-info-card-title {
	font-size: 16px;
	font-weight: 800;
	color: #08405f;
	margin: 0;
}

.loc-info-card-body {
	padding: 16px 20px;
}

.loc-info-card-body p {
	margin: 0 0 6px;
	font-size: 14px;
	color: #444;
	line-height: 1.6;
}

.loc-info-card-body p:last-child {
	margin-bottom: 0;
}

.loc-info-card-body p a {
	color: #16809f;
	font-weight: 700;
	text-decoration: none;
}

.loc-info-card-body p a:hover {
	color: #afd779;
}

/* Get Directions Button */
.loc-directions-btn {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 12px;
	background: linear-gradient(135deg, #006662, #16809f);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	padding: 10px 18px;
	border-radius: 10px;
	text-decoration: none;
	transition: all 0.3s ease;
	box-shadow: 0 4px 12px rgba(0, 102, 98, 0.25);
}

.loc-directions-btn:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 8px 18px rgba(0, 102, 98, 0.35);
}

/* Hours List */
.loc-hours-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.loc-hours-list li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 7px 0;
	border-bottom: 1px solid rgba(22, 128, 159, 0.08);
	font-size: 14px;
}

.loc-hours-list li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.loc-day {
	color: #555;
	font-weight: 600;
}

.loc-time {
	color: #16809f;
	font-weight: 700;
}

.loc-closed {
	color: #c0392b;
}

/* Responsive – Location */
@media (max-width: 991.98px) {
	.location-gallery {
		grid-template-columns: repeat(2, 1fr);
	}

	.location-intro-section {
		padding: 40px 0 30px;
	}

	.location-map-section {
		padding: 10px 0 50px;
	}

	.location-map-wrap iframe {
		min-height: 340px;
	}
}

@media (max-width: 575.98px) {
	.location-gallery {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}

	.location-intro-title {
		font-size: 26px;
	}

	.location-map-wrap iframe {
		min-height: 280px;
	}

	.loc-info-card-header {
		padding: 12px 16px;
	}

	.loc-info-card-body {
		padding: 12px 16px;
	}
}


/* ==========================================================================
   Meet the Team Page
   ========================================================================== */

.team-section {
	padding: 60px 0 80px;
}

/* Section Header */
.team-section-header {
	text-align: center;
	margin-bottom: 54px;
}

.team-section-tag {
	display: inline-block;
	background: linear-gradient(135deg, rgba(22, 128, 159, 0.12), rgba(175, 215, 121, 0.12));
	color: #16809f;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	padding: 6px 18px;
	border-radius: 30px;
	border: 1px solid rgba(22, 128, 159, 0.2);
	margin-bottom: 14px;
}

.team-section-title {
	font-size: 36px;
	font-weight: 800;
	color: #08405f;
	margin-bottom: 14px;
}

.team-section-title span {
	color: #16809f;
}

.team-section-bar {
	width: 70px;
	height: 4px;
	background: linear-gradient(90deg, #afd779, #66bfca);
	border-radius: 3px;
	margin: 0 auto 18px;
}

.team-section-desc {
	color: #555;
	font-size: 16px;
	max-width: 600px;
	margin: 0 auto;
	line-height: 1.7;
}

/* Team Members List */
.team-members-list {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

/* Team Member Card */
.team-member-card {
	display: flex;
	gap: 40px;
	background: #fff;
	border-radius: 20px;
	padding: 36px;
	border: 1px solid rgba(22, 128, 159, 0.12);
	box-shadow: 0 6px 28px rgba(0, 0, 0, 0.06);
	transition: box-shadow 0.3s ease, transform 0.3s ease;
	align-items: flex-start;
}

.team-member-card:hover {
	box-shadow: 0 14px 40px rgba(22, 128, 159, 0.14);
	transform: translateY(-4px);
}

.team-member-card--alt {
	background: linear-gradient(135deg, #f8fdfe 0%, #f4fbf4 100%);
}

/* Photo Column */
.team-member-photo-col {
	flex-shrink: 0;
	width: 200px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
}

.team-member-photo-wrap {
	width: 180px;
	height: 220px;
	border-radius: 16px;
	overflow: hidden;
	border: 3px solid rgba(22, 128, 159, 0.18);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
}

.team-member-photo {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top center;
	display: block;
}

/* Role Badge */
.team-member-role-badge {
	display: inline-block;
	background: linear-gradient(135deg, #16809f, #66bfca);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.5px;
	padding: 6px 16px;
	border-radius: 20px;
	text-align: center;
	white-space: nowrap;
}

.team-member-role-badge--green {
	background: linear-gradient(135deg, #afd779, #90b166);
}

.team-member-role-badge--teal {
	background: linear-gradient(135deg, #006662, #16809f);
}

/* Bio Content */
.team-member-content {
	flex: 1;
}
/* Provider directory — intentionally distinct from the Meet Our Team layout */
.provider-directory {
	position: relative;
	padding: 78px 0 96px;
	background: radial-gradient(circle at 8% 8%, rgba(102, 191, 202, .16), transparent 28%), linear-gradient(180deg, #f5fbfc 0%, #ffffff 46%, #f7fbf8 100%);
	overflow: hidden;
}

.provider-directory::before {
	content: "";
	position: absolute;
	top: 90px;
	right: -110px;
	width: 320px;
	height: 320px;
	border: 55px solid rgba(175, 215, 121, .09);
	border-radius: 50%;
	pointer-events: none;
}

.provider-directory__header {
	position: relative;
	z-index: 1;
	max-width: 790px;
	margin: 0 auto 48px;
	text-align: center;
}

.provider-directory__eyebrow {
	display: inline-flex;
	align-items: center;
	padding: 8px 17px;
	margin-bottom: 16px;
	border: 1px solid rgba(22, 128, 159, .22);
	border-radius: 999px;
	background: rgba(255, 255, 255, .82);
	color: #16809f;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 1.5px;
	text-transform: uppercase;
}

.provider-directory__header h2 {
	margin: 0 0 16px;
	color: #08405f;
	font-size: clamp(32px, 4vw, 50px);
	font-weight: 800;
	line-height: 1.15;
}

.provider-directory__header h2 span {
	color: #16809f;
}

.provider-directory__intro,
.provider-directory__intro p {
	margin: 0;
	color: #52646c;
	font-size: 17px;
	line-height: 1.75;
}

.provider-directory__grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 30px;
}

.provider-directory__card {
	display: grid;
	grid-template-columns: minmax(190px, 42%) minmax(0, 1fr);
	min-height: 430px;
	background: #fff;
	border: 1px solid rgba(22, 128, 159, .16);
	border-radius: 24px;
	box-shadow: 0 16px 42px rgba(8, 64, 95, .09);
	overflow: hidden;
	transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

.provider-directory__card:hover {
	transform: translateY(-6px);
	border-color: rgba(22, 128, 159, .32);
	box-shadow: 0 24px 55px rgba(8, 64, 95, .15);
}

.provider-directory__photo-link,
.provider-directory__photo {
	display: block;
	height: 100%;
}

.provider-directory__photo {
	position: relative;
	min-height: 430px;
	background: linear-gradient(145deg, #dff1f4, #edf6ec);
	overflow: hidden;
}

.provider-directory__photo::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 34%;
	background: linear-gradient(180deg, transparent, rgba(8, 64, 95, .18));
	pointer-events: none;
}

.provider-directory__photo > img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 430px;
	object-fit: cover;
	object-position: top center;
	transition: transform .45s ease;
}

.provider-directory__card:hover .provider-directory__photo > img {
	transform: scale(1.035);
}

.provider-directory__placeholder {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 22px;
	height: 100%;
	min-height: 430px;
	padding: 30px;
	text-align: center;
}

.provider-directory__placeholder img {
	width: 100%;
	max-width: 190px;
	height: auto;
}

.provider-directory__placeholder span {
	color: #16809f;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .5px;
}

.provider-directory__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 34px 30px 30px;
}

.provider-directory__role {
	display: inline-block;
	max-width: 100%;
	padding: 7px 12px;
	margin-bottom: 17px;
	border-radius: 8px;
	background: #eaf6f7;
	color: #006662;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: .45px;
	text-transform: uppercase;
}

.provider-directory__body h3 {
	margin: 0;
	font-size: clamp(23px, 2vw, 30px);
	font-weight: 800;
	line-height: 1.22;
}

.provider-directory__body h3 a {
	color: #08405f;
	text-decoration: none;
}

.provider-directory__body h3 a:hover {
	color: #16809f;
}

.provider-directory__rule {
	display: block;
	width: 54px;
	height: 4px;
	margin: 17px 0;
	border-radius: 4px;
	background: linear-gradient(90deg, #16809f, #afd779);
}

.provider-directory__body p {
	margin: 0 0 26px;
	color: #526068;
	font-size: 15px;
	line-height: 1.75;
}

.provider-directory__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: auto;
}

.provider-directory__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 46px;
	padding: 11px 16px;
	border: 2px solid #006662;
	border-radius: 10px;
	background: #006662;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.25;
	text-decoration: none;
	transition: background .2s ease, color .2s ease, transform .2s ease;
}

.provider-directory__button:hover {
	background: #08405f;
	border-color: #08405f;
	color: #fff;
	transform: translateY(-2px);
}

.provider-directory__button--outline {
	background: transparent;
	color: #006662;
}

@media (max-width: 1199.98px) {
	.provider-directory__grid {
		grid-template-columns: 1fr;
	}

	.provider-directory__card {
		grid-template-columns: minmax(240px, 34%) minmax(0, 1fr);
	}
}

@media (max-width: 767.98px) {
	.provider-directory {
		padding: 55px 0 70px;
	}

	.provider-directory__header {
		margin-bottom: 34px;
	}

	.provider-directory__card {
		display: block;
		min-height: 0;
		border-radius: 20px;
	}

	.provider-directory__photo,
	.provider-directory__photo > img,
	.provider-directory__placeholder {
		height: 360px;
		min-height: 360px;
	}

	.provider-directory__body {
		padding: 27px 22px 24px;
	}

	.provider-directory__actions,
	.provider-directory__button {
		width: 100%;
	}
}

.team-member-name {
	font-size: 26px;
	font-weight: 800;
	color: #08405f;
	margin-bottom: 10px;
}

.team-member-divider {
	width: 50px;
	height: 3px;
	background: linear-gradient(90deg, #16809f, #afd779);
	border-radius: 2px;
	margin-bottom: 18px;
}

.team-member-content>p {
	color: #444;
	font-size: 15px;
	line-height: 1.85;
	margin-bottom: 20px;
}

.team-member-content>p a {
	color: #16809f;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
	transition: color 0.2s ease;
}

.team-member-content>p a:hover {
	color: #afd779;
}

/* Quote Block */
.team-member-quote {
	position: relative;
	background: linear-gradient(135deg, rgba(22, 128, 159, 0.06), rgba(102, 191, 202, 0.06));
	border-left: 4px solid #16809f;
	border-radius: 0 14px 14px 0;
	padding: 22px 24px 18px 52px;
	margin: 0;
}

.team-quote-icon {
	position: absolute;
	top: 18px;
	left: 18px;
	font-size: 20px;
	color: #16809f;
	opacity: 0.6;
}

.team-member-quote p {
	color: #333;
	font-size: 14px;
	line-height: 1.85;
	font-style: italic;
	margin-bottom: 10px;
}

.team-quote-footer {
	font-size: 13px;
	font-weight: 700;
	color: #16809f;
}

/* Responsive – Meet the Team */
@media (max-width: 991.98px) {
	.team-member-card {
		gap: 28px;
		padding: 28px;
	}

	.team-member-photo-col {
		width: 160px;
	}

	.team-member-photo-wrap {
		width: 140px;
		height: 180px;
	}

	.team-section-title {
		font-size: 28px;
	}
}

@media (max-width: 767.98px) {
	.team-member-card {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.team-member-photo-col {
		width: 100%;
	}

	.team-member-photo-wrap {
		width: 160px;
		height: 200px;
		margin: 0 auto;
	}

	.team-member-divider {
		margin: 0 auto 18px;
	}

	.team-member-quote {
		text-align: left;
	}

	.team-section-title {
		font-size: 24px;
	}
}


/* ==========================================================================
   Patient Reviews Page
   ========================================================================== */

.reviews-section {
	padding: 60px 0 80px;
}

/* CTA Box */
.reviews-cta-box {
	background: linear-gradient(135deg, #006662, #16809f);
	border-radius: 18px;
	padding: 32px 36px;
	margin-bottom: 28px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	flex-wrap: wrap;
}

.reviews-cta-title {
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	margin: 0;
	line-height: 1.4;
}

.reviews-cta-title span {
	color: #afd779;
}

.reviews-leave-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #fff;
	color: #16809f;
	font-size: 14px;
	font-weight: 800;
	padding: 12px 24px;
	border-radius: 30px;
	text-decoration: none;
	white-space: nowrap;
	transition: all 0.3s ease;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
}

.reviews-leave-btn:hover {
	background: #afd779;
	color: #006662;
	transform: translateY(-2px);
}

.reviews-leave-btn .fa-google {
	font-size: 16px;
	color: #ea4335;
}

/* Overall Rating Bar */
.reviews-overall-bar {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 16px 20px;
	background: rgba(22, 128, 159, 0.05);
	border-radius: 12px;
	border: 1px solid rgba(22, 128, 159, 0.12);
	margin-bottom: 28px;
}

.reviews-overall-stars i,
.review-stars i,
.sidebar-rating-stars i {
	color: #f5a623;
	font-size: 16px;
}

.reviews-overall-count {
	color: #555;
	font-size: 14px;
}

.reviews-overall-count strong {
	color: #08405f;
	font-weight: 800;
}

/* Review Cards List */
.reviews-list {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: 28px;
}

.review-card {
	background: #fff;
	border-radius: 16px;
	padding: 24px 28px;
	border: 1px solid rgba(22, 128, 159, 0.12);
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05);
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.review-card:hover {
	box-shadow: 0 8px 28px rgba(22, 128, 159, 0.14);
	transform: translateY(-3px);
}

.review-card-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
	flex-wrap: wrap;
	gap: 8px;
}

.review-stars {
	display: flex;
	gap: 3px;
}

.review-stars i {
	font-size: 15px;
}

.review-date {
	font-size: 13px;
	color: #888;
	font-style: italic;
}

.review-text {
	color: #444;
	font-size: 15px;
	line-height: 1.8;
	margin: 0;
}

/* Google Reviews Link */
.reviews-more-link {
	text-align: left;
}

.reviews-google-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: linear-gradient(135deg, #16809f, #66bfca);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	padding: 13px 26px;
	border-radius: 30px;
	text-decoration: none;
	transition: all 0.3s ease;
	box-shadow: 0 4px 14px rgba(22, 128, 159, 0.25);
}

.reviews-google-link:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 8px 22px rgba(22, 128, 159, 0.35);
}

.reviews-google-link .fa-google {
	font-size: 16px;
}

/* ── Sidebar ── */
.reviews-sidebar {
	position: sticky;
	top: 0;
}

.reviews-sidebar-header {
	background: linear-gradient(135deg, #006662, #16809f);
	padding: 16px 22px;
	border-radius: 14px 14px 0 0;
}

.reviews-sidebar-title {
	font-size: 16px;
	font-weight: 800;
	color: #fff;
	margin: 0;
}

.reviews-sidebar-nav {
	list-style: none;
	margin: 0 0 24px;
	padding: 0;
	background: #fff;
	border: 1px solid rgba(22, 128, 159, 0.12);
	border-top: none;
	border-radius: 0 0 14px 14px;
	overflow: hidden;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06);
}

.reviews-sidebar-nav li {
	border-bottom: 1px solid rgba(22, 128, 159, 0.08);
}

.reviews-sidebar-nav li:last-child {
	border-bottom: none;
}

.reviews-sidebar-nav li a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 20px;
	color: #444;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	transition: all 0.25s ease;
}

.reviews-sidebar-nav li a i {
	color: #66bfca;
	font-size: 11px;
	transition: color 0.25s ease;
}

.reviews-sidebar-nav li a:hover {
	background: rgba(22, 128, 159, 0.05);
	color: #16809f;
}

.reviews-sidebar-nav li a:hover i {
	color: #16809f;
}

.reviews-sidebar-nav li.active a {
	background: linear-gradient(135deg, rgba(22, 128, 159, 0.1), rgba(102, 191, 202, 0.08));
	color: #16809f;
	font-weight: 800;
}

.reviews-sidebar-nav li.active a i {
	color: #16809f;
}

/* Sidebar Rating Card */
.sidebar-rating-card {
	background: #fff;
	border-radius: 16px;
	padding: 28px 24px;
	border: 1px solid rgba(22, 128, 159, 0.12);
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06);
	text-align: center;
}

.sidebar-rating-stars {
	display: flex;
	justify-content: center;
	gap: 4px;
	margin-bottom: 10px;
}

.sidebar-rating-stars i {
	font-size: 20px;
}

.sidebar-rating-number {
	font-size: 48px;
	font-weight: 800;
	color: #08405f;
	line-height: 1;
	margin-bottom: 8px;
}

.sidebar-rating-label {
	font-size: 14px;
	font-weight: 700;
	color: #16809f;
	margin-bottom: 4px;
}

.sidebar-rating-count {
	font-size: 13px;
	color: #777;
	margin-bottom: 20px;
}

.sidebar-review-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: linear-gradient(135deg, #006662, #16809f);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	padding: 12px 22px;
	border-radius: 30px;
	text-decoration: none;
	transition: all 0.3s ease;
	box-shadow: 0 4px 14px rgba(0, 102, 98, 0.25);
}

.sidebar-review-btn:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(0, 102, 98, 0.35);
}

.sidebar-review-btn .fa-google {
	font-size: 15px;
	color: #afd779;
}

/* Responsive – Reviews */
@media (max-width: 991.98px) {
	.reviews-section {
		padding: 40px 0 60px;
	}

	.reviews-cta-box {
		flex-direction: column;
		align-items: flex-start;
		padding: 24px;
	}

	.reviews-sidebar {
		position: static;
	}
}

@media (max-width: 575.98px) {
	.reviews-cta-title {
		font-size: 17px;
	}

	.review-card {
		padding: 18px 20px;
	}

	.sidebar-rating-number {
		font-size: 38px;
	}
}


/* ==========================================================================
   Women's Health Library Page
   ========================================================================== */

.whl-section {
	padding: 60px 0 80px;
}

/* Disclaimer */
.whl-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	background: rgba(22, 128, 159, 0.06);
	border: 1px solid rgba(22, 128, 159, 0.18);
	border-left: 4px solid #16809f;
	border-radius: 12px;
	padding: 18px 22px;
	margin-bottom: 36px;
}

.whl-disclaimer-icon {
	color: #16809f;
	font-size: 18px;
	margin-top: 2px;
	flex-shrink: 0;
}

.whl-disclaimer p {
	margin: 0;
	color: #555;
	font-size: 14px;
	line-height: 1.7;
}

/* Featured Row */
.whl-featured-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	margin-bottom: 8px;
}

.whl-feature-card {
	background: #fff;
	border-radius: 18px;
	padding: 28px 30px;
	border: 2px solid rgba(22, 128, 159, 0.15);
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.06);
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.whl-feature-card:hover {
	box-shadow: 0 12px 36px rgba(22, 128, 159, 0.16);
	transform: translateY(-4px);
}

.whl-feature-card--green {
	border-color: rgba(175, 215, 121, 0.3);
}

.whl-feature-card-header {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 20px;
}

.whl-feature-icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: linear-gradient(135deg, #16809f, #66bfca);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.whl-feature-icon--green {
	background: linear-gradient(135deg, #afd779, #90b166);
}

.whl-feature-icon i {
	color: #fff;
	font-size: 22px;
}

.whl-feature-title {
	font-size: 22px;
	font-weight: 800;
	color: #08405f;
	margin: 0 0 4px;
}

.whl-feature-subtitle {
	font-size: 14px;
	color: #777;
	margin: 0;
}

/* Topic Pills */
.whl-topic-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.whl-pill {
	display: inline-block;
	background: linear-gradient(135deg, #16809f, #66bfca);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	padding: 8px 18px;
	border-radius: 30px;
	text-decoration: none;
	transition: all 0.3s ease;
	box-shadow: 0 3px 10px rgba(22, 128, 159, 0.25);
}

.whl-pill:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(22, 128, 159, 0.35);
}

.whl-pill--green {
	background: linear-gradient(135deg, #afd779, #90b166);
	box-shadow: 0 3px 10px rgba(144, 177, 102, 0.25);
}

.whl-pill--green:hover {
	box-shadow: 0 6px 16px rgba(144, 177, 102, 0.35);
}

/* Small Cards */
.whl-small-card {
	background: #fff;
	border-radius: 18px;
	padding: 26px 24px;
	height: 100%;
	border: 1px solid rgba(22, 128, 159, 0.12);
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06);
	transition: box-shadow 0.3s ease, transform 0.3s ease;
	display: flex;
	flex-direction: column;
}

.whl-small-card:hover {
	box-shadow: 0 10px 30px rgba(22, 128, 159, 0.14);
	transform: translateY(-4px);
}

.whl-small-card--teal {
	background: linear-gradient(135deg, #f0f9fb 0%, #edf7ed 100%);
	border-color: rgba(22, 128, 159, 0.18);
}

.whl-small-card--dark {
	background: linear-gradient(135deg, #f4f9fb, #eef5fb);
	border-color: rgba(0, 102, 98, 0.15);
}

.whl-small-card--green {
	background: linear-gradient(135deg, #f6fbee, #f0f9fb);
	border-color: rgba(175, 215, 121, 0.3);
}

.whl-small-card-icon {
	width: 48px;
	height: 48px;
	border-radius: 12px;
	background: linear-gradient(135deg, #16809f, #66bfca);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 16px;
}

.whl-small-card-icon--teal {
	background: linear-gradient(135deg, #006662, #16809f);
}

.whl-small-card-icon--dark {
	background: linear-gradient(135deg, #08405f, #16809f);
}

.whl-small-card-icon--green {
	background: linear-gradient(135deg, #afd779, #90b166);
}

.whl-small-card-icon i {
	color: #fff;
	font-size: 20px;
}

.whl-small-card-title {
	font-size: 19px;
	font-weight: 800;
	color: #08405f;
	margin-bottom: 10px;
}

.whl-small-card-desc {
	color: #555;
	font-size: 14px;
	line-height: 1.7;
	margin-bottom: 18px;
	flex: 1;
}

/* Small Card CTA Button */
.whl-small-card-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: linear-gradient(135deg, #16809f, #66bfca);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	padding: 9px 18px;
	border-radius: 30px;
	text-decoration: none;
	width: fit-content;
	transition: all 0.3s ease;
	box-shadow: 0 3px 10px rgba(22, 128, 159, 0.25);
}

.whl-small-card-btn:hover {
	color: #fff;
	transform: translateY(-2px);
}

.whl-small-card-btn--teal {
	background: linear-gradient(135deg, #006662, #16809f);
}

.whl-small-card-btn--dark {
	background: linear-gradient(135deg, #08405f, #16809f);
}

/* Link List (Wellness / Your Visit) */
.whl-link-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: auto;
}

.whl-link-list a {
	color: #16809f;
	font-size: 14px;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
	transition: color 0.2s ease;
}

.whl-link-list a:hover {
	color: #afd779;
}

.whl-link-list span {
	color: #bbb;
	font-size: 14px;
}

/* Interactive Tools List */
.whl-tools-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-top: 4px;
}

.whl-tools-list a {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #16809f;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	padding: 6px 0;
	border-bottom: 1px solid rgba(22, 128, 159, 0.1);
	transition: color 0.2s ease, padding-left 0.2s ease;
}

.whl-tools-list a:last-child {
	border-bottom: none;
}

.whl-tools-list a i {
	color: #66bfca;
	font-size: 10px;
	flex-shrink: 0;
}

.whl-tools-list a:hover {
	color: #006662;
	padding-left: 4px;
}

/* Responsive – Women's Health Library */
@media (max-width: 991.98px) {
	.whl-featured-row {
		grid-template-columns: 1fr;
	}

	.whl-section {
		padding: 40px 0 60px;
	}
}

@media (max-width: 575.98px) {
	.whl-feature-title {
		font-size: 18px;
	}

	.whl-feature-card {
		padding: 22px 20px;
	}

	.whl-disclaimer {
		flex-direction: column;
		gap: 8px;
	}
}


/* ==========================================================================
   Forms & Policies Page
   ========================================================================== */

.fp-section {
	padding: 60px 0 80px;
}

/* Policy Cards List */
.fp-section .container {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.fp-policy-card {
	background: #fff;
	border-radius: 20px;
	overflow: hidden;
	border: 1px solid rgba(22, 128, 159, 0.12);
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.06);
	transition: box-shadow 0.3s ease;
}

.fp-policy-card:hover {
	box-shadow: 0 10px 32px rgba(22, 128, 159, 0.14);
}

/* Card Header */
.fp-policy-header {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 20px 28px;
	background: linear-gradient(135deg, #f0f9fb, #e8f6f9);
	border-bottom: 1px solid rgba(22, 128, 159, 0.12);
}

.fp-policy-header--teal {
	background: linear-gradient(135deg, #006662, #16809f);
}

.fp-policy-header--teal .fp-policy-title {
	color: #fff;
}

.fp-policy-header--green {
	background: linear-gradient(135deg, #f4fbee, #edf7ed);
	border-bottom-color: rgba(175, 215, 121, 0.2);
}

.fp-policy-header--dark {
	background: linear-gradient(135deg, #08405f, #16809f);
}

.fp-policy-header--dark .fp-policy-title {
	color: #fff;
}

/* Policy Icon Badge */
.fp-policy-icon {
	width: 46px;
	height: 46px;
	border-radius: 12px;
	background: linear-gradient(135deg, #16809f, #66bfca);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.fp-policy-icon--teal {
	background: rgba(255, 255, 255, 0.2);
	border: 1px solid rgba(255, 255, 255, 0.3);
}

.fp-policy-icon--green {
	background: linear-gradient(135deg, #afd779, #90b166);
}

.fp-policy-icon--dark {
	background: rgba(255, 255, 255, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.25);
}

.fp-policy-icon i {
	color: #fff;
	font-size: 20px;
}

.fp-policy-title {
	font-size: 20px;
	font-weight: 800;
	color: #08405f;
	margin: 0;
}

/* Card Body */
.fp-policy-body {
	padding: 26px 28px;
}

.fp-policy-body p {
	color: #444;
	font-size: 15px;
	line-height: 1.8;
	margin-bottom: 16px;
}

.fp-policy-body p:last-child {
	margin-bottom: 0;
}

.fp-policy-body a {
	color: #16809f;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.fp-policy-body a:hover {
	color: #afd779;
}

/* Notice Box */
.fp-notice-box {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	background: linear-gradient(135deg, rgba(229, 158, 0, 0.07), rgba(229, 158, 0, 0.04));
	border: 1px solid rgba(229, 158, 0, 0.25);
	border-left: 4px solid #e59e00;
	border-radius: 10px;
	padding: 16px 18px;
	margin: 16px 0;
	font-size: 14px;
	color: #444;
	line-height: 1.7;
}

.fp-notice-icon {
	color: #e59e00;
	font-size: 18px;
	margin-top: 2px;
	flex-shrink: 0;
}

/* Steps List */
.fp-steps-list {
	list-style: none;
	counter-reset: fp-step;
	margin: 16px 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.fp-steps-list>li {
	counter-increment: fp-step;
	gap: 14px;
	align-items: flex-start;
	font-size: 15px;
	color: #444;
	line-height: 1.7;
}

.mr-30 {
	margin: 0 40px;
	border-radius: 60px;
}

.fp-steps-list--dark>li::before {
	background: linear-gradient(135deg, #08405f, #16809f);
}

/* Sub List */
.fp-sub-list {
	list-style: none;
	margin: 14px 0 0 44px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.fp-sub-list li {
	font-size: 14px;
	color: #444;
	line-height: 1.7;
	display: flex;
	align-items: flex-start;
	gap: 10px;
	counter-increment: none;
}

.fp-sub-list li::before {
	content: none !important;
	display: none !important;
}

.fp-sub-list li i {
	color: #16809f;
	font-size: 16px;
	margin-top: 3px;
	flex-shrink: 0;
	width: 18px;
}

/* Fees Label */
.fp-fees-label {
	font-weight: 700;
	color: #08405f;
	margin-bottom: 12px !important;
}

/* Fees Grid */
.fp-fees-grid {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
	margin-bottom: 20px;
}

.fp-fee-badge {
	display: flex;
	flex-direction: column;
	align-items: center;
	background: linear-gradient(135deg, #16809f, #66bfca);
	border-radius: 14px;
	padding: 16px 24px;
	min-width: 140px;
	box-shadow: 0 4px 14px rgba(22, 128, 159, 0.25);
}

.fp-fee-badge--teal {
	background: linear-gradient(135deg, #006662, #16809f);
}

.fp-fee-badge--dark {
	background: linear-gradient(135deg, #08405f, #006662);
}

.fp-fee-type {
	font-size: 12px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.85);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 6px;
}

.fp-fee-amount {
	font-size: 28px;
	font-weight: 800;
	color: #fff;
}

/* Buttons */
.fp-portal-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: linear-gradient(135deg, #16809f, #66bfca);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	padding: 13px 26px;
	border-radius: 30px;
	text-decoration: none;
	transition: all 0.3s ease;
	box-shadow: 0 4px 14px rgba(22, 128, 159, 0.25);
	margin-top: 6px;
}

.fp-portal-btn:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(22, 128, 159, 0.35);
}

.fp-download-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: linear-gradient(135deg, #006662, #08405f);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	padding: 14px 28px;
	border-radius: 12px;
	text-decoration: none;
	margin-top: 20px;
	transition: all 0.3s ease;
	box-shadow: 0 4px 16px rgba(0, 102, 98, 0.3);
}

.fp-download-btn:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 8px 22px rgba(0, 102, 98, 0.4);
}

.fp-download-btn i {
	font-size: 18px;
}

/* ── Timeline Steps ── */
.fp-timeline {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin: 20px 0 28px;
	position: relative;
}

.fp-policy-body .main-btn a {
	color: #fff;
	text-decoration: none;
}

.fp-timeline::before {
	content: '';
	position: absolute;
	left: 17px;
	top: 0;
	bottom: 0;
	width: 2px;
	background: linear-gradient(180deg, #16809f, #66bfca);
	border-radius: 2px;
}

.fp-timeline-step {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	padding: 12px 0;
	position: relative;
}

.fp-step-number {
	width: 36px;
	height: 36px;
	min-width: 36px;
	border-radius: 50%;
	background: linear-gradient(135deg, #08405f, #16809f);
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 2;
	box-shadow: 0 3px 10px rgba(8, 64, 95, 0.3);
}

.fp-step-content {
	font-size: 15px;
	color: #444;
	line-height: 1.7;
	padding-top: 6px;
}

.fp-step-content strong {
	color: #08405f;
}

/* ── Submission Method Cards ── */
.fp-methods-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin: 0 0 10px;
}

.fp-method-card {
	background: linear-gradient(135deg, #f0f9fb, #e8f4f7);
	border: 1px solid rgba(22, 128, 159, 0.15);
	border-radius: 14px;
	padding: 20px 18px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 12px;
	transition: all 0.3s ease;
}

.fp-method-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 24px rgba(22, 128, 159, 0.15);
	border-color: rgba(22, 128, 159, 0.3);
}

.fp-method-icon {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: linear-gradient(135deg, #16809f, #66bfca);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.fp-method-icon i {
	color: #fff;
	font-size: 18px;
}

.fp-method-info {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.fp-method-label {
	font-size: 13px;
	font-weight: 800;
	color: #08405f;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.fp-method-info p {
	font-size: 13px;
	color: #555;
	line-height: 1.6;
	margin: 0;
}

.fp-method-info p a {
	color: #16809f;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.fp-method-info p a:hover {
	color: #afd779;
}

/* Responsive - methods grid */
@media (max-width: 767.98px) {
	.fp-methods-grid {
		grid-template-columns: 1fr;
	}

	.fp-method-card {
		flex-direction: row;
		text-align: left;
		align-items: flex-start;
	}

	.mr-30 {
		margin: 0 20px;
		border-radius: 30px;
	}

	.fp-method-info {
		align-items: flex-start;
	}
}

/* ── Insurance Section ── */
.fp-insurance-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: 12px;
	margin: 15px 0 30px;
}

.fp-insurance-chip {
	display: flex;
	align-items: center;
	gap: 10px;
	background: #f8fcfd;
	border: 1px solid rgba(22, 128, 159, 0.2);
	border-radius: 8px;
	padding: 10px 14px;
	font-size: 14px;
	color: #444;
	transition: all 0.2s ease;
}

.fp-insurance-chip:hover {
	background: #fff;
	border-color: #16809f;
	box-shadow: 0 4px 12px rgba(22, 128, 159, 0.1);
	transform: translateY(-2px);
}

.fp-insurance-chip i {
	color: #16809f;
	font-size: 16px;
}

/* ── Info Blocks ── */
.fp-info-block {
	background: #fafafa;
	border-left: 4px solid #16809f;
	padding: 20px;
	margin-bottom: 20px;
	border-radius: 0 8px 8px 0;
}

.fp-info-block--highlight {
	background: #f0f9fb;
	border-left-color: #afd779;
}

.fp-info-block-title {
	font-size: 18px;
	font-weight: 700;
	color: #08405f;
	margin-top: 0;
	margin-bottom: 12px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.fp-info-block-title i {
	color: #16809f;
}

.fp-info-block p {
	font-size: 14px;
	line-height: 1.7;
	color: #555;
	margin-bottom: 10px;
}

.fp-info-block p:last-child {
	margin-bottom: 0;
}


/* Responsive */
@media (max-width: 767.98px) {
	.fp-fees-grid {
		flex-direction: column;
	}

	.fp-fee-badge {
		min-width: 100%;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		padding: 14px 20px;
	}

	.fp-fee-amount {
		font-size: 22px;
	}

	.fp-policy-title {
		font-size: 17px;
	}

	.fp-sub-list {
		margin-left: 14px;
	}
}

@media (max-width: 575.98px) {
	.fp-policy-header {
		padding: 16px 20px;
	}

	.fp-policy-body {
		padding: 20px;
	}

	.fp-section {
		padding: 40px 0 60px;
	}
}

/* ==========================================================================
   Overview Gynecology Redesign
   ========================================================================== */
.overview-intro-area {
	padding: 50px 0 60px;
}

.overview-intro-content {
	max-width: 900px;
	margin: 0 auto;
}

.overview-title {
	color: #16809f;
	font-size: 36px;
	font-weight: 700;
	margin-bottom: 25px;
}

.overview-desc {
	color: #444;
	line-height: 1.8;
	font-size: 16px;
	margin-bottom: 20px;
}

.overview-link {
	color: #16809f;
	text-decoration: underline;
	font-weight: 600;
}

.overview-link:hover {
	color: #afd779;
}

.section-heading {
	color: #16809f;
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 20px;
}

.womens-health-area {
	padding: 0 0 60px 0;
}

.bg-light-gray {
	background-color: #f8f9fa;
}

.annual-exam-area {
	padding: 70px 0;
}

.gyn-services-area {
	padding: 70px 0;
}

.lab-ultrasound-area {
	padding: 80px 0;
}

.rounded-img {
	border-radius: 12px;
	width: 100%;
	object-fit: cover;
}

.shadow-img {
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.wh-content-box p,
.exam-content-box p,
.services-header p,
.lab-item p {
	color: #444;
	line-height: 1.8;
	font-size: 16px;
	margin-bottom: 15px;
}

.services-desc {
	max-width: 950px;
	margin: 0 auto 40px;
}

.custom-check-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.custom-check-list li {
	position: relative;
	padding-left: 25px;
	margin-bottom: 12px;
	color: #444;
	font-weight: 500;
	line-height: 1.6;
}

.custom-check-list li::before {
	content: "\f058";
	/* fa-circle-check */
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	left: 0;
	top: 2px;
	color: #a7d070;
	font-size: 16px;
}

.custom-check-list li a {
	color: #444;
	text-decoration: none;
	transition: color 0.3s;
}

.custom-check-list li a:hover {
	color: #16809f;
}

.sub-heading {
	font-size: 26px;
	font-weight: 700;
	margin-bottom: 15px;
}

.text-teal {
	color: #16809f;
}

.take-test-btn {
	background-color: #a7d070;
	color: #fff;
	padding: 12px 30px;
	border-radius: 6px;
	font-weight: 700;
	text-transform: lowercase;
	display: inline-block;
	margin-top: 10px;
	transition: background-color 0.3s;
}

.take-test-btn:hover {
	background-color: #8eb75d;
	color: #fff;
	text-decoration: none;
}

.take-test-btn i {
	margin-left: 8px;
}

@media (max-width: 991.98px) {
	.overview-title {
		font-size: 30px;
	}

	.section-heading {
		font-size: 28px;
	}

	.wh-image-box,
	.exam-image-box,
	.lab-image-box {
		margin-bottom: 30px;
	}
}

/* ==========================================================================
   Modern In-Office Procedures
   ========================================================================== */
.modern-procedure-hero {
	background: linear-gradient(135deg, #fdfbfb 0%, #eef1f5 100%);
	padding: 100px 0;
	position: relative;
	overflow: hidden;
}

.hero-badge {
	background: rgba(167, 208, 112, 0.15);
	color: #6a9531;
	padding: 8px 20px;
	border-radius: 50px;
	font-weight: 700;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 1px;
	display: inline-block;
	margin-bottom: 25px;
}

.hero-title {
	font-size: 48px;
	font-weight: 800;
	color: #16809f;
	margin-bottom: 25px;
}

.hero-desc {
	font-size: 18px;
	line-height: 1.8;
	color: #555;
	max-width: 800px;
	margin: 0 auto 40px;
}

.btn-modern-call {
	background: #16809f;
	color: #fff;
	padding: 16px 40px;
	border-radius: 50px;
	font-size: 18px;
	font-weight: 600;
	text-decoration: none;
	box-shadow: 0 10px 20px rgba(22, 128, 159, 0.3);
	transition: all 0.3s ease;
	display: inline-block;
}

.btn-modern-call:hover {
	background: #a7d070;
	color: #fff;
	transform: translateY(-3px);
	box-shadow: 0 15px 25px rgba(167, 208, 112, 0.4);
}

.procedure-info-section {
	padding: 80px 0;
}

.section-heading {
	font-size: 38px;
	font-weight: 700;
	color: #2c3e50;
}

.alert-box {
	background: #f8f9fa;
	border-left: 4px solid #16809f;
	padding: 20px;
	border-radius: 8px;
	display: flex;
	align-items: center;
	margin-top: 30px;
}

.info-image-wrapper {
	position: relative;
	padding: 20px;
}

.modern-img {
	position: relative;
	z-index: 1;
}

.info-image-wrapper::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 80%;
	height: 80%;
	background: #e6f4f7;
	border-radius: 20px;
	z-index: 0;
}

.floating-badge {
	position: absolute;
	bottom: -20px;
	left: -20px;
	background: #fff;
	padding: 20px 30px;
	border-radius: 15px;
	box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
	z-index: 2;
	text-align: center;
}

.modern-procedures-grid {
	padding: 80px 0;
}

.max-w-700 {
	max-width: 700px;
}

.modern-proc-card {
	background: #fff;
	padding: 40px 30px;
	border-radius: 20px;
	height: 100%;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
	transition: all 0.4s ease;
	position: relative;
	overflow: hidden;
	z-index: 1;
}

.modern-proc-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background: #a7d070;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.4s ease;
}

.modern-proc-card:hover {
	transform: translateY(-10px);
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.modern-proc-card:hover::before {
	transform: scaleX(1);
}

.icon-circle {
	width: 70px;
	height: 70px;
	background: rgba(22, 128, 159, 0.1);
	color: #16809f;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	margin-bottom: 25px;
	transition: all 0.3s ease;
}

.modern-proc-card:hover .icon-circle {
	background: #16809f;
	color: #fff;
}

.modern-proc-card h4 {
	font-size: 22px;
	font-weight: 700;
	color: #2c3e50;
	margin-bottom: 15px;
}

.modern-proc-card p {
	color: #666;
	line-height: 1.7;
	margin: 0;
}

.modern-cta-section {
	padding: 50px 0;
}

.bg-grandiant {
	background: url(../images/bg-grandiant.jpg) no-repeat center;
	background-size: cover;
	padding: 60px 0;
}

.modern-cta-box {
	background: #16809f;
	border-radius: 24px;
	padding: 60px 40px;
	color: #fff;
	box-shadow: 0 20px 40px rgba(22, 128, 159, 0.2);
}

.modern-cta-box h3 {
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 20px;
	color: #fff;
}

.modern-cta-box p {
	font-size: 18px;
	max-width: 700px;
	margin: 0 auto;
	line-height: 1.8;
	color: rgba(255, 255, 255, 0.9);
}

.btn-modern-primary {
	background: #a7d070;
	color: #fff;
	padding: 16px 35px;
	border-radius: 50px;
	font-size: 18px;
	font-weight: 600;
	display: inline-block;
	transition: all 0.3s ease;
	text-decoration: none;
}

.btn-modern-primary:hover {
	background: #fff;
	color: #16809f;
	transform: translateY(-2px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

@media (max-width: 991.98px) {
	.hero-title {
		font-size: 38px;
	}

	.section-heading {
		font-size: 32px;
	}

	.floating-badge {
		padding: 15px 20px;
		left: 0;
		bottom: -10px;
	}
}

@media (max-width: 767.98px) {
	.hero-title {
		font-size: 32px;
	}

	.modern-cta-box {
		padding: 40px 20px;
	}

	.modern-cta-box h3 {
		font-size: 26px;
	}
}

/* ==========================================================================
   NovaSure Page
   ========================================================================== */
.modern-article {
	padding: 10px 0;
}

.modern-title-lg {
	font-size: 34px;
	font-weight: 800;
	line-height: 1.3;
}

.modern-title-md {
	font-size: 28px;
	font-weight: 700;
	line-height: 1.3;
}

.modern-subtitle {
	font-size: 22px;
	font-weight: 600;
	color: #333;
}

.modern-divider {
	border: none;
	height: 3px;
	background: linear-gradient(90deg, #16809f 0%, #a7d070 100%);
	opacity: 1;
}

/* Step Cards */
.step-card {
	background: #fff;
	border: 1px solid #e9ecef;
	border-radius: 16px;
	padding: 20px;
	transition: all 0.3s ease;
}

.step-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 30px rgba(0, 0, 0, 0.08);
}

.step-img-wrap {
	position: relative;
	overflow: hidden;
	border-radius: 12px;
}

.step-img-wrap img {
	height: 180px;
	object-fit: cover;
}

.step-number {
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 40px;
	height: 40px;
	background: #16809f;
	color: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	font-weight: 700;
	box-shadow: 0 4px 10px rgba(22, 128, 159, 0.4);
}

/* Info Box */
.bg-light-blue {
	background-color: #e6f4f7 !important;
}

/* Safety Info */
.safety-info {
	border-color: #e9ecef !important;
}

/* Sidebar */
.widget-title {
	font-size: 20px;
}

.widget-list li {
	border-bottom: 1px solid #f0f0f0;
}

.widget-list li:last-child {
	border-bottom: none;
}

.widget-list li a {
	display: block;
	padding: 14px 20px;
	color: #555;
	text-decoration: none;
	font-size: 15px;
	font-weight: 500;
	transition: all 0.3s ease;
}

.widget-list li a:hover,
.widget-list li a.active {
	color: #16809f;
	background: rgba(22, 128, 159, 0.05);
	padding-left: 28px;
}

.widget-list li a.active {
	border-left: 3px solid #16809f;
	font-weight: 700;
}

/* Teal Gradient CTA */
.bg-teal-gradient {
	background: linear-gradient(135deg, #16809f 0%, #0d5f7a 100%);
}

.max-w-800 {
	max-width: 800px;
}

.text-white-50 {
	color: rgba(255, 255, 255, 0.75) !important;
}

.hover-scale {
	transition: all 0.3s ease;
}

.hover-scale:hover {
	transform: scale(1.05);
	box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15) !important;
}

@media (max-width: 991.98px) {
	.modern-title-lg {
		font-size: 28px;
	}

	.modern-title-md {
		font-size: 24px;
	}
}

@media (max-width: 767.98px) {
	.modern-title-lg {
		font-size: 24px;
	}

	.modern-subtitle {
		font-size: 18px;
	}

	.step-img-wrap img {
		height: 150px;
	}
}

/* ==========================================================================
   Pelvic Pain Page
   ========================================================================== */
.pp-intro-section {
	padding: 60px 0 40px;
}

.pp-badge-box {
	background: linear-gradient(135deg, #e6f4f7, #f0faf5);
	border: 2px solid #16809f;
	border-radius: 20px;
	padding: 40px 30px;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 15px;
}

.pp-badge-box i {
	font-size: 48px;
	color: #16809f;
}

.pp-badge-box span {
	font-size: 18px;
	font-weight: 700;
	color: #16809f;
}

.pp-qa-section {
	padding: 50px 0;
}

.pp-symptom-list {
	list-style: none;
	padding: 0;
	margin: 20px 0;
}

.pp-symptom-list li {
	position: relative;
	padding-left: 22px;
	margin-bottom: 10px;
	font-size: 16px;
	font-weight: 500;
	color: #444;
}

.pp-symptom-list li::before {
	content: "\f111";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	left: 0;
	top: 3px;
	font-size: 8px;
	color: #16809f;
}

.pp-symptom-list li a {
	text-decoration: underline;
}

.pp-symptom-list li a:hover {
	color: #a7d070;
}

@media (max-width: 767.98px) {
	.pp-badge-box {
		padding: 25px 20px;
	}

	.pp-badge-box i {
		font-size: 36px;
	}
}

/* Custom Header specific to Home Page */
.home-header {
	width: 100%;
}

.home-header .container {
	max-width: 1600px;
}

.home-header .top-bar-custom {
	background-color: #1680a1;
	padding: 6px 0;
	color: #fff;
	border-radius: 0 0 30px 30px;
}

.home-header .top-bar-text {
	font-size: 16px;
	font-weight: 600;
	color: #fff;
}

.home-header .top-bar-right {
	gap: 40px;
}

.has-submenu .submenu-list {
	overflow: hidden;
}

.home-header .top-bar-phone a {
	color: #fff;
	text-decoration: none;
	font-weight: 600;
	font-size: 22px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.home-header .top-bar-socials {
	display: flex;
	gap: 12px;
	align-items: center;
}

.home-header .top-bar-socials a {
	color: #fff;
	font-size: 22px;
	text-decoration: none;
	transition: 0.3s;
}

.home-header .top-bar-socials a:hover {
	color: #a4d470;
}

.home-header .top-bar-btns {
	display: flex;
	gap: 10px;
}


.home-header .btn-custom-darkteal,
.home-header .btn-custom-lightgreen {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 26px;
	border-radius: 10px;
	font-size: 18px;
	font-weight: 500;
	text-decoration: none;
	color: #fff;
	transition: 0.3s;
	font-family: "Onest", sans-serif;
}

.home-header .top-bar-btns a {
	padding: 10px 22px;
}

.home-header .btn-custom-darkteal {
	background-color: #006761;
}

.home-header .btn-custom-darkteal:hover {
	background-color: #004d4a;
	color: #fff;
}

.home-header .btn-custom-lightgreen {
	background-color: #77bf90;
}

.home-header .btn-custom-lightgreen:hover {
	background-color: #7ab363;
	color: #fff;
}

.home-header .btn-custom-darkteal i,
.home-header .btn-custom-lightgreen i {
	font-size: 16px;
}

/* Nav overrides for home page */
.home-header .header-nav-wrap {
	background: #fff;
	padding: 15px 0;
}

.home-header .header-nav-bar {
	background: transparent !important;
	box-shadow: none !important;
	padding: 0 !important;
	border-radius: 0 !important;
}

.home-header .header-nav-bar li {
	padding: 0 10px;
}

.home-header .header-nav-bar .dropdown-menu li {
	padding: 0;
}



.home-header .header-nav-bar .nav-link {
	color: #000 !important;
	text-transform: none;
	font-weight: 600;
	font-size: 16px;
	padding: 0px;
}

.home-header .header-nav-bar .nav-link:hover,
.home-header .header-nav-bar .nav-link.active {
	color: #1a869c !important;
}

.home-header .logo img {
	max-height: 55px;
	width: auto;
}

@media (max-width: 991px) {
	.home-header .top-bar-right {
		margin-top: 10px;
		gap: 15px;
	}

	.home-header .top-bar-btns {
		margin-top: 10px;
	}

	.home-header .header-nav-bar .navbar-collapse {
		background: #fff;
		padding: 20px;
		border-radius: 10px;
		box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
		margin-top: 15px;
	}

	.home-header .header-nav-bar .nav-link {
		color: #000 !important;
	}
}

/* Home About Section Customizations */
.home-about-section {
	background-color: #f1f9fb;
	padding: 80px 0;
}

.home-about-section .maintitle .smallheading {
	color: #afd878;
	font-weight: 600;
	font-size: 24px;
	margin-bottom: 5px;
	display: block;
	text-transform: none;
	font-family: "Onest", sans-serif;
}

.home-about-section .maintitle .main-headline {
	color: #1680a1;
	font-weight: 800;
	font-size: 50px;
	line-height: 1.2;
	margin-bottom: 10px;
}

.home-about-section .maintitle .headingtagline {
	color: #006761;
	font-weight: 600;
	font-size: 24px;
	display: block;
	margin-bottom: 20px;
}

.home-about-section p {
	font-size: 15px;
	color: #16191e;
	line-height: 1.7;
	margin-bottom: 0;
}

.home-about-section p a {
	color: #1680a1;
	text-decoration: none;
}

.home-about-section p a:hover {
	text-decoration: underline;
}

.home-about-section .btn-custom-darkteal {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 24px;
	border-radius: 8px;
	font-size: 18px;
	font-weight: 600;
	text-decoration: none;
	color: #fff;
	background-color: #006761;
	transition: 0.3s;
	font-family: "Onest", sans-serif;
}

.home-about-section .btn-custom-darkteal:hover {
	background-color: #004d4a;
	color: #fff;
}

.home-about-section .btn-custom-darkteal i {
	font-size: 16px;
}

/* Home Services Section */
.home-services {
	padding: 80px 0;
	background-color: #fff;
}

.home-services .maintitle .smallheading {
	color: #a4ce72;
	font-weight: 600;
	font-size: 24px;
	margin-bottom: 10px;
	display: block;
	text-transform: none;
	font-family: "Onest", sans-serif;
}

.home-services .maintitle .main-headline {
	color: #1680a1;
	font-weight: 800;
	font-size: 56px;
	line-height: 1.2;
}

.home-services .service-card {
	position: relative;
	border-radius: 12px;
	overflow: hidden;
	display: block;
	height: 100%;
}

.home-services .service-img img {
	width: 100%;
	border-radius: 12px;
	transition: transform 0.3s ease;
}

.home-services .service-card:hover .service-img img {
	transform: scale(1.05);
}

.home-services .service-title-box a {
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	width: 88%;
	background-color: #fff;
	padding: 20px 10px;
	border-radius: 8px;
	text-align: center;
	transition: 0.3s ease;
}

.home-services .service-title-box h3 {
	margin: 0;
	line-height: inherit;
}

.home-services .service-title-box h3 a {

	font-size: 21px;
	font-weight: 700;
	line-height: 1.3;
	font-family: "Onest", sans-serif;
}

.home-services .service-title-box h3 a {
	color: #16191e;
	text-decoration: none;
}

.home-services .service-card:hover .service-title-box h3 a {
	color: #1680a1;
}

/* CTA Banner Section */
.cta-banner-section {
	background-image: linear-gradient(rgba(22, 128, 161, 0.85), rgba(22, 128, 161, 0.85)), url('../images/appointment-bg.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding: 50px 0;
	margin: 0;
}

.cta-banner-inner {
	width: 100%;
}

.cta-banner-text {
	border-left: 4px solid #fff;
}

.cta-content h2 {
	color: #fff;
	font-size: 34px;
	font-weight: 700;
	font-family: "Onest", sans-serif;
}

.cta-content p {
	color: #fff;
	font-size: 16px;
	margin-bottom: 0;
}

.cta-phone-icon {
	width: 50px;
	height: 50px;
	background-color: #fff;
	border-radius: 50%;
	color: #1680a1;
	font-size: 20px;
}

.cta-phone-text span {
	color: #fff;
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 2px;
}

.cta-phone-text a {
	color: #fff;
	font-size: 24px;
	font-weight: 700;
	text-decoration: none;
	font-family: "Onest", sans-serif;
	line-height: 1;
}

.cta-phone-text a:hover {
	color: #fff;
}

.btn-cta-white {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background-color: #fff;
	color: #1680a1;
	padding: 12px 24px;
	border-radius: 8px;
	font-size: 18px;
	font-weight: 700;
	text-decoration: none;
	font-family: "Onest", sans-serif;
	transition: all 0.3s ease;
}

.btn-cta-white:hover {
	background-color: #a4d470;
	color: #fff;
}

.btn-cta-white i {
	font-size: 18px;
}

/* Responsive adjustments */
@media (max-width: 991px) {
	.cta-banner-action, .about-kennesaw-action{
		justify-content: center !important;
	}

	.cta-content h2 {
		font-size: 24px;
	}

	.cta-phone-text a {
		font-size: 20px;
	}
}

@media (max-width: 767px) {
	.cta-banner-section {
		padding: 30px 0;
	}

	.cta-content h2 {
		font-size: 22px;
	}

	.cta-line {
		height: 80px;
	}
}

/* About Kennesaw Gynecology Section */
.about-kennesaw-section {
	padding: 0 0 80px 0;
	background-color: #fff;
	overflow: hidden;
}
.about-kennesaw-section .row{align-items:center;}

.about-kennesaw-images {
	position: relative;
	padding-right: 80px;
}


.doctor-portrait-badge {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 280px;
	height: 440px;
	border-radius: 140px;
	border: 8px solid #1680a1;
	overflow: hidden;
	background-color: #fff;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
	z-index: 2;
}

.doctor-portrait-badge img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.award-badge {
	position: absolute;
	right: 40px;
	bottom: -40px;
	background-color: #fff;
	padding: 15px;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
	z-index: 3;
	max-width: 240px;
}

.about-kennesaw-content .maintitle .smallheading {
	color: #a4ce72;
	font-weight: 600;
	font-size: 24px;
	margin-bottom: 5px;
	display: block;
	font-family: "Onest", sans-serif;
}

.about-kennesaw-content .maintitle .main-headline {
	color: #1680a1;
	font-weight: 800;
	font-size: 42px;
	line-height: 1.2;
}

.about-kennesaw-content p {
	font-size: 16px;
	color: #16191e;
	line-height: 1.7;
	margin-bottom: 20px;
}

.phone-icon-teal {
	width: 50px;
	height: 50px;
	background-color: #1680a1;
	border-radius: 50%;
	color: #fff;
	font-size: 20px;
}

.phone-text-black span {
	color: #1680a1;
	font-size: 13px;
	font-weight: 700;
	margin-bottom: 2px;
}

.phone-text-black a {
	color: #000;
	font-size: 22px;
	font-weight: 800;
	text-decoration: none;
	font-family: "Onest", sans-serif;
	line-height: 1;
}

.phone-text-black a:hover {
	color: #1680a1;
}

.about-kennesaw-action .btn-custom-darkteal {
	background-color: #006761;
	color: #fff;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 28px;
	border-radius: 8px;
	font-size: 18px;
	font-weight: 700;
	text-decoration: none;
	font-family: "Onest", sans-serif;
	transition: all 0.3s ease;
}

.about-kennesaw-action .btn-custom-darkteal:hover {
	background-color: #004d4a;
	color: #fff;
}

@media (max-width: 991px) {
	.about-kennesaw-images {
		padding-right: 0;
		padding-bottom: 0;
	}

	.doctor-portrait-badge {
		position: absolute;
		transform: none;
		right: 20px;
		top: auto;
		bottom: 20px;
		width: 220px;
		height: 320px;
	}

	.award-badge {
		right: auto;
		left: 20px;
		bottom: 20px;
	}

 
}

/* New Meet Dr. Paas Section */
.meet-section-new {
	background-color: #f4f5f7;
	padding: 80px 0;
}
.meet-content-new h3{color: #000;
    font-weight: 600;
    font-size: 24px;
    margin-bottom: 15px;
    font-family: "Onest", sans-serif;}
.meet-card {
	background-color: #fff;
	border-radius: 30px;
	padding: 60px;
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.05);
}

.meet-content-new .meet-headline-new {
	color: #1680a1;
	font-weight: 800;
	font-size: 50px;
	margin-bottom: 5px;
	font-family: "Onest", sans-serif;
}

.meet-content-new .meet-tagline-new {
	display: block;
	color: #000;
	font-weight: 600;
	font-size: 24px;
	margin-bottom: 25px;
	font-family: "Onest", sans-serif;
}

.meet-content-new p {
	color: #151519;
	font-size: 18px;
	line-height: 1.7;
	margin-bottom: 20px;
}

.feature-item {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	border-right: 1px solid #eee;
	padding: 0 10px;
}

.feature-item.border-0 {
	border-right: none !important;
}

.feature-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 12px;
}

.feature-text {
	color: #000;
	font-weight: 600;
	font-size: 16px;
	font-family: "Onest", sans-serif;
	line-height: 1.3;
}

.meet-image-new {
	position: relative;
	display: inline-block;
}

.doctor-circle {

	overflow: hidden;
	margin: 0 auto;
}

.doctor-circle img {
	border-radius: 50%;
	border: 10px solid #1680a1;
	object-fit: cover;
}

.doctor-name-card {
	position: absolute;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%);
	background-color: #fff;
	padding: 15px 40px;
	border-radius: 8px;
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
	white-space: nowrap;
}

.doctor-name-card h3 {
	margin: 0;
	color: #1680a1;
	font-size: 56px;
	font-weight: 400;
	font-family: 'brush_script_stdmedium';
}

@media (max-width: 991px) {
	.meet-card {
		padding: 40px 20px 60px;
	}

	.blog-section-new .row {
		justify-content: center;
	}

	.meet-features { 
		gap: 20px;
		border-top: none;
	}

	.feature-item {
		border-right: none;
		flex: 1 1 100%;
		border-bottom: 1px solid #eee;
		padding-bottom: 20px;
	}

	.feature-item:last-child {
		border-bottom: none;
	}
}

/* Voted Best Section */
.voted-best-section {
	padding: 60px 0;
	background-color: #fff;
}

.voted-best-headline {
	color: #1680a1;
	font-size: 36px;
	font-weight: 700;
	margin-bottom: 30px;
}

.badges-wrap {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	border: 1px solid #eaeaea;
	flex-wrap: nowrap;
	width: 100%;
}

.badge-item {
	padding: 15px;
	border-right: 1px solid #eaeaea;
	display: flex;
	justify-content: center;
	align-items: center;
	flex: 1;
}

.badge-item:last-child {
	border-right: none;
}

.badge-item img {
	max-width: 100%;
	height: auto;
}

@media (max-width: 991px) {
	.badges-wrap {
		flex-wrap: wrap;
	}

	.badge-item {
		width: 33.33%;
		border-bottom: 1px solid #eaeaea;
	}

	.badge-item:nth-child(3n) {
		border-right: none;
	}

	.badge-item:nth-last-child(-n+2) {
		border-bottom: none;
	}
}

@media (max-width: 767px) {
	.badge-item {
		width: 50%;
		border-right: 1px solid #eaeaea;
	}

	.badge-item:nth-child(2n) {
		border-right: none;
	}

	.badge-item:nth-child(3n) {
		border-right: 1px solid #eaeaea;
	}

	.badge-item:nth-last-child(-n+2) {
		border-bottom: 1px solid #eaeaea;
	}

	.badge-item:last-child {
		border-bottom: none;
		border-right: none;
	}

	.voted-best-headline {
		font-size: 24px;
	}
}

@media (max-width: 480px) {
	.badge-item {
		width: 100%;
		border-right: none !important;
	}

	.badge-item:nth-last-child(-n+2) {
		border-bottom: 1px solid #eaeaea;
	}

	.badge-item:last-child {
		border-bottom: none;
	}
}

/* Contact Section New Styles */
.contact-section-new {
	position: relative;
	padding: 80px 0;
	z-index: 1;
	background-color: #f8f9fa;
	overflow: hidden;
}

.contact-bg-left {
	position: absolute;
	top: 0;
	left: 0;
	width: 67%;
	height: 100%;
	background: url('../images/contact-bg.jpg') no-repeat center center / cover;
	z-index: 0;
}

.contact-bg-right {
	position: absolute;
	top: 0;
	right: 0;
	width: 33%;
	height: 100%;
	background: url('../images/contact-doctor.jpg') no-repeat center right / cover;
	z-index: 0;
}

.contact-header-new {
	margin-bottom: 30px;
}

.smallheading-white {
	color: #fff;
	font-weight: 600;
	font-size: 24px;
	display: block;
	margin-bottom: 5px;
}

.main-headline-white {
	color: #fff;
	font-size: 56px;
	font-weight: 700;
	margin: 0;
}

.contact-form-wrap-new {
	background-color: #fff;
	border-radius: 15px;
	padding: 40px;
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}

.appointment-form-new .form-control,
.appointment-form-new .form-select {
	border: 1px solid #e1e1e1;
	border-radius: 5px;
	padding: 16px 15px;
	font-size: 16px;
	color: #17191d;
	background-color: #fff;
	box-shadow: none;
}

.appointment-form-new .form-control::placeholder {
	color: #17191d;
	opacity: 1;
	/* Firefox lowers opacity by default */
}

.appointment-form-new .form-control:focus,
.appointment-form-new .form-select:focus {
	border-color: #1680a1;
	outline: none;
	box-shadow: none;
}

.contact-btn-new button {
	background-color: #045e69;
	color: #fff;
	border: none;
	padding: 12px 25px;
	border-radius: 5px;
	font-weight: 600;
	font-size: 18px;
	transition: all 0.3s ease;
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

.contact-btn-new button:hover {
	background-color: #034850;
}


.contact-info-card-new {
	background-color: #074b56;
	border-radius: 15px;
	padding: 40px;
	margin-top: 80px;
	width: 100%;
	max-width: 400px;
}

.info-item {
	display: flex;
	align-items: flex-start;
	gap: 20px;
}

.info-icon {
	background-color: #fff;
	color: #074b56;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 24px;
	flex-shrink: 0;
}

.info-text h4 {
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 5px;
}

.info-text p {
	color: #e0e0e0;
	font-size: 14px;
	margin: 0;
	line-height: 1.5;
}

.info-text p a {
	color: inherit;
	text-decoration: none;
	transition: opacity 0.3s ease;
}

.info-text p a:hover {
	opacity: 0.8;
}

.info-text p.phone-num {
	font-size: 24px;
	font-weight: 700;
	color: #fff;
}

.info-divider {
	height: 1px;
	background-color: rgba(255, 255, 255, 0.15);
	margin: 30px 0;
}

/* Responsive */
@media (max-width: 991px) {
	.contact-bg-left {
		width: 100%;
	}

	.contact-bg-right {
		display: none;
	}

	.contact-section-new {
		background-color: #1680a1;
	}

	.contact-info-card-new {
		margin-top: 40px;
		max-width: 100%;
	}
}

@media (max-width: 767px) {
	.contact-form-wrap-new {
		padding: 25px;
	}

	.main-headline-white {
		font-size: 32px;
	}
}

/* Testimonials Section New Styles */
.testimonial-section-new {
	background-color: #e5f6ed;
	/* light mint green */
	padding: 60px 0 70px 0;
}

.maintitle-new {
	margin-bottom: 20px;

}



.testimonial-text {
    margin-bottom: 0;
    overflow-wrap: anywhere;
}

.testimonial-text-inner {
    display: block;
    overflow: hidden;
    transition: max-height 0.4s ease;
}

.testimonial-text-inner.collapsed {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}

.testimonial-text-inner.expanded {
    display: block;
    -webkit-line-clamp: unset;
}

.testimonial-read-toggle {
    display: inline; 
    color: #a4d372;
    font-weight: 600;
    font-size: 16px;
    text-decoration: underline;
    cursor: pointer;
    white-space: nowrap;
}
.testimonial-read-toggle:hover{color:#074b56; text-decoration: none;}
/* Prevent Owl Carousel cards from stretching to equal height */
.testimonial-slider .owl-stage {
    display: flex;
    align-items: flex-start;
}

.testimonial-slider .owl-item {
    height: auto !important;
    display: flex;
    align-items: flex-start;
}

.testimonial-slider .testimonial-card-wrap {
    width: 100%;
    height: auto !important;
    align-self: flex-start;
}

.testimonial-slider .testimonial-card-new {
    height: auto !important;
    min-height: 0;
    align-self: flex-start;
}

/* Keep text collapsed to 5 lines by default */
.testimonial-text-inner.collapsed {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    overflow: hidden;
}

.testimonial-text-inner.expanded {
    display: block;
    -webkit-line-clamp: unset;
    overflow: visible;
}

 




.smallheading-green {
	color: #9cdb80;
	/* light lime green */
	font-weight: 600;
	font-size: 24px;
	display: block;
	margin-bottom: 5px;
	text-transform: capitalize;
}

.main-headline-teal {
	color: #1680a1;
	/* teal */
	font-size: 56px;
	font-weight: 700;
	margin: 0;
}

.testimonial-slider .owl-stage {
	display: flex;
}

.testimonial-slider .owl-item {
	display: flex;
	flex: 1 0 auto;
}

.testimonial-card-wrap {
	position: relative;
	padding-bottom: 30px;
	/* space for the overlapping icon */
	margin: 20px 10px;
	display: flex;
	flex-direction: column;
	width: 100%;
}

.testimonial-card-new {
	background-color: #fff;
	border-radius: 10px;
	padding: 50px;
	box-shadow: 0 10px 12px rgba(0, 0, 0, 0.05);
	min-height: 280px;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.profile-widget-new {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
}

.profile-avatar-new {
	width: 70px;
	height: 72px;
	border-radius: 10px;
	overflow: hidden;
	flex-shrink: 0;
}

.avatar-img-new {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.profile-name-new {
	color: #2b3947;
	font-size: 18px;
	font-weight: 700;
	margin: 0;
}

.profile-date-new {
	color: #9cdb80;
	font-size: 14px;
	font-weight: 500;
	display: block;
	font-family: "Onest", sans-serif;
}

.quote-new {
	color: #666;
	font-size: 16px;
	line-height: 1.6;
	margin-bottom: 10px;
	font-style: italic;
	min-height:155px;
	flex-grow: 1;
	/* Pushes stars to the bottom */
}

.stars-new {
	text-align: right;
	color: #ffc000;
	font-size: 16px;
}

.quote-icon-new {
	position: absolute;
	bottom: 0;
	left: 40px;
	width: 50px;
	height: 50px;
	background-color: #b0e599;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #a4d470;
	font-size: 20px;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

.quote-icon-new img {
	width: auto !important;
}

/* Customizing Owl Carousel Dots for this section */
.testimonial-section-new .owl-dots {
	text-align: center;
	margin-top: 30px;
}

.testimonial-section-new .owl-dot {
	display: inline-block;
	margin: 0 5px;
	background: transparent;
	border: none;
}

.testimonial-section-new .owl-dots {
	display: block !important;
}

.testimonial-section-new .owl-dot span {
	width: 20px !important;
	height: 10px !important;
	background-color: #c1e2a5 !important;
	/* lighter lime green */
	border-radius: 10px;
	display: block;
	transition: all 0.3s ease;
	margin: 0 !important;
	/* small gap */
}

.testimonial-section-new .owl-dot.active span {
	width: 45px !important;
	background-color: #a4d372 !important;
	/* darker lime green */
}

@media (max-width: 767px) {
	.main-headline-teal {
		font-size: 32px;
	}
	.quote-new{min-height:inherit;}
}

/* Blog Section New Styles */
.blog-section-new {
	background-color: #fff;
	padding: 80px 0;
}

.blog-card-new {
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
	border: 1px solid #eaeaea;
	padding: 40px;
	height: 100%;
	display: flex;
	flex-direction: column;
	transition: all 0.3s ease;
}

.blog-card-new:hover {
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
	transform: translateY(-5px);
}

.blog-card-content-top {
	margin-bottom: 20px;
}

.blog-date-new {
	color: #1680a1;
	/* Teal */
	font-size: 16px;
	font-weight: 500;
	display: block;
	margin-bottom: 10px;
}

.blog-card-title-new {
	font-size: 21px;
	font-weight: 700;
	margin: 0;
	line-height: 1.4;
}

.blog-card-title-new a {
	color: #2b3947;
	text-decoration: none;
	transition: color 0.3s ease;
}

.blog-card-title-new a:hover {
	color: #1680a1;
}

.blog-card-image-new {
	border-radius: 10px;
	overflow: hidden;
	margin-bottom: 20px;
}

.blog-card-image-new img {
	width: 100%;
	height: 180px;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.blog-card-new:hover .blog-card-image-new img {
	transform: scale(1.05);
}

.blog-card-content-bottom {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

.blog-card-text-new {
	color: #666;
	font-size: 16px;
	line-height: 26px;
	margin-bottom: 20px;
	flex-grow: 1;
}

.blog-read-more {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background-color: #045e69;
	/* Darker teal/green */
	color: #fff;
	font-size: 18px;
	font-weight: 600;
	padding: 10px 20px;
	border-radius: 5px;
	text-decoration: none;
	align-self: flex-start;
	transition: background-color 0.3s ease;
}

.blog-read-more:hover {
	background-color: #034850;
	color: #fff;
}

.care-section .main-btn a,
.schedule-section .main-btn a {
	font-size: 18px;
}

/* ==========================================================================
   Experience CTA New Styles
   ========================================================================== */
.experience-cta-new {
	background: url('../images/experience-blue-bg.jpg') center top / cover no-repeat;
	padding: 60px 0;
	position: relative;
	z-index: 2;
}

.experience-cta-box {
	background: url('../images/experience-light-bg.jpg') center center / cover no-repeat, #e9f6f9;
	border-radius: 20px;
	padding: 60px 40px;
	text-align: center;
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
	position: relative;
	z-index: 10;
	margin-bottom: -150px;
	/* Pull footer up to overlap */
}

.cta-headline-new {
	font-size: 42px;
	font-weight: 700;
	color: #111;
	margin-bottom: 20px;
	line-height: 1.3;
}

.cta-text-new {
	font-size: 16px;
	color: #444;
	max-width: 800px;
	margin: 0 auto 30px;
	line-height: 1.6;
}

.cta-actions-new {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 30px;
	flex-wrap: wrap;
}

.experience-cta-new .btn-custom-darkteal {
	background-color: #006761;
	color: #fff;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 28px;
	border-radius: 8px;
	font-size: 18px;
	font-weight: 700;
	text-decoration: none;
	font-family: "Onest", sans-serif;
	transition: all 0.3s ease;
}

.experience-cta-new .btn-custom-darkteal:hover {
	background-color: #045e69;
}

.cta-phone-new {
	display: flex;
	align-items: center;
	gap: 15px;
}

.phone-icon-circle {
	width: 60px;
	height: 60px;
	background-color: #1680a1;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.phone-icon-circle i {
	font-size: 24px;
	color: #fff;
}

.phone-icon-circle img {
	width: 20px;
}

.phone-text-wrapper {
	text-align: left;
}

.phone-label-new {
	display: block;
	font-size: 14px;
	color: #1680a1;
	font-weight: 600;
	margin-bottom: 2px;
}

.phone-number-new {
	display: block;
	font-size: 24px;
	color: #111;
	font-weight: 700;
	text-decoration: none;
	line-height: 1;
}

.phone-number-new:hover {
	color: #1680a1;
}

@media (max-width: 991px) {
	.experience-cta-box {
		margin-bottom: -100px;
		padding: 40px 20px;
	}

	.cta-headline-new {
		font-size: 28px;
	}
}

/* ==========================================================================
   Footer New Styles
   ========================================================================== */
.footer-section-new {
	background-color: #121212;
	/* Very dark grey/black */
	color: #fff;
	padding-top: 130px;
	/* Space for the overlapping box */
	padding-bottom: 30px;
	position: relative;
	z-index: 1;
}

.footer-top-row {
	padding-bottom: 15px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-logo-new {
	margin-bottom: 40px;
	text-align: center;
}


.connect-title-new {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 10px;
	color: #fff;
	text-align: center;
}

.social-icons-new {
	text-align: center;
}

.social-icons-new a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	background-color: transparent;
	color: #fff;
	border: 1px solid transparent;
	border-radius: 50%;
	margin-right: 10px;
	text-decoration: none;
	font-size: 26px;
	transition: all 0.3s ease;
}

.social-icons-new a:hover {
	color: #a4d470;
}

.footer-title-new {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 25px;
	color: #fff;
}

.footer-links-new li {
	margin-bottom: 12px;
}

.footer-links-new li a {
	color: #ccc;
	text-decoration: none;
	font-size: 15px;
	transition: color 0.3s ease;
}

.footer-links-new li a:hover {
	color: #a4d470;
}

@media (min-width: 992px) {
	.footer-office-col-new {
		border-left: 1px solid rgba(255, 255, 255, 0.1);
		border-right: 1px solid rgba(255, 255, 255, 0.1);
		padding-left: 30px;
		padding-right: 30px;
		max-width: 375px;
	}
}

.office-info-new li {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	color: #ccc;
	font-size: 15px;
}

.office-info-new li:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.office-info-new li i {
	color: #a4d470;
	/* Light green icon */
	font-size: 18px;
	margin-top: 3px;
}

.info-details-new .info-label-new {
	display: block;
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 5px;
}

.info-details-new p {
	margin: 0;
	line-height: 1.5;
	color: #ccc;
}

.info-details-new a {
	color: #ccc;
	text-decoration: none;
	transition: color 0.3s ease;
}

.info-details-new a:hover {
	color: #a4d470;
}

.office-hours-new li {
	display: flex;
	justify-content: space-between;
	margin-bottom: 12px;
	color: #ccc;
	font-size: 14px;
}

.office-hours-new li span:first-child {
	color: #fff;
}

.footer-btns-new .btn-custom-darkteal {
	background-color: #006761;
	border-radius: 8px;
	padding: 12px 20px;
	font-size: 18px;
	color: #fff;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	transition: all 0.3s ease;
	text-decoration: none;
}

.footer-btns-new .btn-custom-darkteal:hover {
	background-color: #045e69;
}

/* Footer Bottom */
.footer-bottom-new {
	padding-top: 16px;
}

.copyright-new,
.credits-new {
	font-size: 14px;
	color: #999;
}

.credits-new a {
	color: #ccc;
	text-decoration: none;
	margin-left: 5px;
}

.credits-new a:hover {
	color: #a4d470;
}

.footer-bottom-links-new li a {
	color: #a4d470;
	/* green links */
	text-decoration: none;
	font-size: 14px;
	transition: color 0.3s ease;
}

.footer-bottom-links-new li a:hover {
	color: #fff;
}

.footer-bottom-links-new li:not(:last-child) {
	margin-right: 15px;
}

@media (max-width: 991px) {
	.footer-section-new {
		padding-top: 150px;
	}

	.footer-bottom-new .text-center {
		text-align: center !important;
	}
}

/* ==========================================================================
   Global Hover Updates (Requested)
   ========================================================================== */
.main-btn a:hover,
.bluebtn a:hover,
.lightbluebtn a:hover,
.home-about-section .btn-custom-darkteal:hover,
.about-kennesaw-action .btn-custom-darkteal:hover,
.experience-cta-new .btn-custom-darkteal:hover,
.footer-btns-new .btn-custom-darkteal:hover,
.blog-read-more:hover {
	background-color: #1680a1 !important;
}

.main-btn a:hover i,
.bluebtn a:hover i,
.lightbluebtn a:hover i {
	background-color: #0d5c75 !important;
}

/* Hover Effects for Phone Sections */

/* Contact Section (Address & Phone) */
.info-text a:hover {
	color: #a4d470 !important;
	transition: all 0.3s ease;
}

/* About Kennesaw CTA Phone */
.cta-phone-text a:hover {
	color: #a4d470 !important;
	transition: all 0.3s ease;
}

/* Experience CTA Phone */
.phone-number-new:hover {
	color: #1680a1 !important;
	transition: all 0.3s ease;
}

/* Topbar Phone */
.top-bar-phone a:hover {
	color: #a4d470 !important;
	transition: all 0.3s ease;
}


@media (max-width: 1400px) {
	.home-header .top-bar-custom {
		text-align: center !important;
	}

	.home-header .top-bar-text {
		margin-bottom: 10px !important;
	}
}

@media (max-width: 1300px) {
	.header-nav-bar .navbar-nav {
		gap: 0;
	}
}

.cms-copy-body h2{font-size:24px !important;}
.cms-copy-body h2:after {width: 40px !important;}


/* ==========================================================================
   Responsive Header

   The expanded CMS navigation fits cleanly on standard desktop viewports.
   Below 1350px it uses the existing off-canvas menu so labels never wrap.
   ========================================================================== */
@media (max-width: 1349.98px) {
	.top-bar-custom {
		display: none !important;
	}

	.home-header .nav-book-mblbtn a {
		background: #fff;
		color: #006761;
	}

	.home-header .header-nav-bar .nav-link {
		color: #fff !important;
		padding: 10px 0px;
	}

	.home-header .header-nav-bar li {
		padding: 0;
	}

	.site-header .navbar-toggler {
		display: block !important;
		border-color: #fff;
		position: absolute;
		right: 0;
		background: #afd779;
	}

	.header-nav-bar .navbar-collapse:not(.show) {
		display: none !important;
	}

	#header .nav-align {
		justify-content: flex-end !important;
	}

	.header-actions {
		margin-top: 8px;
	}

	.header-nav-wrap {
		padding: 0;
	}

	.header-nav-bar {
		background: transparent;
		border-radius: 0;
		padding: 0;
	}

	#header .navbar-collapse {
		position: fixed;
		top: 0;
		bottom: 0;
		left: 100%;
		width: 50%;
		padding: 70px 20px 24px;
		overflow-y: auto;
		visibility: hidden;
		background: rgb(0 102 98 / 94%) !important;
		transition: transform 0.3s ease-in-out, visibility 0.3s ease-in-out;
		z-index: 10000;
		display: block !important;
	}

	.header-nav-bar .nav-link.active,
	.header-nav-bar .nav-link:hover {
		border-bottom: none;
	}

	#header .navbar-collapse.show {
		visibility: visible;
		transform: translateX(-100%);
	}

	#header .close-toggler {
		display: flex;
		align-items: center;
		justify-content: center;
		background: #fff;
		border: none;
		color: #08405f;
		font-size: 16px;
		position: absolute;
		top: 15px;
		right: 15px;
		width: 32px;
		height: 32px;
		border-radius: 50%;
		line-height: 1;
		z-index: 10001;
	}

	.mobile-utility {
		display: flex;
		flex-direction: column;
		padding-bottom: 20px;
		margin-bottom: 16px;
	}

	.mobile-utility .header-phone,
	.mobile-utility .header-event {
		border-right: none;
		padding-right: 0;
		text-align: left;
	}

	.mobile-utility .header-event .event-location {
		color: #ffd200;
	}

	.header-nav-bar .navbar-nav {
		flex-direction: column !important;
		align-items: stretch;
		gap: 0;
	}

	.header-nav-bar .nav-item {
		border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	}

	.header-nav-bar .nav-link {
		color: #fff;
		padding: 12px 15px;
		font-size: 14px;
		text-transform: uppercase;
		font-weight: 700;
	}

	.header-nav-bar .nav-link:hover,
	.header-nav-bar .nav-link.active,
	.header-nav-bar .nav-link.show {
		color: #fff;
		background: #afd779;
		padding-left: 20px;
	}

	.header-nav-bar .navbar-nav {
		margin-bottom: 20px;
	}

	.header-nav-bar .dropdown-menu {
		position: static !important;
		transform: none !important;
		background: rgba(0, 0, 0, 0.15);
		box-shadow: none;
		border-radius: 0;
		margin: 0 0 8px;
	}

	.header-nav-bar .dropdown-toggle::after {
		margin-right: 15px;
	}

	.header-nav-bar .dropdown.show .dropdown-menu {
		display: block;
	}

	.header-nav-bar .dropdown-item {
		color: #fff;
		padding: 10px 15px 10px 24px;
		font-weight: 500;
	}

	.header-nav-bar .dropdown-item:hover,
	.header-nav-bar .dropdown-item:focus {
		background: #afd779;
		color: #fff;
	}

	.header-nav-bar .dropdown-toggle::after {
		float: right;
		margin-top: 8px;
		filter: brightness(0) invert(1);
	}

	.has-submenu .submenu-list {
		display: block;
		list-style: none;
		padding: 0;
		margin: 0;
		background: rgba(0, 0, 0, 0.15);
	}

	.has-submenu .submenu-list .dropdown-item {
		padding-left: 36px;
		color: #fff !important;
		font-size: 14px;
	}

	.has-submenu .submenu-list .dropdown-item:hover {
		background: #afd779;
		color: #fff !important;
	}

	.has-submenu>.dropdown-item .sub-arrow {
		display: none;
	}

	.contact-info-box {
		padding: 20px 0 !important;
	}

	.home-header .btn-custom-darkteal,
	.home-header .btn-custom-lightgreen {
		font-size: 14px !important;
		padding: 10px 14px;
	}

	.experience-cta-box {
		margin-bottom: 0;
	}

	.footer-section-new {
		padding-top: 60px;
	}

	.about-kennesaw-content {
		padding-top: 0 !important;
	}
}

@media (max-width: 1399px) {
.home-header .header-nav-bar li {
		padding: 0 6px;
	}
}
	
/* The CMS navigation contains more top-level sections than the original
   publishing menu. Keep the desktop header on one row and switch to the
   existing off-canvas navigation before labels can wrap. */
@media (min-width: 1350px) {
	.home-header .container { 
		padding-right: 18px;
		padding-left: 18px;
	}

	.home-header .header-nav-bar {
		display: grid !important;
		grid-template-columns: 190px minmax(0, 1fr);
		gap: 10px;
		width: 100%;
	}

	.home-header .logo {
		width: 215px;
		min-width: 190px;
	}

	.home-header .logo img {
		width: 186px;
		max-width: 186px;
	}

	.home-header .header-nav-bar .navbar-collapse {
		display: flex !important;
		min-width: 0;
		gap: 10px;
	}

	.home-header .header-nav-bar .navbar-nav {
		flex: 1 1 auto;
		flex-wrap: nowrap !important;
		justify-content: center;
		gap: 0;
		min-width: 0;
		margin-right: 0 !important;
		margin-left: 0 !important;
	}

	

	.home-header .header-nav-bar .nav-link {
		font-size: 13px;
		white-space: nowrap;
	}

	.home-header .nav-book-btn {
		flex: 0 0 auto;
	}

	.home-header .nav-book-btn .btn-custom-darkteal {
		padding: 11px 12px;
		font-size: 13.5px;
		white-space: nowrap;
	}
}

.home-header .top-bar-btns a {
	justify-content: center;
}

@media (max-width: 767px) {
	#header .navbar-collapse {
		width: 60% !important;
	}

	.home-header .btn-custom-darkteal,
	.home-header .btn-custom-lightgreen {
		width: 100%;
	}

	.home-header .btn-custom-darkteal {
		margin-bottom: 8px;
	}

	.home-header .top-bar-btns {
		display: block !important;
	}

	.contact-section-new {
		padding-top: 60px;
	}


}


@media (max-width: 600px) {
	#header .navbar-collapse {
		width: 80% !important;
	}

	.home-about-section {
		padding-top: 40px;
	}

	.contact-info-box {
		padding: 0 !important;
	}

	#header .logo img {
		width: 180px;
	}
}

@media (max-width: 480px) {
.home-provider-links a { 
    font-size: 16px;}
.meet-section-new { 
    padding: 35px 0 80px 0;
}
	.home-about-section .maintitle .main-headline, .main-headline-teal, 
	.main-headline {
		font-size: 24px !important;
	}

	.home-about-section .maintitle .smallheading,
	.home-about-section .maintitle .headingtagline,
	.smallheading {
		font-size: 20px !important;
	}

	.cta-banner-action {
		gap: 20px !important;
	}

	.about-kennesaw-section .mb-5 {
		margin-bottom: 0 !important;
	}

	.about-kennesaw-images {
		padding-bottom: 46px;
	}

	.meet-content-new .meet-headline-new {
		font-size: 32px;
	}

	.meet-content-new .meet-tagline-new {
		font-size: 18px;
	}

	.doctor-name-card h3 {
		font-size: 28px;

	}

	.badge-item {
		flex: 0 1 180px;
		max-width: 180px;
	}

	.badges-wrap,
	.badge-item:nth-last-child(-n+2),
	.badge-item {
		border: none;
	}

	.badges-wrap {
		justify-content: center;
	}

	.contact-info-card-new {
		margin-top: 0;
	}

	.blog-section-new {
		padding: 80px 0 40px 0;
	}

	.meet-content-new p {
		font-size: 16px;

	}

	.home-services {
		padding: 40px 0;
	}
}

/* ==========================================================================
   New Hero Content Styling
   ========================================================================== */
.hero-content-new {
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
	width: 100%;
	max-width: 730px;
	z-index: 9;
	padding: 80px 105px 80px 60px;
	text-align: left;
	box-sizing: border-box;
}

.hero-content-new::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: url('../images/videohover-bg.png') no-repeat center center;
	background-size: 100% 100%;
	opacity: 0.5;
	z-index: -1;
}

.hero-content-new h1 {    
	font-size: 38px;
	font-weight: 800;
	color: #000;
	line-height: 1.25;
	margin-bottom: 20px;
	font-family: "Onest", sans-serif;
}

.hero-content-new h1 span {
	color: #1680a1;
}
.hero-content-new h1 + p{margin-bottom:8px;}
.hero-content-new p {
	font-size: 15px;
	color: #333;
	line-height: 1.6;
	margin-bottom: 30px;
	font-family: "Open Sans", sans-serif;
}

.hero-content-new .btn-custom-darkteal {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 20px;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
	color: #fff;
	background-color: #006761;
	transition: all 0.3s ease;
	font-family: "Onest", sans-serif;
}

.hero-content-new .btn-custom-darkteal:hover {
	background-color: #1680a1;
	color: #fff;
}

.hero-content-new .btn-custom-darkteal i {
	font-size: 16px;
}


/* Responsive adjustments */
@media (max-width: 1399.98px) {
	.hero-content-new {
		max-width: 700px;
		padding: 60px 80px 60px 50px;
	}

	.hero-content-new h1 {
		font-size: 32px;
	}
}

@media (max-width: 991.98px) {
	.hero-content-new {
		max-width: 650px;
		padding: 50px 60px 75px 40px;
	}

	.hero-content-new h1 {
		font-size: 28px;
	}

	.hero-content-new p {
		font-size: 14px;
		margin-bottom: 20px;
	}
}

@media (max-width: 767.98px) {
	.videowrp {
		height: auto !important;
		display: flex !important;
		flex-direction: column !important;
		width: 100% !important;
		margin: 0 !important;
		border-radius:0 !important;
		background: #fff;
	}

	.videowrp .embed-responsive {
		position: relative;
		height: 250px;
		width: 100%;
	}

	.embed-responsive video {
		height: 100% !important;
		object-fit: cover !important;
		position: absolute;
		top: 0;
		left: 0;
	}

	.videowrp .container {
		height: auto !important;
		padding: 0 !important;
	}

	.hero-content-new {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		transform: none !important;
		max-width: 100% !important;
		width: 100% !important;
		padding: 40px 20px !important;
		text-align: center;
		background: #fff !important;
		margin: 0 !important;
		box-sizing: border-box;
		overflow: hidden;
	}

	.hero-content-new h1,
	.hero-content-new p {
		max-width: 100%;
		overflow-wrap: break-word;
	}

	.hero-content-new .d-flex {
		justify-content: center;
	}

	.hero-content-new::before {
		display: none !important;
	}

	.hero-content-new h1 {
		font-size: 20px;
		margin-bottom: 15px;
	}

	.hero-content-new p {
		font-size: 13px;
		line-height: 1.5;
		margin-bottom: 20px;
	}

	.hero-content-new .btn-custom-darkteal {
		padding: 10px 20px;
		font-size: 15px;
		gap: 6px;
	}

	.hero-content-new .btn-custom-darkteal i {
		font-size: 16px;
	}
}

@media (max-width: 480px) {
	.hero-content-new .d-flex {
		flex-direction: column;
		align-items: center;
		gap: 14px !important;
	}

	.hero-content-new h1 {
		font-size: 18px;
	}

	.hero-content-new p {
		font-size: 12px;
	}

	    .hero-content-new .btn-custom-darkteal {
        padding: 13px 16px;
        font-size: 16px;
        width: 100%;
    }
}

/* Ensure videowrp accommodates the new content on tablet */
@media (max-width: 1199.98px) {
	.videowrp {
		height: 600px !important;
	}
	.about-airshow-content ul li{text-align:left;}
}

@media (max-width: 991.98px) {
	.videowrp {
		height: 550px !important;
	}

	.embed-responsive video {
		height: 100% !important;
		object-fit: cover !important;
	}
}

/* ==========================================================================
   Premium Contact Page Styles
   ========================================================================== */
.contact-page-wrap {
	background: #f8fafc;
	padding: 100px 0;
}

.contact-page-info h2 {
	font-size: 48px;
	font-weight: 700;
	color: #1a1a1a;
	margin-bottom: 20px;
}

.contact-page-info p.lead {
	font-size: 18px;
	color: #64748b;
	margin-bottom: 50px;
	line-height: 1.6;
}

.contact-info-list {
	list-style: none;
	padding: 0;
}

.contact-info-list li {
	display: flex;
	margin-bottom: 35px;
	align-items: flex-start;
}

.contact-info-list .icon-box {
	width: 65px;
	height: 65px;
	border-radius: 16px;
	background: #e0f2fe;
	color: #1680a1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	margin-right: 25px;
	flex-shrink: 0;
	transition: all 0.3s ease;
}

.contact-info-list li:hover .icon-box {
	background: #1680a1;
	color: #fff;
	transform: scale(1.05);
}

.contact-info-list .info-content h5 {
	font-size: 22px;
	font-weight: 600;
	color: #0f172a;
	margin-bottom: 8px;
}

.contact-info-list .info-content p,
.contact-info-list .info-content a {
	color: #64748b;
	font-size: 17px;
	text-decoration: none;
	margin-bottom: 0;
	line-height: 1.5;
}

.contact-info-list .info-content a:hover {
	color: #1680a1;
}

.contact-page-form-card {
	background: #fff;
	border-radius: 30px;
	padding: 50px;
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
}

.contact-page-form-card .form-control,
.contact-page-form-card .form-select {
	background-color: #f1f5f9;
	border: 2px solid transparent;
	border-radius: 14px;
	padding: 16px 24px;
	font-size: 16px;
	color: #334155;
	margin-bottom: 24px;
	box-shadow: none;
	transition: all 0.3s;
}

.contact-page-form-card .form-control:focus,
.contact-page-form-card .form-select:focus {
	border-color: #1680a1;
	background-color: #fff;
	box-shadow: 0 0 0 4px rgba(22, 128, 161, 0.1);
}

.contact-page-form-card textarea.form-control {
	min-height: 150px;
}

.contact-page-form-card .btn-submit {
	background: #006761;
	color: #fff;
	border: none;
	padding: 18px 30px;
	border-radius: 14px;
	font-size: 18px;
	font-weight: 600;
	width: 100%;
	transition: all 0.3s;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

.contact-page-form-card .btn-submit:hover {
	background: #10637d;
	transform: translateY(-3px);
	box-shadow: 0 15px 30px rgba(22, 128, 161, 0.25);
}

@media (max-width: 767.98px) {
	.contact-page-form-card {
		padding: 30px 20px;
	}

	.contact-page-wrap {
		padding: 50px 0;
	}
.voted-best-section{padding-top:0;}
	.contact-page-info h2 {
		font-size: 36px;
	}
}

/* Shared CMS action button
   Provides the same branded treatment on every inner page instead of
   allowing CMS-generated links to fall back to the browser's blue style. */
.btn-custom-darkteal {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	max-width: 100%;
	padding: 14px 24px;
	border: 0;
	border-radius: 10px;
	background: #006761;
	box-shadow: 0 8px 20px rgba(0, 103, 97, 0.2);
	color: #fff;
	font-family: "Onest", sans-serif;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
	transition: background-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.btn-custom-darkteal i {
	flex: 0 0 auto;
	font-size: 17px;
}

.btn-custom-darkteal:hover,
.btn-custom-darkteal:focus {
	background: #16809f;
	box-shadow: 0 11px 24px rgba(22, 128, 159, 0.25);
	color: #fff;
	text-decoration: none;
	transform: translateY(-2px);
}

.btn-custom-darkteal:focus-visible {
	outline: 3px solid rgba(175, 215, 121, 0.75);
	outline-offset: 3px;
}
.blog-card-text{margin-bottom:30px;}



@media (max-width: 575.98px) {
	.cms-copy-body .btn-custom-darkteal,
	.cms-copy-actions .btn-custom-darkteal {
		width: 100%;
		padding: 13px 18px;
		font-size: 15px;
	}
	.blog-section{padding-top:0;}
}

@media (max-width: 480px) {
.contact-info-list .info-content h5 {
    font-size: 18px;
}
.contact-info-list .info-content p, .contact-info-list .info-content a { 
    font-size: 15px; 
}
.contact-page-form-card .form-control, .contact-page-form-card .form-select { 
    margin-bottom: 0px;
}
.map-wrap{height:300px !important;}

}


@media (max-width: 375px) {
.home-header .header-nav-bar .nav-link { 
    font-size: 15px; 
}

}
@media (max-width: 320px) {
    #header .navbar-collapse {
        width: 92% !important;
    }
}





.blog-details-content ul{list-style: disc;}
.blog-details-content ol{list-style: decimal;}

.blog-details-content ul li, .blog-details-content ol li{font-size:16px; line-height:26px; margin: 10px 0;}
.blog-details-content .blog-text h2{font-size: 30px;
    color: #045e69;}

.blog-details-content .blog-text h3{font-size: 24px;
    color: #16809f;}








/* =========================================
   KENNESAW GYNECOLOGY - PREMIUM LOCATION UI
   CSS ONLY | EXISTING HTML UNCHANGED
========================================= */

.location-intro-content {
    width: 100%;
    max-width: 100%;
    padding: 35px 40px;
    background: #f5f9fa;
    border: 1px solid #e4edef;
    border-radius: 20px;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    color: #52616a;
}

/* Decorative top accent */
.location-intro-content::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(90deg, #075e66 0%, #1595aa 55%, #b3dca0 100%);
}

/* Main heading */
.location-intro-content .location-intro-title {
    font-size: clamp(32px, 3vw, 43px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -1.2px;
    color: #123f55;
    margin: 0 0 18px;
}

.location-intro-content .location-intro-title span {
    color: #168ca4;
}

/* Accent line */
.location-intro-content .location-intro-bar {
    width: 76px;
    height: 5px;
    border-radius: 10px;
    background: linear-gradient(90deg, #a5d47c, #36abb5);
    margin: 0 0 25px;
}

/* Intro eyebrow */
.location-intro-content > p:first-of-type {
    display: table;
    padding: 7px 13px;
    margin: 0 0 12px;
    border-radius: 5px;
    background: #e0f0f0;
    color: #08736f;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.6px;
    line-height: 1.5;
}

/* Intro text */
.location-intro-content > p:not(:first-of-type) {
    margin: 0 0 12px;
}

/* All body copy */
.location-intro-content > p,
.location-intro-content .cms-copy-body > p {
    color: #58656c;
    font-size: 16px;
    line-height: 1.85;
    font-weight: 400;
}

/* Information blocks */
.location-intro-content .cms-copy-body h2 {
    position: relative;
    margin: 30px 0 12px !important;
    padding: 0 0 11px 17px;
    border-bottom: 1px solid #dce8e9;
    color: #123f55;
    font-size: 24px;
    font-weight: 750;
    line-height: 1.35;
    letter-spacing: -0.4px;
}

.location-intro-content .cms-copy-body h2::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    bottom: 14px;
    width: 4px;
    border-radius: 5px;
    background: #1595a4;
}

.location-intro-content .cms-copy-body p {
    margin-bottom: 13px;
}

/* Appointment CTA */
.location-intro-content .cms-copy-body > p:last-child {
    margin: 28px 0 0;
}

.location-intro-content .btn-custom-darkteal {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    padding: 17px 25px;
    border: 1px solid #006c66;
    border-radius: 8px;
    background: #006c66;
    color: #fff !important;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
    text-decoration: none !important;
    box-shadow: 0 7px 0 #d7e9e6, 0 12px 25px rgba(0, 76, 76, .12);
    transition: all .25s ease;
}
.location-intro-content{margin-bottom:30px;}
.location-intro-content .btn-custom-darkteal:hover {
    background: #10465a;
    border-color: #10465a;
    box-shadow: 0 4px 0 #d7e9e6, 0 8px 18px rgba(0, 76, 76, .17);
    transform: translateY(2px);
}

.location-intro-content .btn-custom-darkteal i {
    font-size: 19px;
    transition: transform .25s ease;
}

.location-intro-content .btn-custom-darkteal:hover i {
    transform: translateX(4px);
}

/* Tablet */
@media (max-width: 1349px) {
.header-nav-bar .dropdown-menu{width:100%;}

}

@media (max-width: 991px) {
    .location-intro-content {
        padding: 30px;
        border-radius: 16px;
    }

    .location-intro-content .cms-copy-body h2 {
        font-size: 22px;
        margin-top: 25px !important;
    }
}

/* Mobile */
@media (max-width: 575px) {
    .location-intro-content {
        padding: 27px 20px;
        border-radius: 12px;
    }
.feature-item{padding:0;}
    .meet-content-new .meet-headline-new{font-size:32px;}
.home-provider-links a{font-size:16px;}
.meet-content-new h3 { 
    font-size: 20px;}
.meet-content-new p{font-size:16px;}
.meet-content-new .meet-tagline-new { 
    font-size: 18px;}
.feature-icon img{width: 60px;}
.feature-text { font-weight: 500;
    font-size: 14px;
}
    .location-intro-content .location-intro-title {
        font-size: 30px;
        letter-spacing: -.7px;
    }

    .location-intro-content > p,
    .location-intro-content .cms-copy-body > p {
        font-size: 15px;
        line-height: 1.75;
    }
.btn-cta-white{font-size:16px; padding: 10px 24px;}
    .location-intro-content .cms-copy-body h2 {
        font-size: 21px;
        margin-top: 23px !important;
    }

    .location-intro-content .btn-custom-darkteal {
        width: 100%;
        box-sizing: border-box;
        padding: 15px 12px;
        font-size: 13px;
        gap: 8px;
    }
        .meet-content-new .meet-headline-new {
        font-size: 26px;
    }
        .meet-features {
        gap: 0; 
    }
    .footer-links-new{column-count: 2;}
}


@media (max-width: 375px) {
        .feature-text {
        font-size: 13px; font-weight: 500;
    }
    
}






/* ===== FULL-WIDTH SITEMAP REDESIGN ===== */

ul.site-map-ul,
ul.site-map-ul ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Main sitemap wrapper */
ul.site-map-ul:not(li ul.site-map-ul) {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 0 !important;
    padding: 0 !important;
    margin: 25px 0 !important;
    background: #ffffff;
    border-top: 3px solid #087f8c;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 8px 28px rgba(16, 68, 94, 0.08);
}

/* Every top-level menu occupies full width */
ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    clear: both !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #e7eef1;
    background: #fff;
}

/* Main menu links */
ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0 > a.site-map-border {
    display: flex !important;
    align-items: center;
    gap: 12px;
    width: 100% !important;
    box-sizing: border-box;
    padding: 19px 24px !important;
    margin: 0 !important;
    color: #10445e !important;
    background: #f5f9fa;
    border: 0 !important;
    border-left: 4px solid transparent !important;
    border-radius: 0 !important;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    text-decoration: none !important;
    transition: background .25s ease, color .25s ease,
                border-color .25s ease, padding-left .25s ease;
}

/* Main menu icons */
ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0 > a.site-map-border i {
    color: #078b91 !important;
    font-size: 15px;
    transition: transform .25s ease;
}

/* Hover effect */
ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0 > a.site-map-border:hover {
    color: #087f8c !important;
    background: #edf7f7;
    border-left-color: #078b91 !important;
    padding-left: 30px !important;
}

ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0 > a.site-map-border:hover i {
    transform: translateX(4px);
}

/* Nested menus: always full width */
ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0 > ul.site-map-ul {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 12px 24px 18px 42px !important;
    background: #fff !important;
    border: 0 !important;
}

/* Each nested item */
ul.site-map-ul:not(li ul.site-map-ul) ul.site-map-ul > li {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #f0f3f4;
}

/* Nested links */
ul.site-map-ul:not(li ul.site-map-ul) ul.site-map-ul li > a.site-map-border {
    display: flex !important;
    align-items: center;
    gap: 10px;
    width: 100% !important;
    box-sizing: border-box;
    padding: 12px 14px !important;
    margin: 0 !important;
    color: #385665 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    text-decoration: none !important;
    transition: color .2s ease, background .2s ease, padding-left .2s ease;
}

/* Nested link icons */
ul.site-map-ul:not(li ul.site-map-ul) ul.site-map-ul li > a.site-map-border i {
    color: #078b91 !important;
    font-size: 12px;
    flex: 0 0 auto;
}

/* Nested link hover */
ul.site-map-ul:not(li ul.site-map-ul) ul.site-map-ul li > a.site-map-border:hover {
    color: #087f8c !important;
    background: #f1f9f9 !important;
    padding-left: 22px !important;
}

/* Third-level links */
ul.site-map-ul:not(li ul.site-map-ul) ul.site-map-ul ul.site-map-ul {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 0 8px 24px !important;
    background: #f8fbfc !important;
    border-left: 2px solid #d7ecec !important;
}

ul.site-map-ul:not(li ul.site-map-ul) ul.site-map-ul ul.site-map-ul li > a.site-map-border {
    padding: 9px 14px !important;
    font-size: 14px;
    color: #617985 !important;
}

/* Contact and other short sections stay full width */
ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0:last-child > ul.site-map-ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
}

/* Responsive layout */
@media (max-width: 767px) {
    ul.site-map-ul:not(li ul.site-map-ul) {
        margin: 16px 0 !important;
        border-radius: 6px;
    }

    ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0 > a.site-map-border {
        padding: 16px !important;
        font-size: 16px;
    }

    ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0 > a.site-map-border:hover {
        padding-left: 20px !important;
    }

    ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0 > ul.site-map-ul {
        padding: 8px 12px 14px 18px !important;
    }

    ul.site-map-ul:not(li ul.site-map-ul) ul.site-map-ul li > a.site-map-border {
        padding: 10px 8px !important;
        font-size: 14px;
    }

    ul.site-map-ul:not(li ul.site-map-ul) > li.site-map-level-0:last-child > ul.site-map-ul {
        grid-template-columns: 1fr;
    }
}



